#region Local Var
	var uLocal_0 = 0;
	var uLocal_1 = 0;
	int iLocal_2 = 0;
	int iLocal_3 = 0;
	int iLocal_4 = 0;
	int iLocal_5 = 0;
	int iLocal_6 = 0;
	int iLocal_7 = 0;
	int iLocal_8 = 0;
	int iLocal_9 = 0;
	int iLocal_10 = 0;
	int iLocal_11 = 0;
	var uLocal_12 = 0;
	var uLocal_13 = 0;
	float fLocal_14 = 0f;
	var uLocal_15 = 0;
	var uLocal_16 = 0;
	int iLocal_17 = 0;
	char* sLocal_18 = NULL;
	var uLocal_19 = 0;
	var uLocal_20 = 0;
	var uLocal_21 = 0;
	var uLocal_22 = 0;
	float fLocal_23 = 0f;
	float fLocal_24 = 0f;
	float fLocal_25 = 0f;
	var uLocal_26 = 0;
	var uLocal_27 = 0;
	float fLocal_28 = 0f;
	var uLocal_29 = 0;
	var uLocal_30 = 0;
	var uLocal_31 = 0;
	float fLocal_32 = 0f;
	float fLocal_33 = 0f;
	var uLocal_34 = 0;
	var uLocal_35 = 0;
	int iLocal_36 = 0;
	var uLocal_37 = 0;
	var uLocal_38 = 0;
	var uLocal_39 = 0;
	int iLocal_40 = 0;
	int iLocal_41 = 0;
	int iLocal_42 = 0;
	int iLocal_43 = 0;
	var uLocal_44 = 0;
	var uLocal_45 = 0;
	var uLocal_46 = 0;
	var uLocal_47 = 0;
	var uLocal_48 = 0;
	var uLocal_49 = 0;
	var uLocal_50 = 0;
	var uLocal_51 = 0;
	var uLocal_52 = 0;
	var uLocal_53 = 0;
	var uLocal_54 = 0;
	var uLocal_55 = 0;
	var uLocal_56 = 10;
	var uLocal_57 = 0;
	var uLocal_58 = 0;
	var uLocal_59 = 0;
	var uLocal_60 = 0;
	var uLocal_61 = 0;
	var uLocal_62 = 0;
	var uLocal_63 = 0;
	var uLocal_64 = 0;
	var uLocal_65 = 0;
	var uLocal_66 = 0;
	var uLocal_67 = 2;
	var uLocal_68 = 0;
	var uLocal_69 = 0;
	var uLocal_70 = 8;
	var uLocal_71 = 0;
	var uLocal_72 = 0;
	var uLocal_73 = 0;
	var uLocal_74 = 0;
	var uLocal_75 = 0;
	var uLocal_76 = 0;
	var uLocal_77 = 0;
	var uLocal_78 = 0;
	var uLocal_79 = 8;
	var uLocal_80 = 0;
	var uLocal_81 = 0;
	var uLocal_82 = 0;
	var uLocal_83 = 0;
	var uLocal_84 = 0;
	var uLocal_85 = 0;
	var uLocal_86 = 0;
	var uLocal_87 = 0;
	var uLocal_88 = 0;
	var uLocal_89 = 0;
	float fLocal_90 = 0f;
	var uLocal_91 = 0;
	var uLocal_92 = 0;
	float fLocal_93 = 0f;
	float fLocal_94 = 0f;
	float fLocal_95 = 0f;
	float fLocal_96 = 0f;
	float fLocal_97 = 0f;
	var uLocal_98 = 0;
	var uLocal_99 = 0;
	var uLocal_100[32] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 };
	struct<200> Local_133 = { 0, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1048576000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1048576000, 0, -1, 2, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } ;
	var uLocal_333 = 0;
	var uLocal_334 = 0;
	var uLocal_335 = 0;
	var uLocal_336 = 0;
	var uLocal_337 = 0;
	var uLocal_338 = 0;
	var uLocal_339 = 0;
	var uLocal_340 = 0;
	var uLocal_341 = 0;
	var uLocal_342 = 0;
	var uLocal_343 = 0;
	var uLocal_344 = 0;
	var uLocal_345 = 0;
	var uLocal_346 = 0;
	var uLocal_347 = 0;
	var uLocal_348 = 0;
	var uLocal_349 = 0;
	var uLocal_350 = 0;
	var uLocal_351 = 0;
#endregion

void __EntryFunction__()//Position - 0x0
{
	iLocal_2 = 1;
	iLocal_3 = 134;
	iLocal_4 = 134;
	iLocal_5 = 1;
	iLocal_6 = 1;
	iLocal_7 = 1;
	iLocal_8 = 134;
	iLocal_9 = 1;
	iLocal_10 = 12;
	iLocal_11 = 12;
	fLocal_14 = 0.001f;
	iLocal_17 = -1;
	sLocal_18 = "NULL";
	fLocal_23 = 80f;
	fLocal_24 = 140f;
	fLocal_25 = 180f;
	fLocal_28 = 0f;
	fLocal_32 = -0.0375f;
	fLocal_33 = 0.17f;
	iLocal_36 = 3;
	iLocal_40 = 1;
	iLocal_41 = 65;
	iLocal_42 = 49;
	iLocal_43 = 64;
	fLocal_90 = ((0.05f + 0.275f) - 0.01f);
	fLocal_93 = -0.05f;
	fLocal_94 = 0.92f;
	fLocal_95 = 1.94f;
	fLocal_96 = 2.99f;
	fLocal_97 = 3.7f;
	if (network::network_is_game_in_progress())
	{
		func_1253(&uLocal_349);
	}
	else
	{
		func_1244(0);
	}
	while (true)
	{
		func_1243();
		if (func_1236())
		{
			Global_1760739.f_598 = Local_133.f_1;
			func_1244(7);
		}
		if (func_1235(Local_133.f_1) && func_1234(Local_133.f_1))
		{
			func_1244(6);
		}
		func_2();
		if (network::network_is_host_of_this_script())
		{
			func_1();
		}
	}
}

void func_1()//Position - 0x10B
{
}

void func_2()//Position - 0x113
{
	func_1229();
	func_1227();
	func_1225();
	func_1222();
	Global_1760737 = Local_133.f_2;
	if (Global_1760739.f_716 == Local_133.f_1)
	{
		if (!cam::is_screen_faded_out())
		{
			if (!cam::is_screen_fading_out())
			{
				cam::do_screen_fade_out(322);
			}
		}
		return;
	}
	if (func_1221(0))
	{
		func_1220();
	}
	else if (func_1221(1))
	{
		func_1214();
	}
	else if (func_1221(2))
	{
		func_1213();
	}
	else if (func_1221(3))
	{
		func_1210();
	}
	else if (func_1221(18))
	{
		func_1209();
	}
	else if (func_1221(4))
	{
		func_1204();
	}
	else if (func_1221(5))
	{
		func_1202(Local_133.f_1, Local_133.f_2);
		func_1201(&(Local_133.f_9), Local_133.f_1);
		func_1200();
	}
	else if (func_1221(6))
	{
		func_1202(Local_133.f_1, Local_133.f_2);
		func_1201(&(Local_133.f_9), Local_133.f_1);
		func_1197();
	}
	else if (func_1221(7))
	{
		func_1202(Local_133.f_1, Local_133.f_2);
		func_1201(&(Local_133.f_9), Local_133.f_1);
		func_1114();
	}
	else if (func_1221(8))
	{
		func_1202(Local_133.f_1, Local_133.f_2);
		func_1201(&(Local_133.f_9), Local_133.f_1);
		func_1112();
	}
	else if (func_1221(9))
	{
		func_1202(Local_133.f_1, Local_133.f_2);
		func_1201(&(Local_133.f_9), Local_133.f_1);
		func_1090();
	}
	else if (func_1221(10))
	{
		func_1088();
	}
	else if (func_1221(11))
	{
		func_446();
	}
	else if (func_1221(12))
	{
		func_435();
	}
	else if (func_1221(13))
	{
		func_433();
	}
	else if (func_1221(14))
	{
		func_427();
	}
	else if (func_1221(15))
	{
		func_423();
	}
	else if (func_1221(16))
	{
		func_390();
	}
	else if (func_1221(17))
	{
		func_3();
	}
}

void func_3()//Position - 0x2F8
{
	var uVar0;
	int iVar1;
	int iVar2;
	int iVar3;
	
	if (!entity::is_entity_dead(player::player_ped_id(), 0))
	{
		if (entity::is_entity_visible(player::player_ped_id()))
		{
			entity::set_entity_visible(player::player_ped_id(), false, 0);
		}
	}
	uVar0 = func_389(Local_133.f_1);
	if (!func_388(&(Local_133.f_195), 15000, 0))
	{
		iVar1 = 0;
		while (iVar1 < network::_network_get_num_participants_host())
		{
			iVar3 = player::int_to_participantindex(iVar1);
			if (network::network_is_participant_active(iVar3))
			{
				iVar2 = network::network_get_player_index(iVar3);
				if ((func_387(iVar2, 1, 1) && func_386(iVar2)) && iVar2 != player::player_id())
				{
					if (!gameplay::is_bit_set(Global_1761522.f_856[uVar0], iVar2))
					{
						return;
					}
				}
			}
			iVar1++;
		}
	}
	Global_1760739.f_16 = 0;
	func_385(1);
	if (func_22(Local_133.f_1))
	{
		func_21();
	}
	Local_133.f_190 = 0;
	func_14(player::player_id(), 1, 524288);
	if (!entity::is_entity_dead(player::player_ped_id(), 0))
	{
		ai::clear_ped_tasks_immediately(player::player_ped_id());
		entity::set_entity_collision(player::player_ped_id(), true, 0);
		entity::freeze_entity_position(player::player_ped_id(), false);
		ped::_0x2208438012482A1A(player::player_ped_id(), 0, 0);
	}
	if (!Local_133.f_186)
	{
		func_13(0);
		network::network_fade_in_entity(player::player_ped_id(), 1, 1);
	}
	if (func_12(Local_133.f_1) && func_10(10, Local_133.f_1))
	{
		func_5();
	}
	iVar1 = 0;
	while (iVar1 < 26)
	{
		Global_1761522.f_829[iVar1] = 0;
		Global_1761522.f_856[iVar1] = 0;
		iVar1++;
	}
	func_4(5);
}

void func_4(int iParam0)//Position - 0x468
{
	if (Local_133.f_2 != iParam0)
	{
		Local_133.f_2 = iParam0;
	}
}

void func_5()//Position - 0x47F
{
	int iVar0;
	int iVar1;
	int iVar2;
	
	iVar0 = 0;
	while (iVar0 < network::_network_get_num_participants_host())
	{
		iVar2 = player::int_to_participantindex(iVar0);
		if (network::network_is_participant_active(iVar2))
		{
			iVar1 = network::network_get_player_index(iVar2);
			if (func_387(iVar1, 1, 1) && !entity::is_entity_dead(player::get_player_ped(iVar1), 0))
			{
				if (func_386(iVar1))
				{
					func_6(iVar1, 0);
				}
			}
		}
		iVar0++;
	}
}

void func_6(int iParam0, int iParam1)//Position - 0x4E1
{
	if (iParam0 == func_9())
	{
		return;
	}
	if (iParam0 == player::player_id())
	{
		return;
	}
	if (!iParam1)
	{
		if (!gameplay::is_bit_set(Global_2501436, iParam0))
		{
			func_8(&(Global_2501437[iParam0 /*2*/]), 1, 0);
			gameplay::set_bit(&Global_2501436, iParam0);
		}
	}
	else if (gameplay::is_bit_set(Global_2501436, iParam0))
	{
		func_7(&(Global_2501437[iParam0 /*2*/]));
		gameplay::clear_bit(&Global_2501436, iParam0);
	}
}

void func_7(var uParam0)//Position - 0x553
{
	uParam0->f_1 = 0;
}

void func_8(var uParam0, int iParam1, int iParam2)//Position - 0x560
{
	if (uParam0->f_1 == 0)
	{
		if (network::network_is_game_in_progress() && !iParam1)
		{
			if (!iParam2)
			{
				*uParam0 = network::get_network_time();
			}
			else
			{
				*uParam0 = network::_0x89023FBBF9200E9F();
			}
		}
		else
		{
			*uParam0 = gameplay::get_game_timer();
		}
		uParam0->f_1 = 1;
	}
}

int func_9()//Position - 0x5A5
{
	return -1;
}

int func_10(int iParam0, int iParam1)//Position - 0x5AE
{
	var uVar0;
	int iVar1;
	
	func_11(iParam1, &uVar0, &iVar1);
	switch (iParam0)
	{
		case 0:
			return gameplay::is_bit_set(Global_1760739.f_222[uVar0], iVar1);
			break;
		
		case 1:
			return gameplay::is_bit_set(Global_1760739.f_226[uVar0], iVar1);
			break;
		
		case 2:
			return gameplay::is_bit_set(Global_1760739.f_230[uVar0], iVar1);
			break;
		
		case 3:
			return gameplay::is_bit_set(Global_1760739.f_504[uVar0], iVar1);
			break;
		
		case 4:
			return gameplay::is_bit_set(Global_1760739.f_508[uVar0], iVar1);
			break;
		
		case 5:
			return gameplay::is_bit_set(Global_1760739.f_672[uVar0], iVar1);
			break;
		
		case 6:
			return gameplay::is_bit_set(Global_1760739.f_676[uVar0], iVar1);
			break;
		
		case 7:
			return gameplay::is_bit_set(Global_1760739.f_680[uVar0], iVar1);
			break;
		
		case 8:
			return gameplay::is_bit_set(Global_1760739.f_690[uVar0], iVar1);
			break;
		
		case 9:
			return gameplay::is_bit_set(Global_1760739.f_694[uVar0], iVar1);
			break;
		
		case 10:
			return gameplay::is_bit_set(Global_1760739.f_512[uVar0], iVar1);
			break;
		
		case 11:
			return gameplay::is_bit_set(Global_1760739.f_684[uVar0], iVar1);
			break;
	}
	return false;
}

void func_11(int iParam0, var uParam1, var uParam2)//Position - 0x721
{
	if (iParam0 == -1)
	{
		return;
	}
	*uParam1 = system::floor((system::to_float(iParam0) / 32f));
	*uParam2 = (iParam0 - *uParam1 * 32);
}

int func_12(int iParam0)//Position - 0x750
{
	return func_10(0, iParam0);
}

void func_13(int iParam0)//Position - 0x75F
{
	int iVar0;
	int iVar1;
	int iVar2;
	
	if (!iParam0)
	{
		func_8(&Global_2501434, 1, 0);
	}
	else
	{
		func_7(&Global_2501434);
	}
	if (ped::is_ped_sitting_in_any_vehicle(player::player_ped_id()))
	{
		iVar0 = ped::get_vehicle_ped_is_in(player::player_ped_id(), 0);
		iVar2 = -1;
		while (iVar2 <= 8)
		{
			if (iVar2 < vehicle::_get_vehicle_model_max_number_of_passengers(entity::get_entity_model(iVar0)))
			{
				if (!vehicle::is_vehicle_seat_free(iVar0, iVar2, 0))
				{
					iVar1 = vehicle::get_ped_in_vehicle_seat(iVar0, iVar2, 0);
					if ((entity::does_entity_exist(iVar1) && iVar1 != player::player_ped_id()) && ped::is_ped_a_player(iVar1))
					{
						func_6(network::_network_get_ped_player(iVar1), 0);
					}
				}
			}
			iVar2++;
		}
	}
}

void func_14(int iParam0, int iParam1, int iParam2)//Position - 0x7FD
{
	int iVar0;
	int iVar1;
	int iVar2;
	int iVar3;
	int iVar4;
	int iVar5;
	int iVar6;
	int iVar7;
	int iVar8;
	int iVar9;
	int iVar10;
	int iVar11;
	int iVar12;
	int iVar13;
	int iVar14;
	int iVar15;
	int iVar16;
	int iVar17;
	int iVar18;
	int iVar19;
	int iVar20;
	int iVar21;
	int iVar22;
	int iVar23;
	int iVar24;
	int iVar25;
	int iVar26;
	
	if (iParam1)
	{
		if (script::_get_no_loading_screen())
		{
			script::set_no_loading_screen(false);
		}
	}
	if (!network::network_is_game_in_progress())
	{
		iVar0 = iParam2;
		player::set_player_control(iParam0, iParam1, iVar0);
	}
	else
	{
		iVar1 = iParam2 & 2 != false;
		iVar2 = iParam2 & 4 != false;
		iVar3 = iParam2 & 8 != false;
		iVar4 = iParam2 & 16 != false;
		iVar5 = iParam2 & 32 != false;
		iVar6 = iParam2 & 64 != false;
		iVar7 = iParam2 & 128 != false;
		iVar8 = iParam2 & 256 != false;
		iVar9 = iParam2 & 512 != false;
		iVar10 = iParam2 & 1024 != false;
		iVar11 = iParam2 & 2048 != false;
		iVar12 = iParam2 & 4096 != false;
		iVar13 = iParam2 & 8192 != false;
		iVar14 = iParam2 & 16384 != false;
		iVar15 = iParam2 & 32768 != false;
		iVar16 = iParam2 & 65536 != false;
		iVar17 = iParam2 & 131072 != false;
		iVar18 = iParam2 & 262144 != false;
		iVar19 = iParam2 & 524288 != false;
		iVar20 = iParam2 & 1048576 != false;
		iVar21 = iParam2 & 2097152 != false;
		iVar22 = iParam2 & 4194304 != false;
		iVar23 = iParam2 & 8388608 != false;
		if (!func_19())
		{
			iVar24 = false;
			if (iParam1 == 1)
			{
				iVar24 = true;
			}
			if (iVar15 == 0 && !iVar20)
			{
				iVar24 = true;
			}
			if (iVar9 == 1)
			{
				iVar24 = true;
			}
			if (iVar24)
			{
				return;
			}
		}
		if (iVar17)
		{
		}
		if (network::network_is_player_active(iParam0) && player::is_player_playing(iParam0))
		{
			iVar25 = player::get_player_ped(iParam0);
			if (!iVar19)
			{
				if ((iVar18 && iParam1 == 0) && network::network_is_game_in_progress())
				{
					network::fade_out_local_player(1);
				}
				else
				{
					entity::set_entity_visible(iVar25, !iVar13, 0);
				}
				if (!iVar13)
				{
					if (network::network_is_game_in_progress() && !iVar18)
					{
						network::fade_out_local_player(0);
					}
					Global_2421621[iParam0 /*358*/].f_247 = 0;
				}
			}
			if (iParam1)
			{
				if (!func_18(iVar25) && !entity::is_entity_attached_to_any_vehicle(iVar25))
				{
					if (!iVar21)
					{
						entity::set_entity_collision(iVar25, true, 0);
					}
				}
				if (!entity::is_entity_attached(iVar25))
				{
					if (!iVar20)
					{
						entity::freeze_entity_position(iVar25, false);
					}
					entity::_0x3910051CCECDB00C(iVar25, true);
				}
				else if (!iVar20)
				{
					entity::freeze_entity_position(iVar25, false);
				}
				ped::set_ped_can_be_targetted(iVar25, true);
				player::set_player_invincible(iParam0, 0);
				ped::_0x4668D80430D6C299(iVar25);
				ped::set_ped_can_ragdoll(iVar25, 1);
				func_17();
				func_16();
				if (player::is_player_teleport_active())
				{
					if (!iVar22)
					{
					}
				}
				if (streaming::is_new_load_scene_active())
				{
				}
				Global_2421621[iParam0 /*358*/].f_248 = 0;
				if (!iVar23)
				{
					iVar2 = true;
				}
			}
			else
			{
				if (!func_18(iVar25) && !entity::is_entity_attached_to_any_vehicle(iVar25))
				{
					if (!iVar21)
					{
						entity::set_entity_collision(iVar25, !iVar14, 0);
					}
					if (!entity::is_entity_attached(iVar25))
					{
						if (!iVar20)
						{
							entity::freeze_entity_position(iVar25, iVar15);
						}
						if (!iVar15)
						{
							entity::_0x3910051CCECDB00C(iVar25, true);
						}
					}
					if (func_15(Global_1632166.f_105262))
					{
						entity::freeze_entity_position(iVar25, true);
					}
				}
				if (iVar9)
				{
					player::set_player_invincible(iParam0, 0);
				}
				else
				{
					player::set_player_invincible(iParam0, 1);
				}
				ped::set_ped_can_be_targetted(iVar25, iVar16);
				if (iVar2)
				{
					if (!ped::is_ped_fatally_injured(iVar25) && !ped::is_ped_in_any_vehicle(iVar25, 0))
					{
						ai::clear_ped_tasks_immediately(iVar25);
					}
				}
			}
			iVar26 = 0;
			if (iVar1)
			{
				iVar26 |= 2;
			}
			if (iVar2)
			{
				iVar26 |= 4;
			}
			if (iVar3)
			{
				iVar26 |= 8;
			}
			if (iVar4)
			{
				iVar26 |= 16;
			}
			if (iVar5)
			{
				iVar26 |= 32;
			}
			if (iVar6)
			{
				iVar26 |= 64;
			}
			if (iVar7)
			{
				iVar26 |= 128;
			}
			if (iVar8)
			{
				iVar26 |= 256;
			}
			if (iVar9)
			{
				iVar26 |= 512;
			}
			if (iVar10)
			{
				iVar26 |= 1024;
			}
			if (iVar11)
			{
				iVar26 |= 2048;
			}
			if (iVar12)
			{
				iVar26 |= 4096;
			}
			player::set_player_control(iParam0, iParam1, iVar26);
		}
	}
}

int func_15(int iParam0)//Position - 0xBB4
{
	return iParam0 == 17;
}

void func_16()//Position - 0xBC1
{
	struct<2> Var0;
	
	Global_2433082.f_731 = 0;
	Global_2433082.f_732 = 0;
	Global_2433082.f_733 = { 9999.9f, 9999.9f, 9999.9f };
	Global_2404994.f_2215 = { Var0 };
}

void func_17()//Position - 0xBFE
{
	Global_2404994.f_639 = 0;
	Global_2404994.f_2256 = 0;
	Global_2404994.f_496 = 0;
	Global_2404994.f_571 = 0;
	Global_2421621[player::player_id() /*358*/].f_210 = 0;
}

bool func_18(int iParam0)//Position - 0xC34
{
	int iVar0;
	
	if (ped::is_ped_in_any_vehicle(iParam0, 1))
	{
		return true;
	}
	else
	{
		iVar0 = ai::get_script_task_status(iParam0, -1794415470);
		if (iVar0 == 0)
		{
			return true;
		}
	}
	return false;
}

bool func_19()//Position - 0xC65
{
	if (func_20() == 0)
	{
		return true;
	}
	return false;
}

var func_20()//Position - 0xC7A
{
	return Global_1312462.f_18;
}

void func_21()//Position - 0xC88
{
	int iVar0;
	
	if (!entity::is_entity_dead(player::player_ped_id(), 0))
	{
		weapon::get_current_ped_weapon(player::player_ped_id(), &iVar0, 1);
		if (!(iVar0 == joaat("weapon_unarmed") || iVar0 == joaat("object")))
		{
			weapon::set_current_ped_weapon(player::player_ped_id(), joaat("weapon_unarmed"), true);
		}
	}
}

var func_22(int iParam0)//Position - 0xCD1
{
	struct<35> Var0;
	
	func_23(iParam0, &Var0, 34);
	Stack.Push(iParam0);
	Call_Loc(Var0.f_34);
	return StackVal;
}

void func_23(int iParam0, var uParam1, int iParam2)//Position - 0xCEA
{
	switch (func_384(iParam0))
	{
		case 0:
			func_330(uParam1, iParam2);
			break;
		
		case 1:
			func_200(uParam1, iParam2);
			break;
		
		case 2:
			func_68(uParam1, iParam2);
			break;
		
		case 3:
			func_24(uParam1, iParam2);
			break;
	}
}

void func_24(var uParam0, int iParam1)//Position - 0xD41
{
	switch (iParam1)
	{
		case 0:
			*uParam0 = 16124/*func_67*/;
			break;
		
		case 1:
			uParam0->f_1 = 15208/*func_62*/;
			break;
		
		case 2:
			uParam0->f_2 = 15195/*func_61*/;
			break;
		
		case 3:
			uParam0->f_3 = 14954/*func_60*/;
			break;
		
		case 4:
			uParam0->f_4 = 14946/*func_59*/;
			break;
		
		case 5:
			uParam0->f_5 = 14577/*func_58*/;
			break;
		
		case 6:
			uParam0->f_6 = 14569/*func_57*/;
			break;
		
		case 7:
			uParam0->f_7 = 14560/*func_56*/;
			break;
		
		case 8:
			uParam0->f_8 = 14551/*func_55*/;
			break;
		
		case 9:
			uParam0->f_9 = 14541/*func_54*/;
			break;
		
		case 10:
			uParam0->f_10 = 14532/*func_53*/;
			break;
		
		case 11:
			uParam0->f_11 = 14523/*func_52*/;
			break;
		
		case 12:
			uParam0->f_12 = 14515/*func_51*/;
			break;
		
		case 13:
			uParam0->f_13 = 14507/*func_50*/;
			break;
		
		case 14:
			uParam0->f_14 = 14139/*func_49*/;
			break;
		
		case 15:
			uParam0->f_15 = 14129/*func_48*/;
			break;
		
		case 16:
			uParam0->f_16 = 14121/*func_47*/;
			break;
		
		case 17:
			uParam0->f_17 = 14112/*func_46*/;
			break;
		
		case 18:
			uParam0->f_18 = 4254/*func_45*/;
			break;
		
		case 19:
			uParam0->f_19 = 4245/*func_44*/;
			break;
		
		case 20:
			uParam0->f_20 = 4236/*func_43*/;
			break;
		
		case 21:
			uParam0->f_21 = 4228/*func_42*/;
			break;
		
		case 22:
			uParam0->f_22 = 4219/*func_41*/;
			break;
		
		case 23:
			uParam0->f_23 = 4210/*func_40*/;
			break;
		
		case 24:
			uParam0->f_24 = 4201/*func_39*/;
			break;
		
		case 25:
			uParam0->f_25 = 4192/*func_38*/;
			break;
		
		case 26:
			uParam0->f_26 = 4181/*func_37*/;
			break;
		
		case 27:
			uParam0->f_27 = 4173/*func_36*/;
			break;
		
		case 28:
			uParam0->f_28 = 4164/*func_35*/;
			break;
		
		case 29:
			uParam0->f_29 = 4153/*func_34*/;
			break;
		
		case 30:
			uParam0->f_30 = 4145/*func_33*/;
			break;
		
		case 31:
			uParam0->f_31 = 4137/*func_32*/;
			break;
		
		case 32:
			uParam0->f_32 = 4129/*func_31*/;
			break;
		
		case 33:
			uParam0->f_33 = 4121/*func_30*/;
			break;
		
		case 34:
			uParam0->f_34 = 4112/*func_29*/;
			break;
		
		case 35:
			uParam0->f_35 = 4103/*func_28*/;
			break;
		
		case 36:
			uParam0->f_36 = 4091/*func_27*/;
			break;
		
		case 37:
			uParam0->f_37 = 4082/*func_26*/;
			break;
		
		case 38:
			uParam0->f_38 = 4070/*func_25*/;
			break;
	}
}

void func_25(var uParam0, var uParam1, var uParam2, var uParam3)//Position - 0xFE6
{
	*uParam1 = 0;
}

bool func_26(var uParam0, var uParam1, var uParam2, var uParam3, var uParam4, var uParam5)//Position - 0xFF2
{
	return false;
}

void func_27(var uParam0, var uParam1, var uParam2, var uParam3)//Position - 0xFFB
{
	*uParam1 = 0;
}

bool func_28(var uParam0)//Position - 0x1007
{
	return false;
}

bool func_29(var uParam0)//Position - 0x1010
{
	return false;
}

void func_30(var uParam0, var uParam1)//Position - 0x1019
{
}

void func_31(var uParam0, var uParam1)//Position - 0x1021
{
}

void func_32(var uParam0, var uParam1)//Position - 0x1029
{
}

void func_33(var uParam0, var uParam1, var uParam2, var uParam3)//Position - 0x1031
{
}

Vector3 func_34(var uParam0)//Position - 0x1039
{
	return 0f, 0f, 0f;
}

bool func_35(var uParam0)//Position - 0x1044
{
	return false;
}

void func_36(var uParam0, var uParam1, var uParam2, var uParam3)//Position - 0x104D
{
}

Vector3 func_37(var uParam0)//Position - 0x1055
{
	return 0f, 0f, 0f;
}

int func_38(var uParam0)//Position - 0x1060
{
	return -1;
}

bool func_39(var uParam0)//Position - 0x1069
{
	return false;
}

bool func_40(var uParam0)//Position - 0x1072
{
	return false;
}

bool func_41(var uParam0)//Position - 0x107B
{
	return false;
}

void func_42(var uParam0, var uParam1, var uParam2, var uParam3)//Position - 0x1084
{
}

int func_43(var uParam0)//Position - 0x108C
{
	return -1;
}

int func_44(var uParam0)//Position - 0x1095
{
	return -1;
}

bool func_45(int iParam0, int iParam1, var uParam2, var uParam3, var uParam4)//Position - 0x109E
{
	switch (iParam0)
	{
		case 42:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { 429.3781f, -980.3966f, 29.7103f };
					*uParam3 = 90f;
					return true;
					break;
				
				case 1:
					*uParam2 = { 429.3781f, -978.6966f, 29.7103f };
					*uParam3 = 90f;
					return true;
					break;
				
				case 2:
					*uParam2 = { 429.3781f, -982.0966f, 29.7103f };
					*uParam3 = 90f;
					return true;
					break;
				
				case 3:
					*uParam2 = { 429.3781f, -976.9966f, 29.7103f };
					*uParam3 = 90f;
					return true;
					break;
				
				case 4:
					*uParam2 = { 429.3781f, -983.7966f, 29.7105f };
					*uParam3 = 90f;
					return true;
					break;
				
				case 5:
					*uParam2 = { 429.3781f, -975.2966f, 29.7103f };
					*uParam3 = 90f;
					return true;
					break;
				
				case 6:
					*uParam2 = { 429.3781f, -985.4966f, 29.7115f };
					*uParam3 = 90f;
					return true;
					break;
				
				case 7:
					*uParam2 = { 429.3781f, -973.5966f, 29.7102f };
					*uParam3 = 90f;
					return true;
					break;
				
				case 8:
					*uParam2 = { 427.6781f, -980.3966f, 29.7101f };
					*uParam3 = 90f;
					return true;
					break;
				
				case 9:
					*uParam2 = { 427.6781f, -978.6966f, 29.7101f };
					*uParam3 = 90f;
					return true;
					break;
				
				case 10:
					*uParam2 = { 427.6781f, -982.0966f, 29.7101f };
					*uParam3 = 90f;
					return true;
					break;
				
				case 11:
					*uParam2 = { 427.6781f, -976.9966f, 29.71f };
					*uParam3 = 90f;
					return true;
					break;
				
				case 12:
					*uParam2 = { 427.6781f, -983.7966f, 29.7103f };
					*uParam3 = 90f;
					return true;
					break;
				
				case 13:
					*uParam2 = { 427.6781f, -975.2966f, 29.71f };
					*uParam3 = 90f;
					return true;
					break;
				
				case 14:
					*uParam2 = { 427.6781f, -985.4966f, 29.7112f };
					*uParam3 = 90f;
					return true;
					break;
				
				case 15:
					*uParam2 = { 427.6781f, -973.5966f, 29.7099f };
					*uParam3 = 90f;
					return true;
					break;
			}
			break;
		
		case 43:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { 983.8605f, -106.4136f, 73.3531f };
					*uParam3 = 221.76f;
					return true;
					break;
				
				case 1:
					*uParam2 = { 982.5178f, -107.6124f, 73.3531f };
					*uParam3 = 221.76f;
					return true;
					break;
				
				case 2:
					*uParam2 = { 981.175f, -108.8113f, 73.3531f };
					*uParam3 = 221.76f;
					return true;
					break;
				
				case 3:
					*uParam2 = { 979.8323f, -110.0101f, 73.3531f };
					*uParam3 = 221.76f;
					return true;
					break;
				
				case 4:
					*uParam2 = { 978.4896f, -111.2089f, 73.3531f };
					*uParam3 = 221.76f;
					return true;
					break;
				
				case 5:
					*uParam2 = { 977.1469f, -112.4077f, 73.3531f };
					*uParam3 = 221.76f;
					return true;
					break;
				
				case 6:
					*uParam2 = { 975.8042f, -113.6065f, 73.3531f };
					*uParam3 = 221.76f;
					return true;
					break;
				
				case 7:
					*uParam2 = { 973.5518f, -117.3196f, 73.3531f };
					*uParam3 = 221.76f;
					return true;
					break;
				
				case 8:
					*uParam2 = { 971.1783f, -113.1865f, 73.3531f };
					*uParam3 = 221.76f;
					return true;
					break;
				
				case 9:
					*uParam2 = { 970.9462f, -116.8811f, 73.3531f };
					*uParam3 = 221.76f;
					return true;
					break;
				
				case 10:
					*uParam2 = { 968.7961f, -118.7222f, 73.3531f };
					*uParam3 = 221.76f;
					return true;
					break;
				
				case 11:
					*uParam2 = { 964.718f, -122.2837f, 73.3531f };
					*uParam3 = 221.76f;
					return true;
					break;
				
				case 12:
					*uParam2 = { 985.0593f, -107.7563f, 73.3531f };
					*uParam3 = 221.76f;
					return true;
					break;
				
				case 13:
					*uParam2 = { 983.7166f, -108.9551f, 73.3531f };
					*uParam3 = 221.76f;
					return true;
					break;
				
				case 14:
					*uParam2 = { 982.3738f, -110.154f, 73.3307f };
					*uParam3 = 221.76f;
					return true;
					break;
				
				case 15:
					*uParam2 = { 981.0311f, -111.3528f, 73.353f };
					*uParam3 = 221.76f;
					return true;
					break;
				
				case 16:
					*uParam2 = { 979.6884f, -112.5516f, 73.3531f };
					*uParam3 = 221.76f;
					return true;
					break;
				
				case 17:
					*uParam2 = { 978.3457f, -113.7504f, 73.3531f };
					*uParam3 = 221.76f;
					return true;
					break;
				
				case 18:
					*uParam2 = { 977.003f, -114.9492f, 73.3531f };
					*uParam3 = 221.76f;
					return true;
					break;
				
				case 19:
					*uParam2 = { 970.8889f, -119.5405f, 73.3531f };
					*uParam3 = 221.76f;
					return true;
					break;
				
				case 20:
					*uParam2 = { 972.5797f, -114.7977f, 73.3531f };
					*uParam3 = 221.76f;
					return true;
					break;
				
				case 21:
					*uParam2 = { 968.2349f, -116.0944f, 73.3531f };
					*uParam3 = 221.76f;
					return true;
					break;
				
				case 22:
					*uParam2 = { 964.1705f, -119.8535f, 73.3531f };
					*uParam3 = 221.76f;
					return true;
					break;
				
				case 23:
					*uParam2 = { 966.7084f, -120.6235f, 73.3531f };
					*uParam3 = 221.76f;
					return true;
					break;
				
				case 24:
					*uParam2 = { 987.6689f, -107.8862f, 73.3005f };
					*uParam3 = 221.76f;
					return true;
					break;
				
				case 25:
					*uParam2 = { 984.1547f, -110.9573f, 73.2074f };
					*uParam3 = 221.76f;
					return true;
					break;
				
				case 26:
					*uParam2 = { 983.6035f, -112.7345f, 73.0674f };
					*uParam3 = 221.76f;
					return true;
					break;
				
				case 27:
					*uParam2 = { 982.2299f, -112.6955f, 73.0982f };
					*uParam3 = 221.76f;
					return true;
					break;
				
				case 28:
					*uParam2 = { 980.8872f, -113.8943f, 73.1507f };
					*uParam3 = 221.76f;
					return true;
					break;
				
				case 29:
					*uParam2 = { 979.5445f, -115.0931f, 73.186f };
					*uParam3 = 221.76f;
					return true;
					break;
				
				case 30:
					*uParam2 = { 978.2018f, -116.2919f, 73.2293f };
					*uParam3 = 221.76f;
					return true;
					break;
				
				case 31:
					*uParam2 = { 986.3215f, -109.7017f, 73.2253f };
					*uParam3 = 221.76f;
					return true;
					break;
			}
			break;
		
		case 44:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { -1215.664f, -325.1803f, 36.6849f };
					*uParam3 = 27.72f;
					return true;
					break;
				
				case 1:
					*uParam2 = { -1213.925f, -323.9582f, 36.7309f };
					*uParam3 = 27.72f;
					return true;
					break;
				
				case 2:
					*uParam2 = { -1217.903f, -326.2084f, 36.6413f };
					*uParam3 = 27.72f;
					return true;
					break;
				
				case 3:
					*uParam2 = { -1211.726f, -322.8159f, 36.7714f };
					*uParam3 = 27.72f;
					return true;
					break;
				
				case 4:
					*uParam2 = { -1220.386f, -327.5189f, 36.5898f };
					*uParam3 = 27.72f;
					return true;
					break;
				
				case 5:
					*uParam2 = { -1216.292f, -323.328f, 36.6777f };
					*uParam3 = 27.72f;
					return true;
					break;
				
				case 6:
					*uParam2 = { -1213.984f, -321.7677f, 36.7277f };
					*uParam3 = 27.72f;
					return true;
					break;
				
				case 7:
					*uParam2 = { -1219.155f, -324.5487f, 36.6111f };
					*uParam3 = 27.72f;
					return true;
					break;
				
				case 8:
					*uParam2 = { -1211.721f, -320.7764f, 36.7536f };
					*uParam3 = 27.72f;
					return true;
					break;
				
				case 9:
					*uParam2 = { -1221.718f, -325.9073f, 36.5833f };
					*uParam3 = 27.72f;
					return true;
					break;
				
				case 10:
					*uParam2 = { -1216.695f, -321.2399f, 36.6911f };
					*uParam3 = 27.72f;
					return true;
					break;
				
				case 11:
					*uParam2 = { -1214.371f, -319.8024f, 36.7339f };
					*uParam3 = 27.72f;
					return true;
					break;
				
				case 12:
					*uParam2 = { -1218.999f, -321.9746f, 36.6385f };
					*uParam3 = 27.72f;
					return true;
					break;
				
				case 13:
					*uParam2 = { -1211.881f, -318.9889f, 36.76f };
					*uParam3 = 27.72f;
					return true;
					break;
				
				case 14:
					*uParam2 = { -1220.796f, -322.8924f, 36.5952f };
					*uParam3 = 27.72f;
					return true;
					break;
				
				case 15:
					*uParam2 = { -1222.944f, -328.6745f, 36.5402f };
					*uParam3 = 27.72f;
					return true;
					break;
			}
			break;
		
		case 45:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { 151.4384f, -1035.981f, 28.3392f };
					*uParam3 = 336.24f;
					return true;
					break;
				
				case 1:
					*uParam2 = { 153.2689f, -1036.787f, 28.3161f };
					*uParam3 = 336.24f;
					return true;
					break;
				
				case 2:
					*uParam2 = { 149.6079f, -1035.176f, 28.3414f };
					*uParam3 = 336.24f;
					return true;
					break;
				
				case 3:
					*uParam2 = { 155.2534f, -1037.082f, 28.2587f };
					*uParam3 = 336.24f;
					return true;
					break;
				
				case 4:
					*uParam2 = { 147.5222f, -1034.461f, 28.3437f };
					*uParam3 = 336.24f;
					return true;
					break;
				
				case 5:
					*uParam2 = { 156.8904f, -1038.244f, 28.2397f };
					*uParam3 = 336.24f;
					return true;
					break;
				
				case 6:
					*uParam2 = { 145.2194f, -1033.411f, 28.3462f };
					*uParam3 = 336.24f;
					return true;
					break;
				
				case 7:
					*uParam2 = { 159.547f, -1039.091f, 28.2464f };
					*uParam3 = 336.24f;
					return true;
					break;
				
				case 8:
					*uParam2 = { 152.8388f, -1033.798f, 28.3386f };
					*uParam3 = 336.24f;
					return true;
					break;
				
				case 9:
					*uParam2 = { 154.629f, -1034.607f, 28.3289f };
					*uParam3 = 336.24f;
					return true;
					break;
				
				case 10:
					*uParam2 = { 150.2166f, -1033.243f, 28.3416f };
					*uParam3 = 336.24f;
					return true;
					break;
				
				case 11:
					*uParam2 = { 158.7213f, -1036.816f, 28.2003f };
					*uParam3 = 336.24f;
					return true;
					break;
				
				case 12:
					*uParam2 = { 148.5833f, -1032.539f, 28.3434f };
					*uParam3 = 336.24f;
					return true;
					break;
				
				case 13:
					*uParam2 = { 157.9804f, -1035.026f, 28.2005f };
					*uParam3 = 336.24f;
					return true;
					break;
				
				case 14:
					*uParam2 = { 143.0873f, -1032.483f, 28.3485f };
					*uParam3 = 336.24f;
					return true;
					break;
				
				case 15:
					*uParam2 = { 160.3382f, -1035.83f, 28.2271f };
					*uParam3 = 336.24f;
					return true;
					break;
			}
			break;
		
		case 46:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { 315.6395f, -274.488f, 52.9226f };
					*uParam3 = 339.48f;
					return true;
					break;
				
				case 1:
					*uParam2 = { 317.8872f, -275.3293f, 52.9186f };
					*uParam3 = 339.48f;
					return true;
					break;
				
				case 2:
					*uParam2 = { 313.3918f, -273.6467f, 52.9266f };
					*uParam3 = 339.48f;
					return true;
					break;
				
				case 3:
					*uParam2 = { 320.1349f, -276.1705f, 52.9147f };
					*uParam3 = 339.48f;
					return true;
					break;
				
				case 4:
					*uParam2 = { 311.1441f, -272.8054f, 52.9294f };
					*uParam3 = 339.48f;
					return true;
					break;
				
				case 5:
					*uParam2 = { 322.3827f, -277.0118f, 52.9107f };
					*uParam3 = 339.48f;
					return true;
					break;
				
				case 6:
					*uParam2 = { 308.8964f, -271.9641f, 52.942f };
					*uParam3 = 339.48f;
					return true;
					break;
				
				case 7:
					*uParam2 = { 324.6304f, -277.8531f, 52.9378f };
					*uParam3 = 339.48f;
					return true;
					break;
				
				case 8:
					*uParam2 = { 316.4808f, -272.2403f, 52.9162f };
					*uParam3 = 339.48f;
					return true;
					break;
				
				case 9:
					*uParam2 = { 318.7285f, -273.0815f, 52.9139f };
					*uParam3 = 339.48f;
					return true;
					break;
				
				case 10:
					*uParam2 = { 314.2331f, -271.399f, 52.9166f };
					*uParam3 = 339.48f;
					return true;
					break;
				
				case 11:
					*uParam2 = { 320.9762f, -273.9228f, 52.91f };
					*uParam3 = 339.48f;
					return true;
					break;
				
				case 12:
					*uParam2 = { 311.9854f, -270.5577f, 52.9283f };
					*uParam3 = 339.48f;
					return true;
					break;
				
				case 13:
					*uParam2 = { 323.2239f, -274.7641f, 52.9073f };
					*uParam3 = 339.48f;
					return true;
					break;
				
				case 14:
					*uParam2 = { 309.7377f, -269.7164f, 52.9409f };
					*uParam3 = 339.48f;
					return true;
					break;
				
				case 15:
					*uParam2 = { 325.4716f, -275.6054f, 52.9378f };
					*uParam3 = 339.48f;
					return true;
					break;
			}
			break;
		
		case 47:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { -349.6055f, -45.4561f, 48.0418f };
					*uParam3 = 341.28f;
					return true;
					break;
				
				case 1:
					*uParam2 = { -347.3325f, -46.2263f, 48.0418f };
					*uParam3 = 341.28f;
					return true;
					break;
				
				case 2:
					*uParam2 = { -351.8786f, -44.6858f, 48.0418f };
					*uParam3 = 341.28f;
					return true;
					break;
				
				case 3:
					*uParam2 = { -345.0594f, -46.9966f, 48.0418f };
					*uParam3 = 341.28f;
					return true;
					break;
				
				case 4:
					*uParam2 = { -354.1516f, -43.9155f, 48.0418f };
					*uParam3 = 341.28f;
					return true;
					break;
				
				case 5:
					*uParam2 = { -342.7864f, -47.7669f, 48.0418f };
					*uParam3 = 341.28f;
					return true;
					break;
				
				case 6:
					*uParam2 = { -356.0054f, -42.3063f, 48.0418f };
					*uParam3 = 341.28f;
					return true;
					break;
				
				case 7:
					*uParam2 = { -340.5134f, -48.5371f, 48.0418f };
					*uParam3 = 341.28f;
					return true;
					break;
				
				case 8:
					*uParam2 = { -350.1007f, -42.1019f, 48.0418f };
					*uParam3 = 341.28f;
					return true;
					break;
				
				case 9:
					*uParam2 = { -346.5622f, -43.9533f, 48.0418f };
					*uParam3 = 341.28f;
					return true;
					break;
				
				case 10:
					*uParam2 = { -351.6116f, -41.6252f, 48.0418f };
					*uParam3 = 341.28f;
					return true;
					break;
				
				case 11:
					*uParam2 = { -338.396f, -48.7175f, 48.0418f };
					*uParam3 = 341.28f;
					return true;
					break;
				
				case 12:
					*uParam2 = { -354.761f, -40.4781f, 48.0418f };
					*uParam3 = 341.28f;
					return true;
					break;
				
				case 13:
					*uParam2 = { -336.5751f, -49.0537f, 48.0418f };
					*uParam3 = 341.28f;
					return true;
					break;
				
				case 14:
					*uParam2 = { -356.2777f, -39.9838f, 48.0418f };
					*uParam3 = 341.28f;
					return true;
					break;
				
				case 15:
					*uParam2 = { -340.8749f, -46.6425f, 48.0418f };
					*uParam3 = 341.28f;
					return true;
					break;
			}
			break;
		
		case 48:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { -114.8783f, 6458.876f, 30.4685f };
					*uParam3 = 134.28f;
					return true;
					break;
				
				case 1:
					*uParam2 = { -116.5539f, 6460.594f, 30.4685f };
					*uParam3 = 134.28f;
					return true;
					break;
				
				case 2:
					*uParam2 = { -113.2027f, 6457.158f, 30.4685f };
					*uParam3 = 134.28f;
					return true;
					break;
				
				case 3:
					*uParam2 = { -120.7331f, 6463.364f, 30.4685f };
					*uParam3 = 134.28f;
					return true;
					break;
				
				case 4:
					*uParam2 = { -110.671f, 6453.426f, 30.4648f };
					*uParam3 = 134.28f;
					return true;
					break;
				
				case 5:
					*uParam2 = { -116.5966f, 6457.2f, 30.4505f };
					*uParam3 = 134.28f;
					return true;
					break;
				
				case 6:
					*uParam2 = { -118.7085f, 6458.272f, 30.4339f };
					*uParam3 = 134.28f;
					return true;
					break;
				
				case 7:
					*uParam2 = { -114.9378f, 6454.339f, 30.4313f };
					*uParam3 = 134.28f;
					return true;
					break;
				
				case 8:
					*uParam2 = { -119.9478f, 6460.637f, 30.4518f };
					*uParam3 = 134.28f;
					return true;
					break;
				
				case 9:
					*uParam2 = { -112.9718f, 6453.279f, 30.4458f };
					*uParam3 = 134.28f;
					return true;
					break;
				
				case 10:
					*uParam2 = { -118.4263f, 6455.031f, 30.3868f };
					*uParam3 = 134.28f;
					return true;
					break;
				
				case 11:
					*uParam2 = { -121.0131f, 6457.11f, 30.3968f };
					*uParam3 = 134.28f;
					return true;
					break;
				
				case 12:
					*uParam2 = { -116.2802f, 6452.077f, 30.4043f };
					*uParam3 = 134.28f;
					return true;
					break;
				
				case 13:
					*uParam2 = { -122.554f, 6459.299f, 30.389f };
					*uParam3 = 134.28f;
					return true;
					break;
				
				case 14:
					*uParam2 = { -114.129f, 6451.374f, 30.397f };
					*uParam3 = 134.28f;
					return true;
					break;
				
				case 15:
					*uParam2 = { -121.178f, 6454.305f, 30.4685f };
					*uParam3 = 134.28f;
					return true;
					break;
			}
			break;
		
		case 49:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { 1175.162f, 2702.59f, 37.1778f };
					*uParam3 = 178.56f;
					return true;
					break;
				
				case 1:
					*uParam2 = { 1172.929f, 2702.168f, 37.1794f };
					*uParam3 = 178.56f;
					return true;
					break;
				
				case 2:
					*uParam2 = { 1177.414f, 2702.496f, 37.1761f };
					*uParam3 = 178.56f;
					return true;
					break;
				
				case 3:
					*uParam2 = { 1172.372f, 2697.427f, 36.9604f };
					*uParam3 = 178.56f;
					return true;
					break;
				
				case 4:
					*uParam2 = { 1174.931f, 2697.345f, 36.9799f };
					*uParam3 = 178.56f;
					return true;
					break;
				
				case 5:
					*uParam2 = { 1169.422f, 2697.394f, 36.897f };
					*uParam3 = 178.56f;
					return true;
					break;
				
				case 6:
					*uParam2 = { 1177.693f, 2697.39f, 36.981f };
					*uParam3 = 178.56f;
					return true;
					break;
				
				case 7:
					*uParam2 = { 1166.641f, 2697.207f, 36.8853f };
					*uParam3 = 178.56f;
					return true;
					break;
				
				case 8:
					*uParam2 = { 1181.822f, 2696.861f, 36.9742f };
					*uParam3 = 178.56f;
					return true;
					break;
				
				case 9:
					*uParam2 = { 1174.858f, 2694.826f, 36.9156f };
					*uParam3 = 178.56f;
					return true;
					break;
				
				case 10:
					*uParam2 = { 1172.459f, 2694.886f, 36.8525f };
					*uParam3 = 178.56f;
					return true;
					break;
				
				case 11:
					*uParam2 = { 1177.257f, 2694.765f, 36.9442f };
					*uParam3 = 178.56f;
					return true;
					break;
				
				case 12:
					*uParam2 = { 1170.059f, 2694.946f, 36.8091f };
					*uParam3 = 178.56f;
					return true;
					break;
				
				case 13:
					*uParam2 = { 1179.657f, 2694.705f, 36.9442f };
					*uParam3 = 178.56f;
					return true;
					break;
				
				case 14:
					*uParam2 = { 1166.986f, 2694.72f, 36.8146f };
					*uParam3 = 178.56f;
					return true;
					break;
				
				case 15:
					*uParam2 = { 1182.574f, 2694.467f, 36.9398f };
					*uParam3 = 178.56f;
					return true;
					break;
				
				case 16:
					*uParam2 = { 1164.385f, 2696.048f, 36.8095f };
					*uParam3 = 178.56f;
					return true;
					break;
				
				case 17:
					*uParam2 = { 1184.799f, 2695.899f, 36.9541f };
					*uParam3 = 178.56f;
					return true;
					break;
				
				case 18:
					*uParam2 = { 1177.067f, 2692.313f, 36.8877f };
					*uParam3 = 178.56f;
					return true;
					break;
				
				case 19:
					*uParam2 = { 1171.899f, 2692.599f, 36.8748f };
					*uParam3 = 178.56f;
					return true;
					break;
			}
			break;
		
		case 50:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { -2968.502f, 482.859f, 14.4687f };
					*uParam3 = 87.48f;
					return true;
					break;
				
				case 1:
					*uParam2 = { -2968.406f, 485.0569f, 14.4687f };
					*uParam3 = 87.48f;
					return true;
					break;
				
				case 2:
					*uParam2 = { -2968.599f, 480.6612f, 14.4687f };
					*uParam3 = 87.48f;
					return true;
					break;
				
				case 3:
					*uParam2 = { -2968.309f, 487.2548f, 14.4687f };
					*uParam3 = 87.48f;
					return true;
					break;
				
				case 4:
					*uParam2 = { -2968.696f, 478.4633f, 14.4687f };
					*uParam3 = 87.48f;
					return true;
					break;
				
				case 5:
					*uParam2 = { -2968.212f, 489.4527f, 14.4277f };
					*uParam3 = 87.48f;
					return true;
					break;
				
				case 6:
					*uParam2 = { -2968.792f, 476.2654f, 14.4687f };
					*uParam3 = 87.48f;
					return true;
					break;
				
				case 7:
					*uParam2 = { -2968.116f, 491.6505f, 14.3001f };
					*uParam3 = 87.48f;
					return true;
					break;
				
				case 8:
					*uParam2 = { -2968.889f, 474.0675f, 14.4687f };
					*uParam3 = 87.48f;
					return true;
					break;
				
				case 9:
					*uParam2 = { -2970.7f, 482.9558f, 14.454f };
					*uParam3 = 87.48f;
					return true;
					break;
				
				case 10:
					*uParam2 = { -2970.604f, 485.1537f, 14.4542f };
					*uParam3 = 87.48f;
					return true;
					break;
				
				case 11:
					*uParam2 = { -2970.797f, 480.7579f, 14.4542f };
					*uParam3 = 87.48f;
					return true;
					break;
				
				case 12:
					*uParam2 = { -2970.507f, 487.3515f, 14.4555f };
					*uParam3 = 87.48f;
					return true;
					break;
				
				case 13:
					*uParam2 = { -2970.894f, 478.56f, 14.4464f };
					*uParam3 = 87.48f;
					return true;
					break;
				
				case 14:
					*uParam2 = { -2970.41f, 489.5494f, 14.3552f };
					*uParam3 = 87.48f;
					return true;
					break;
				
				case 15:
					*uParam2 = { -2970.99f, 476.3622f, 14.4453f };
					*uParam3 = 87.48f;
					return true;
					break;
			}
			break;
		
		case 51:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { -564.774f, 274.1477f, 82.0197f };
					*uParam3 = 174.24f;
					return true;
					break;
				
				case 1:
					*uParam2 = { -567.7444f, 273.9719f, 82.0197f };
					*uParam3 = 174.24f;
					return true;
					break;
				
				case 2:
					*uParam2 = { -561.5562f, 273.0459f, 82.0197f };
					*uParam3 = 174.24f;
					return true;
					break;
				
				case 3:
					*uParam2 = { -569.4955f, 274.2109f, 81.9751f };
					*uParam3 = 174.24f;
					return true;
					break;
				
				case 4:
					*uParam2 = { -559.7354f, 272.8479f, 82.0197f };
					*uParam3 = 174.24f;
					return true;
					break;
				
				case 5:
					*uParam2 = { -571.3306f, 274.4099f, 81.9203f };
					*uParam3 = 174.24f;
					return true;
					break;
				
				case 6:
					*uParam2 = { -557.8665f, 272.9491f, 82.0197f };
					*uParam3 = 174.24f;
					return true;
					break;
				
				case 7:
					*uParam2 = { -573.0443f, 274.0808f, 81.8704f };
					*uParam3 = 174.24f;
					return true;
					break;
				
				case 8:
					*uParam2 = { -555.9487f, 272.6297f, 82.0141f };
					*uParam3 = 174.24f;
					return true;
					break;
				
				case 9:
					*uParam2 = { -565.772f, 272.2206f, 82.0197f };
					*uParam3 = 174.24f;
					return true;
					break;
				
				case 10:
					*uParam2 = { -568.3514f, 272.1779f, 82.0143f };
					*uParam3 = 174.24f;
					return true;
					break;
				
				case 11:
					*uParam2 = { -564.2276f, 271.7412f, 82.0197f };
					*uParam3 = 174.24f;
					return true;
					break;
				
				case 12:
					*uParam2 = { -570.3973f, 272.4509f, 81.953f };
					*uParam3 = 174.24f;
					return true;
					break;
				
				case 13:
					*uParam2 = { -561.945f, 271.4072f, 82.0197f };
					*uParam3 = 174.24f;
					return true;
					break;
				
				case 14:
					*uParam2 = { -572.3325f, 272.437f, 81.8957f };
					*uParam3 = 174.24f;
					return true;
					break;
				
				case 15:
					*uParam2 = { -557.6672f, 271.1332f, 82.0197f };
					*uParam3 = 174.24f;
					return true;
					break;
			}
			break;
		
		case 52:
		case 53:
		case 54:
		case 55:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { -72.7471f, 6268.503f, 30.3551f };
					*uParam3 = 33.84f;
					return true;
					break;
				
				case 1:
					*uParam2 = { -71.252f, 6269.506f, 30.3381f };
					*uParam3 = 33.84f;
					return true;
					break;
				
				case 2:
					*uParam2 = { -74.2422f, 6267.501f, 30.3655f };
					*uParam3 = 33.84f;
					return true;
					break;
				
				case 3:
					*uParam2 = { -69.757f, 6270.508f, 30.3211f };
					*uParam3 = 33.84f;
					return true;
					break;
				
				case 4:
					*uParam2 = { -75.7373f, 6266.499f, 30.3661f };
					*uParam3 = 33.84f;
					return true;
					break;
				
				case 5:
					*uParam2 = { -65.7448f, 6272.877f, 30.3366f };
					*uParam3 = 33.84f;
					return true;
					break;
				
				case 6:
					*uParam2 = { -73.7495f, 6269.999f, 30.3692f };
					*uParam3 = 33.84f;
					return true;
					break;
				
				case 7:
					*uParam2 = { -71.3678f, 6271.286f, 30.3678f };
					*uParam3 = 33.84f;
					return true;
					break;
				
				case 8:
					*uParam2 = { -75.2446f, 6268.996f, 30.3698f };
					*uParam3 = 33.84f;
					return true;
					break;
				
				case 9:
					*uParam2 = { -69.2828f, 6272.988f, 30.3674f };
					*uParam3 = 33.84f;
					return true;
					break;
				
				case 10:
					*uParam2 = { -77.1063f, 6267.988f, 30.3709f };
					*uParam3 = 33.84f;
					return true;
					break;
				
				case 11:
					*uParam2 = { -66.3738f, 6274.839f, 30.3656f };
					*uParam3 = 33.84f;
					return true;
					break;
				
				case 12:
					*uParam2 = { -75.0776f, 6272.224f, 30.3753f };
					*uParam3 = 33.84f;
					return true;
					break;
				
				case 13:
					*uParam2 = { -72.6832f, 6272.561f, 30.3721f };
					*uParam3 = 33.84f;
					return true;
					break;
				
				case 14:
					*uParam2 = { -76.2469f, 6270.491f, 30.374f };
					*uParam3 = 33.84f;
					return true;
					break;
				
				case 15:
					*uParam2 = { -70.6463f, 6274.261f, 30.3719f };
					*uParam3 = 33.84f;
					return true;
					break;
				
				case 16:
					*uParam2 = { -78.2708f, 6269.236f, 30.375f };
					*uParam3 = 33.84f;
					return true;
					break;
				
				case 17:
					*uParam2 = { -68.138f, 6275.899f, 30.3704f };
					*uParam3 = 33.84f;
					return true;
					break;
				
				case 18:
					*uParam2 = { -76.0953f, 6274.172f, 30.3855f };
					*uParam3 = 33.84f;
					return true;
					break;
				
				case 19:
					*uParam2 = { -74.2592f, 6273.991f, 30.3771f };
					*uParam3 = 33.84f;
					return true;
					break;
				
				case 20:
					*uParam2 = { -77.5563f, 6272.694f, 30.3797f };
					*uParam3 = 33.84f;
					return true;
					break;
				
				case 21:
					*uParam2 = { -72.7641f, 6274.994f, 30.3766f };
					*uParam3 = 33.84f;
					return true;
					break;
				
				case 22:
					*uParam2 = { -79.0887f, 6271.026f, 30.3795f };
					*uParam3 = 33.84f;
					return true;
					break;
				
				case 23:
					*uParam2 = { -70.7195f, 6275.979f, 30.375f };
					*uParam3 = 33.84f;
					return true;
					break;
				
				case 24:
					*uParam2 = { -77.6445f, 6275.719f, 30.4466f };
					*uParam3 = 33.84f;
					return true;
					break;
				
				case 25:
					*uParam2 = { -75.889f, 6276.884f, 30.4382f };
					*uParam3 = 33.84f;
					return true;
					break;
				
				case 26:
					*uParam2 = { -79.4104f, 6274.128f, 30.415f };
					*uParam3 = 33.84f;
					return true;
					break;
				
				case 27:
					*uParam2 = { -73.7665f, 6276.489f, 30.3905f };
					*uParam3 = 33.84f;
					return true;
					break;
				
				case 28:
					*uParam2 = { -80.4614f, 6271.917f, 30.3759f };
					*uParam3 = 33.84f;
					return true;
					break;
				
				case 29:
					*uParam2 = { -72.2714f, 6277.491f, 30.3836f };
					*uParam3 = 33.84f;
					return true;
					break;
				
				case 30:
					*uParam2 = { -81.9975f, 6273.217f, 30.3915f };
					*uParam3 = 33.84f;
					return true;
					break;
				
				case 31:
					*uParam2 = { -74.5183f, 6278.968f, 30.4459f };
					*uParam3 = 33.84f;
					return true;
					break;
			}
			break;
		
		case 56:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { 2449.992f, 4996.175f, 44.9741f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 1:
					*uParam2 = { 2451.792f, 4996.175f, 44.9628f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 2:
					*uParam2 = { 2448.192f, 4996.175f, 44.9928f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 3:
					*uParam2 = { 2453.592f, 4996.175f, 45.0961f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 4:
					*uParam2 = { 2445.453f, 4994.827f, 44.8929f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 5:
					*uParam2 = { 2443.447f, 4994.624f, 44.9117f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 6:
					*uParam2 = { 2448.743f, 4998.16f, 45.0098f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 7:
					*uParam2 = { 2451.125f, 4998.125f, 44.9975f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 8:
					*uParam2 = { 2446.477f, 4998.319f, 44.8937f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 9:
					*uParam2 = { 2453.592f, 4997.975f, 45.0223f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 10:
					*uParam2 = { 2443.211f, 4997.464f, 44.8304f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 11:
					*uParam2 = { 2456.785f, 4997.438f, 45.1597f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 12:
					*uParam2 = { 2448.787f, 4999.9f, 44.9323f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 13:
					*uParam2 = { 2451.372f, 5000.234f, 44.9962f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 14:
					*uParam2 = { 2446.619f, 4999.952f, 44.927f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 15:
					*uParam2 = { 2453.592f, 4999.775f, 45.0573f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 16:
					*uParam2 = { 2444.414f, 4999.121f, 44.8859f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 17:
					*uParam2 = { 2459.168f, 4999.514f, 45.0061f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 18:
					*uParam2 = { 2449.68f, 5002.222f, 44.8187f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 19:
					*uParam2 = { 2451.792f, 5001.575f, 44.9703f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 20:
					*uParam2 = { 2448.192f, 5001.575f, 44.87f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 21:
					*uParam2 = { 2453.592f, 5001.575f, 44.9638f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 22:
					*uParam2 = { 2446.392f, 5001.575f, 44.9074f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 23:
					*uParam2 = { 2456.798f, 5001.825f, 44.9865f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 24:
					*uParam2 = { 2449.49f, 5004.314f, 44.784f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 25:
					*uParam2 = { 2451.262f, 5003.836f, 44.7497f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 26:
					*uParam2 = { 2451.437f, 5006.339f, 44.6852f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 27:
					*uParam2 = { 2453.592f, 5003.375f, 44.8513f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 28:
					*uParam2 = { 2446.392f, 5003.375f, 44.8731f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 29:
					*uParam2 = { 2456.092f, 5005.15f, 44.7275f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 30:
					*uParam2 = { 2448.938f, 5006.702f, 44.8182f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 31:
					*uParam2 = { 2454.077f, 5005.971f, 44.5968f };
					*uParam3 = 0f;
					return true;
					break;
			}
			break;
	}
	return false;
}

bool func_46(var uParam0, var uParam1, var uParam2, var uParam3, var uParam4)//Position - 0x3720
{
	return false;
}

void func_47(var uParam0, var uParam1)//Position - 0x3729
{
}

char* func_48(var uParam0, var uParam1, var uParam2)//Position - 0x3731
{
	return "";
}

int func_49(int iParam0, var uParam1)//Position - 0x373B
{
	switch (iParam0)
	{
		case 42:
			return gameplay::is_bit_set(Global_1761466.f_17, 0);
			break;
		
		case 43:
			return gameplay::is_bit_set(Global_1761466.f_17, 1);
			break;
		
		case 44:
			return gameplay::is_bit_set(Global_1761466.f_17, 2);
			break;
		
		case 45:
			return gameplay::is_bit_set(Global_1761466.f_17, 3);
			break;
		
		case 46:
			return gameplay::is_bit_set(Global_1761466.f_17, 4);
			break;
		
		case 47:
			return gameplay::is_bit_set(Global_1761466.f_17, 5);
			break;
		
		case 48:
			return gameplay::is_bit_set(Global_1761466.f_17, 6);
			break;
		
		case 49:
			return gameplay::is_bit_set(Global_1761466.f_17, 7);
			break;
		
		case 50:
			return gameplay::is_bit_set(Global_1761466.f_17, 8);
			break;
		
		case 51:
			return gameplay::is_bit_set(Global_1761466.f_17, 9);
			break;
		
		case 52:
			return gameplay::is_bit_set(Global_1761466.f_17, 10);
			break;
		
		case 53:
			return gameplay::is_bit_set(Global_1761466.f_17, 11);
			break;
		
		case 54:
			return gameplay::is_bit_set(Global_1761466.f_17, 12);
			break;
		
		case 55:
			return gameplay::is_bit_set(Global_1761466.f_17, 13);
			break;
		
		case 56:
			return gameplay::is_bit_set(Global_1761466.f_17, 14);
			break;
	}
	return false;
}

void func_50(var uParam0, var uParam1)//Position - 0x38AB
{
}

void func_51(var uParam0, var uParam1, var uParam2, var uParam3, var uParam4)//Position - 0x38B3
{
}

bool func_52(var uParam0, var uParam1)//Position - 0x38BB
{
	return false;
}

bool func_53(var uParam0, var uParam1)//Position - 0x38C4
{
	return false;
}

char* func_54(var uParam0, var uParam1)//Position - 0x38CD
{
	return "";
}

bool func_55(var uParam0, var uParam1)//Position - 0x38D7
{
	return false;
}

bool func_56(var uParam0)//Position - 0x38E0
{
	return true;
}

void func_57(var uParam0, var uParam1, var uParam2, var uParam3, var uParam4)//Position - 0x38E9
{
}

void func_58(int iParam0, var uParam1)//Position - 0x38F1
{
	switch (iParam0)
	{
		case 42:
			*uParam1 = { 429.3781f, -980.3966f, 29.7103f };
			break;
		
		case 43:
			*uParam1 = { 2447.739f, 4990.434f, 45.5476f };
			break;
		
		case 44:
			*uParam1 = { -1214.839f, -326.6806f, 36.6732f };
			break;
		
		case 45:
			*uParam1 = { 151.2385f, -1035.917f, 28.3395f };
			break;
		
		case 46:
			*uParam1 = { 315.4561f, -274.3907f, 52.9229f };
			break;
		
		case 47:
			*uParam1 = { -349.5591f, -44.8894f, 48.0418f };
			break;
		
		case 48:
			*uParam1 = { -110.9303f, 6462.298f, 30.6408f };
			break;
		
		case 49:
			*uParam1 = { 1175.11f, 2702.038f, 37.1778f };
			break;
		
		case 50:
			*uParam1 = { -2966.651f, 482.9674f, 14.6977f };
			break;
		
		case 51:
			*uParam1 = { -564.5693f, 274.6833f, 82.0197f };
			break;
		
		case 52:
		case 53:
		case 54:
		case 55:
			*uParam1 = { -72.7412f, 6268.026f, 30.3276f };
			break;
		
		case 56:
			*uParam1 = { 2447.739f, 4990.434f, 45.5476f };
			break;
	}
}

void func_59(var uParam0, var uParam1)//Position - 0x3A62
{
}

char* func_60(int iParam0)//Position - 0x3A6A
{
	switch (iParam0)
	{
		case 42:
			return "RST_INT_POLICE_ST";
			break;
		
		case 43:
			return "RST_INT_CLUBHOUSE";
			break;
		
		case 44:
			return "RST_INT_B_ROCKFORD";
			break;
		
		case 45:
			return "RST_INT_B_PILLBOX";
			break;
		
		case 46:
			return "RST_INT_B_ALTA";
			break;
		
		case 47:
			return "RST_INT_B_BURTON";
			break;
		
		case 48:
			return "RST_INT_B_PALETO";
			break;
		
		case 49:
			return "RST_INT_B_GRAND_SENORA";
			break;
		
		case 50:
			return "RST_INT_B_CHUMASH";
			break;
		
		case 51:
			return "RST_INT_ROCKCLUB";
			break;
		
		case 52:
			return "RST_INT_CHICKEN1";
			break;
		
		case 53:
			return "RST_INT_CHICKEN2";
			break;
		
		case 54:
			return "RST_INT_CHICKEN3";
			break;
		
		case 55:
			return "RST_INT_CHICKEN4";
			break;
		
		case 56:
			return "RST_INT_FARM";
			break;
	}
	return "";
}

void func_61(var uParam0, var uParam1)//Position - 0x3B5B
{
	uParam1->f_3 = 1;
}

void func_62(int iParam0, char* sParam1, var uParam2, var uParam3)//Position - 0x3B68
{
	int iVar0;
	
	iVar0 = func_65(iParam0);
	if (iVar0 != -1)
	{
		*uParam2 = { func_64(iVar0) };
		StringCopy(sParam1, func_63(iVar0), 64);
	}
}

char* func_63(int iParam0)//Position - 0x3B92
{
	switch (iParam0)
	{
		case 1:
			return "bkr_biker_dlc_int_03";
		
		case 0:
			return "hei_heist_police_dlc";
		
		case 2:
			return "v_genbank";
		
		case 3:
			return "v_genbank";
		
		case 4:
			return "v_genbank";
		
		case 5:
			return "v_genbank";
		
		case 6:
			return "v_bank4";
		
		case 7:
			return "v_genbank";
		
		case 8:
			return "hei_generic_bank_dlc";
		
		case 9:
			return "v_rockclub";
		
		case 10:
			return "v_factory1";
		
		case 11:
			return "v_factory2";
		
		case 12:
			return "v_factory3";
		
		case 13:
			return "v_factory4";
		
		case 14:
			return "v_farmhouse";
		
		default:
	}
	return "";
}

Vector3 func_64(int iParam0)//Position - 0x3C66
{
	switch (iParam0)
	{
		case 1:
			return 984.1552f, -95.3662f, 75.9326f;
		
		case 0:
			return 443.2281f, -984.0744f, 29.6896f;
		
		case 2:
			return -1216.762f, -333.0008f, 36.8508f;
		
		case 3:
			return 145.4168f, -1039.277f, 28.4379f;
		
		case 4:
			return 309.7465f, -277.6442f, 53.2346f;
		
		case 5:
			return -355.4359f, -48.5326f, 48.1064f;
		
		case 6:
			return -109.4503f, 6467.768f, 30.4388f;
		
		case 7:
			return 1179.745f, 2706.985f, 37.1578f;
		
		case 8:
			return -2962.591f, 478.238f, 14.7669f;
		
		case 9:
			return -556.5089f, 286.3181f, 81.1763f;
		
		case 10:
			return -76.6618f, 6222.191f, 32.2412f;
		
		case 11:
			return -100.7106f, 6205.7f, 30.0499f;
		
		case 12:
			return -125.6972f, 6172.923f, 30.0499f;
		
		case 13:
			return -162.4785f, 6155.384f, 30.0499f;
		
		case 14:
			return 2449.785f, 4983.825f, 45.8106f;
		
		default:
	}
	return 0f, 0f, 0f;
}

int func_65(int iParam0)//Position - 0x3DE0
{
	int iVar0;
	int iVar1;
	
	if (func_384(iParam0) == 3)
	{
		iVar0 = 0;
		while (iVar0 < 15)
		{
			iVar1 = iVar0;
			if (func_66(iVar1) == iParam0)
			{
				return iVar1;
			}
			iVar0++;
		}
	}
	return -1;
}

int func_66(int iParam0)//Position - 0x3E1A
{
	switch (iParam0)
	{
		case 0:
			return 42;
			break;
		
		case 1:
			return 43;
			break;
		
		case 2:
			return 44;
			break;
		
		case 3:
			return 45;
			break;
		
		case 4:
			return 46;
			break;
		
		case 5:
			return 47;
			break;
		
		case 6:
			return 48;
			break;
		
		case 7:
			return 49;
			break;
		
		case 8:
			return 50;
			break;
		
		case 9:
			return 51;
			break;
		
		case 10:
			return 52;
			break;
		
		case 11:
			return 53;
			break;
		
		case 12:
			return 54;
			break;
		
		case 13:
			return 55;
			break;
		
		case 14:
			return 56;
			break;
	}
	return -1;
}

bool func_67(int iParam0)//Position - 0x3EFC
{
	if (network::network_is_activity_session())
	{
		return false;
	}
	switch (iParam0)
	{
		case 42:
			if (gameplay::is_bit_set(Global_1761466.f_17, 0))
			{
				return true;
			}
			break;
		
		case 43:
			if (gameplay::is_bit_set(Global_1761466.f_17, 1))
			{
				return true;
			}
			break;
		
		case 44:
			if (gameplay::is_bit_set(Global_1761466.f_17, 2))
			{
				return true;
			}
			break;
		
		case 45:
			if (gameplay::is_bit_set(Global_1761466.f_17, 3))
			{
				return true;
			}
			break;
		
		case 46:
			if (gameplay::is_bit_set(Global_1761466.f_17, 4))
			{
				return true;
			}
			break;
		
		case 47:
			if (gameplay::is_bit_set(Global_1761466.f_17, 5))
			{
				return true;
			}
			break;
		
		case 48:
			if (gameplay::is_bit_set(Global_1761466.f_17, 6))
			{
				return true;
			}
			break;
		
		case 49:
			if (gameplay::is_bit_set(Global_1761466.f_17, 7))
			{
				return true;
			}
			break;
		
		case 50:
			if (gameplay::is_bit_set(Global_1761466.f_17, 8))
			{
				return true;
			}
			break;
		
		case 51:
			if (gameplay::is_bit_set(Global_1761466.f_17, 9))
			{
				return true;
			}
			break;
		
		case 52:
			if (gameplay::is_bit_set(Global_1761466.f_17, 10))
			{
				return true;
			}
			break;
		
		case 53:
			if (gameplay::is_bit_set(Global_1761466.f_17, 11))
			{
				return true;
			}
			break;
		
		case 54:
			if (gameplay::is_bit_set(Global_1761466.f_17, 12))
			{
				return true;
			}
			break;
		
		case 55:
			if (gameplay::is_bit_set(Global_1761466.f_17, 13))
			{
				return true;
			}
			break;
		
		case 56:
			if (gameplay::is_bit_set(Global_1761466.f_17, 14))
			{
				return true;
			}
			break;
	}
	return false;
}

void func_68(var uParam0, int iParam1)//Position - 0x40B3
{
	switch (iParam1)
	{
		case 0:
			*uParam0 = 62083/*func_199*/;
			break;
		
		case 1:
			uParam0->f_1 = 61778/*func_198*/;
			break;
		
		case 2:
			uParam0->f_2 = 56959/*func_192*/;
			break;
		
		case 3:
			uParam0->f_3 = 56770/*func_191*/;
			break;
		
		case 4:
			uParam0->f_4 = 56420/*func_190*/;
			break;
		
		case 5:
			uParam0->f_5 = 55845/*func_189*/;
			break;
		
		case 6:
			uParam0->f_6 = 55823/*func_188*/;
			break;
		
		case 7:
			uParam0->f_7 = 53299/*func_147*/;
			break;
		
		case 8:
			uParam0->f_8 = 53215/*func_146*/;
			break;
		
		case 9:
			uParam0->f_9 = 52705/*func_142*/;
			break;
		
		case 10:
			uParam0->f_10 = 52491/*func_137*/;
			break;
		
		case 11:
			uParam0->f_11 = 52447/*func_136*/;
			break;
		
		case 12:
			uParam0->f_12 = 52212/*func_135*/;
			break;
		
		case 13:
			uParam0->f_13 = 51346/*func_121*/;
			break;
		
		case 14:
			uParam0->f_14 = 51204/*func_120*/;
			break;
		
		case 15:
			uParam0->f_15 = 50776/*func_118*/;
			break;
		
		case 16:
			uParam0->f_16 = 49998/*func_110*/;
			break;
		
		case 17:
			uParam0->f_17 = 47419/*func_109*/;
			break;
		
		case 18:
			uParam0->f_18 = 21577/*func_108*/;
			break;
		
		case 19:
			uParam0->f_19 = 21349/*func_107*/;
			break;
		
		case 20:
			uParam0->f_20 = 21173/*func_106*/;
			break;
		
		case 21:
			uParam0->f_21 = 20940/*func_105*/;
			break;
		
		case 22:
			uParam0->f_22 = 20904/*func_104*/;
			break;
		
		case 23:
			uParam0->f_23 = 20671/*func_99*/;
			break;
		
		case 24:
			uParam0->f_24 = 20662/*func_98*/;
			break;
		
		case 25:
			uParam0->f_25 = 20479/*func_97*/;
			break;
		
		case 26:
			uParam0->f_26 = 20459/*func_96*/;
			break;
		
		case 27:
			uParam0->f_27 = 20228/*func_95*/;
			break;
		
		case 28:
			uParam0->f_28 = 18876/*func_80*/;
			break;
		
		case 29:
			uParam0->f_29 = 18165/*func_78*/;
			break;
		
		case 30:
			uParam0->f_30 = 18157/*func_77*/;
			break;
		
		case 31:
			uParam0->f_31 = 18149/*func_76*/;
			break;
		
		case 32:
			uParam0->f_32 = 18088/*func_75*/;
			break;
		
		case 33:
			uParam0->f_33 = 18071/*func_74*/;
			break;
		
		case 34:
			uParam0->f_34 = 18062/*func_73*/;
			break;
		
		case 35:
			uParam0->f_35 = 18053/*func_72*/;
			break;
		
		case 36:
			uParam0->f_36 = 17549/*func_71*/;
			break;
		
		case 37:
			uParam0->f_37 = 17285/*func_70*/;
			break;
		
		case 38:
			uParam0->f_38 = 17240/*func_69*/;
			break;
	}
}

void func_69(int iParam0, var uParam1, var uParam2, var uParam3)//Position - 0x4358
{
	if (iParam0 == 38)
	{
		*uParam1 = 1;
		*uParam2 = { 135.4647f, -2474.173f, 5f };
		*uParam3 = 5f;
		return;
	}
	*uParam1 = 0;
}

bool func_70(int iParam0, int iParam1, var uParam2, var uParam3, var uParam4, var uParam5)//Position - 0x4385
{
	*uParam4 = 200f;
	switch (iParam0)
	{
		case 38:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { 144.5453f, -2486.429f, 6.1636f };
					*uParam3 = 4f;
					*uParam5 = joaat("prop_fnclink_04gate1");
					return true;
					break;
			}
			break;
		
		case 34:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { 375.9739f, 3586.175f, 32.3049f };
					*uParam3 = 4f;
					*uParam5 = joaat("prop_rub_chassis_01");
					return true;
					break;
			}
			break;
		
		case 33:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { 2876.753f, 4457.728f, 47.5327f };
					*uParam3 = 4f;
					*uParam5 = 1861370687;
					return true;
					break;
			}
			break;
		
		case 26:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { -181.1744f, 6315.724f, 30.4581f };
					*uParam3 = 2f;
					*uParam5 = 666561306;
					return true;
					break;
			}
			break;
	}
	return false;
}

void func_71(int iParam0, var uParam1, var uParam2, var uParam3)//Position - 0x448D
{
	if (iParam0 == 23)
	{
		*uParam2 = { 416.2334f, 6526.307f, 26.178f };
		*uParam3 = { 425.155f, 6537.515f, 30.0163f };
		*uParam1 = 1;
		return;
	}
	else if (iParam0 == 24)
	{
		*uParam2 = { 58.1605f, 6463.741f, 29.8964f };
		*uParam3 = { 71.6159f, 6473.882f, 33.6967f };
		*uParam1 = 1;
		return;
	}
	else if (iParam0 == 25)
	{
		*uParam2 = { -420.1546f, 6147.26f, 29.8735f };
		*uParam3 = { -397.088f, 6185.627f, 34.9226f };
		*uParam1 = 1;
		return;
	}
	else if (iParam0 == 30)
	{
		*uParam2 = { -1181.309f, -1391.505f, 3.497f };
		*uParam3 = { -1168.151f, -1370.608f, 8.047f };
		*uParam1 = 1;
		return;
	}
	else if (iParam0 == 31)
	{
		*uParam2 = { 297.8819f, -706.9392f, 27.3973f };
		*uParam3 = { 321.2971f, -689.0288f, 32.2224f };
		*uParam1 = 1;
		return;
	}
	else if (iParam0 == 32)
	{
		*uParam2 = { 202.1808f, 2454.896f, 54.6059f };
		*uParam3 = { 212.2262f, 2464.708f, 59.9501f };
		*uParam1 = 1;
		return;
	}
	else if (iParam0 == 35)
	{
		*uParam2 = { 640.6338f, 2771.818f, 40.4589f };
		*uParam3 = { 653.1158f, 2794.839f, 45.5267f };
		*uParam1 = 1;
		return;
	}
	else if (iParam0 == 36)
	{
		*uParam2 = { 1658.091f, 4851.492f, 40.5298f };
		*uParam3 = { 1665.266f, 4864.598f, 44.0774f };
		*uParam1 = 1;
		return;
	}
	else if (iParam0 == 41)
	{
		*uParam2 = { -341.0086f, -2789.826f, 3.5734f };
		*uParam3 = { -331.4757f, -2772.298f, 7.5039f };
		*uParam1 = 1;
		return;
	}
	*uParam1 = 0;
}

bool func_72(var uParam0)//Position - 0x4685
{
	return true;
}

bool func_73(var uParam0)//Position - 0x468E
{
	return true;
}

void func_74(var uParam0, var uParam1)//Position - 0x4697
{
	gameplay::clear_bit(&(uParam0->f_103), 1);
}

void func_75(var uParam0, var uParam1)//Position - 0x46A8
{
	if (!gameplay::is_bit_set(uParam0->f_103, 1))
	{
		if (player::get_player_wanted_level(player::player_id()) > 0)
		{
			player::set_player_wanted_level(player::player_id(), 0, 0);
			player::set_player_wanted_level_now(player::player_id(), 0);
		}
		gameplay::set_bit(&(uParam0->f_103), 1);
	}
}

void func_76(var uParam0, var uParam1)//Position - 0x46E5
{
}

void func_77(var uParam0, var uParam1, var uParam2, var uParam3)//Position - 0x46ED
{
}

Vector3 func_78(int iParam0)//Position - 0x46F5
{
	switch (func_79(iParam0))
	{
		case 1:
			return 22.9f, 6307.98f, 0f;
		
		case 2:
			return 410.88f, 6515.83f, 0f;
		
		case 3:
			return 31.28f, 6466.3f, 0f;
		
		case 4:
			return -417.89f, 6152.75f, 0f;
		
		case 5:
			return -167.33f, 6326.04f, 0f;
		
		case 6:
			return 1447.56f, -1666.12f, 0f;
		
		case 7:
			return 121.81f, 187.86f, 0f;
		
		case 8:
			return -1477.83f, -379.04f, 0f;
		
		case 9:
			return -1159.31f, -1381.69f, 0f;
		
		case 10:
			return 268.15f, -726.74f, 0f;
		
		case 11:
			return 195.23f, 2467.11f, 0f;
		
		case 12:
			return 2861.52f, 4453.81f, 0f;
		
		case 13:
			return 385.99f, 3575.13f, 0f;
		
		case 14:
			return 628.56f, 2798.91f, 0f;
		
		case 15:
			return 1652.13f, 4843.88f, 0f;
		
		case 16:
			return 1212.35f, -3145.12f, 0f;
		
		case 17:
			return 129.28f, -2469.72f, 0f;
		
		case 18:
			return -227.57f, -2586.04f, 0f;
		
		case 19:
			return 678.49f, -2680.5f, 0f;
		
		case 20:
			return -306.09f, -2780.97f, 0f;
		
		default:
	}
	return 0f, 0f, 0f;
}

int func_79(int iParam0)//Position - 0x489B
{
	switch (iParam0)
	{
		case 22:
			return 1;
			break;
		
		case 23:
			return 2;
			break;
		
		case 24:
			return 3;
			break;
		
		case 25:
			return 4;
			break;
		
		case 26:
			return 5;
			break;
		
		case 27:
			return 6;
			break;
		
		case 28:
			return 7;
			break;
		
		case 29:
			return 8;
			break;
		
		case 30:
			return 9;
			break;
		
		case 31:
			return 10;
			break;
		
		case 32:
			return 11;
			break;
		
		case 33:
			return 12;
			break;
		
		case 34:
			return 13;
			break;
		
		case 35:
			return 14;
			break;
		
		case 36:
			return 15;
			break;
		
		case 37:
			return 16;
			break;
		
		case 38:
			return 17;
			break;
		
		case 39:
			return 18;
			break;
		
		case 40:
			return 19;
			break;
		
		case 41:
			return 20;
			break;
	}
	return 0;
}

int func_80(var uParam0)//Position - 0x49BC
{
	int iVar0;
	
	if (func_93())
	{
		return func_85(func_86(player::player_id()));
	}
	else if (func_82(player::player_id(), 0))
	{
		iVar0 = func_81();
		return func_85(func_86(iVar0));
	}
	return 4;
}

var func_81()//Position - 0x49FD
{
	return Global_1618089[player::player_id() /*390*/].f_11;
}

int func_82(int iParam0, int iParam1)//Position - 0x4A12
{
	return func_83(iParam0, iParam1, 1);
}

bool func_83(int iParam0, int iParam1, int iParam2)//Position - 0x4A23
{
	int iVar0;
	
	if (iParam0 == func_9())
	{
		return false;
	}
	if (!iParam1)
	{
		if (func_84(iParam0, iParam2))
		{
			return false;
		}
	}
	iVar0 = Global_1618089[iParam0 /*390*/].f_11;
	if (iVar0 != func_9() && Global_1618089[iVar0 /*390*/].f_11.f_289 == iParam2)
	{
		return true;
	}
	return false;
}

bool func_84(int iParam0, int iParam1)//Position - 0x4A7F
{
	if (iParam0 != func_9())
	{
		if (Global_1618089[iParam0 /*390*/].f_11 != func_9())
		{
			if (Global_1618089[iParam0 /*390*/].f_11 == iParam0 && Global_1618089[iParam0 /*390*/].f_11.f_289 == iParam1)
			{
				return true;
			}
		}
	}
	return false;
}

int func_85(int iParam0)//Position - 0x4ACE
{
	int iVar0;
	int iVar1;
	int iVar2;
	int iVar3;
	
	switch (iParam0)
	{
		case 1:
			return 4;
		
		case 0:
			return 4;
		
		case 6:
			return 59;
		
		case 18:
			return 2;
		
		case 13:
			return 5;
		
		case 116:
			return 38;
		
		case 28:
			return 6;
		
		case 29:
			return 7;
		
		case 30:
			return 8;
		
		case 31:
			return 9;
		
		case 32:
			return 10;
		
		case 33:
			return 11;
		
		case 34:
			return 12;
		
		case 35:
			return 13;
		
		case 36:
			return 14;
		
		case 37:
			return 15;
		
		case 38:
			return 16;
		
		case 39:
			return 17;
		
		case 40:
			return 18;
		
		case 41:
			return 19;
		
		case 42:
			return 20;
		
		case 43:
			return 21;
		
		case 44:
			return 22;
		
		case 45:
			return 23;
		
		case 46:
			return 24;
		
		case 47:
			return 25;
		
		case 48:
			return 26;
		
		case 49:
			return 27;
		
		case 50:
			return 28;
		
		case 51:
			return 29;
		
		case 52:
			return 30;
		
		case 53:
			return 31;
		
		case 54:
			return 32;
		
		case 55:
			return 33;
		
		case 56:
			return 34;
		
		case 57:
			return 35;
		
		case 58:
			return 36;
		
		case 59:
			return 37;
		
		case 9:
			return 57;
		
		case 10:
			return 53;
		
		case 118:
			return 57;
		
		case 14:
			return 56;
		
		case 3:
			return 55;
		
		case 21:
			return 50;
		
		case 15:
			return 51;
		
		case 20:
			return 52;
		
		case 11:
			return 54;
		
		case 23:
			return 58;
		
		case 12:
			return 60;
		
		case 24:
			return 61;
		
		case 4:
			return 62;
		
		default:
	}
	ui::get_hud_colour(iParam0, &iVar0, &iVar1, &iVar2, &iVar3);
	return ((((iVar0 * 16777216) + (iVar1 * 65536)) + iVar2 * 256) + iVar3);
	return 0;
}

int func_86(int iParam0)//Position - 0x4D36
{
	int iVar0;
	
	iVar0 = func_89(iParam0);
	if (iVar0 != -1)
	{
		return func_87(iVar0);
	}
	return 1;
}

int func_87(int iParam0)//Position - 0x4D56
{
	int iVar0;
	
	if (iParam0 > -1)
	{
		iVar0 = func_88(iParam0);
		switch (iVar0)
		{
			case 0:
				return 192;
			
			case 1:
				return 193;
			
			case 2:
				return 194;
			
			case 3:
				return 195;
			
			case 4:
				return 196;
			
			case 5:
				return 197;
			
			case 6:
				return 198;
			
			case 7:
				return 199;
			
			case 8:
				return 200;
			
			case 9:
				return 201;
			
			case 10:
				return 202;
			
			case 11:
				return 203;
			
			case 12:
				return 204;
			
			case 13:
				return 205;
			
			case 14:
				return 206;
			}
		
		default:
	}
	return 1;
}

var func_88(int iParam0)//Position - 0x4E19
{
	return Global_2415705.f_1946.f_44[iParam0 /*2*/].f_1;
}

int func_89(int iParam0)//Position - 0x4E30
{
	if (!iParam0 == func_9())
	{
		if (func_91(iParam0, 1))
		{
			return Global_2415705.f_1946.f_11[func_90(iParam0)];
		}
	}
	return -1;
}

int func_90(int iParam0)//Position - 0x4E62
{
	if (iParam0 != func_9())
	{
		return Global_1618089[iParam0 /*390*/].f_11;
	}
	return func_9();
}

int func_91(int iParam0, int iParam1)//Position - 0x4E85
{
	if (!iParam1)
	{
		if (func_92(iParam0))
		{
			return false;
		}
	}
	return Global_1618089[iParam0 /*390*/].f_11 != func_9();
}

int func_92(int iParam0)//Position - 0x4EB0
{
	if (iParam0 != func_9())
	{
		if (Global_1618089[iParam0 /*390*/].f_11 != func_9())
		{
			return Global_1618089[iParam0 /*390*/].f_11 == iParam0;
		}
	}
	return false;
}

int func_93()//Position - 0x4EE5
{
	return func_94(player::player_id());
}

int func_94(int iParam0)//Position - 0x4EF5
{
	return func_84(iParam0, 1);
}

void func_95(int iParam0, var uParam1, var uParam2, var uParam3)//Position - 0x4F04
{
	switch (iParam0)
	{
		case 22:
		case 27:
		case 32:
		case 37:
			ui::set_blip_name_from_text_file(*uParam1, "BIKER_WH_1B");
			return;
			break;
		
		case 23:
		case 28:
		case 33:
		case 38:
			ui::set_blip_name_from_text_file(*uParam1, "BIKER_WH_2B");
			return;
			break;
		
		case 24:
		case 29:
		case 34:
		case 39:
			ui::set_blip_name_from_text_file(*uParam1, "BIKER_WH_3B");
			return;
			break;
		
		case 25:
		case 30:
		case 35:
		case 40:
			ui::set_blip_name_from_text_file(*uParam1, "BIKER_WH_4B");
			return;
			break;
		
		case 26:
		case 31:
		case 36:
		case 41:
			ui::set_blip_name_from_text_file(*uParam1, "BIKER_WH_5B");
			return;
			break;
	}
	ui::set_blip_name_from_text_file(*uParam1, "BIKER_WH_1B");
}

Vector3 func_96(int iParam0)//Position - 0x4FEB
{
	vector3 vVar0;
	
	func_189(iParam0, &vVar0);
	return vVar0;
}

int func_97(int iParam0)//Position - 0x4FFF
{
	switch (iParam0)
	{
		case 22:
		case 27:
		case 32:
		case 37:
			return 499;
			break;
		
		case 23:
		case 28:
		case 33:
		case 38:
			return 496;
			break;
		
		case 24:
		case 29:
		case 34:
		case 39:
			return 497;
			break;
		
		case 25:
		case 30:
		case 35:
		case 40:
			return 500;
			break;
		
		case 26:
		case 31:
		case 36:
		case 41:
			return 498;
			break;
	}
	return 473;
}

bool func_98(var uParam0)//Position - 0x50B6
{
	return true;
}

bool func_99(int iParam0)//Position - 0x50BF
{
	if (func_101(player::player_id(), 1))
	{
		return false;
	}
	if (func_100() == iParam0)
	{
		return false;
	}
	if (func_146(player::player_id(), iParam0))
	{
		if (!func_147(iParam0))
		{
			return true;
		}
	}
	return false;
}

var func_100()//Position - 0x5100
{
	return Global_1760739.f_1;
}

bool func_101(int iParam0, int iParam1)//Position - 0x510E
{
	if (iParam1)
	{
		if (func_102(iParam0))
		{
			return true;
		}
	}
	if ((((Global_1589933[iParam0 /*601*/] == 2 || Global_1589933[iParam0 /*601*/] == 1) || Global_1589933[iParam0 /*601*/] == 0) || Global_1589933[iParam0 /*601*/] == 3) || Global_1589933[iParam0 /*601*/] == 8)
	{
		return true;
	}
	return false;
}

int func_102(var uParam0)//Position - 0x5180
{
	return func_103(uParam0);
}

int func_103(var uParam0)//Position - 0x518E
{
	return gameplay::is_bit_set(Global_1589933[uParam0 /*601*/].f_13.f_1, 0);
}

int func_104(var uParam0)//Position - 0x51A8
{
	return (gameplay::is_bit_set(Global_1760739.f_2, 2) || gameplay::is_bit_set(Global_1760739.f_2, 0));
}

void func_105(int iParam0, char* sParam1, var uParam2, var uParam3)//Position - 0x51CC
{
	if (*uParam2 != 3)
	{
		return;
	}
	switch (iParam0)
	{
		case 22:
		case 27:
		case 32:
		case 37:
			StringCopy(sParam1, "BIKER_WH_1", 64);
			break;
		
		case 23:
		case 28:
		case 33:
		case 38:
			StringCopy(sParam1, "BIKER_WH_2", 64);
			break;
		
		case 24:
		case 29:
		case 34:
		case 39:
			StringCopy(sParam1, "BIKER_WH_3", 64);
			break;
		
		case 25:
		case 30:
		case 35:
		case 40:
			StringCopy(sParam1, "BIKER_WH_4", 64);
			break;
		
		case 26:
		case 31:
		case 36:
		case 41:
			StringCopy(sParam1, "BIKER_WH_5", 64);
			break;
		
		default:
			StringCopy(sParam1, "MP_WHOUSE_EXIT", 64);
			break;
	}
	*uParam3 = 2;
	(*uParam2)[0] = "BIKER_WH_EXITa";
	(*uParam2)[1] = "BIKER_WH_EXITb";
}

int func_106(int iParam0)//Position - 0x52B5
{
	switch (iParam0)
	{
		case 24:
		case 29:
		case 34:
		case 39:
			return 20;
			break;
		
		case 22:
		case 27:
		case 32:
		case 37:
			return 21;
			break;
		
		case 23:
		case 28:
		case 33:
		case 38:
			return 22;
			break;
		
		case 26:
		case 31:
		case 36:
		case 41:
			return 23;
			break;
		
		case 25:
		case 30:
		case 35:
		case 40:
			return 24;
			break;
	}
	return -1;
}

int func_107(int iParam0)//Position - 0x5365
{
	switch (iParam0)
	{
		case 22:
			return 0;
		
		case 24:
			return 1;
		
		case 23:
			return 2;
		
		case 26:
			return 3;
		
		case 25:
			return 4;
		
		case 27:
			return 5;
		
		case 29:
			return 6;
		
		case 28:
			return 7;
		
		case 31:
			return 8;
		
		case 30:
			return 9;
		
		case 32:
			return 10;
		
		case 34:
			return 11;
		
		case 33:
			return 12;
		
		case 36:
			return 13;
		
		case 35:
			return 14;
		
		case 37:
			return 15;
		
		case 39:
			return 16;
		
		case 38:
			return 17;
		
		case 41:
			return 18;
		
		case 40:
			return 19;
		
		default:
	}
	return -1;
}

bool func_108(int iParam0, int iParam1, var uParam2, var uParam3, var uParam4)//Position - 0x5449
{
	switch (iParam0)
	{
		case 22:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { 52.388f, 6339.683f, 30.3747f };
					*uParam3 = 29.88f;
					return true;
					break;
				
				case 1:
					*uParam2 = { 50.1165f, 6337.813f, 30.384f };
					*uParam3 = 29.88f;
					return true;
					break;
				
				case 2:
					*uParam2 = { 54.0991f, 6340.208f, 30.3764f };
					*uParam3 = 29.88f;
					return true;
					break;
				
				case 3:
					*uParam2 = { 51.8118f, 6341.783f, 30.2274f };
					*uParam3 = 29.88f;
					return true;
					break;
				
				case 4:
					*uParam2 = { 49.7982f, 6340.145f, 30.2268f };
					*uParam3 = 29.88f;
					return true;
					break;
				
				case 5:
					*uParam2 = { 47.4055f, 6338.755f, 30.2268f };
					*uParam3 = 29.88f;
					return true;
					break;
				
				case 6:
					*uParam2 = { 47.6714f, 6340.622f, 30.2282f };
					*uParam3 = 29.88f;
					return true;
					break;
				
				case 7:
					*uParam2 = { 49.0308f, 6342.47f, 30.229f };
					*uParam3 = 29.88f;
					return true;
					break;
				
				case 8:
					*uParam2 = { 51.3454f, 6344.165f, 30.2295f };
					*uParam3 = 29.88f;
					return true;
					break;
				
				case 9:
					*uParam2 = { 44.6926f, 6338.974f, 30.2282f };
					*uParam3 = 29.88f;
					return true;
					break;
				
				case 10:
					*uParam2 = { 46.1017f, 6335.087f, 30.3673f };
					*uParam3 = 29.88f;
					return true;
					break;
				
				case 11:
					*uParam2 = { 44.0519f, 6336.876f, 30.2269f };
					*uParam3 = 29.88f;
					return true;
					break;
				
				case 12:
					*uParam2 = { 48.0841f, 6336.146f, 30.3725f };
					*uParam3 = 29.88f;
					return true;
					break;
				
				case 13:
					*uParam2 = { 39.6178f, 6338.012f, 30.2306f };
					*uParam3 = 29.88f;
					return true;
					break;
				
				case 14:
					*uParam2 = { 44.4416f, 6342.616f, 30.2314f };
					*uParam3 = 29.88f;
					return true;
					break;
				
				case 15:
					*uParam2 = { 45.2101f, 6345.039f, 30.2329f };
					*uParam3 = 29.88f;
					return true;
					break;
				
				case 16:
					*uParam2 = { 34.4321f, 6336.621f, 30.2325f };
					*uParam3 = 29.88f;
					return true;
					break;
				
				case 17:
					*uParam2 = { 48.1278f, 6344.589f, 30.2312f };
					*uParam3 = 29.88f;
					return true;
					break;
				
				case 18:
					*uParam2 = { 41.9482f, 6340.101f, 30.2309f };
					*uParam3 = 29.88f;
					return true;
					break;
				
				case 19:
					*uParam2 = { 44.3521f, 6333.985f, 30.3641f };
					*uParam3 = 29.88f;
					return true;
					break;
				
				case 20:
					*uParam2 = { 41.746f, 6336.983f, 30.2284f };
					*uParam3 = 29.88f;
					return true;
					break;
				
				case 21:
					*uParam2 = { 36.4916f, 6335.406f, 30.2301f };
					*uParam3 = 29.88f;
					return true;
					break;
				
				case 22:
					*uParam2 = { 34.1285f, 6334.083f, 30.2302f };
					*uParam3 = 29.88f;
					return true;
					break;
				
				case 23:
					*uParam2 = { 38.9609f, 6341.643f, 30.234f };
					*uParam3 = 29.88f;
					return true;
					break;
				
				case 24:
					*uParam2 = { 47.4673f, 6351.268f, 30.2368f };
					*uParam3 = 29.3628f;
					return true;
					break;
				
				case 25:
					*uParam2 = { 42.0324f, 6348.333f, 30.2377f };
					*uParam3 = 31.1542f;
					return true;
					break;
				
				case 26:
					*uParam2 = { 42.5469f, 6353.747f, 30.2398f };
					*uParam3 = 31.3772f;
					return true;
					break;
				
				case 27:
					*uParam2 = { 44.7897f, 6349.863f, 30.2372f };
					*uParam3 = 29.4159f;
					return true;
					break;
				
				case 28:
					*uParam2 = { 39.3478f, 6346.885f, 30.2382f };
					*uParam3 = 27.0972f;
					return true;
					break;
				
				case 29:
					*uParam2 = { 40.0027f, 6349.93f, 30.2398f };
					*uParam3 = 30.9198f;
					return true;
					break;
				
				case 30:
					*uParam2 = { 42.4919f, 6351.123f, 30.2397f };
					*uParam3 = 24.4507f;
					return true;
					break;
				
				case 31:
					*uParam2 = { 44.7628f, 6353.019f, 30.2398f };
					*uParam3 = 29.3117f;
					return true;
					break;
			}
			break;
		
		case 23:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { 418.0156f, 6520.585f, 26.7163f };
					*uParam3 = 262.7964f;
					return true;
					break;
				
				case 1:
					*uParam2 = { 417.1376f, 6518.758f, 26.6879f };
					*uParam3 = 263.9654f;
					return true;
					break;
				
				case 2:
					*uParam2 = { 417.9884f, 6523.124f, 26.7372f };
					*uParam3 = 266.4f;
					return true;
					break;
				
				case 3:
					*uParam2 = { 419.6446f, 6523.709f, 26.7372f };
					*uParam3 = 263.9875f;
					return true;
					break;
				
				case 4:
					*uParam2 = { 416.5636f, 6516.738f, 26.6779f };
					*uParam3 = 266.4f;
					return true;
					break;
				
				case 5:
					*uParam2 = { 417.7757f, 6525.219f, 26.7372f };
					*uParam3 = 264.3846f;
					return true;
					break;
				
				case 6:
					*uParam2 = { 417.9008f, 6527.285f, 26.7276f };
					*uParam3 = 261.9809f;
					return true;
					break;
				
				case 7:
					*uParam2 = { 416.3594f, 6514.406f, 26.7113f };
					*uParam3 = 260.7525f;
					return true;
					break;
				
				case 8:
					*uParam2 = { 419.2861f, 6525.891f, 26.7306f };
					*uParam3 = 266.4f;
					return true;
					break;
				
				case 9:
					*uParam2 = { 416.8679f, 6513.06f, 26.7013f };
					*uParam3 = 266.4f;
					return true;
					break;
				
				case 10:
					*uParam2 = { 418.0652f, 6512.123f, 26.6896f };
					*uParam3 = 266.4f;
					return true;
					break;
				
				case 11:
					*uParam2 = { 416.257f, 6508.136f, 26.7295f };
					*uParam3 = 266.4f;
					return true;
					break;
				
				case 12:
					*uParam2 = { 431.1201f, 6526.12f, 26.7967f };
					*uParam3 = 255.1485f;
					return true;
					break;
				
				case 13:
					*uParam2 = { 418.6536f, 6532.174f, 26.7355f };
					*uParam3 = 262.3797f;
					return true;
					break;
				
				case 14:
					*uParam2 = { 418.713f, 6510.063f, 26.7268f };
					*uParam3 = 266.4f;
					return true;
					break;
				
				case 15:
					*uParam2 = { 431.0089f, 6513.548f, 27.2204f };
					*uParam3 = 244.2593f;
					return true;
					break;
				
				case 16:
					*uParam2 = { 432.3376f, 6515.709f, 27.3426f };
					*uParam3 = 257.6375f;
					return true;
					break;
				
				case 17:
					*uParam2 = { 419.1826f, 6507.287f, 26.7564f };
					*uParam3 = 266.4f;
					return true;
					break;
				
				case 18:
					*uParam2 = { 430.5198f, 6527.896f, 26.7518f };
					*uParam3 = 262.7752f;
					return true;
					break;
				
				case 19:
					*uParam2 = { 421.3478f, 6504.809f, 26.794f };
					*uParam3 = 266.4f;
					return true;
					break;
				
				case 20:
					*uParam2 = { 421.5699f, 6508.405f, 26.7834f };
					*uParam3 = 264.1678f;
					return true;
					break;
				
				case 21:
					*uParam2 = { 433.3055f, 6526.468f, 26.8483f };
					*uParam3 = 256.7643f;
					return true;
					break;
				
				case 22:
					*uParam2 = { 418.1842f, 6529.817f, 26.7083f };
					*uParam3 = 264.4763f;
					return true;
					break;
				
				case 23:
					*uParam2 = { 430.1514f, 6516.169f, 27.2395f };
					*uParam3 = 266.4f;
					return true;
					break;
				
				case 24:
					*uParam2 = { 419.2933f, 6534.477f, 26.7172f };
					*uParam3 = 266.4f;
					return true;
					break;
				
				case 25:
					*uParam2 = { 423.4145f, 6506.8f, 26.7148f };
					*uParam3 = 266.4f;
					return true;
					break;
				
				case 26:
					*uParam2 = { 419.1189f, 6536.776f, 26.7062f };
					*uParam3 = 266.4f;
					return true;
					break;
				
				case 27:
					*uParam2 = { 433.2409f, 6511.621f, 27.3255f };
					*uParam3 = 255.6953f;
					return true;
					break;
				
				case 28:
					*uParam2 = { 429.1526f, 6524.431f, 26.7881f };
					*uParam3 = 251.0102f;
					return true;
					break;
				
				case 29:
					*uParam2 = { 431.9196f, 6523.929f, 26.9157f };
					*uParam3 = 254.524f;
					return true;
					break;
				
				case 30:
					*uParam2 = { 430.4885f, 6511.412f, 27.136f };
					*uParam3 = 266.0406f;
					return true;
					break;
				
				case 31:
					*uParam2 = { 429.3159f, 6510.02f, 26.999f };
					*uParam3 = 265.8243f;
					return true;
					break;
			}
			break;
		
		case 24:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { 52.8118f, 6487.269f, 30.4277f };
					*uParam3 = 314.8f;
					return true;
					break;
				
				case 1:
					*uParam2 = { 54.1165f, 6486.113f, 30.4375f };
					*uParam3 = 314.8f;
					return true;
					break;
				
				case 2:
					*uParam2 = { 51.2639f, 6489.289f, 30.4253f };
					*uParam3 = 314.8f;
					return true;
					break;
				
				case 3:
					*uParam2 = { 55.2892f, 6484.654f, 30.4396f };
					*uParam3 = 314.8f;
					return true;
					break;
				
				case 4:
					*uParam2 = { 49.5078f, 6490.429f, 30.4253f };
					*uParam3 = 314.8f;
					return true;
					break;
				
				case 5:
					*uParam2 = { 56.8959f, 6483.366f, 30.4337f };
					*uParam3 = 314.8f;
					return true;
					break;
				
				case 6:
					*uParam2 = { 47.6963f, 6491.771f, 30.4253f };
					*uParam3 = 314.8f;
					return true;
					break;
				
				case 7:
					*uParam2 = { 57.9225f, 6481.851f, 30.4253f };
					*uParam3 = 314.8f;
					return true;
					break;
				
				case 8:
					*uParam2 = { 46.8138f, 6493.486f, 30.4253f };
					*uParam3 = 314.8f;
					return true;
					break;
				
				case 9:
					*uParam2 = { 59.4133f, 6480.662f, 30.4253f };
					*uParam3 = 314.8f;
					return true;
					break;
				
				case 10:
					*uParam2 = { 45.524f, 6495.441f, 30.4253f };
					*uParam3 = 314.8f;
					return true;
					break;
				
				case 11:
					*uParam2 = { 60.7123f, 6479.036f, 30.4253f };
					*uParam3 = 314.8f;
					return true;
					break;
				
				case 12:
					*uParam2 = { 64.8422f, 6477.992f, 30.4036f };
					*uParam3 = 222.6826f;
					return true;
					break;
				
				case 13:
					*uParam2 = { 62.6797f, 6477.982f, 30.4253f };
					*uParam3 = 224.6725f;
					return true;
					break;
				
				case 14:
					*uParam2 = { 62.4855f, 6475.445f, 30.4253f };
					*uParam3 = 224.7985f;
					return true;
					break;
				
				case 15:
					*uParam2 = { 66.4212f, 6476.019f, 30.4253f };
					*uParam3 = 224.5524f;
					return true;
					break;
				
				case 16:
					*uParam2 = { 64.1202f, 6473.007f, 30.4253f };
					*uParam3 = 224.6458f;
					return true;
					break;
				
				case 17:
					*uParam2 = { 59.7233f, 6473.501f, 30.4253f };
					*uParam3 = 222.6271f;
					return true;
					break;
				
				case 18:
					*uParam2 = { 57.7166f, 6471.576f, 30.4253f };
					*uParam3 = 226.4074f;
					return true;
					break;
				
				case 19:
					*uParam2 = { 58.7126f, 6469.368f, 30.4253f };
					*uParam3 = 222.7943f;
					return true;
					break;
				
				case 20:
					*uParam2 = { 61.6103f, 6471.206f, 30.4253f };
					*uParam3 = 225.0653f;
					return true;
					break;
				
				case 21:
					*uParam2 = { 55.6494f, 6469.501f, 30.4253f };
					*uParam3 = 226.0485f;
					return true;
					break;
				
				case 22:
					*uParam2 = { 53.146f, 6466.72f, 30.4253f };
					*uParam3 = 224.9646f;
					return true;
					break;
				
				case 23:
					*uParam2 = { 56.6075f, 6466.801f, 30.4253f };
					*uParam3 = 225.9164f;
					return true;
					break;
				
				case 24:
					*uParam2 = { 55.9495f, 6459.095f, 30.3096f };
					*uParam3 = 228.6592f;
					return true;
					break;
				
				case 25:
					*uParam2 = { 52.8952f, 6459.534f, 30.3907f };
					*uParam3 = 222.7136f;
					return true;
					break;
				
				case 26:
					*uParam2 = { 54.2541f, 6464.741f, 30.4253f };
					*uParam3 = 223.3415f;
					return true;
					break;
				
				case 27:
					*uParam2 = { 52.6959f, 6462.1f, 30.4253f };
					*uParam3 = 220.9931f;
					return true;
					break;
				
				case 28:
					*uParam2 = { 49.7192f, 6462.789f, 30.4253f };
					*uParam3 = 222.8229f;
					return true;
					break;
				
				case 29:
					*uParam2 = { 55.956f, 6461.751f, 30.3767f };
					*uParam3 = 222.0971f;
					return true;
					break;
				
				case 30:
					*uParam2 = { 58.3004f, 6461.146f, 30.3021f };
					*uParam3 = 223.8293f;
					return true;
					break;
				
				case 31:
					*uParam2 = { 57.7972f, 6464.848f, 30.3991f };
					*uParam3 = 225.385f;
					return true;
					break;
			}
			break;
		
		case 25:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { -412.4298f, 6173.216f, 30.4782f };
					*uParam3 = 315.36f;
					return true;
					break;
				
				case 1:
					*uParam2 = { -413.8248f, 6175.07f, 30.4782f };
					*uParam3 = 315.36f;
					return true;
					break;
				
				case 2:
					*uParam2 = { -410.8973f, 6171.76f, 30.4782f };
					*uParam3 = 315.36f;
					return true;
					break;
				
				case 3:
					*uParam2 = { -411.1946f, 6174.484f, 30.4782f };
					*uParam3 = 315.36f;
					return true;
					break;
				
				case 4:
					*uParam2 = { -412.5322f, 6176.398f, 30.4782f };
					*uParam3 = 315.36f;
					return true;
					break;
				
				case 5:
					*uParam2 = { -409.6077f, 6172.763f, 30.4782f };
					*uParam3 = 315.36f;
					return true;
					break;
				
				case 6:
					*uParam2 = { -409.3319f, 6174.633f, 30.4782f };
					*uParam3 = 315.36f;
					return true;
					break;
				
				case 7:
					*uParam2 = { -411.1761f, 6176.618f, 30.4782f };
					*uParam3 = 315.36f;
					return true;
					break;
				
				case 8:
					*uParam2 = { -406.7141f, 6168.102f, 30.4883f };
					*uParam3 = 315.36f;
					return true;
					break;
				
				case 9:
					*uParam2 = { -408.5953f, 6170.129f, 30.4782f };
					*uParam3 = 315.36f;
					return true;
					break;
				
				case 10:
					*uParam2 = { -404.8738f, 6170.248f, 30.4822f };
					*uParam3 = 315.36f;
					return true;
					break;
				
				case 11:
					*uParam2 = { -403.139f, 6168.077f, 30.5356f };
					*uParam3 = 315.36f;
					return true;
					break;
				
				case 12:
					*uParam2 = { -401.1759f, 6164.867f, 30.4927f };
					*uParam3 = 315.36f;
					return true;
					break;
				
				case 13:
					*uParam2 = { -404.189f, 6165.712f, 30.5369f };
					*uParam3 = 315.36f;
					return true;
					break;
				
				case 14:
					*uParam2 = { -414.0832f, 6181.135f, 30.4741f };
					*uParam3 = 315.36f;
					return true;
					break;
				
				case 15:
					*uParam2 = { -412.0959f, 6179.132f, 30.4782f };
					*uParam3 = 315.36f;
					return true;
					break;
				
				case 16:
					*uParam2 = { -411.8097f, 6181.141f, 30.4755f };
					*uParam3 = 315.36f;
					return true;
					break;
				
				case 17:
					*uParam2 = { -412.8681f, 6182.492f, 30.4661f };
					*uParam3 = 315.36f;
					return true;
					break;
				
				case 18:
					*uParam2 = { -410.0663f, 6179.785f, 30.4782f };
					*uParam3 = 311.3212f;
					return true;
					break;
				
				case 19:
					*uParam2 = { -397.1739f, 6162.219f, 30.4782f };
					*uParam3 = 315.36f;
					return true;
					break;
				
				case 20:
					*uParam2 = { -407.1871f, 6172.572f, 30.4782f };
					*uParam3 = 315.36f;
					return true;
					break;
				
				case 21:
					*uParam2 = { -396.5909f, 6156.809f, 30.4781f };
					*uParam3 = 314.766f;
					return true;
					break;
				
				case 22:
					*uParam2 = { -398.2342f, 6158.764f, 30.4782f };
					*uParam3 = 314.7355f;
					return true;
					break;
				
				case 23:
					*uParam2 = { -395.816f, 6159.344f, 30.4782f };
					*uParam3 = 315.2863f;
					return true;
					break;
				
				case 24:
					*uParam2 = { -402.5583f, 6170.364f, 30.5126f };
					*uParam3 = 314.6432f;
					return true;
					break;
				
				case 25:
					*uParam2 = { -399.8426f, 6166.365f, 30.4975f };
					*uParam3 = 314.5009f;
					return true;
					break;
				
				case 26:
					*uParam2 = { -402.4862f, 6172.542f, 30.5286f };
					*uParam3 = 316.1572f;
					return true;
					break;
				
				case 27:
					*uParam2 = { -398.1165f, 6166.726f, 30.4913f };
					*uParam3 = 317.543f;
					return true;
					break;
				
				case 28:
					*uParam2 = { -399.0388f, 6168.903f, 30.524f };
					*uParam3 = 316.466f;
					return true;
					break;
				
				case 29:
					*uParam2 = { -400.4666f, 6170.731f, 30.5366f };
					*uParam3 = 315.4282f;
					return true;
					break;
				
				case 30:
					*uParam2 = { -398.9958f, 6171.111f, 30.5404f };
					*uParam3 = 315.2344f;
					return true;
					break;
				
				case 31:
					*uParam2 = { -397.4542f, 6169.569f, 30.5168f };
					*uParam3 = 316.3151f;
					return true;
					break;
			}
			break;
		
		case 26:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { -162.7138f, 6335.422f, 30.5808f };
					*uParam3 = 316.2f;
					return true;
					break;
				
				case 1:
					*uParam2 = { -161.2702f, 6334.038f, 30.5808f };
					*uParam3 = 316.2f;
					return true;
					break;
				
				case 2:
					*uParam2 = { -164.1573f, 6336.807f, 30.5626f };
					*uParam3 = 316.2f;
					return true;
					break;
				
				case 3:
					*uParam2 = { -159.8267f, 6332.654f, 30.5808f };
					*uParam3 = 316.2f;
					return true;
					break;
				
				case 4:
					*uParam2 = { -166.2008f, 6338.791f, 30.5626f };
					*uParam3 = 316.2f;
					return true;
					break;
				
				case 5:
					*uParam2 = { -158.3832f, 6331.27f, 30.5808f };
					*uParam3 = 316.2f;
					return true;
					break;
				
				case 6:
					*uParam2 = { -168.2722f, 6340.881f, 30.5716f };
					*uParam3 = 316.2f;
					return true;
					break;
				
				case 7:
					*uParam2 = { -156.9397f, 6329.885f, 30.5808f };
					*uParam3 = 316.2f;
					return true;
					break;
				
				case 8:
					*uParam2 = { -169.9879f, 6342.459f, 30.5709f };
					*uParam3 = 316.2f;
					return true;
					break;
				
				case 9:
					*uParam2 = { -155.4961f, 6328.501f, 30.577f };
					*uParam3 = 316.2f;
					return true;
					break;
				
				case 10:
					*uParam2 = { -153.8149f, 6326.972f, 30.5826f };
					*uParam3 = 312.3233f;
					return true;
					break;
				
				case 11:
					*uParam2 = { -152.4129f, 6325.558f, 30.592f };
					*uParam3 = 316.8614f;
					return true;
					break;
				
				case 12:
					*uParam2 = { -151.112f, 6324.219f, 30.5903f };
					*uParam3 = 313.0286f;
					return true;
					break;
				
				case 13:
					*uParam2 = { -158.1136f, 6333.082f, 30.5808f };
					*uParam3 = 314.6399f;
					return true;
					break;
				
				case 14:
					*uParam2 = { -156.4287f, 6331.466f, 30.5786f };
					*uParam3 = 313.975f;
					return true;
					break;
				
				case 15:
					*uParam2 = { -153.77f, 6328.693f, 30.5647f };
					*uParam3 = 314.0734f;
					return true;
					break;
				
				case 16:
					*uParam2 = { -152.0941f, 6327.271f, 30.5874f };
					*uParam3 = 314.2164f;
					return true;
					break;
				
				case 17:
					*uParam2 = { -168.2417f, 6342.539f, 30.5417f };
					*uParam3 = 314.5307f;
					return true;
					break;
				
				case 18:
					*uParam2 = { -170.3239f, 6344.085f, 30.4945f };
					*uParam3 = 314.582f;
					return true;
					break;
				
				case 19:
					*uParam2 = { -164.5036f, 6339.226f, 30.5626f };
					*uParam3 = 314.6957f;
					return true;
					break;
				
				case 20:
					*uParam2 = { -150.6437f, 6325.632f, 30.5976f };
					*uParam3 = 314.7346f;
					return true;
					break;
				
				case 21:
					*uParam2 = { -149.4043f, 6322.155f, 30.5716f };
					*uParam3 = 318.0889f;
					return true;
					break;
				
				case 22:
					*uParam2 = { -147.9739f, 6321.735f, 30.5777f };
					*uParam3 = 314.7053f;
					return true;
					break;
				
				case 23:
					*uParam2 = { -151.1501f, 6346.464f, 30.4964f };
					*uParam3 = 314.7262f;
					return true;
					break;
				
				case 24:
					*uParam2 = { -149.613f, 6344.94f, 30.495f };
					*uParam3 = 314.7279f;
					return true;
					break;
				
				case 25:
					*uParam2 = { -148.0372f, 6343.497f, 30.4983f };
					*uParam3 = 317.556f;
					return true;
					break;
				
				case 26:
					*uParam2 = { -149.0959f, 6347.406f, 30.5813f };
					*uParam3 = 314.9833f;
					return true;
					break;
				
				case 27:
					*uParam2 = { -147.2622f, 6345.805f, 30.5732f };
					*uParam3 = 314.9387f;
					return true;
					break;
				
				case 28:
					*uParam2 = { -145.3534f, 6344.006f, 30.5673f };
					*uParam3 = 321.887f;
					return true;
					break;
				
				case 29:
					*uParam2 = { -145.9914f, 6347.854f, 30.4908f };
					*uParam3 = 315.0452f;
					return true;
					break;
				
				case 30:
					*uParam2 = { -143.9613f, 6345.565f, 30.4904f };
					*uParam3 = 319.548f;
					return true;
					break;
				
				case 31:
					*uParam2 = { -147.8938f, 6350.029f, 30.4906f };
					*uParam3 = 317.3596f;
					return true;
					break;
			}
			break;
		
		case 27:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { 1452.719f, -1652.544f, 65.2531f };
					*uParam3 = 98.64f;
					return true;
					break;
				
				case 1:
					*uParam2 = { 1451.333f, -1652.834f, 64.9894f };
					*uParam3 = 98.64f;
					return true;
					break;
				
				case 2:
					*uParam2 = { 1449.816f, -1653.092f, 64.8421f };
					*uParam3 = 98.863f;
					return true;
					break;
				
				case 3:
					*uParam2 = { 1452.28f, -1651.06f, 65.1814f };
					*uParam3 = 10.2482f;
					return true;
					break;
				
				case 4:
					*uParam2 = { 1451.025f, -1651.371f, 64.941f };
					*uParam3 = 12.1956f;
					return true;
					break;
				
				case 5:
					*uParam2 = { 1456.226f, -1650.368f, 65.9188f };
					*uParam3 = 18.2891f;
					return true;
					break;
				
				case 6:
					*uParam2 = { 1456.02f, -1649.107f, 65.9818f };
					*uParam3 = 18.7175f;
					return true;
					break;
				
				case 7:
					*uParam2 = { 1454.017f, -1650.298f, 65.5237f };
					*uParam3 = 15.4597f;
					return true;
					break;
				
				case 8:
					*uParam2 = { 1447.564f, -1650.199f, 64.2262f };
					*uParam3 = 71.9062f;
					return true;
					break;
				
				case 9:
					*uParam2 = { 1446.07f, -1651.007f, 63.9286f };
					*uParam3 = 66.5926f;
					return true;
					break;
				
				case 10:
					*uParam2 = { 1446.232f, -1649.501f, 63.9114f };
					*uParam3 = 43.6699f;
					return true;
					break;
				
				case 11:
					*uParam2 = { 1446.438f, -1647.77f, 63.9483f };
					*uParam3 = 37.6348f;
					return true;
					break;
				
				case 12:
					*uParam2 = { 1457.156f, -1645.79f, 66.3903f };
					*uParam3 = 23.0193f;
					return true;
					break;
				
				case 13:
					*uParam2 = { 1458.786f, -1645.725f, 66.5759f };
					*uParam3 = 20.6023f;
					return true;
					break;
				
				case 14:
					*uParam2 = { 1442.882f, -1651.725f, 63.3199f };
					*uParam3 = 83.5109f;
					return true;
					break;
				
				case 15:
					*uParam2 = { 1446.105f, -1646.13f, 63.8255f };
					*uParam3 = 8.64f;
					return true;
					break;
				
				case 16:
					*uParam2 = { 1445.773f, -1644.384f, 63.7196f };
					*uParam3 = 15.5516f;
					return true;
					break;
				
				case 17:
					*uParam2 = { 1458.601f, -1644.558f, 66.69f };
					*uParam3 = 22.6359f;
					return true;
					break;
				
				case 18:
					*uParam2 = { 1440.681f, -1652.548f, 62.9604f };
					*uParam3 = 83.0081f;
					return true;
					break;
				
				case 19:
					*uParam2 = { 1459.531f, -1640.55f, 67.0141f };
					*uParam3 = 25.0443f;
					return true;
					break;
				
				case 20:
					*uParam2 = { 1457.636f, -1641.712f, 66.5973f };
					*uParam3 = 22.3606f;
					return true;
					break;
				
				case 21:
					*uParam2 = { 1457.773f, -1639.663f, 66.7683f };
					*uParam3 = 24.7135f;
					return true;
					break;
				
				case 22:
					*uParam2 = { 1459.767f, -1638.281f, 67.2359f };
					*uParam3 = 22.7005f;
					return true;
					break;
				
				case 23:
					*uParam2 = { 1455.612f, -1640.781f, 66.2886f };
					*uParam3 = 27.0112f;
					return true;
					break;
				
				case 24:
					*uParam2 = { 1461.824f, -1639.323f, 67.5361f };
					*uParam3 = 24.0778f;
					return true;
					break;
				
				case 25:
					*uParam2 = { 1461.577f, -1641.665f, 67.3225f };
					*uParam3 = 27.3296f;
					return true;
					break;
				
				case 26:
					*uParam2 = { 1448.751f, -1637.309f, 64.8495f };
					*uParam3 = 17.9649f;
					return true;
					break;
				
				case 27:
					*uParam2 = { 1446.172f, -1638.34f, 63.9024f };
					*uParam3 = 25.5326f;
					return true;
					break;
				
				case 28:
					*uParam2 = { 1446.776f, -1636.319f, 64.1259f };
					*uParam3 = 20.7213f;
					return true;
					break;
				
				case 29:
					*uParam2 = { 1443.154f, -1638.178f, 62.7794f };
					*uParam3 = 21.0717f;
					return true;
					break;
				
				case 30:
					*uParam2 = { 1443.623f, -1636.057f, 62.9685f };
					*uParam3 = 21.0154f;
					return true;
					break;
				
				case 31:
					*uParam2 = { 1440.251f, -1636.594f, 61.9508f };
					*uParam3 = 19.6392f;
					return true;
					break;
			}
			break;
		
		case 28:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { 101.5573f, 173.0707f, 103.5805f };
					*uParam3 = 160.92f;
					return true;
					break;
				
				case 1:
					*uParam2 = { 99.9892f, 172.3697f, 103.5692f };
					*uParam3 = 160.92f;
					return true;
					break;
				
				case 2:
					*uParam2 = { 102.7886f, 171.4459f, 103.5708f };
					*uParam3 = 160.92f;
					return true;
					break;
				
				case 3:
					*uParam2 = { 98.2435f, 171.3624f, 103.5405f };
					*uParam3 = 160.92f;
					return true;
					break;
				
				case 4:
					*uParam2 = { 104.9318f, 170.9161f, 103.591f };
					*uParam3 = 160.92f;
					return true;
					break;
				
				case 5:
					*uParam2 = { 100.6276f, 169.956f, 103.5367f };
					*uParam3 = 160.92f;
					return true;
					break;
				
				case 6:
					*uParam2 = { 96.9907f, 173.0015f, 103.5679f };
					*uParam3 = 160.92f;
					return true;
					break;
				
				case 7:
					*uParam2 = { 103.1269f, 169.1342f, 103.5354f };
					*uParam3 = 160.92f;
					return true;
					break;
				
				case 8:
					*uParam2 = { 95.1155f, 171.9109f, 103.5497f };
					*uParam3 = 160.92f;
					return true;
					break;
				
				case 9:
					*uParam2 = { 105.859f, 167.5653f, 103.5429f };
					*uParam3 = 160.92f;
					return true;
					break;
				
				case 10:
					*uParam2 = { 99.1158f, 167.4283f, 103.5265f };
					*uParam3 = 160.92f;
					return true;
					break;
				
				case 11:
					*uParam2 = { 96.9644f, 170.1569f, 103.5273f };
					*uParam3 = 160.92f;
					return true;
					break;
				
				case 12:
					*uParam2 = { 103.071f, 166.3546f, 103.5148f };
					*uParam3 = 160.92f;
					return true;
					break;
				
				case 13:
					*uParam2 = { 95.0259f, 168.7767f, 103.5041f };
					*uParam3 = 160.92f;
					return true;
					break;
				
				case 14:
					*uParam2 = { 106.9227f, 165.0326f, 103.5053f };
					*uParam3 = 160.92f;
					return true;
					break;
				
				case 15:
					*uParam2 = { 93.1757f, 171.0423f, 103.5259f };
					*uParam3 = 160.92f;
					return true;
					break;
				
				case 16:
					*uParam2 = { 108.61f, 169.3952f, 103.6018f };
					*uParam3 = 159.1532f;
					return true;
					break;
				
				case 17:
					*uParam2 = { 109.1702f, 167.1929f, 103.554f };
					*uParam3 = 161.1016f;
					return true;
					break;
				
				case 18:
					*uParam2 = { 112.4778f, 166.7766f, 103.5676f };
					*uParam3 = 157.8632f;
					return true;
					break;
				
				case 19:
					*uParam2 = { 114.8762f, 165.8928f, 103.5475f };
					*uParam3 = 157.9706f;
					return true;
					break;
				
				case 20:
					*uParam2 = { 113.3156f, 164.4082f, 103.519f };
					*uParam3 = 159.3387f;
					return true;
					break;
				
				case 21:
					*uParam2 = { 110.8967f, 165.1313f, 103.5308f };
					*uParam3 = 157.22f;
					return true;
					break;
				
				case 22:
					*uParam2 = { 115.8458f, 163.4454f, 103.5133f };
					*uParam3 = 163.3644f;
					return true;
					break;
				
				case 23:
					*uParam2 = { 117.1773f, 165.1345f, 103.5553f };
					*uParam3 = 160.3933f;
					return true;
					break;
				
				case 24:
					*uParam2 = { 105.6983f, 160.9647f, 103.557f };
					*uParam3 = 157.5239f;
					return true;
					break;
				
				case 25:
					*uParam2 = { 106.9749f, 159.3869f, 103.5674f };
					*uParam3 = 156.8706f;
					return true;
					break;
				
				case 26:
					*uParam2 = { 106.3755f, 162.8573f, 103.5192f };
					*uParam3 = 158.1008f;
					return true;
					break;
				
				case 27:
					*uParam2 = { 103.5319f, 160.535f, 103.5865f };
					*uParam3 = 154.9452f;
					return true;
					break;
				
				case 28:
					*uParam2 = { 104.8679f, 158.522f, 103.6038f };
					*uParam3 = 154.552f;
					return true;
					break;
				
				case 29:
					*uParam2 = { 102.2848f, 158.1931f, 103.6371f };
					*uParam3 = 156.7726f;
					return true;
					break;
				
				case 30:
					*uParam2 = { 106.0865f, 156.3622f, 103.6289f };
					*uParam3 = 156.8518f;
					return true;
					break;
				
				case 31:
					*uParam2 = { 103.6108f, 155.3809f, 103.6755f };
					*uParam3 = 154.5688f;
					return true;
					break;
			}
			break;
		
		case 29:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { -1461.316f, -383.0153f, 37.7268f };
					*uParam3 = 225.36f;
					return true;
					break;
				
				case 1:
					*uParam2 = { -1463.09f, -385.0027f, 37.7036f };
					*uParam3 = 225.36f;
					return true;
					break;
				
				case 2:
					*uParam2 = { -1459.539f, -381.5134f, 37.7274f };
					*uParam3 = 228.159f;
					return true;
					break;
				
				case 3:
					*uParam2 = { -1464.899f, -386.8547f, 37.688f };
					*uParam3 = 214.9657f;
					return true;
					break;
				
				case 4:
					*uParam2 = { -1457.15f, -379.1012f, 37.7661f };
					*uParam3 = 235.8638f;
					return true;
					break;
				
				case 5:
					*uParam2 = { -1467.111f, -388.6677f, 37.6901f };
					*uParam3 = 215.2533f;
					return true;
					break;
				
				case 6:
					*uParam2 = { -1459.713f, -385.0891f, 37.5678f };
					*uParam3 = 230.9921f;
					return true;
					break;
				
				case 7:
					*uParam2 = { -1461.699f, -386.8681f, 37.5623f };
					*uParam3 = 225.36f;
					return true;
					break;
				
				case 8:
					*uParam2 = { -1457.593f, -383.0095f, 37.49f };
					*uParam3 = 237.436f;
					return true;
					break;
				
				case 9:
					*uParam2 = { -1463.357f, -388.8349f, 37.5195f };
					*uParam3 = 216.8518f;
					return true;
					break;
				
				case 10:
					*uParam2 = { -1455.444f, -380.7431f, 37.6032f };
					*uParam3 = 235.9487f;
					return true;
					break;
				
				case 11:
					*uParam2 = { -1465.916f, -390.8907f, 37.5321f };
					*uParam3 = 211.4971f;
					return true;
					break;
				
				case 12:
					*uParam2 = { -1457.433f, -386.4548f, 37.3415f };
					*uParam3 = 218.5163f;
					return true;
					break;
				
				case 13:
					*uParam2 = { -1459.873f, -388.7091f, 37.2991f };
					*uParam3 = 225.36f;
					return true;
					break;
				
				case 14:
					*uParam2 = { -1454.954f, -383.96f, 37.405f };
					*uParam3 = 239.7925f;
					return true;
					break;
				
				case 15:
					*uParam2 = { -1463.277f, -391.4753f, 37.2504f };
					*uParam3 = 214.9716f;
					return true;
					break;
				
				case 16:
					*uParam2 = { -1452.903f, -382.2585f, 37.4333f };
					*uParam3 = 237.7314f;
					return true;
					break;
				
				case 17:
					*uParam2 = { -1453.037f, -380.0698f, 37.5405f };
					*uParam3 = 253.6929f;
					return true;
					break;
				
				case 18:
					*uParam2 = { -1451.658f, -378.0233f, 37.5819f };
					*uParam3 = 269.331f;
					return true;
					break;
				
				case 19:
					*uParam2 = { -1449.144f, -378.839f, 37.4439f };
					*uParam3 = 274.8042f;
					return true;
					break;
				
				case 20:
					*uParam2 = { -1447.038f, -377.604f, 37.419f };
					*uParam3 = 268.6497f;
					return true;
					break;
				
				case 21:
					*uParam2 = { -1444.701f, -377.2707f, 37.3457f };
					*uParam3 = 273.1105f;
					return true;
					break;
				
				case 22:
					*uParam2 = { -1450.947f, -381.1693f, 37.4067f };
					*uParam3 = 272.5679f;
					return true;
					break;
				
				case 23:
					*uParam2 = { -1448.948f, -381.5771f, 37.2669f };
					*uParam3 = 276.7779f;
					return true;
					break;
				
				case 24:
					*uParam2 = { -1446.962f, -380.8906f, 37.212f };
					*uParam3 = 270.8792f;
					return true;
					break;
				
				case 25:
					*uParam2 = { -1444.161f, -379.8249f, 37.2053f };
					*uParam3 = 276.637f;
					return true;
					break;
				
				case 26:
					*uParam2 = { -1469.515f, -391.0861f, 37.6714f };
					*uParam3 = 137.0645f;
					return true;
					break;
				
				case 27:
					*uParam2 = { -1471.164f, -392.9117f, 37.6507f };
					*uParam3 = 139.6607f;
					return true;
					break;
				
				case 28:
					*uParam2 = { -1473.057f, -394.7888f, 37.4064f };
					*uParam3 = 133.1182f;
					return true;
					break;
				
				case 29:
					*uParam2 = { -1466.647f, -393.5308f, 37.3348f };
					*uParam3 = 138.4943f;
					return true;
					break;
				
				case 30:
					*uParam2 = { -1468.701f, -395.0844f, 37.3885f };
					*uParam3 = 139.4162f;
					return true;
					break;
				
				case 31:
					*uParam2 = { -1471.295f, -396.2152f, 37.2593f };
					*uParam3 = 141.8664f;
					return true;
					break;
			}
			break;
		
		case 30:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { -1171.805f, -1379.76f, 3.9672f };
					*uParam3 = 28.8f;
					return true;
					break;
				
				case 1:
					*uParam2 = { -1173.838f, -1380.151f, 3.9449f };
					*uParam3 = 34.8391f;
					return true;
					break;
				
				case 2:
					*uParam2 = { -1175.041f, -1381.724f, 3.9085f };
					*uParam3 = 34.0448f;
					return true;
					break;
				
				case 3:
					*uParam2 = { -1176.415f, -1380.98f, 3.8931f };
					*uParam3 = 35.2419f;
					return true;
					break;
				
				case 4:
					*uParam2 = { -1177.865f, -1379.634f, 3.8829f };
					*uParam3 = 37.6581f;
					return true;
					break;
				
				case 5:
					*uParam2 = { -1173.285f, -1377.579f, 3.965f };
					*uParam3 = 31.6187f;
					return true;
					break;
				
				case 6:
					*uParam2 = { -1175.538f, -1378.475f, 3.9343f };
					*uParam3 = 36.0438f;
					return true;
					break;
				
				case 7:
					*uParam2 = { -1177.294f, -1383.397f, 3.8535f };
					*uParam3 = 35.2433f;
					return true;
					break;
				
				case 8:
					*uParam2 = { -1179.252f, -1381.587f, 3.839f };
					*uParam3 = 28.8f;
					return true;
					break;
				
				case 9:
					*uParam2 = { -1181.668f, -1382.966f, 3.7598f };
					*uParam3 = 32.418f;
					return true;
					break;
				
				case 10:
					*uParam2 = { -1174.404f, -1375.134f, 3.9656f };
					*uParam3 = 28.8f;
					return true;
					break;
				
				case 11:
					*uParam2 = { -1176.593f, -1376.374f, 3.9386f };
					*uParam3 = 35.2438f;
					return true;
					break;
				
				case 12:
					*uParam2 = { -1178.595f, -1377.787f, 3.89f };
					*uParam3 = 28.8f;
					return true;
					break;
				
				case 13:
					*uParam2 = { -1181.006f, -1378.982f, 3.8361f };
					*uParam3 = 46.9055f;
					return true;
					break;
				
				case 14:
					*uParam2 = { -1183.386f, -1380.777f, 3.7525f };
					*uParam3 = 45.7085f;
					return true;
					break;
				
				case 15:
					*uParam2 = { -1175.85f, -1372.542f, 3.9618f };
					*uParam3 = 34.033f;
					return true;
					break;
				
				case 16:
					*uParam2 = { -1178.036f, -1374.119f, 3.9377f };
					*uParam3 = 36.0408f;
					return true;
					break;
				
				case 17:
					*uParam2 = { -1180.405f, -1375.35f, 3.8842f };
					*uParam3 = 50.9507f;
					return true;
					break;
				
				case 18:
					*uParam2 = { -1183.326f, -1378.028f, 3.7992f };
					*uParam3 = 48.1209f;
					return true;
					break;
				
				case 19:
					*uParam2 = { -1185.884f, -1376.692f, 3.752f };
					*uParam3 = 25.1088f;
					return true;
					break;
				
				case 20:
					*uParam2 = { -1188.024f, -1377.72f, 3.6766f };
					*uParam3 = 27.3524f;
					return true;
					break;
				
				case 21:
					*uParam2 = { -1186.94f, -1375.037f, 3.7478f };
					*uParam3 = 25.1048f;
					return true;
					break;
				
				case 22:
					*uParam2 = { -1188.937f, -1375.94f, 3.6766f };
					*uParam3 = 25.3466f;
					return true;
					break;
				
				case 23:
					*uParam2 = { -1183.088f, -1375.363f, 3.8374f };
					*uParam3 = 77.3209f;
					return true;
					break;
				
				case 24:
					*uParam2 = { -1186.302f, -1380.486f, 3.6784f };
					*uParam3 = 35.8389f;
					return true;
					break;
				
				case 25:
					*uParam2 = { -1184.508f, -1383.379f, 3.676f };
					*uParam3 = 41.7869f;
					return true;
					break;
				
				case 26:
					*uParam2 = { -1176.627f, -1389.754f, 3.7946f };
					*uParam3 = 178.9759f;
					return true;
					break;
				
				case 27:
					*uParam2 = { -1178.76f, -1387.746f, 3.7692f };
					*uParam3 = 169.5914f;
					return true;
					break;
				
				case 28:
					*uParam2 = { -1174.506f, -1387.742f, 3.8554f };
					*uParam3 = 177.9477f;
					return true;
					break;
				
				case 29:
					*uParam2 = { -1176.679f, -1386.119f, 3.8363f };
					*uParam3 = 176.9071f;
					return true;
					break;
				
				case 30:
					*uParam2 = { -1179.857f, -1384.373f, 3.7852f };
					*uParam3 = 31.5586f;
					return true;
					break;
				
				case 31:
					*uParam2 = { -1182.702f, -1385.31f, 3.6949f };
					*uParam3 = 32.5507f;
					return true;
					break;
			}
			break;
		
		case 31:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { 300.8729f, -760.0483f, 28.3163f };
					*uParam3 = 249.84f;
					return true;
					break;
				
				case 1:
					*uParam2 = { 301.644f, -761.9394f, 28.3147f };
					*uParam3 = 249.84f;
					return true;
					break;
				
				case 2:
					*uParam2 = { 302.4963f, -759.5029f, 28.3146f };
					*uParam3 = 249.84f;
					return true;
					break;
				
				case 3:
					*uParam2 = { 303.1685f, -761.8504f, 28.3129f };
					*uParam3 = 249.84f;
					return true;
					break;
				
				case 4:
					*uParam2 = { 303.9147f, -758.1395f, 28.3135f };
					*uParam3 = 249.84f;
					return true;
					break;
				
				case 5:
					*uParam2 = { 304.0247f, -759.9157f, 28.3126f };
					*uParam3 = 252.2312f;
					return true;
					break;
				
				case 6:
					*uParam2 = { 301.4713f, -768.2782f, 28.3135f };
					*uParam3 = 251.8442f;
					return true;
					break;
				
				case 7:
					*uParam2 = { 299.8669f, -768.9089f, 28.314f };
					*uParam3 = 251.4297f;
					return true;
					break;
				
				case 8:
					*uParam2 = { 305.3434f, -753.3583f, 28.3635f };
					*uParam3 = 249.84f;
					return true;
					break;
				
				case 9:
					*uParam2 = { 300.4586f, -770.4727f, 28.3138f };
					*uParam3 = 249.84f;
					return true;
					break;
				
				case 10:
					*uParam2 = { 305.8705f, -751.4041f, 28.3331f };
					*uParam3 = 249.84f;
					return true;
					break;
				
				case 11:
					*uParam2 = { 299.1807f, -771.0784f, 28.314f };
					*uParam3 = 249.84f;
					return true;
					break;
				
				case 12:
					*uParam2 = { 304.6257f, -755.8135f, 28.3591f };
					*uParam3 = 250.0491f;
					return true;
					break;
				
				case 13:
					*uParam2 = { 305.9816f, -754.7924f, 28.3666f };
					*uParam3 = 252.1873f;
					return true;
					break;
				
				case 14:
					*uParam2 = { 305.3565f, -757.1442f, 28.3391f };
					*uParam3 = 252.1794f;
					return true;
					break;
				
				case 15:
					*uParam2 = { 299.5625f, -772.7739f, 28.3129f };
					*uParam3 = 250.2665f;
					return true;
					break;
				
				case 16:
					*uParam2 = { 298.1895f, -773.267f, 28.3143f };
					*uParam3 = 250.9776f;
					return true;
					break;
				
				case 17:
					*uParam2 = { 306.5619f, -749.6814f, 28.3606f };
					*uParam3 = 249.635f;
					return true;
					break;
				
				case 18:
					*uParam2 = { 296.4447f, -776.8649f, 28.315f };
					*uParam3 = 252.7087f;
					return true;
					break;
				
				case 19:
					*uParam2 = { 298.3273f, -775.4174f, 28.3133f };
					*uParam3 = 252.8287f;
					return true;
					break;
				
				case 20:
					*uParam2 = { 296.6829f, -779.392f, 28.3137f };
					*uParam3 = 252.3917f;
					return true;
					break;
				
				case 21:
					*uParam2 = { 305.3011f, -746.433f, 28.3706f };
					*uParam3 = 249.7762f;
					return true;
					break;
				
				case 22:
					*uParam2 = { 306.2274f, -743.625f, 28.3274f };
					*uParam3 = 250.7082f;
					return true;
					break;
				
				case 23:
					*uParam2 = { 307.8594f, -745.611f, 28.3304f };
					*uParam3 = 250.6613f;
					return true;
					break;
				
				case 24:
					*uParam2 = { 331.7643f, -776.8928f, 28.2729f };
					*uParam3 = 250.5341f;
					return true;
					break;
				
				case 25:
					*uParam2 = { 333.6688f, -777.0743f, 28.2705f };
					*uParam3 = 253.4692f;
					return true;
					break;
				
				case 26:
					*uParam2 = { 332.628f, -774.4262f, 28.2728f };
					*uParam3 = 250.8592f;
					return true;
					break;
				
				case 27:
					*uParam2 = { 333.502f, -771.8655f, 28.2728f };
					*uParam3 = 250.0925f;
					return true;
					break;
				
				case 28:
					*uParam2 = { 334.3142f, -769.5931f, 28.2727f };
					*uParam3 = 251.0598f;
					return true;
					break;
				
				case 29:
					*uParam2 = { 334.5899f, -774.5726f, 28.2704f };
					*uParam3 = 252.1623f;
					return true;
					break;
				
				case 30:
					*uParam2 = { 335.3888f, -771.9819f, 28.3202f };
					*uParam3 = 252.317f;
					return true;
					break;
				
				case 31:
					*uParam2 = { 336.2341f, -769.4737f, 28.3241f };
					*uParam3 = 252.485f;
					return true;
					break;
			}
			break;
		
		case 32:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { 202.4384f, 2460.56f, 54.7008f };
					*uParam3 = 200.52f;
					return true;
					break;
				
				case 1:
					*uParam2 = { 200.3708f, 2459.569f, 54.6941f };
					*uParam3 = 200.52f;
					return true;
					break;
				
				case 2:
					*uParam2 = { 204.7798f, 2461.436f, 54.7382f };
					*uParam3 = 200.52f;
					return true;
					break;
				
				case 3:
					*uParam2 = { 197.7557f, 2458.807f, 54.6885f };
					*uParam3 = 200.52f;
					return true;
					break;
				
				case 4:
					*uParam2 = { 209.0087f, 2462.064f, 54.995f };
					*uParam3 = 200.52f;
					return true;
					break;
				
				case 5:
					*uParam2 = { 195.4143f, 2457.931f, 54.6845f };
					*uParam3 = 200.52f;
					return true;
					break;
				
				case 6:
					*uParam2 = { 203.0973f, 2458.117f, 54.9177f };
					*uParam3 = 200.52f;
					return true;
					break;
				
				case 7:
					*uParam2 = { 200.5146f, 2457.358f, 54.8638f };
					*uParam3 = 200.52f;
					return true;
					break;
				
				case 8:
					*uParam2 = { 205.6361f, 2459.034f, 55.0299f };
					*uParam3 = 200.52f;
					return true;
					break;
				
				case 9:
					*uParam2 = { 197.6831f, 2456.498f, 54.8015f };
					*uParam3 = 200.52f;
					return true;
					break;
				
				case 10:
					*uParam2 = { 207.8435f, 2459.915f, 55.1618f };
					*uParam3 = 200.52f;
					return true;
					break;
				
				case 11:
					*uParam2 = { 193.8811f, 2455.494f, 54.7618f };
					*uParam3 = 200.52f;
					return true;
					break;
				
				case 12:
					*uParam2 = { 204.2549f, 2455.907f, 55.4142f };
					*uParam3 = 200.52f;
					return true;
					break;
				
				case 13:
					*uParam2 = { 201.4144f, 2454.887f, 55.3609f };
					*uParam3 = 200.52f;
					return true;
					break;
				
				case 14:
					*uParam2 = { 206.5325f, 2456.753f, 55.4914f };
					*uParam3 = 200.52f;
					return true;
					break;
				
				case 15:
					*uParam2 = { 198.5998f, 2454.434f, 55.1941f };
					*uParam3 = 200.52f;
					return true;
					break;
				
				case 16:
					*uParam2 = { 189.0531f, 2456.218f, 54.7092f };
					*uParam3 = 200.52f;
					return true;
					break;
				
				case 17:
					*uParam2 = { 191.8886f, 2457.324f, 54.709f };
					*uParam3 = 200.52f;
					return true;
					break;
				
				case 18:
					*uParam2 = { 205.7044f, 2454.345f, 55.8587f };
					*uParam3 = 199.802f;
					return true;
					break;
				
				case 19:
					*uParam2 = { 208.7682f, 2448.124f, 56.7242f };
					*uParam3 = 176.6295f;
					return true;
					break;
				
				case 20:
					*uParam2 = { 208.8698f, 2445.941f, 57.0429f };
					*uParam3 = 183.8303f;
					return true;
					break;
				
				case 21:
					*uParam2 = { 208.921f, 2443.548f, 57.4307f };
					*uParam3 = 179.1214f;
					return true;
					break;
				
				case 22:
					*uParam2 = { 210.8099f, 2446.077f, 57.0055f };
					*uParam3 = 179.0752f;
					return true;
					break;
				
				case 23:
					*uParam2 = { 210.5056f, 2443.579f, 57.3852f };
					*uParam3 = 183.8073f;
					return true;
					break;
				
				case 24:
					*uParam2 = { 210.0111f, 2441.083f, 57.7527f };
					*uParam3 = 182.8844f;
					return true;
					break;
				
				case 25:
					*uParam2 = { 221.9835f, 2454.827f, 55.568f };
					*uParam3 = 220.7026f;
					return true;
					break;
				
				case 26:
					*uParam2 = { 223.9979f, 2453.906f, 55.5964f };
					*uParam3 = 227.0621f;
					return true;
					break;
				
				case 27:
					*uParam2 = { 225.4343f, 2451.767f, 55.7987f };
					*uParam3 = 222.8667f;
					return true;
					break;
				
				case 28:
					*uParam2 = { 220.6236f, 2451.92f, 55.8987f };
					*uParam3 = 225.7103f;
					return true;
					break;
				
				case 29:
					*uParam2 = { 222.4546f, 2451.069f, 55.9536f };
					*uParam3 = 218.0795f;
					return true;
					break;
				
				case 30:
					*uParam2 = { 221.9027f, 2447.982f, 56.3041f };
					*uParam3 = 217.9536f;
					return true;
					break;
				
				case 31:
					*uParam2 = { 224.5778f, 2449.227f, 56.1253f };
					*uParam3 = 219.4924f;
					return true;
					break;
			}
			break;
		
		case 33:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { 2847.011f, 4449.605f, 47.5172f };
					*uParam3 = 106.56f;
					return true;
					break;
				
				case 1:
					*uParam2 = { 2846.22f, 4451.674f, 47.5096f };
					*uParam3 = 106.56f;
					return true;
					break;
				
				case 2:
					*uParam2 = { 2847.621f, 4447.38f, 47.529f };
					*uParam3 = 106.56f;
					return true;
					break;
				
				case 3:
					*uParam2 = { 2845.616f, 4453.821f, 47.5014f };
					*uParam3 = 106.56f;
					return true;
					break;
				
				case 4:
					*uParam2 = { 2848.194f, 4445.377f, 47.5537f };
					*uParam3 = 106.56f;
					return true;
					break;
				
				case 5:
					*uParam2 = { 2844.906f, 4457.252f, 47.4885f };
					*uParam3 = 106.56f;
					return true;
					break;
				
				case 6:
					*uParam2 = { 2849.178f, 4442.182f, 47.5871f };
					*uParam3 = 106.56f;
					return true;
					break;
				
				case 7:
					*uParam2 = { 2844.703f, 4448.757f, 47.5378f };
					*uParam3 = 106.56f;
					return true;
					break;
				
				case 8:
					*uParam2 = { 2843.825f, 4451.375f, 47.5253f };
					*uParam3 = 106.56f;
					return true;
					break;
				
				case 9:
					*uParam2 = { 2845.385f, 4445.729f, 47.5674f };
					*uParam3 = 106.56f;
					return true;
					break;
				
				case 10:
					*uParam2 = { 2843.141f, 4454.131f, 47.5126f };
					*uParam3 = 106.56f;
					return true;
					break;
				
				case 11:
					*uParam2 = { 2846.374f, 4443.369f, 47.5935f };
					*uParam3 = 106.56f;
					return true;
					break;
				
				case 12:
					*uParam2 = { 2842.426f, 4456.444f, 47.5007f };
					*uParam3 = 106.56f;
					return true;
					break;
				
				case 13:
					*uParam2 = { 2847.056f, 4441.097f, 47.6161f };
					*uParam3 = 106.56f;
					return true;
					break;
				
				case 14:
					*uParam2 = { 2842.095f, 4447.47f, 47.6063f };
					*uParam3 = 106.56f;
					return true;
					break;
				
				case 15:
					*uParam2 = { 2841.025f, 4450.271f, 47.5853f };
					*uParam3 = 106.56f;
					return true;
					break;
				
				case 16:
					*uParam2 = { 2842.696f, 4444.979f, 47.6291f };
					*uParam3 = 106.56f;
					return true;
					break;
				
				case 17:
					*uParam2 = { 2840.147f, 4452.853f, 47.5646f };
					*uParam3 = 106.56f;
					return true;
					break;
				
				case 18:
					*uParam2 = { 2843.544f, 4442.544f, 47.649f };
					*uParam3 = 106.56f;
					return true;
					break;
				
				case 19:
					*uParam2 = { 2839.571f, 4456.108f, 47.5255f };
					*uParam3 = 106.56f;
					return true;
					break;
				
				case 20:
					*uParam2 = { 2844.417f, 4439.53f, 47.6648f };
					*uParam3 = 106.56f;
					return true;
					break;
				
				case 21:
					*uParam2 = { 2831.779f, 4448.949f, 47.5968f };
					*uParam3 = 105.5845f;
					return true;
					break;
				
				case 22:
					*uParam2 = { 2829.416f, 4450.412f, 47.5575f };
					*uParam3 = 105.9704f;
					return true;
					break;
				
				case 23:
					*uParam2 = { 2827.845f, 4448.272f, 47.552f };
					*uParam3 = 104.7238f;
					return true;
					break;
				
				case 24:
					*uParam2 = { 2832.682f, 4445.754f, 47.6294f };
					*uParam3 = 108.1589f;
					return true;
					break;
				
				case 25:
					*uParam2 = { 2830.632f, 4446.065f, 47.6127f };
					*uParam3 = 103.9698f;
					return true;
					break;
				
				case 26:
					*uParam2 = { 2827.994f, 4445.047f, 47.5886f };
					*uParam3 = 106.2889f;
					return true;
					break;
				
				case 27:
					*uParam2 = { 2833.556f, 4442.959f, 47.6539f };
					*uParam3 = 106.5517f;
					return true;
					break;
				
				case 28:
					*uParam2 = { 2832.181f, 4441.663f, 47.6564f };
					*uParam3 = 107.0118f;
					return true;
					break;
				
				case 29:
					*uParam2 = { 2829.993f, 4442.253f, 47.6317f };
					*uParam3 = 105.3059f;
					return true;
					break;
				
				case 30:
					*uParam2 = { 2834.319f, 4440.601f, 47.6694f };
					*uParam3 = 104.0414f;
					return true;
					break;
				
				case 31:
					*uParam2 = { 2831.103f, 4451.938f, 47.5644f };
					*uParam3 = 102.0362f;
					return true;
					break;
			}
			break;
		
		case 34:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { 387.7582f, 3586.302f, 32.2922f };
					*uParam3 = 348.84f;
					return true;
					break;
				
				case 1:
					*uParam2 = { 389.9273f, 3586.018f, 32.2922f };
					*uParam3 = 348.84f;
					return true;
					break;
				
				case 2:
					*uParam2 = { 385.6169f, 3586.83f, 32.2922f };
					*uParam3 = 349.6432f;
					return true;
					break;
				
				case 3:
					*uParam2 = { 392.1504f, 3585.552f, 32.2922f };
					*uParam3 = 348.84f;
					return true;
					break;
				
				case 4:
					*uParam2 = { 382.9557f, 3587.489f, 32.2922f };
					*uParam3 = 348.84f;
					return true;
					break;
				
				case 5:
					*uParam2 = { 395.2194f, 3585.07f, 32.2922f };
					*uParam3 = 348.84f;
					return true;
					break;
				
				case 6:
					*uParam2 = { 379.778f, 3587.25f, 32.2922f };
					*uParam3 = 348.84f;
					return true;
					break;
				
				case 7:
					*uParam2 = { 388.1639f, 3588.267f, 32.2922f };
					*uParam3 = 348.84f;
					return true;
					break;
				
				case 8:
					*uParam2 = { 390.6552f, 3588.206f, 32.2922f };
					*uParam3 = 348.84f;
					return true;
					break;
				
				case 9:
					*uParam2 = { 385.3867f, 3589.329f, 32.2922f };
					*uParam3 = 348.84f;
					return true;
					break;
				
				case 10:
					*uParam2 = { 393.0392f, 3587.84f, 32.2922f };
					*uParam3 = 348.84f;
					return true;
					break;
				
				case 11:
					*uParam2 = { 382.7778f, 3589.277f, 32.2922f };
					*uParam3 = 348.84f;
					return true;
					break;
				
				case 12:
					*uParam2 = { 395.886f, 3587.45f, 32.2922f };
					*uParam3 = 348.84f;
					return true;
					break;
				
				case 13:
					*uParam2 = { 380.7386f, 3589.377f, 32.2922f };
					*uParam3 = 348.84f;
					return true;
					break;
				
				case 14:
					*uParam2 = { 399.8047f, 3585.266f, 32.2922f };
					*uParam3 = 348.84f;
					return true;
					break;
				
				case 15:
					*uParam2 = { 397.985f, 3586.353f, 32.2922f };
					*uParam3 = 349.6487f;
					return true;
					break;
				
				case 16:
					*uParam2 = { 382.2252f, 3591.336f, 32.2922f };
					*uParam3 = 348.84f;
					return true;
					break;
				
				case 17:
					*uParam2 = { 393.1277f, 3589.675f, 32.2922f };
					*uParam3 = 348.84f;
					return true;
					break;
				
				case 18:
					*uParam2 = { 377.7317f, 3589.697f, 32.2922f };
					*uParam3 = 348.84f;
					return true;
					break;
				
				case 19:
					*uParam2 = { 397.7258f, 3584.719f, 32.2922f };
					*uParam3 = 348.84f;
					return true;
					break;
				
				case 20:
					*uParam2 = { 377.1271f, 3587.714f, 32.2922f };
					*uParam3 = 348.84f;
					return true;
					break;
				
				case 21:
					*uParam2 = { 370.688f, 3590.446f, 32.3428f };
					*uParam3 = 80.5106f;
					return true;
					break;
				
				case 22:
					*uParam2 = { 368.9077f, 3591.223f, 32.3838f };
					*uParam3 = 79.9337f;
					return true;
					break;
				
				case 23:
					*uParam2 = { 366.2635f, 3591.062f, 32.3747f };
					*uParam3 = 79.9504f;
					return true;
					break;
				
				case 24:
					*uParam2 = { 368.8419f, 3589.05f, 32.3662f };
					*uParam3 = 98.6671f;
					return true;
					break;
				
				case 25:
					*uParam2 = { 366.4835f, 3589.114f, 32.3813f };
					*uParam3 = 99.6186f;
					return true;
					break;
				
				case 26:
					*uParam2 = { 367.3917f, 3587.067f, 32.3844f };
					*uParam3 = 103.9887f;
					return true;
					break;
				
				case 27:
					*uParam2 = { 399.0821f, 3582.831f, 32.2922f };
					*uParam3 = 274.5721f;
					return true;
					break;
				
				case 28:
					*uParam2 = { 397.9359f, 3580.618f, 32.2922f };
					*uParam3 = 270.0849f;
					return true;
					break;
				
				case 29:
					*uParam2 = { 399.5165f, 3578.161f, 32.2922f };
					*uParam3 = 277.0565f;
					return true;
					break;
				
				case 30:
					*uParam2 = { 397.8492f, 3576.081f, 32.2922f };
					*uParam3 = 271.5672f;
					return true;
					break;
				
				case 31:
					*uParam2 = { 400.1925f, 3574.599f, 32.2922f };
					*uParam3 = 268.6003f;
					return true;
					break;
			}
			break;
		
		case 35:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { 636.7584f, 2783.901f, 41.0148f };
					*uParam3 = 183.6f;
					return true;
					break;
				
				case 1:
					*uParam2 = { 638.9577f, 2784.131f, 41.003f };
					*uParam3 = 183.6f;
					return true;
					break;
				
				case 2:
					*uParam2 = { 635.178f, 2783.435f, 41.0234f };
					*uParam3 = 183.6f;
					return true;
					break;
				
				case 3:
					*uParam2 = { 641.8049f, 2784.373f, 40.9789f };
					*uParam3 = 183.6f;
					return true;
					break;
				
				case 4:
					*uParam2 = { 636.0968f, 2781.423f, 41.0241f };
					*uParam3 = 183.6f;
					return true;
					break;
				
				case 5:
					*uParam2 = { 638.8647f, 2782.25f, 41.004f };
					*uParam3 = 183.6f;
					return true;
					break;
				
				case 6:
					*uParam2 = { 641.239f, 2782.813f, 40.985f };
					*uParam3 = 183.6f;
					return true;
					break;
				
				case 7:
					*uParam2 = { 642.4758f, 2780.234f, 40.9586f };
					*uParam3 = 183.6f;
					return true;
					break;
				
				case 8:
					*uParam2 = { 635.9471f, 2778.688f, 41.0091f };
					*uParam3 = 183.6f;
					return true;
					break;
				
				case 9:
					*uParam2 = { 638.3111f, 2778.367f, 40.9891f };
					*uParam3 = 183.6f;
					return true;
					break;
				
				case 10:
					*uParam2 = { 639.8527f, 2779.901f, 40.9842f };
					*uParam3 = 183.6f;
					return true;
					break;
				
				case 11:
					*uParam2 = { 642.0136f, 2778.263f, 40.9502f };
					*uParam3 = 183.6f;
					return true;
					break;
				
				case 12:
					*uParam2 = { 636.3226f, 2775.713f, 40.9935f };
					*uParam3 = 183.6f;
					return true;
					break;
				
				case 13:
					*uParam2 = { 638.4607f, 2775.839f, 40.9691f };
					*uParam3 = 183.6f;
					return true;
					break;
				
				case 14:
					*uParam2 = { 640.7181f, 2776.25f, 40.9585f };
					*uParam3 = 183.6f;
					return true;
					break;
				
				case 15:
					*uParam2 = { 643.416f, 2776.179f, 40.9373f };
					*uParam3 = 183.6f;
					return true;
					break;
				
				case 16:
					*uParam2 = { 642.2759f, 2774.281f, 40.9994f };
					*uParam3 = 183.1321f;
					return true;
					break;
				
				case 17:
					*uParam2 = { 637.4537f, 2773.959f, 40.9926f };
					*uParam3 = 181.1902f;
					return true;
					break;
				
				case 18:
					*uParam2 = { 656.7316f, 2779.76f, 40.0253f };
					*uParam3 = 253.9082f;
					return true;
					break;
				
				case 19:
					*uParam2 = { 658.9734f, 2779.85f, 39.8517f };
					*uParam3 = 247.4577f;
					return true;
					break;
				
				case 20:
					*uParam2 = { 661.2719f, 2778.294f, 39.7406f };
					*uParam3 = 255.4666f;
					return true;
					break;
				
				case 21:
					*uParam2 = { 657.0626f, 2782.89f, 40.0158f };
					*uParam3 = 257.8912f;
					return true;
					break;
				
				case 22:
					*uParam2 = { 659.4348f, 2783.219f, 39.9377f };
					*uParam3 = 255.5625f;
					return true;
					break;
				
				case 23:
					*uParam2 = { 661.8536f, 2781.601f, 39.7951f };
					*uParam3 = 256.4716f;
					return true;
					break;
				
				case 24:
					*uParam2 = { 655.9114f, 2776.721f, 40.1675f };
					*uParam3 = 246.769f;
					return true;
					break;
				
				case 25:
					*uParam2 = { 658.294f, 2775.655f, 39.9362f };
					*uParam3 = 250.3359f;
					return true;
					break;
				
				case 26:
					*uParam2 = { 649.8104f, 2758.113f, 40.9581f };
					*uParam3 = 202.1911f;
					return true;
					break;
				
				case 27:
					*uParam2 = { 646.8809f, 2756.072f, 40.9894f };
					*uParam3 = 202.1923f;
					return true;
					break;
				
				case 28:
					*uParam2 = { 649.9106f, 2755.5f, 40.9632f };
					*uParam3 = 207.6483f;
					return true;
					break;
				
				case 29:
					*uParam2 = { 647.5277f, 2754.009f, 40.9975f };
					*uParam3 = 205.1322f;
					return true;
					break;
				
				case 30:
					*uParam2 = { 650.2255f, 2753f, 40.9791f };
					*uParam3 = 202.3729f;
					return true;
					break;
				
				case 31:
					*uParam2 = { 648.0262f, 2751.444f, 41.0162f };
					*uParam3 = 202.3873f;
					return true;
					break;
			}
			break;
		
		case 36:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { 1658.15f, 4851.813f, 40.9708f };
					*uParam3 = 278.64f;
					return true;
					break;
				
				case 1:
					*uParam2 = { 1658.276f, 4849.651f, 40.9736f };
					*uParam3 = 278.64f;
					return true;
					break;
				
				case 2:
					*uParam2 = { 1657.758f, 4853.26f, 40.9753f };
					*uParam3 = 278.64f;
					return true;
					break;
				
				case 3:
					*uParam2 = { 1658.989f, 4847.902f, 40.9602f };
					*uParam3 = 278.64f;
					return true;
					break;
				
				case 4:
					*uParam2 = { 1657.325f, 4856.115f, 40.9769f };
					*uParam3 = 278.64f;
					return true;
					break;
				
				case 5:
					*uParam2 = { 1658.927f, 4846.244f, 40.9731f };
					*uParam3 = 278.64f;
					return true;
					break;
				
				case 6:
					*uParam2 = { 1658.239f, 4854.739f, 40.9618f };
					*uParam3 = 278.64f;
					return true;
					break;
				
				case 7:
					*uParam2 = { 1659.074f, 4844.279f, 40.9916f };
					*uParam3 = 278.64f;
					return true;
					break;
				
				case 8:
					*uParam2 = { 1656.942f, 4859.155f, 40.9766f };
					*uParam3 = 278.64f;
					return true;
					break;
				
				case 9:
					*uParam2 = { 1660.003f, 4843.225f, 41.0006f };
					*uParam3 = 278.64f;
					return true;
					break;
				
				case 10:
					*uParam2 = { 1656.722f, 4861.201f, 40.9912f };
					*uParam3 = 278.64f;
					return true;
					break;
				
				case 11:
					*uParam2 = { 1659.172f, 4841.862f, 41.0267f };
					*uParam3 = 278.64f;
					return true;
					break;
				
				case 12:
					*uParam2 = { 1656.601f, 4864.011f, 40.9918f };
					*uParam3 = 278.64f;
					return true;
					break;
				
				case 13:
					*uParam2 = { 1660.069f, 4840.661f, 41.0395f };
					*uParam3 = 278.64f;
					return true;
					break;
				
				case 14:
					*uParam2 = { 1655.703f, 4865.665f, 40.9903f };
					*uParam3 = 278.64f;
					return true;
					break;
				
				case 15:
					*uParam2 = { 1659.643f, 4838.247f, 41.0387f };
					*uParam3 = 278.64f;
					return true;
					break;
				
				case 16:
					*uParam2 = { 1660.14f, 4832.996f, 41.0229f };
					*uParam3 = 275.2459f;
					return true;
					break;
				
				case 17:
					*uParam2 = { 1659.794f, 4835.752f, 41.0141f };
					*uParam3 = 278.0196f;
					return true;
					break;
				
				case 18:
					*uParam2 = { 1661.941f, 4833.776f, 41.1119f };
					*uParam3 = 277.7381f;
					return true;
					break;
				
				case 19:
					*uParam2 = { 1661.549f, 4836.435f, 41.0244f };
					*uParam3 = 274.7514f;
					return true;
					break;
				
				case 20:
					*uParam2 = { 1661.489f, 4838.759f, 41.0411f };
					*uParam3 = 278.8962f;
					return true;
					break;
				
				case 21:
					*uParam2 = { 1655.315f, 4867.271f, 41.0049f };
					*uParam3 = 273.6084f;
					return true;
					break;
				
				case 22:
					*uParam2 = { 1657.146f, 4867.461f, 41.0091f };
					*uParam3 = 273.1697f;
					return true;
					break;
				
				case 23:
					*uParam2 = { 1677.777f, 4856.469f, 41.0667f };
					*uParam3 = 280.4979f;
					return true;
					break;
				
				case 24:
					*uParam2 = { 1679.346f, 4856.758f, 41.0701f };
					*uParam3 = 279.477f;
					return true;
					break;
				
				case 25:
					*uParam2 = { 1678.172f, 4853.408f, 41.0605f };
					*uParam3 = 278.9321f;
					return true;
					break;
				
				case 26:
					*uParam2 = { 1679.721f, 4853.639f, 41.0629f };
					*uParam3 = 279.0437f;
					return true;
					break;
				
				case 27:
					*uParam2 = { 1678.836f, 4851.5f, 41.0594f };
					*uParam3 = 279.2171f;
					return true;
					break;
				
				case 28:
					*uParam2 = { 1680.66f, 4851.491f, 41.062f };
					*uParam3 = 275.0026f;
					return true;
					break;
				
				case 29:
					*uParam2 = { 1679.089f, 4848.174f, 41.0677f };
					*uParam3 = 277.5333f;
					return true;
					break;
				
				case 30:
					*uParam2 = { 1681.196f, 4848.414f, 41.1096f };
					*uParam3 = 277.1605f;
					return true;
					break;
				
				case 31:
					*uParam2 = { 1679.284f, 4845.882f, 41.0752f };
					*uParam3 = 277.2397f;
					return true;
					break;
			}
			break;
		
		case 37:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { 1180.008f, -3113.941f, 5.028f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 1:
					*uParam2 = { 1180.328f, -3115.91f, 5.028f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 2:
					*uParam2 = { 1180.166f, -3111.903f, 5.028f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 3:
					*uParam2 = { 1178.831f, -3112.848f, 5.028f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 4:
					*uParam2 = { 1180.209f, -3117.869f, 5.028f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 5:
					*uParam2 = { 1179.133f, -3118.838f, 5.028f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 6:
					*uParam2 = { 1178.594f, -3116.678f, 5.028f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 7:
					*uParam2 = { 1178.323f, -3114.968f, 5.028f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 8:
					*uParam2 = { 1179.49f, -3110.066f, 5.028f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 9:
					*uParam2 = { 1177.179f, -3118.62f, 5.028f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 10:
					*uParam2 = { 1176.903f, -3116.352f, 5.028f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 11:
					*uParam2 = { 1175.861f, -3117.51f, 5.028f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 12:
					*uParam2 = { 1178.662f, -3108.719f, 5.028f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 13:
					*uParam2 = { 1173.319f, -3101.817f, 4.871f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 14:
					*uParam2 = { 1177.55f, -3111.437f, 5.028f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 15:
					*uParam2 = { 1173.209f, -3105.283f, 4.8668f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 16:
					*uParam2 = { 1175.919f, -3106.486f, 5.028f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 17:
					*uParam2 = { 1173.226f, -3103.663f, 4.8676f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 18:
					*uParam2 = { 1159.645f, -3121.636f, 4.9002f };
					*uParam3 = 97.9578f;
					return true;
					break;
				
				case 19:
					*uParam2 = { 1157.716f, -3121.728f, 4.9002f };
					*uParam3 = 97.0644f;
					return true;
					break;
				
				case 20:
					*uParam2 = { 1158.568f, -3123.692f, 4.8998f };
					*uParam3 = 122.424f;
					return true;
					break;
				
				case 21:
					*uParam2 = { 1157.51f, -3125.975f, 4.8998f };
					*uParam3 = 107.9816f;
					return true;
					break;
				
				case 22:
					*uParam2 = { 1155.896f, -3123.952f, 4.8998f };
					*uParam3 = 105.6486f;
					return true;
					break;
				
				case 23:
					*uParam2 = { 1154.774f, -3126.999f, 4.8998f };
					*uParam3 = 103.6211f;
					return true;
					break;
				
				case 24:
					*uParam2 = { 1153.393f, -3124.778f, 4.8998f };
					*uParam3 = 101.0198f;
					return true;
					break;
				
				case 25:
					*uParam2 = { 1158.288f, -3102.878f, 4.9902f };
					*uParam3 = 77.9229f;
					return true;
					break;
				
				case 26:
					*uParam2 = { 1158.517f, -3100.299f, 4.9546f };
					*uParam3 = 79.1152f;
					return true;
					break;
				
				case 27:
					*uParam2 = { 1156.171f, -3103.662f, 4.9685f };
					*uParam3 = 75.0904f;
					return true;
					break;
				
				case 28:
					*uParam2 = { 1156.371f, -3100.193f, 4.9431f };
					*uParam3 = 74.7444f;
					return true;
					break;
				
				case 29:
					*uParam2 = { 1153.777f, -3103.074f, 4.9603f };
					*uParam3 = 73.65f;
					return true;
					break;
				
				case 30:
					*uParam2 = { 1153.44f, -3099.459f, 4.8484f };
					*uParam3 = 75.6482f;
					return true;
					break;
				
				case 31:
					*uParam2 = { 1151.632f, -3100.848f, 4.8632f };
					*uParam3 = 79.6286f;
					return true;
					break;
			}
			break;
		
		case 38:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { 138.0663f, -2473.504f, 5f };
					*uParam3 = 234.36f;
					return true;
					break;
				
				case 1:
					*uParam2 = { 136.3854f, -2475.245f, 5f };
					*uParam3 = 234.36f;
					return true;
					break;
				
				case 2:
					*uParam2 = { 139.1002f, -2471.585f, 5f };
					*uParam3 = 234.36f;
					return true;
					break;
				
				case 3:
					*uParam2 = { 138.6979f, -2476.101f, 5f };
					*uParam3 = 234.36f;
					return true;
					break;
				
				case 4:
					*uParam2 = { 140.4441f, -2473.812f, 5f };
					*uParam3 = 234.36f;
					return true;
					break;
				
				case 5:
					*uParam2 = { 137.2626f, -2478.607f, 5f };
					*uParam3 = 234.36f;
					return true;
					break;
				
				case 6:
					*uParam2 = { 141.969f, -2473.219f, 5f };
					*uParam3 = 234.36f;
					return true;
					break;
				
				case 7:
					*uParam2 = { 140.0273f, -2478.052f, 5f };
					*uParam3 = 234.36f;
					return true;
					break;
				
				case 8:
					*uParam2 = { 141.3555f, -2475.992f, 5f };
					*uParam3 = 234.36f;
					return true;
					break;
				
				case 9:
					*uParam2 = { 139.7461f, -2480.466f, 5f };
					*uParam3 = 234.36f;
					return true;
					break;
				
				case 10:
					*uParam2 = { 142.5122f, -2478.598f, 5f };
					*uParam3 = 234.36f;
					return true;
					break;
				
				case 11:
					*uParam2 = { 135.1875f, -2480.385f, 5f };
					*uParam3 = 234.36f;
					return true;
					break;
				
				case 12:
					*uParam2 = { 143.2373f, -2476.152f, 5f };
					*uParam3 = 234.36f;
					return true;
					break;
				
				case 13:
					*uParam2 = { 132.9111f, -2480.146f, 5f };
					*uParam3 = 234.36f;
					return true;
					break;
				
				case 14:
					*uParam2 = { 134.4167f, -2478.11f, 5f };
					*uParam3 = 234.36f;
					return true;
					break;
				
				case 15:
					*uParam2 = { 140.5661f, -2468.9f, 5f };
					*uParam3 = 234.36f;
					return true;
					break;
				
				case 16:
					*uParam2 = { 142.0223f, -2482.411f, 5f };
					*uParam3 = 234.36f;
					return true;
					break;
				
				case 17:
					*uParam2 = { 145.7824f, -2475.572f, 5f };
					*uParam3 = 234.36f;
					return true;
					break;
				
				case 18:
					*uParam2 = { 145.0857f, -2481.146f, 5f };
					*uParam3 = 241.0637f;
					return true;
					break;
				
				case 19:
					*uParam2 = { 149.7415f, -2483.427f, 4.9946f };
					*uParam3 = 233.5104f;
					return true;
					break;
				
				case 20:
					*uParam2 = { 151.0793f, -2481.512f, 4.9918f };
					*uParam3 = 237.4624f;
					return true;
					break;
				
				case 21:
					*uParam2 = { 150.278f, -2485.416f, 4.9934f };
					*uParam3 = 231.6367f;
					return true;
					break;
				
				case 22:
					*uParam2 = { 151.9404f, -2483.232f, 4.9899f };
					*uParam3 = 236.0939f;
					return true;
					break;
				
				case 23:
					*uParam2 = { 152.8993f, -2479.957f, 4.9879f };
					*uParam3 = 237.5987f;
					return true;
					break;
				
				case 24:
					*uParam2 = { 133.5043f, -2488.922f, 5f };
					*uParam3 = 188.3722f;
					return true;
					break;
				
				case 25:
					*uParam2 = { 129.2173f, -2487.895f, 5f };
					*uParam3 = 190.1083f;
					return true;
					break;
				
				case 26:
					*uParam2 = { 131.1706f, -2489.566f, 5f };
					*uParam3 = 190.6198f;
					return true;
					break;
				
				case 27:
					*uParam2 = { 128.6361f, -2490.336f, 5f };
					*uParam3 = 189.1775f;
					return true;
					break;
				
				case 28:
					*uParam2 = { 131.2855f, -2486.54f, 5f };
					*uParam3 = 178.5667f;
					return true;
					break;
				
				case 29:
					*uParam2 = { 164.5286f, -2503.107f, 4.9877f };
					*uParam3 = 210.2661f;
					return true;
					break;
				
				case 30:
					*uParam2 = { 166.7715f, -2502.821f, 4.9877f };
					*uParam3 = 222.8792f;
					return true;
					break;
				
				case 31:
					*uParam2 = { 166.6136f, -2500.656f, 4.9877f };
					*uParam3 = 224.8715f;
					return true;
					break;
			}
			break;
		
		case 39:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { -254.7741f, -2591.237f, 5.0006f };
					*uParam3 = 91.08f;
					return true;
					break;
				
				case 1:
					*uParam2 = { -254.2472f, -2589.173f, 5.0006f };
					*uParam3 = 91.08f;
					return true;
					break;
				
				case 2:
					*uParam2 = { -255.9361f, -2589.8f, 5.0006f };
					*uParam3 = 91.08f;
					return true;
					break;
				
				case 3:
					*uParam2 = { -256.4702f, -2591.925f, 5.0006f };
					*uParam3 = 91.08f;
					return true;
					break;
				
				case 4:
					*uParam2 = { -255.5893f, -2587.77f, 5.0006f };
					*uParam3 = 91.08f;
					return true;
					break;
				
				case 5:
					*uParam2 = { -257.3896f, -2588.713f, 5.0006f };
					*uParam3 = 91.08f;
					return true;
					break;
				
				case 6:
					*uParam2 = { -254.1175f, -2586.838f, 5.0006f };
					*uParam3 = 91.08f;
					return true;
					break;
				
				case 7:
					*uParam2 = { -258.2581f, -2591.568f, 5.0006f };
					*uParam3 = 91.08f;
					return true;
					break;
				
				case 8:
					*uParam2 = { -257.0626f, -2586.202f, 5.0006f };
					*uParam3 = 91.08f;
					return true;
					break;
				
				case 9:
					*uParam2 = { -254.7318f, -2583.701f, 5.0006f };
					*uParam3 = 91.08f;
					return true;
					break;
				
				case 10:
					*uParam2 = { -256.1104f, -2581.662f, 5.0006f };
					*uParam3 = 91.08f;
					return true;
					break;
				
				case 11:
					*uParam2 = { -256.0175f, -2578.75f, 5.0006f };
					*uParam3 = 91.08f;
					return true;
					break;
				
				case 12:
					*uParam2 = { -260.2751f, -2592.114f, 5.0006f };
					*uParam3 = 91.08f;
					return true;
					break;
				
				case 13:
					*uParam2 = { -259.7165f, -2588.463f, 5.0006f };
					*uParam3 = 91.08f;
					return true;
					break;
				
				case 14:
					*uParam2 = { -260.1514f, -2584.909f, 5.0006f };
					*uParam3 = 87.0548f;
					return true;
					break;
				
				case 15:
					*uParam2 = { -258.7704f, -2582.351f, 5.0006f };
					*uParam3 = 91.08f;
					return true;
					break;
				
				case 16:
					*uParam2 = { -259.4825f, -2577.276f, 5.0006f };
					*uParam3 = 85.035f;
					return true;
					break;
				
				case 17:
					*uParam2 = { -256.7663f, -2576.331f, 5.0006f };
					*uParam3 = 91.08f;
					return true;
					break;
				
				case 18:
					*uParam2 = { -262.3983f, -2590.654f, 5.0006f };
					*uParam3 = 91.08f;
					return true;
					break;
				
				case 19:
					*uParam2 = { -262.6156f, -2586.526f, 5.0006f };
					*uParam3 = 89.4713f;
					return true;
					break;
				
				case 20:
					*uParam2 = { -262.3634f, -2579.592f, 5.0006f };
					*uParam3 = 86.8199f;
					return true;
					break;
				
				case 21:
					*uParam2 = { -261.7182f, -2574.861f, 5.0006f };
					*uParam3 = 86.2061f;
					return true;
					break;
				
				case 22:
					*uParam2 = { -267.5555f, -2577.93f, 5.0006f };
					*uParam3 = 83.4103f;
					return true;
					break;
				
				case 23:
					*uParam2 = { -267.5865f, -2581.382f, 5.0006f };
					*uParam3 = 87.6697f;
					return true;
					break;
				
				case 24:
					*uParam2 = { -267.617f, -2584.89f, 5.0006f };
					*uParam3 = 87.6113f;
					return true;
					break;
				
				case 25:
					*uParam2 = { -269.2955f, -2579.781f, 5.0006f };
					*uParam3 = 85.1179f;
					return true;
					break;
				
				case 26:
					*uParam2 = { -269.4418f, -2583.528f, 5.0006f };
					*uParam3 = 91.6965f;
					return true;
					break;
				
				case 27:
					*uParam2 = { -269.4679f, -2587.305f, 5.0006f };
					*uParam3 = 85.5674f;
					return true;
					break;
				
				case 28:
					*uParam2 = { -267.6761f, -2588.577f, 5.0006f };
					*uParam3 = 93.8343f;
					return true;
					break;
				
				case 29:
					*uParam2 = { -267.8046f, -2592.208f, 5.0006f };
					*uParam3 = 87.5751f;
					return true;
					break;
				
				case 30:
					*uParam2 = { -269.5222f, -2591.366f, 5.0006f };
					*uParam3 = 81.9741f;
					return true;
					break;
				
				case 31:
					*uParam2 = { -268.9472f, -2576.6f, 5.0006f };
					*uParam3 = 75.5813f;
					return true;
					break;
			}
			break;
		
		case 40:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { 669.7007f, -2667.473f, 5.0812f };
					*uParam3 = 91.08f;
					return true;
					break;
				
				case 1:
					*uParam2 = { 669.231f, -2665.484f, 5.0812f };
					*uParam3 = 91.08f;
					return true;
					break;
				
				case 2:
					*uParam2 = { 669.0834f, -2669.401f, 5.0812f };
					*uParam3 = 91.08f;
					return true;
					break;
				
				case 3:
					*uParam2 = { 668.0314f, -2663.945f, 5.0812f };
					*uParam3 = 91.08f;
					return true;
					break;
				
				case 4:
					*uParam2 = { 667.9921f, -2671.486f, 5.0812f };
					*uParam3 = 91.08f;
					return true;
					break;
				
				case 5:
					*uParam2 = { 666.2173f, -2670.253f, 5.0812f };
					*uParam3 = 91.08f;
					return true;
					break;
				
				case 6:
					*uParam2 = { 666.6612f, -2667.444f, 5.0812f };
					*uParam3 = 91.08f;
					return true;
					break;
				
				case 7:
					*uParam2 = { 665.793f, -2664.566f, 5.0812f };
					*uParam3 = 91.08f;
					return true;
					break;
				
				case 8:
					*uParam2 = { 661.1834f, -2676.746f, 5.0812f };
					*uParam3 = 91.08f;
					return true;
					break;
				
				case 9:
					*uParam2 = { 666.8834f, -2661.508f, 5.0812f };
					*uParam3 = 91.08f;
					return true;
					break;
				
				case 10:
					*uParam2 = { 668.1364f, -2674.156f, 5.0812f };
					*uParam3 = 91.08f;
					return true;
					break;
				
				case 11:
					*uParam2 = { 665.6526f, -2659.557f, 5.0812f };
					*uParam3 = 91.08f;
					return true;
					break;
				
				case 12:
					*uParam2 = { 663.9605f, -2667.421f, 5.0812f };
					*uParam3 = 91.08f;
					return true;
					break;
				
				case 13:
					*uParam2 = { 662.535f, -2664.509f, 5.0812f };
					*uParam3 = 91.08f;
					return true;
					break;
				
				case 14:
					*uParam2 = { 664.0994f, -2672.019f, 5.0812f };
					*uParam3 = 91.08f;
					return true;
					break;
				
				case 15:
					*uParam2 = { 664.0226f, -2661.625f, 5.0812f };
					*uParam3 = 91.08f;
					return true;
					break;
				
				case 16:
					*uParam2 = { 664.3822f, -2675.418f, 5.0812f };
					*uParam3 = 91.08f;
					return true;
					break;
				
				case 17:
					*uParam2 = { 662.1806f, -2658.619f, 5.0812f };
					*uParam3 = 91.08f;
					return true;
					break;
				
				case 18:
					*uParam2 = { 660.0225f, -2667.873f, 5.0812f };
					*uParam3 = 91.08f;
					return true;
					break;
				
				case 19:
					*uParam2 = { 660.0655f, -2660.887f, 5.0812f };
					*uParam3 = 91.08f;
					return true;
					break;
				
				case 20:
					*uParam2 = { 661.6735f, -2670.785f, 5.0812f };
					*uParam3 = 91.08f;
					return true;
					break;
				
				case 21:
					*uParam2 = { 656.705f, -2676.673f, 5.0812f };
					*uParam3 = 100.8788f;
					return true;
					break;
				
				case 22:
					*uParam2 = { 656.0792f, -2673.96f, 5.0812f };
					*uParam3 = 99.2975f;
					return true;
					break;
				
				case 23:
					*uParam2 = { 655.5352f, -2670.899f, 5.0812f };
					*uParam3 = 99.1658f;
					return true;
					break;
				
				case 24:
					*uParam2 = { 653.8568f, -2676.434f, 5.0812f };
					*uParam3 = 97.2009f;
					return true;
					break;
				
				case 25:
					*uParam2 = { 653.2253f, -2672.987f, 5.0812f };
					*uParam3 = 97.3717f;
					return true;
					break;
				
				case 26:
					*uParam2 = { 652.6971f, -2669.823f, 5.0813f };
					*uParam3 = 97.5774f;
					return true;
					break;
				
				case 27:
					*uParam2 = { 654.711f, -2667.657f, 5.0812f };
					*uParam3 = 95.4195f;
					return true;
					break;
				
				case 28:
					*uParam2 = { 650.9651f, -2662.287f, 5.0812f };
					*uParam3 = 83.2365f;
					return true;
					break;
				
				case 29:
					*uParam2 = { 649.9758f, -2659.71f, 5.0812f };
					*uParam3 = 86.645f;
					return true;
					break;
				
				case 30:
					*uParam2 = { 648.4595f, -2662.943f, 5.0812f };
					*uParam3 = 83.3265f;
					return true;
					break;
				
				case 31:
					*uParam2 = { 647.6133f, -2660.099f, 5.0812f };
					*uParam3 = 83.2693f;
					return true;
					break;
			}
			break;
		
		case 41:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { -334.7377f, -2778.969f, 4.0002f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 1:
					*uParam2 = { -332.9008f, -2777.119f, 4.1404f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 2:
					*uParam2 = { -332.8945f, -2780.276f, 4.1404f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 3:
					*uParam2 = { -335.8614f, -2781f, 4.0002f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 4:
					*uParam2 = { -332.6457f, -2783.388f, 4.1419f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 5:
					*uParam2 = { -332.4783f, -2773.841f, 4.1427f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 6:
					*uParam2 = { -336.0079f, -2776.739f, 4.0002f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 7:
					*uParam2 = { -337.6867f, -2778.881f, 4.0002f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 8:
					*uParam2 = { -334.9099f, -2773.802f, 4.0002f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 9:
					*uParam2 = { -335.4647f, -2783.445f, 4.0002f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 10:
					*uParam2 = { -337.251f, -2774.992f, 4.0002f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 11:
					*uParam2 = { -337.6528f, -2782.365f, 4.0002f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 12:
					*uParam2 = { -334.2122f, -2771.273f, 4.0002f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 13:
					*uParam2 = { -335.373f, -2786.233f, 4.0002f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 14:
					*uParam2 = { -339.5327f, -2779.679f, 4.0002f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 15:
					*uParam2 = { -340.4634f, -2776.157f, 4.0002f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 16:
					*uParam2 = { -349.4742f, -2775.465f, 4.2003f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 17:
					*uParam2 = { -338.7712f, -2771.949f, 4.0002f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 18:
					*uParam2 = { -348.5268f, -2773.766f, 4.2003f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 19:
					*uParam2 = { -338.1402f, -2768.364f, 4.0002f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 20:
					*uParam2 = { -338.4236f, -2786.433f, 4.0002f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 21:
					*uParam2 = { -335.0887f, -2768.659f, 4.0002f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 22:
					*uParam2 = { -347.0583f, -2771.73f, 4.2003f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 23:
					*uParam2 = { -332.9932f, -2787.717f, 4.1432f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 24:
					*uParam2 = { -342.6335f, -2762.514f, 4.6528f };
					*uParam3 = 49.6019f;
					return true;
					break;
				
				case 25:
					*uParam2 = { -343.9058f, -2764.623f, 4.5421f };
					*uParam3 = 51.5582f;
					return true;
					break;
				
				case 26:
					*uParam2 = { -346.0114f, -2766.939f, 4.5172f };
					*uParam3 = 47.8237f;
					return true;
					break;
				
				case 27:
					*uParam2 = { -347.4135f, -2765.141f, 4.9457f };
					*uParam3 = 44.168f;
					return true;
					break;
				
				case 28:
					*uParam2 = { -345.9332f, -2762.928f, 5.0394f };
					*uParam3 = 44.4418f;
					return true;
					break;
				
				case 29:
					*uParam2 = { -344.9213f, -2760.781f, 5.037f };
					*uParam3 = 44.0803f;
					return true;
					break;
				
				case 30:
					*uParam2 = { -349.189f, -2763.793f, 5.0415f };
					*uParam3 = 43.7607f;
					return true;
					break;
				
				case 31:
					*uParam2 = { -347.8954f, -2761.332f, 5.0404f };
					*uParam3 = 43.9496f;
					return true;
					break;
			}
			break;
	}
	return false;
}

bool func_109(int iParam0, int iParam1, var uParam2, var uParam3, var uParam4)//Position - 0xB93B
{
	switch (iParam0)
	{
		case 22:
		case 27:
		case 32:
		case 37:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { -11.5018f, -3.771f, 1.1068f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 1:
					*uParam2 = { -11.1996f, -4.8818f, 1.1068f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 2:
					*uParam2 = { -11.9667f, 0.9038f, 0.1068f };
					*uParam3 = 271.44f;
					return true;
					break;
				
				case 3:
					*uParam2 = { -8.3604f, 0.5366f, -1.4932f };
					*uParam3 = 268.2f;
					return true;
					break;
				
				case 4:
					*uParam2 = { -6.5717f, 0.5698f, -1.4932f };
					*uParam3 = 270.36f;
					return true;
					break;
				
				case 5:
					*uParam2 = { -6.5812f, -1.554f, -1.4932f };
					*uParam3 = 266.04f;
					return true;
					break;
				
				case 6:
					*uParam2 = { -4.9359f, 0.5994f, -1.4932f };
					*uParam3 = 267.84f;
					return true;
					break;
				
				case 7:
					*uParam2 = { -5.4576f, -2.2556f, -1.4932f };
					*uParam3 = 267.12f;
					return true;
					break;
				
				case 8:
					*uParam2 = { -2.1296f, -3.4199f, -1.4932f };
					*uParam3 = 271.44f;
					return true;
					break;
				
				case 9:
					*uParam2 = { -3.3931f, 0.6641f, -1.4932f };
					*uParam3 = 268.2f;
					return true;
					break;
				
				case 10:
					*uParam2 = { -1.6493f, 0.6008f, -1.4932f };
					*uParam3 = 271.08f;
					return true;
					break;
				
				case 11:
					*uParam2 = { -0.5912f, -3.447f, -1.4932f };
					*uParam3 = 269.28f;
					return true;
					break;
				
				case 12:
					*uParam2 = { -0.137f, 0.7095f, -1.4932f };
					*uParam3 = 268.92f;
					return true;
					break;
			}
			break;
		
		case 23:
		case 28:
		case 33:
		case 38:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { 15.873f, 13.3074f, -1.6635f };
					*uParam3 = 90f;
					return true;
					break;
				
				case 1:
					*uParam2 = { 15.7094f, 14.8108f, -1.6626f };
					*uParam3 = 90f;
					return true;
					break;
				
				case 2:
					*uParam2 = { 15.2938f, 11.9883f, -1.6642f };
					*uParam3 = 90f;
					return true;
					break;
				
				case 3:
					*uParam2 = { 14.5515f, 13.0491f, -1.6634f };
					*uParam3 = 90f;
					return true;
					break;
				
				case 4:
					*uParam2 = { 14.457f, 14.3352f, -1.6628f };
					*uParam3 = 90f;
					return true;
					break;
				
				case 5:
					*uParam2 = { 13.9866f, 11.9121f, -1.6643f };
					*uParam3 = 90f;
					return true;
					break;
				
				case 6:
					*uParam2 = { 12.744f, 13.7371f, -1.6637f };
					*uParam3 = 180f;
					return true;
					break;
				
				case 7:
					*uParam2 = { 12.646f, 12.427f, -1.6638f };
					*uParam3 = 180f;
					return true;
					break;
				
				case 8:
					*uParam2 = { 12.5011f, 11.0618f, -1.6648f };
					*uParam3 = 180f;
					return true;
					break;
				
				case 9:
					*uParam2 = { 11.52f, 14.1372f, -1.6645f };
					*uParam3 = 180f;
					return true;
					break;
				
				case 10:
					*uParam2 = { 11.495f, 12.7761f, -1.6645f };
					*uParam3 = 180f;
					return true;
					break;
				
				case 11:
					*uParam2 = { 11.2906f, 11.1682f, -1.6647f };
					*uParam3 = 180f;
					return true;
					break;
			}
			break;
		
		case 24:
		case 29:
		case 34:
		case 39:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { -4.8052f, 8.3174f, -1.4935f };
					*uParam3 = 180f;
					return true;
					break;
				
				case 1:
					*uParam2 = { -5.0101f, 7.2205f, -1.4935f };
					*uParam3 = 178.2258f;
					return true;
					break;
				
				case 2:
					*uParam2 = { -4.9868f, 5.7422f, -1.4935f };
					*uParam3 = 181.7104f;
					return true;
					break;
				
				case 3:
					*uParam2 = { -5.0342f, 3.6167f, -1.4935f };
					*uParam3 = 255.7617f;
					return true;
					break;
				
				case 4:
					*uParam2 = { -4.1292f, 3.5083f, -1.4935f };
					*uParam3 = 260.0012f;
					return true;
					break;
				
				case 5:
					*uParam2 = { -5.9457f, 2.7358f, -1.4935f };
					*uParam3 = 183.243f;
					return true;
					break;
				
				case 6:
					*uParam2 = { -5.99f, 0.7227f, -1.4935f };
					*uParam3 = 226.1079f;
					return true;
					break;
				
				case 7:
					*uParam2 = { -5.9446f, -1.4463f, -1.4935f };
					*uParam3 = 271.2191f;
					return true;
					break;
				
				case 8:
					*uParam2 = { -4.1721f, -1.4917f, -1.4935f };
					*uParam3 = 268.175f;
					return true;
					break;
				
				case 9:
					*uParam2 = { -1.9153f, -1.5291f, -1.4935f };
					*uParam3 = 268.2025f;
					return true;
					break;
				
				case 10:
					*uParam2 = { -1.8743f, 3.0684f, -1.4935f };
					*uParam3 = 264.3273f;
					return true;
					break;
			}
			break;
		
		case 25:
		case 30:
		case 35:
		case 40:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { 13.2156f, -1.9326f, -2.1607f };
					*uParam3 = 357.8796f;
					return true;
					break;
				
				case 1:
					*uParam2 = { 12.1537f, -0.2056f, -2.1607f };
					*uParam3 = 90f;
					return true;
					break;
				
				case 2:
					*uParam2 = { 13.3557f, 1.7976f, -2.8962f };
					*uParam3 = 90f;
					return true;
					break;
				
				case 3:
					*uParam2 = { 12.0094f, 1.9473f, -2.8996f };
					*uParam3 = 90f;
					return true;
					break;
				
				case 4:
					*uParam2 = { 10.7483f, -0.1853f, -2.1607f };
					*uParam3 = 90f;
					return true;
					break;
				
				case 5:
					*uParam2 = { 10.3102f, 1.7913f, -2.9005f };
					*uParam3 = 90f;
					return true;
					break;
				
				case 6:
					*uParam2 = { 9.3082f, -0.1772f, -2.1607f };
					*uParam3 = 90f;
					return true;
					break;
				
				case 7:
					*uParam2 = { 5.1066f, 1.8057f, -2.9004f };
					*uParam3 = 90f;
					return true;
					break;
				
				case 8:
					*uParam2 = { 8.5474f, 2.2549f, -2.8977f };
					*uParam3 = 90f;
					return true;
					break;
				
				case 9:
					*uParam2 = { 7.9846f, -0.1001f, -2.1607f };
					*uParam3 = 90f;
					return true;
					break;
				
				case 10:
					*uParam2 = { 6.8645f, 0.0144f, -2.1607f };
					*uParam3 = 90f;
					return true;
					break;
				
				case 11:
					*uParam2 = { 5.4856f, -0.0378f, -2.1607f };
					*uParam3 = 90f;
					return true;
					break;
				
				case 12:
					*uParam2 = { 3.1495f, 1.7048f, -2.901f };
					*uParam3 = 90f;
					return true;
					break;
			}
			break;
		
		case 26:
		case 31:
		case 36:
		case 41:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { 8.1375f, 0.041f, -1.808f };
					*uParam3 = 90.5126f;
					return true;
					break;
				
				case 1:
					*uParam2 = { 7.4933f, -1.6084f, -1.808f };
					*uParam3 = 90f;
					return true;
					break;
				
				case 2:
					*uParam2 = { 7.8275f, 1.4553f, -1.808f };
					*uParam3 = 90f;
					return true;
					break;
				
				case 3:
					*uParam2 = { 6.1877f, -1.5391f, -1.808f };
					*uParam3 = 90f;
					return true;
					break;
				
				case 4:
					*uParam2 = { 6.6771f, 1.4951f, -1.808f };
					*uParam3 = 87.6196f;
					return true;
					break;
				
				case 5:
					*uParam2 = { 4.8105f, 1.9807f, -1.808f };
					*uParam3 = 90f;
					return true;
					break;
				
				case 6:
					*uParam2 = { 3.0282f, -1.584f, -1.808f };
					*uParam3 = 90f;
					return true;
					break;
				
				case 7:
					*uParam2 = { 2.5529f, 1.9456f, -1.808f };
					*uParam3 = 90f;
					return true;
					break;
				
				case 8:
					*uParam2 = { 0.3383f, 2.2065f, -1.808f };
					*uParam3 = 90f;
					return true;
					break;
				
				case 9:
					*uParam2 = { 0.8707f, -2.1997f, -1.808f };
					*uParam3 = 90f;
					return true;
					break;
				
				case 10:
					*uParam2 = { -1.0348f, 2.189f, -1.808f };
					*uParam3 = 90f;
					return true;
					break;
			}
			break;
	}
	return false;
}

void func_110(int iParam0, var uParam1)//Position - 0xC34E
{
	int iVar0;
	int iVar1;
	int iVar2;
	
	Global_2421621[player::player_id() /*358*/].f_312.f_3 = 0;
	if (func_82(player::player_id(), 1))
	{
		if (func_94(player::player_id()))
		{
			gameplay::set_bit(&(Global_1760739.f_2), 0);
			gameplay::set_bit(&(Global_1760739.f_2), 10);
		}
		else
		{
			gameplay::set_bit(&(Global_1760739.f_2), 1);
			switch (func_117(player::player_id()))
			{
				case -1:
					gameplay::set_bit(&(Global_1760739.f_2), 14);
					break;
				
				case 0:
					gameplay::set_bit(&(Global_1760739.f_2), 11);
					break;
				
				case 1:
					gameplay::set_bit(&(Global_1760739.f_2), 12);
					break;
				
				case 2:
					gameplay::set_bit(&(Global_1760739.f_2), 13);
					break;
				
				case 3:
					gameplay::set_bit(&(Global_1760739.f_2), 15);
					break;
				}
		}
		iVar0 = func_90(player::player_id());
		if (iVar0 != func_9() && iVar0 != player::player_id())
		{
			gameplay::set_bit(&(Global_2421621[player::player_id() /*358*/].f_312.f_3), iVar0);
		}
		iVar2 = 0;
		while (iVar2 < 32)
		{
			iVar1 = player::int_to_playerindex(iVar2);
			if ((iVar1 != func_9() && iVar1 != player::player_id()) && iVar1 != iVar0)
			{
				if (func_387(iVar1, 1, 1))
				{
					if (func_113(iVar1, iVar0, 1))
					{
						gameplay::set_bit(&(Global_2421621[player::player_id() /*358*/].f_312.f_3), iVar1);
					}
				}
			}
			iVar2++;
		}
	}
	else if (func_111(player::player_id(), func_79(iParam0)))
	{
		gameplay::set_bit(&(Global_1760739.f_2), 2);
	}
}

bool func_111(int iParam0, int iParam1)//Position - 0xC4D6
{
	int iVar0;
	
	if (func_112(iParam1) && iParam0 != func_9())
	{
		iVar0 = 0;
		while (iVar0 <= 4)
		{
			if (Global_1589933[iParam0 /*601*/].f_257.f_152[iVar0 /*11*/] == iParam1)
			{
				return true;
			}
			iVar0++;
		}
	}
	return false;
}

bool func_112(int iParam0)//Position - 0xC521
{
	if (iParam0 == 21 || iParam0 == 0)
	{
		return false;
	}
	return true;
}

int func_113(int iParam0, int iParam1, int iParam2)//Position - 0xC540
{
	return func_114(iParam0, iParam1, iParam2, 1);
}

int func_114(int iParam0, int iParam1, int iParam2, int iParam3)//Position - 0xC553
{
	if (iParam1 != func_9() && iParam0 != func_9())
	{
		if (!iParam2)
		{
			if (func_116(iParam0, iParam1, iParam3))
			{
				return 0;
			}
		}
		if (Global_1618089[iParam0 /*390*/].f_11 != func_9())
		{
			if (iParam1 == Global_1618089[iParam0 /*390*/].f_11)
			{
				return func_115(iParam1, iParam3);
			}
		}
	}
	return 0;
}

int func_115(int iParam0, int iParam1)//Position - 0xC5B6
{
	if (func_92(iParam0))
	{
		return Global_1618089[iParam0 /*390*/].f_11.f_289 == iParam1;
	}
	return false;
}

int func_116(int iParam0, int iParam1, int iParam2)//Position - 0xC5DC
{
	if (iParam1 != func_9())
	{
		if (iParam0 != func_9())
		{
			if (Global_1618089[iParam0 /*390*/].f_11 != func_9())
			{
				if (Global_1618089[iParam0 /*390*/].f_11 == iParam0)
				{
					if (Global_1618089[iParam0 /*390*/].f_11.f_289 == iParam2)
					{
						return iParam1 == iParam0;
					}
				}
			}
		}
	}
	return false;
}

int func_117(int iParam0)//Position - 0xC634
{
	if (func_91(iParam0, 1))
	{
		return Global_1618089[iParam0 /*390*/].f_11.f_290;
	}
	return -1;
}

char* func_118(var uParam0, char* sParam1, var uParam2)//Position - 0xC658
{
	if (Global_1760739.f_592)
	{
		Global_1760739.f_592 = 0;
		return "MP_FACTORY_KICKe";
	}
	if (Global_1760739.f_2 == 0)
	{
		return "MP_FACTORY_KICKc";
	}
	if (gameplay::is_bit_set(Global_1760739.f_2, 1))
	{
		if (!func_82(player::player_id(), 0))
		{
			return "MP_FACTORY_KICKb";
		}
	}
	if (gameplay::is_bit_set(Global_1760739.f_2, 0))
	{
		if (func_82(player::player_id(), 0) || (func_91(player::player_id(), 1) && !func_82(player::player_id(), 1)))
		{
			return "MP_FACTORY_KICKa";
		}
	}
	if (gameplay::is_bit_set(Global_1760739.f_2, 0) || gameplay::is_bit_set(Global_1760739.f_2, 2))
	{
		if (func_82(player::player_id(), 0))
		{
			StringCopy(sParam1, func_119(player::player_id(), 0), 64);
			return "MP_FACTORY_KICKd";
		}
	}
	return "";
}

char* func_119(int iParam0, int iParam1)//Position - 0xC72C
{
	if (iParam1)
	{
		if (func_82(iParam0, 1))
		{
			if (func_94(iParam0))
			{
				return "PI_BIK_PR_T";
			}
			else
			{
				switch (func_117(iParam0))
				{
					case 0:
						return "PI_BIK_V_T";
					
					case 1:
						return "PI_BIK_R_T";
					
					case 2:
						return "PI_BIK_S_T";
					
					case 3:
						return "PI_BIK_E_T";
					
					default:
				}
				return "PI_BIK_P_T";
			}
		}
	}
	else if (func_82(iParam0, 1))
	{
		if (func_94(iParam0))
		{
			return "PI_BIK_PR";
		}
		else
		{
			switch (func_117(iParam0))
			{
				case 0:
					return "PI_BIK_V";
				
				case 1:
					return "PI_BIK_R";
				
				case 2:
					return "PI_BIK_S";
				
				case 3:
					return "PI_BIK_E";
				
				default:
			}
			return "PI_BIK_P";
		}
	}
	return "";
}

int func_120(int iParam0, var uParam1)//Position - 0xC804
{
	if (Global_1760739.f_2 == 0)
	{
		return true;
	}
	if (func_91(player::player_id(), 1) && !func_82(player::player_id(), 1))
	{
		return true;
	}
	if (gameplay::is_bit_set(Global_1760739.f_2, 1))
	{
		if (!func_82(player::player_id(), 0))
		{
			return true;
		}
	}
	if (gameplay::is_bit_set(Global_1760739.f_2, 0) || gameplay::is_bit_set(Global_1760739.f_2, 2))
	{
		if (func_82(player::player_id(), 0))
		{
			return true;
		}
	}
	return !func_146(player::player_id(), iParam0);
}

void func_121(int iParam0, var uParam1)//Position - 0xC892
{
	vector3 vVar0;
	vector3 vVar3;
	int iVar6;
	int iVar7;
	int iVar8;
	
	if (func_94(player::player_id()) && func_137(player::player_id(), iParam0))
	{
		func_189(iParam0, &vVar0);
		vVar0.z = 0f;
		iVar8 = 0;
		while (iVar8 < func_133())
		{
			iVar6 = func_132(player::player_id(), iVar8);
			if ((iVar6 != func_9() && iVar6 != player::player_id()) && func_387(iVar6, 1, 1))
			{
				vVar3 = { func_131(iVar6) };
				vVar3.z = 0f;
				if (system::vdist(vVar3, vVar0) <= IntToFloat(func_130(iParam0)))
				{
					iVar7++;
				}
			}
			iVar8++;
		}
		if (iVar7 == 0)
		{
			func_128(uParam1, 1, 0);
		}
		else
		{
			func_128(uParam1, 1, 1);
		}
		if (func_127(1, uParam1))
		{
			if (iVar7 > 0)
			{
				func_122(player::player_id(), iParam0);
			}
			Global_1760739.f_1 = -1;
			Global_1760739.f_708 = 1;
			Global_1760739.f_709 = iParam0;
			Global_1760739.f_710 = 0;
			Global_1760739.f_715 = 1;
		}
	}
	else
	{
		func_128(uParam1, 1, 0);
	}
}

void func_122(int iParam0, int iParam1)//Position - 0xC997
{
	vector3 vVar0;
	int iVar3;
	
	vVar0.x = 529;
	vVar0.y = iParam0;
	vVar0.z = iParam1;
	iVar3 = func_123(1, 1);
	if (!iVar3 == 0)
	{
		script::trigger_script_event(1, &vVar0, 3, iVar3);
	}
}

var func_123(int iParam0, int iParam1)//Position - 0xC9CD
{
	var uVar0;
	int iVar1;
	int iVar2;
	
	iVar1 = 0;
	while (iVar1 < 32)
	{
		iVar2 = player::int_to_playerindex(iVar1);
		if (func_387(iVar2, 0, 0))
		{
			if (iVar2 != player::player_id() || iParam0)
			{
				if (iParam1)
				{
					gameplay::set_bit(&uVar0, iVar1);
				}
				else if (!func_124(iVar2, 0))
				{
					gameplay::set_bit(&uVar0, iVar1);
				}
			}
		}
		iVar1++;
	}
	return uVar0;
}

int func_124(int iParam0, int iParam1)//Position - 0xCA32
{
	int iVar0;
	
	if (iParam0 == player::player_id())
	{
		iVar0 = func_125(-1, 0) == 8;
	}
	else
	{
		iVar0 = Global_1589933[iParam0 /*601*/].f_202 == 8;
	}
	if (iParam1 == 1)
	{
		if (network::network_is_player_active(iParam0))
		{
			iVar0 = player::get_player_team(iParam0) == 8;
		}
	}
	return iVar0;
}

int func_125(int iParam0, int iParam1)//Position - 0xCA7D
{
	int iVar0;
	int iVar1;
	
	iVar1 = iParam0;
	if (iVar1 == -1)
	{
		iVar1 = func_126();
	}
	if (Global_1315209[iVar1] == 1)
	{
		if (iParam1)
		{
		}
		iVar0 = 8;
	}
	else
	{
		iVar0 = Global_1312725[iVar1];
		if (iParam1)
		{
		}
	}
	return iVar0;
}

var func_126()//Position - 0xCABE
{
	return Global_1312731;
}

int func_127(int iParam0, var uParam1)//Position - 0xCACA
{
	if (gameplay::is_bit_set(uParam1->f_2, 1))
	{
		return uParam1->f_4 == iParam0;
	}
	return false;
}

void func_128(var uParam0, int iParam1, int iParam2)//Position - 0xCAE9
{
	if (func_129(uParam0, iParam1))
	{
		if (iParam2)
		{
			if (!gameplay::is_bit_set(uParam0->f_3, iParam1))
			{
				gameplay::set_bit(&(uParam0->f_3), iParam1);
				uParam0->f_1 = 0;
				gameplay::clear_bit(&(uParam0->f_2), 0);
			}
		}
		else if (gameplay::is_bit_set(uParam0->f_3, iParam1))
		{
			gameplay::clear_bit(&(uParam0->f_3), iParam1);
			uParam0->f_1 = 0;
			gameplay::clear_bit(&(uParam0->f_2), 0);
		}
	}
}

int func_129(var uParam0, int iParam1)//Position - 0xCB4F
{
	return (iParam1 > -1 && iParam1 < uParam0->f_5);
}

int func_130(int iParam0)//Position - 0xCB67
{
	return 20;
}

Vector3 func_131(int iParam0)//Position - 0xCB71
{
	return entity::get_entity_coords(player::get_player_ped(iParam0), 0);
}

int func_132(int iParam0, int iParam1)//Position - 0xCB84
{
	if (func_92(iParam0))
	{
		if (iParam1 > -1 && iParam1 < 7)
		{
			return Global_1618089[iParam0 /*390*/].f_11.f_10[iParam1];
		}
	}
	return func_9();
}

int func_133()//Position - 0xCBC0
{
	if (func_81() == func_9())
	{
		return 0;
	}
	return func_134(func_81());
}

var func_134(var uParam0)//Position - 0xCBDF
{
	return Global_1618089[uParam0 /*390*/].f_11.f_18;
}

void func_135(int iParam0, char* sParam1, var uParam2, var uParam3, var uParam4)//Position - 0xCBF4
{
	switch (iParam0)
	{
		case 22:
		case 27:
		case 32:
		case 37:
			StringCopy(sParam1, "BIKER_WH_1", 64);
			break;
		
		case 23:
		case 28:
		case 33:
		case 38:
			StringCopy(sParam1, "BIKER_WH_2", 64);
			break;
		
		case 24:
		case 29:
		case 34:
		case 39:
			StringCopy(sParam1, "BIKER_WH_3", 64);
			break;
		
		case 25:
		case 30:
		case 35:
		case 40:
			StringCopy(sParam1, "BIKER_WH_4", 64);
			break;
		
		case 26:
		case 31:
		case 36:
		case 41:
			StringCopy(sParam1, "BIKER_WH_5", 64);
			break;
		
		default:
			StringCopy(sParam1, "MP_WHOUSE_EXIT", 64);
			break;
	}
	(*uParam2)[0] = "BWH_ENTRM_ALONE";
	(*uParam3)[0] = 3;
	(*uParam2)[1] = "BWH_ENTRM_GANG";
	(*uParam3)[1] = 3;
	*uParam4 = 2;
}

bool func_136(int iParam0, int iParam1)//Position - 0xCCDF
{
	if (func_82(iParam0, 0) && func_111(func_90(iParam0), func_79(iParam1)))
	{
		return true;
	}
	return false;
}

bool func_137(int iParam0, int iParam1)//Position - 0xCD0B
{
	if (func_94(iParam0) && func_111(iParam0, func_79(iParam1)))
	{
		if (func_141(iParam0, 0))
		{
			if (func_138(player::player_id()))
			{
				return false;
			}
		}
		return true;
	}
	return false;
}

int func_138(int iParam0)//Position - 0xCD4B
{
	return func_139(func_140(iParam0));
}

bool func_139(int iParam0)//Position - 0xCD5D
{
	switch (iParam0)
	{
		case 190:
		case 191:
		case 192:
			return true;
		
		default:
	}
	return false;
}

int func_140(int iParam0)//Position - 0xCD83
{
	if (func_141(iParam0, 0))
	{
		return Global_1618089[iParam0 /*390*/].f_11.f_32;
	}
	return -1;
}

bool func_141(int iParam0, int iParam1)//Position - 0xCDA6
{
	if (Global_1618089[iParam0 /*390*/].f_11.f_32 != -1 || (iParam1 && Global_1618089[iParam0 /*390*/].f_11.f_31 != -1))
	{
		return true;
	}
	return false;
}

char* func_142(int iParam0, char* sParam1)//Position - 0xCDE1
{
	int iVar0;
	struct<2> Var1;
	
	if (func_111(player::player_id(), func_79(iParam0)))
	{
		if (func_91(player::player_id(), 1))
		{
			if (!func_82(player::player_id(), 1))
			{
				if (func_92(player::player_id()))
				{
					if (func_145(player::player_id()))
					{
						return "BWH_MC_BLOCK_EXEb";
					}
					else
					{
						return "BWH_MC_BLOCK_EXEa";
					}
				}
				else if (func_145(func_90(player::player_id())))
				{
					return "BWH_MC_BLOCK_EXEd";
				}
				else
				{
					return "BWH_MC_BLOCK_EXEc";
				}
			}
			else if (!func_94(player::player_id()) && !func_111(func_90(player::player_id()), func_79(iParam0)))
			{
				StringCopy(sParam1, func_119(player::player_id(), 0), 64);
				return "BWH_MC_BLOCK_BKRa";
			}
		}
	}
	if (func_82(player::player_id(), 1) && func_141(player::player_id(), 0))
	{
		if (func_138(player::player_id()))
		{
			if (func_140(player::player_id()) == 192)
			{
				iVar0 = func_90(player::player_id());
				if (iVar0 != func_9())
				{
					Var1 = { Global_1618089[iVar0 /*390*/].f_11.f_184 };
					if (func_79(iParam0) != Var1)
					{
						if (func_143(iVar0, Var1))
						{
							return "BWH_MC_BLOCK_BKRc";
						}
						else
						{
							return "BWH_MC_BLOCK_BKRb";
						}
					}
				}
			}
		}
	}
	return "";
}

bool func_143(int iParam0, int iParam1)//Position - 0xCF19
{
	var uVar0;
	
	if (func_111(iParam0, iParam1))
	{
		uVar0 = func_144(iParam0, iParam1);
		if (Global_1589933[iParam0 /*601*/].f_257.f_152[uVar0 /*11*/].f_4 > 0 && Global_1589933[iParam0 /*601*/].f_257.f_152[uVar0 /*11*/].f_7)
		{
			return true;
		}
	}
	return false;
}

int func_144(int iParam0, int iParam1)//Position - 0xCF6D
{
	int iVar0;
	
	if (func_112(iParam1) && iParam0 != func_9())
	{
		iVar0 = 0;
		while (iVar0 <= 4)
		{
			if (Global_1589933[iParam0 /*601*/].f_257.f_152[iVar0 /*11*/] == iParam1)
			{
				return iVar0;
			}
			iVar0++;
		}
	}
	return -1;
}

int func_145(int iParam0)//Position - 0xCFB9
{
	if (iParam0 == -1)
	{
		return false;
	}
	return gameplay::is_bit_set(Global_1589933[iParam0 /*601*/].f_257.f_13, 26);
}

int func_146(int iParam0, int iParam1)//Position - 0xCFDF
{
	int iVar0;
	
	iVar0 = func_79(iParam1);
	if (iParam0 != func_9())
	{
		if (func_82(iParam0, 1))
		{
			return func_111(func_90(iParam0), iVar0);
		}
		else if (func_111(iParam0, iVar0) && !func_91(player::player_id(), 1))
		{
			return 1;
		}
	}
	return 0;
}

bool func_147(int iParam0)//Position - 0xD033
{
	int iVar0;
	int iVar1;
	struct<2> Var2;
	int iVar4;
	
	if (Global_1573331 && !func_138(player::player_id()))
	{
		return true;
	}
	if (network::network_is_activity_session())
	{
		return true;
	}
	iVar0 = false;
	if (func_91(player::player_id(), 1) && func_141(player::player_id(), 0))
	{
		if (func_138(player::player_id()))
		{
			if (func_140(player::player_id()) == 192)
			{
				iVar1 = func_90(player::player_id());
				if (iVar1 != -1)
				{
					Var2 = { Global_1618089[iVar1 /*390*/].f_11.f_184 };
					if (func_79(iParam0) != Var2)
					{
						return true;
					}
					else
					{
						iVar0 = true;
					}
				}
			}
			else
			{
				return true;
			}
		}
	}
	if (!func_164(1) && !iVar0)
	{
		return true;
	}
	iVar4 = false;
	if (func_148(iVar4, 4))
	{
		return true;
	}
	return false;
}

bool func_148(int iParam0, int iParam1)//Position - 0xD0FA
{
	int iVar0;
	int iVar1;
	int iVar2;
	int iVar3;
	
	iVar0 = false;
	iVar1 = false;
	if (iParam1 == 1)
	{
		iVar1 = true;
	}
	else if (iParam1 == 2)
	{
		iVar0 = true;
	}
	if (Global_1573332 != 0)
	{
		if (!iVar0 && iParam1 != 4)
		{
			if (iParam0)
			{
			}
			return true;
		}
		else if (iVar0)
		{
			iVar2 = Global_1573332;
			gameplay::clear_bit(&iVar2, 4);
			if (iVar2 > 0)
			{
				if (iParam0)
				{
				}
				return true;
			}
		}
		else if (iParam1 == 4)
		{
			iVar3 = Global_1573332;
			gameplay::clear_bit(&iVar3, 6);
			if (iVar3 > 0)
			{
				if (iParam0)
				{
				}
				return true;
			}
		}
	}
	if (((func_160(player::player_id()) && !func_158()) && !(iParam1 == 4 && func_138(player::player_id()))) && !(iParam1 == 3 && func_155()))
	{
		return true;
	}
	if (func_154(player::player_id(), 21))
	{
		return true;
	}
	if (iVar1)
	{
		if (func_151() && network::network_is_activity_session())
		{
			if (iParam0)
			{
			}
			return true;
		}
		if (Global_1589933[player::player_id() /*601*/] == 9)
		{
			if (iParam0)
			{
			}
			return true;
		}
		if (Global_262145.f_13352)
		{
			if (iParam0)
			{
			}
			return true;
		}
		if (func_150(player::player_id()) || func_149(player::player_id()))
		{
			if (iParam0)
			{
			}
			return true;
		}
	}
	return false;
}

int func_149(int iParam0)//Position - 0xD247
{
	return Global_2421621[iParam0 /*358*/].f_118 == 7;
}

int func_150(int iParam0)//Position - 0xD25C
{
	return Global_2421621[iParam0 /*358*/].f_118 == 2;
}

int func_151()//Position - 0xD271
{
	if (network::network_is_activity_session())
	{
		return func_153();
	}
	return func_152(Global_1632166.f_86360);
}

bool func_152(int iParam0)//Position - 0xD295
{
	int iVar0;
	
	if (iParam0 == 0)
	{
		return false;
	}
	iVar0 = 0;
	while (iVar0 < 8)
	{
		if (Global_262145.f_5054[iVar0] == iParam0)
		{
			return true;
		}
		iVar0++;
	}
	return false;
}

var func_153()//Position - 0xD2CF
{
	return Global_2443089.f_12;
}

int func_154(int iParam0, int iParam1)//Position - 0xD2DD
{
	return gameplay::is_bit_set(Global_2421621[iParam0 /*358*/].f_211, iParam1);
}

int func_155()//Position - 0xD2F6
{
	return func_156(player::player_id());
}

bool func_156(int iParam0)//Position - 0xD306
{
	if (func_141(iParam0, 0))
	{
		if (func_157(func_140(iParam0)))
		{
			return true;
		}
		return false;
	}
	return true;
}

bool func_157(int iParam0)//Position - 0xD32E
{
	switch (iParam0)
	{
		case 180:
		case 183:
		case 185:
		case 186:
		case 182:
		case 195:
		case 197:
		case 198:
		case 207:
		case 208:
		case 209:
			return true;
		
		default:
	}
	return false;
}

int func_158()//Position - 0xD384
{
	return func_159(player::player_id());
}

bool func_159(int iParam0)//Position - 0xD394
{
	if (((func_140(iParam0) == 167 || func_140(iParam0) == 168) || func_140(iParam0) == 190) || func_140(iParam0) == 178)
	{
		return true;
	}
	return false;
}

bool func_160(int iParam0)//Position - 0xD3DA
{
	if (func_163(iParam0))
	{
		return true;
	}
	if (func_161(iParam0))
	{
		return true;
	}
	return false;
}

int func_161(var uParam0)//Position - 0xD3FD
{
	int iVar0;
	
	iVar0 = uParam0;
	if (iVar0 != -1)
	{
		return func_162(uParam0, 9);
	}
	return false;
}

int func_162(int iParam0, int iParam1)//Position - 0xD41B
{
	return gameplay::is_bit_set(Global_1618089[iParam0 /*390*/].f_11.f_4, iParam1);
}

int func_163(var uParam0)//Position - 0xD436
{
	int iVar0;
	
	iVar0 = uParam0;
	if (iVar0 != -1)
	{
		return gameplay::is_bit_set(Global_1618089[iVar0 /*390*/].f_1, 0);
	}
	return false;
}

bool func_164(int iParam0)//Position - 0xD45C
{
	if (!func_178(60, 0, 0) && !iParam0)
	{
		return false;
	}
	if (func_177(player::player_id()))
	{
		return false;
	}
	if (func_176(player::player_id()))
	{
		return false;
	}
	if (func_175(player::player_id()))
	{
		return false;
	}
	if (func_174())
	{
		return false;
	}
	if (func_173())
	{
		return false;
	}
	if (Global_1589933[player::player_id() /*601*/] == 1 || Global_1589933[player::player_id() /*601*/] == 3)
	{
		return false;
	}
	if (Global_1589933[player::player_id() /*601*/] == 32)
	{
		return false;
	}
	if (func_171(player::player_id(), 134))
	{
		return true;
	}
	if (func_170(player::player_id(), 1))
	{
		return false;
	}
	if (func_169())
	{
		return false;
	}
	if (func_168())
	{
		return false;
	}
	if (Global_1574289)
	{
		return false;
	}
	if (func_167())
	{
		return false;
	}
	if (func_165(player::player_id()))
	{
		return false;
	}
	return true;
}

bool func_165(int iParam0)//Position - 0xD557
{
	if (func_124(iParam0, 0))
	{
		return true;
	}
	if (func_166())
	{
		if (iParam0 == player::player_id())
		{
			return true;
		}
	}
	if (gameplay::is_bit_set(Global_2421621[iParam0 /*358*/].f_198, 2))
	{
		return true;
	}
	return false;
}

int func_166()//Position - 0xD599
{
	return gameplay::is_bit_set(Global_2359301, 3);
}

var func_167()//Position - 0xD5AA
{
	return Global_1315206;
}

int func_168()//Position - 0xD5B6
{
	return gameplay::is_bit_set(Global_1589933[player::player_id() /*601*/].f_39.f_18, 0);
}

bool func_169()//Position - 0xD5D2
{
	var uVar0;
	
	uVar0 = Global_2433082;
	if (gameplay::is_bit_set(Global_1616968[uVar0 /*35*/].f_13, 0) && Global_1616968[uVar0 /*35*/].f_22 == 2)
	{
		return true;
	}
	return false;
}

bool func_170(int iParam0, int iParam1)//Position - 0xD608
{
	if (iParam1)
	{
		if (func_102(iParam0))
		{
			return true;
		}
	}
	if (Global_1589933[iParam0 /*601*/] == -1)
	{
		return false;
	}
	return true;
}

int func_171(int iParam0, int iParam1)//Position - 0xD634
{
	return iParam1 == func_172(iParam0);
}

int func_172(int iParam0)//Position - 0xD645
{
	if (func_387(iParam0, 0, 1))
	{
		return Global_2421621[iParam0 /*358*/].f_1;
	}
	return 0;
}

int func_173()//Position - 0xD667
{
	return Global_1589933[player::player_id() /*601*/] == 148;
}

int func_174()//Position - 0xD67D
{
	return Global_1589933[player::player_id() /*601*/] == 5;
}

int func_175(int iParam0)//Position - 0xD692
{
	return Global_2421621[iParam0 /*358*/].f_118 == 4;
}

int func_176(int iParam0)//Position - 0xD6A7
{
	return Global_2421621[iParam0 /*358*/].f_118 == 6;
}

int func_177(int iParam0)//Position - 0xD6BC
{
	return Global_2421621[iParam0 /*358*/].f_118 == 5;
}

int func_178(int iParam0, int iParam1, int iParam2)//Position - 0xD6D1
{
	int iVar0;
	int iVar1;
	
	if (Global_262145.f_6516 == 1)
	{
		if (iParam0 == 67)
		{
			return true;
		}
		if (iParam0 == 74)
		{
			return true;
		}
		if (func_183(player::player_id(), 85))
		{
			if (((((iParam0 == 64 || iParam0 == 77) || iParam0 == 61) || iParam0 == 81) || iParam0 == 63) || iParam0 == 62)
			{
				return true;
			}
		}
		if ((((((((((iParam0 == 66 || iParam0 == 116) || iParam0 == 103) || iParam0 == 104) || iParam0 == 105) || iParam0 == 119) || iParam0 == 88) || iParam0 == 75) || iParam0 == 95) || iParam0 == 65) || iParam0 == 98)
		{
			return true;
		}
	}
	if (iParam0 < 0)
	{
		return false;
	}
	if (iParam0 == 31)
	{
		if (Global_262145.f_4880 == 1)
		{
			return true;
		}
	}
	if (func_182() || func_181())
	{
		return true;
	}
	iVar0 = iParam0;
	iVar1 = (iVar0 / 32);
	iVar0 = (iVar0 % 32);
	if (iParam1)
	{
		if (iParam0 == 3)
		{
			if (func_179())
			{
				return true;
			}
			else
			{
				return false;
			}
		}
	}
	if (iParam2)
	{
		return false;
	}
	return gameplay::is_bit_set(Global_1574319[iVar1], iVar0);
}

bool func_179()//Position - 0xD83F
{
	int iVar0;
	
	if (Global_1312442)
	{
		return true;
	}
	if (gameplay::is_bit_set(Global_2494149.f_1639, 23))
	{
		return true;
	}
	if (func_182())
	{
		return true;
	}
	if (func_181())
	{
		return true;
	}
	iVar0 = Global_1362443[func_180(-1)];
	if (gameplay::is_bit_set(iVar0, 7))
	{
		gameplay::set_bit(&(Global_2494149.f_1639), 23);
		return true;
	}
	return false;
}

int func_180(int iParam0)//Position - 0xD8A5
{
	int iVar0;
	int iVar1;
	
	iVar0 = iParam0;
	if (iVar0 == -1)
	{
		iVar1 = func_126();
		if (iVar1 > -1)
		{
			Global_2503486 = 0;
			iVar0 = iVar1;
		}
		else
		{
			iVar0 = 0;
			Global_2503486 = 1;
		}
	}
	return iVar0;
}

var func_181()//Position - 0xD8D9
{
	return Global_1315217;
}

var func_182()//Position - 0xD8E5
{
	return Global_1315219;
}

int func_183(int iParam0, int iParam1)//Position - 0xD8F1
{
	var uVar0;
	int iVar1;
	
	if (!func_186())
	{
		return false;
	}
	if (func_185())
	{
		return false;
	}
	if (iParam1 == 86)
	{
		return true;
	}
	uVar0 = func_184(iParam1);
	iVar1 = uVar0;
	return gameplay::is_bit_set(Global_1589933[iParam0 /*601*/].f_490, iVar1);
}

int func_184(int iParam0)//Position - 0xD939
{
	switch (iParam0)
	{
		case 86:
			return 0;
		
		case 19:
			return 1;
		
		case 12:
			return 2;
		
		case 31:
			return 3;
		
		case 20:
			return 4;
		
		case 18:
			return 5;
		
		case 2:
			return 6;
		
		case 76:
			return 7;
		
		default:
	}
	return 1;
}

int func_185()//Position - 0xD999
{
	return gameplay::is_bit_set(Global_1589933[player::player_id() /*601*/].f_142, 3);
}

int func_186()//Position - 0xD9B3
{
	if (Global_1312442)
	{
		return 1;
	}
	if (func_182())
	{
		return 1;
	}
	if (func_181())
	{
		return 1;
	}
	return func_187(120, -1);
}

int func_187(int iParam0, int iParam1)//Position - 0xD9E3
{
	int iVar0;
	var uVar1;
	
	iVar0 = Global_2522528[iParam0 /*3*/][func_180(iParam1)];
	if (stats::stat_get_bool(iVar0, &uVar1, -1))
	{
		return uVar1;
	}
	return 0;
}

void func_188(var uParam0, int iParam1, int iParam2, int iParam3, var uParam4)//Position - 0xDA0F
{
	ui::get_hud_colour(9, iParam1, iParam2, iParam3, uParam4);
}

void func_189(int iParam0, var uParam1)//Position - 0xDA25
{
	switch (iParam0)
	{
		case 22:
			*uParam1 = { 52.903f, 6338.585f, 30.35f };
			break;
		
		case 23:
			*uParam1 = { 416.7524f, 6520.753f, 26.7121f };
			break;
		
		case 24:
			*uParam1 = { 51.7653f, 6486.163f, 30.428f };
			break;
		
		case 25:
			*uParam1 = { -413.6606f, 6171.938f, 30.4782f };
			break;
		
		case 26:
			*uParam1 = { -163.6828f, 6334.845f, 30.5808f };
			break;
		
		case 27:
			*uParam1 = { 1454.671f, -1651.986f, 66f };
			break;
		
		case 28:
			*uParam1 = { 102.14f, 175.26f, 103.56f };
			break;
		
		case 29:
			*uParam1 = { -1462.622f, -381.826f, 37.802f };
			break;
		
		case 30:
			*uParam1 = { -1171.005f, -1380.922f, 3.937f };
			break;
		
		case 31:
			*uParam1 = { 299.071f, -759.072f, 28.333f };
			break;
		
		case 32:
			*uParam1 = { 201.8909f, 2461.782f, 54.6885f };
			break;
		
		case 33:
			*uParam1 = { 2848.369f, 4450.147f, 47.5139f };
			break;
		
		case 34:
			*uParam1 = { 387.5332f, 3585.042f, 32.2922f };
			break;
		
		case 35:
			*uParam1 = { 636.6344f, 2785.126f, 41.0111f };
			break;
		
		case 36:
			*uParam1 = { 1657.066f, 4851.732f, 40.9882f };
			break;
		
		case 37:
			*uParam1 = { 1181.44f, -3113.82f, 5.03f };
			break;
		
		case 38:
			*uParam1 = { 136.973f, -2472.795f, 4.98f };
			break;
		
		case 39:
			*uParam1 = { -253.31f, -2591.15f, 4.97f };
			break;
		
		case 40:
			*uParam1 = { 671.451f, -2667.502f, 5.0812f };
			break;
		
		case 41:
			*uParam1 = { -331.52f, -2778.97f, 4.12f };
			break;
	}
}

void func_190(int iParam0, var uParam1)//Position - 0xDC64
{
	switch (iParam0)
	{
		case 22:
		case 27:
		case 32:
		case 37:
			*uParam1 = { 992.9876f, -3203.402f, -40.4781f };
			uParam1->f_3 = { 1019.888f, -3192.728f, -32.2875f };
			break;
		
		case 23:
		case 28:
		case 33:
		case 38:
			*uParam1 = { 1029.689f, -3209.573f, -40.485f };
			uParam1->f_3 = { 1071.916f, -3179.999f, -33.487f };
			break;
		
		case 24:
		case 29:
		case 34:
		case 39:
			*uParam1 = { 1084.857f, -3200.893f, -40.493f };
			uParam1->f_3 = { 1104.715f, -3182.607f, -35.253f };
			break;
		
		case 25:
		case 30:
		case 35:
		case 40:
			*uParam1 = { 1114.766f, -3204.229f, -41.563f };
			uParam1->f_3 = { 1145.767f, -3191.791f, -32.698f };
			break;
		
		case 26:
		case 31:
		case 36:
		case 41:
			*uParam1 = { 1155f, -3200.515f, -40.05f };
			uParam1->f_3 = { 1176.79f, -3189.532f, -34.785f };
			break;
	}
}

char* func_191(int iParam0)//Position - 0xDDC2
{
	switch (iParam0)
	{
		case 22:
		case 27:
		case 32:
		case 37:
			return "BWH_METH";
			break;
		
		case 23:
		case 28:
		case 33:
		case 38:
			return "BWH_WEED";
			break;
		
		case 24:
		case 29:
		case 34:
		case 39:
			return "BWH_CRACK";
			break;
		
		case 25:
		case 30:
		case 35:
		case 40:
			return "BWH_MONEY";
			break;
		
		case 26:
		case 31:
		case 36:
		case 41:
			return "BWH_DOCUMENTS";
			break;
	}
	return "MISSING";
}

void func_192(int iParam0, var uParam1)//Position - 0xDE7F
{
	switch (iParam0)
	{
		case 22:
			func_197(uParam1);
			uParam1->f_22.f_3 = "anim@apt_trans@hinge_l";
			uParam1->f_22.f_4 = "ext_player";
			uParam1->f_22.f_6 = { 50.8801f, 6336.875f, 32.139f };
			uParam1->f_22.f_9 = { -0.7937f, 0f, -63.3392f };
			uParam1->f_22.f_12 = 40.1256f;
			uParam1->f_22.f_14 = { 53.457f, 6337.362f, 30.641f };
			uParam1->f_22.f_17 = { 0f, 0f, -150.84f };
			uParam1->f_22.f_20 = 0.2f;
			uParam1->f_22.f_21 = 0.46f;
			uParam1->f_22.f_40 = { 59.6936f, 6359.301f, 36.3307f };
			uParam1->f_22.f_43 = { -1.8386f, 0f, 163.8716f };
			uParam1->f_22.f_46 = 42.6393f;
			break;
		
		case 23:
			func_196(uParam1);
			uParam1->f_22.f_3 = "anim@apt_trans@hinge_l";
			uParam1->f_22.f_4 = "ext_player";
			uParam1->f_22.f_6 = { 416.6734f, 6524.713f, 28.1782f };
			uParam1->f_22.f_9 = { 0.8228f, 0f, 172.1154f };
			uParam1->f_22.f_12 = 30.8437f;
			uParam1->f_22.f_14 = { 415.99f, 6520.941f, 26.755f };
			uParam1->f_22.f_17 = { 0f, 0f, 87.48f };
			uParam1->f_22.f_20 = 0.2f;
			uParam1->f_22.f_21 = 0.46f;
			uParam1->f_22.f_40 = { 435.9453f, 6546.208f, 36.2606f };
			uParam1->f_22.f_43 = { -7.4123f, 0f, 132.5485f };
			uParam1->f_22.f_46 = 45.7557f;
			break;
		
		case 24:
			func_195(uParam1);
			uParam1->f_22.f_3 = "anim@apt_trans@hinge_l";
			uParam1->f_22.f_4 = "ext_player";
			uParam1->f_22.f_6 = { 49.1174f, 6487.856f, 32.0173f };
			uParam1->f_22.f_9 = { -2.8312f, 0f, -130.0002f };
			uParam1->f_22.f_12 = 33.4542f;
			uParam1->f_22.f_14 = { 51.26f, 6485.603f, 30.428f };
			uParam1->f_22.f_17 = { 0f, 0f, 136.44f };
			uParam1->f_22.f_20 = 0.2f;
			uParam1->f_22.f_21 = 0.46f;
			uParam1->f_22.f_40 = { 67.5147f, 6496.154f, 37.7476f };
			uParam1->f_22.f_43 = { -6.3943f, 0f, 136.1353f };
			uParam1->f_22.f_46 = 44.9118f;
			break;
		
		case 25:
			func_194(uParam1);
			uParam1->f_22.f_3 = "anim@apt_trans@hinge_l";
			uParam1->f_22.f_4 = "ext_player";
			uParam1->f_22.f_6 = { -415.9254f, 6173.274f, 32.269f };
			uParam1->f_22.f_9 = { -3.4101f, 0f, -137.4814f };
			uParam1->f_22.f_12 = 32.1246f;
			uParam1->f_22.f_14 = { -414.329f, 6171.476f, 30.681f };
			uParam1->f_22.f_17 = { 0f, 0f, 136.44f };
			uParam1->f_22.f_20 = 0.2f;
			uParam1->f_22.f_21 = 0.46f;
			uParam1->f_22.f_40 = { -415.8688f, 6186.694f, 36.3816f };
			uParam1->f_22.f_43 = { -7.4606f, 0f, -177.6217f };
			uParam1->f_22.f_46 = 46.3689f;
			break;
		
		case 26:
			func_193(uParam1);
			uParam1->f_22.f_3 = "anim@apt_trans@hinge_l";
			uParam1->f_22.f_4 = "ext_player";
			uParam1->f_22.f_6 = { -165.6212f, 6335.806f, 32.2612f };
			uParam1->f_22.f_9 = { -2.5946f, 0f, -137.973f };
			uParam1->f_22.f_12 = 39.2599f;
			uParam1->f_22.f_14 = { -164.324f, 6334.336f, 30.63f };
			uParam1->f_22.f_17 = { 0f, 0f, 136.44f };
			uParam1->f_22.f_20 = 0.2f;
			uParam1->f_22.f_21 = 0.46f;
			uParam1->f_22.f_40 = { -164.562f, 6348.686f, 35.2535f };
			uParam1->f_22.f_43 = { -6.5189f, 0f, 178.7005f };
			uParam1->f_22.f_46 = 45.7449f;
			break;
		
		case 27:
			func_197(uParam1);
			uParam1->f_22.f_3 = "anim@apt_trans@hinge_r";
			uParam1->f_22.f_4 = "ext_player";
			uParam1->f_22.f_6 = { 1457.592f, -1650.822f, 67.654f };
			uParam1->f_22.f_9 = { -3.3824f, 0f, 113.9872f };
			uParam1->f_22.f_12 = 37.8183f;
			uParam1->f_22.f_14 = { 1455.009f, -1652.797f, 66.112f };
			uParam1->f_22.f_17 = { 0f, 0f, 22.32f };
			uParam1->f_22.f_20 = 0.2f;
			uParam1->f_22.f_21 = 0.46f;
			uParam1->f_22.f_40 = { 1459.165f, -1638.333f, 70.7996f };
			uParam1->f_22.f_43 = { -6.9346f, 0f, 158.3002f };
			uParam1->f_22.f_46 = 47.2229f;
			break;
		
		case 28:
			func_196(uParam1);
			uParam1->f_22.f_3 = "anim@apt_trans@hinge_l";
			uParam1->f_22.f_4 = "ext_player";
			uParam1->f_22.f_6 = { 105.3636f, 174.3149f, 105.0667f };
			uParam1->f_22.f_9 = { -1.6998f, 0f, 68.1162f };
			uParam1->f_22.f_12 = 29.473f;
			uParam1->f_22.f_14 = { 102.675f, 176.192f, 103.716f };
			uParam1->f_22.f_17 = { 0f, 0f, -18.72f };
			uParam1->f_22.f_20 = 0.2f;
			uParam1->f_22.f_21 = 0.46f;
			uParam1->f_22.f_40 = { 113.2985f, 159.4081f, 111.833f };
			uParam1->f_22.f_43 = { -2.2889f, 0.0155f, 12.6091f };
			uParam1->f_22.f_46 = 59.9445f;
			break;
		
		case 29:
			func_195(uParam1);
			uParam1->f_22.f_3 = "anim@apt_trans@hinge_l";
			uParam1->f_22.f_4 = "ext_player";
			uParam1->f_22.f_6 = { -1459.941f, -378.7752f, 39.5714f };
			uParam1->f_22.f_9 = { -2.458f, -0.018f, 135.8305f };
			uParam1->f_22.f_12 = 16.3865f;
			uParam1->f_22.f_14 = { -1463.153f, -381.244f, 37.881f };
			uParam1->f_22.f_17 = { 0f, 0f, 45.36f };
			uParam1->f_22.f_20 = 0.2f;
			uParam1->f_22.f_21 = 0.46f;
			uParam1->f_22.f_40 = { -1450.232f, -383.0981f, 43.335f };
			uParam1->f_22.f_43 = { -8.0395f, 0f, 86.8152f };
			uParam1->f_22.f_46 = 50f;
			uParam1->f_22.f_23 = 0.15f;
			break;
		
		case 30:
			func_194(uParam1);
			uParam1->f_22.f_3 = "anim@apt_trans@hinge_l";
			uParam1->f_22.f_4 = "ext_player";
			uParam1->f_22.f_6 = { -1174.645f, -1383.43f, 5.4953f };
			uParam1->f_22.f_9 = { -4.6114f, 0f, -56.2161f };
			uParam1->f_22.f_12 = 27.2213f;
			uParam1->f_22.f_14 = { -1170.636f, -1381.263f, 3.971f };
			uParam1->f_22.f_17 = { 0f, 0f, -146.52f };
			uParam1->f_22.f_20 = 0.2f;
			uParam1->f_22.f_21 = 0.46f;
			uParam1->f_22.f_40 = { -1192.8f, -1378.188f, 12.4331f };
			uParam1->f_22.f_43 = { -2.6181f, 0f, -91.6741f };
			uParam1->f_22.f_46 = 54.9572f;
			break;
		
		case 31:
			func_193(uParam1);
			uParam1->f_22.f_3 = "anim@apt_trans@hinge_l";
			uParam1->f_22.f_4 = "ext_player";
			uParam1->f_22.f_6 = { 302.1353f, -754.5077f, 29.8027f };
			uParam1->f_22.f_9 = { -1.6792f, -0.0393f, 148.3184f };
			uParam1->f_22.f_12 = 16.2107f;
			uParam1->f_22.f_14 = { 298.479f, -759.137f, 28.393f };
			uParam1->f_22.f_17 = { 0f, 0f, 71.64f };
			uParam1->f_22.f_20 = 0.2f;
			uParam1->f_22.f_21 = 0.46f;
			uParam1->f_22.f_40 = { 326.6581f, -788.2607f, 43.2081f };
			uParam1->f_22.f_43 = { 1.1232f, 0f, 45.8093f };
			uParam1->f_22.f_46 = 60.7032f;
			break;
		
		case 32:
			func_197(uParam1);
			uParam1->f_22.f_3 = "anim@apt_trans@hinge_l";
			uParam1->f_22.f_4 = "ext_player";
			uParam1->f_22.f_6 = { 205.12f, 2463.722f, 56.3782f };
			uParam1->f_22.f_9 = { -0.1022f, 0f, 112.1192f };
			uParam1->f_22.f_12 = 35.4509f;
			uParam1->f_22.f_14 = { 201.659f, 2462.738f, 54.911f };
			uParam1->f_22.f_17 = { 0f, 0f, 21.24f };
			uParam1->f_22.f_20 = 0.2f;
			uParam1->f_22.f_21 = 0.46f;
			uParam1->f_22.f_40 = { 219.5281f, 2451.271f, 61.5476f };
			uParam1->f_22.f_43 = { -3.9251f, 0f, 55.1454f };
			uParam1->f_22.f_46 = 54.4082f;
			break;
		
		case 33:
			func_196(uParam1);
			uParam1->f_22.f_3 = "anim@apt_trans@hinge_l";
			uParam1->f_22.f_4 = "ext_player";
			uParam1->f_22.f_6 = { 2850.734f, 4444.569f, 49.1442f };
			uParam1->f_22.f_9 = { -2.0858f, 0.0143f, 18.4628f };
			uParam1->f_22.f_12 = 13.338f;
			uParam1->f_22.f_14 = { 2849.022f, 4450.232f, 47.513f };
			uParam1->f_22.f_17 = { 0f, 0f, -71.64f };
			uParam1->f_22.f_20 = 0.2f;
			uParam1->f_22.f_21 = 0.46f;
			uParam1->f_22.f_40 = { 2841.437f, 4433.785f, 53.9355f };
			uParam1->f_22.f_43 = { -7.5539f, -0.0693f, -33.7803f };
			uParam1->f_22.f_46 = 54.4386f;
			break;
		
		case 34:
			func_195(uParam1);
			uParam1->f_22.f_3 = "anim@apt_trans@hinge_l";
			uParam1->f_22.f_4 = "ext_player";
			uParam1->f_22.f_6 = { 377.3802f, 3587.126f, 33.718f };
			uParam1->f_22.f_9 = { -0.7974f, -0.0177f, -104.6024f };
			uParam1->f_22.f_12 = 7.7303f;
			uParam1->f_22.f_23 = 0.1f;
			uParam1->f_22.f_14 = { 387.316f, 3584.326f, 32.292f };
			uParam1->f_22.f_17 = { 0f, 0f, 168.12f };
			uParam1->f_22.f_20 = 0.2f;
			uParam1->f_22.f_21 = 0.46f;
			uParam1->f_22.f_40 = { 376.6257f, 3595.871f, 38.3613f };
			uParam1->f_22.f_43 = { -9.8226f, 0f, -153.9853f };
			uParam1->f_22.f_46 = 57.3618f;
			break;
		
		case 35:
			func_194(uParam1);
			uParam1->f_22.f_3 = "anim@apt_trans@hinge_l";
			uParam1->f_22.f_4 = "ext_player";
			uParam1->f_22.f_6 = { 643.5591f, 2786.015f, 42.6034f };
			uParam1->f_22.f_9 = { -2.6917f, 0.0192f, 89.5651f };
			uParam1->f_22.f_12 = 16.9015f;
			uParam1->f_22.f_14 = { 636.7f, 2786.34f, 41.007f };
			uParam1->f_22.f_17 = { 0f, 0f, 5.4f };
			uParam1->f_22.f_20 = 0.2f;
			uParam1->f_22.f_21 = 0.46f;
			uParam1->f_22.f_40 = { 647.7792f, 2771.441f, 47.9368f };
			uParam1->f_22.f_43 = { -7.6509f, 0f, 30.7713f };
			uParam1->f_22.f_46 = 46.6686f;
			break;
		
		case 36:
			func_193(uParam1);
			uParam1->f_22.f_3 = "anim@apt_trans@hinge_r";
			uParam1->f_22.f_4 = "ext_player";
			uParam1->f_22.f_6 = { 1658.32f, 4846.629f, 42.6674f };
			uParam1->f_22.f_9 = { -4.8756f, 0f, 15.9561f };
			uParam1->f_22.f_12 = 18.0966f;
			uParam1->f_22.f_14 = { 1656.189f, 4851.706f, 40.982f };
			uParam1->f_22.f_17 = { 0f, 0f, -80.64f };
			uParam1->f_22.f_20 = 0.2f;
			uParam1->f_22.f_21 = 0.46f;
			uParam1->f_22.f_40 = { 1666.537f, 4863.845f, 45.2812f };
			uParam1->f_22.f_43 = { -1.6989f, 0.0463f, 137.917f };
			uParam1->f_22.f_46 = 54.403f;
			break;
		
		case 37:
			func_197(uParam1);
			uParam1->f_22.f_3 = "anim@apt_trans@hinge_l";
			uParam1->f_22.f_4 = "ext_player";
			uParam1->f_22.f_6 = { 1181.679f, -3117.107f, 6.4817f };
			uParam1->f_22.f_9 = { -1.1632f, 0f, -0.0485f };
			uParam1->f_22.f_12 = 36.1378f;
			uParam1->f_22.f_14 = { 1182.073f, -3113.992f, 5.028f };
			uParam1->f_22.f_17 = { 0f, 0f, -89.28f };
			uParam1->f_22.f_20 = 0.2f;
			uParam1->f_22.f_21 = 0.46f;
			uParam1->f_22.f_40 = { 1168.492f, -3096.343f, 13.8698f };
			uParam1->f_22.f_43 = { -9.51f, 0f, -138.0643f };
			uParam1->f_22.f_46 = 56.6217f;
			break;
		
		case 38:
			func_196(uParam1);
			uParam1->f_22.f_3 = "anim@apt_trans@hinge_l";
			uParam1->f_22.f_4 = "ext_player";
			uParam1->f_22.f_6 = { 139.9231f, -2467.325f, 7.1163f };
			uParam1->f_22.f_9 = { -5.3337f, 0f, 143.5151f };
			uParam1->f_22.f_12 = 27.4251f;
			uParam1->f_22.f_14 = { 136.286f, -2472.12f, 5.1f };
			uParam1->f_22.f_17 = { 0f, 0f, 54.72f };
			uParam1->f_22.f_20 = 0.2f;
			uParam1->f_22.f_21 = 0.46f;
			uParam1->f_22.f_40 = { 149.1082f, -2470.175f, 9.8266f };
			uParam1->f_22.f_43 = { -6.4047f, -0.0392f, 93.1629f };
			uParam1->f_22.f_46 = 55.1036f;
			break;
		
		case 39:
			func_195(uParam1);
			uParam1->f_22.f_3 = "anim@apt_trans@hinge_r";
			uParam1->f_22.f_4 = "ext_player";
			uParam1->f_22.f_6 = { -252.4981f, -2587.985f, 6.6929f };
			uParam1->f_22.f_9 = { -5.436f, 0f, 173.3827f };
			uParam1->f_22.f_12 = 36.7304f;
			uParam1->f_22.f_14 = { -252.278f, -2591.029f, 5.001f };
			uParam1->f_22.f_17 = { 0f, 0f, 93.6f };
			uParam1->f_22.f_20 = 0.2f;
			uParam1->f_22.f_21 = 0.46f;
			uParam1->f_22.f_40 = { -268.2111f, -2573.399f, 10.5836f };
			uParam1->f_22.f_43 = { -5.2092f, 0f, -121.5472f };
			uParam1->f_22.f_46 = 56.0837f;
			break;
		
		case 40:
			func_194(uParam1);
			uParam1->f_22.f_3 = "anim@apt_trans@hinge_l";
			uParam1->f_22.f_4 = "ext_player";
			uParam1->f_22.f_6 = { 671.8454f, -2670f, 6.6823f };
			uParam1->f_22.f_9 = { -0.1395f, 0f, -1.6591f };
			uParam1->f_22.f_12 = 39.835f;
			uParam1->f_22.f_14 = { 672.404f, -2667.674f, 5.293f };
			uParam1->f_22.f_17 = { 0f, 0f, -86.4f };
			uParam1->f_22.f_20 = 0.2f;
			uParam1->f_22.f_21 = 0.46f;
			uParam1->f_22.f_40 = { 655.1423f, -2667.567f, 10.4512f };
			uParam1->f_22.f_43 = { -3.5482f, 0f, -89.9837f };
			uParam1->f_22.f_46 = 56.0817f;
			break;
		
		case 41:
			func_193(uParam1);
			uParam1->f_22.f_3 = "anim@apt_trans@hinge_l";
			uParam1->f_22.f_4 = "ext_player";
			uParam1->f_22.f_6 = { -331.7401f, -2781f, 8.1884f };
			uParam1->f_22.f_9 = { -53.2973f, 0f, -18.3202f };
			uParam1->f_22.f_12 = 43.6043f;
			uParam1->f_22.f_14 = { -330.313f, -2779.079f, 4.332f };
			uParam1->f_22.f_17 = { 0f, 0f, -86.4f };
			uParam1->f_22.f_20 = 0.2f;
			uParam1->f_22.f_21 = 0.46f;
			uParam1->f_22.f_40 = { -351.9045f, -2762.355f, 7.6078f };
			uParam1->f_22.f_43 = { 3.1248f, 0f, -125.7847f };
			uParam1->f_22.f_46 = 55.3918f;
			break;
	}
}

void func_193(var uParam0)//Position - 0xEE7C
{
	uParam0->f_21 = "AM_MP_BIKER_WAREHOUSE";
	uParam0->f_89.f_1 = { 9.752f, 0.021f, 0.793f };
	uParam0->f_89.f_4 = { 7.958f, 0.021f, -1.85f };
	uParam0->f_89.f_7 = 2.13f;
	uParam0->f_89 = 270f;
	uParam0->f_22.f_50[0] = "PUSH";
	uParam0->f_22.f_50[1] = "LIMIT";
	uParam0->f_22.f_53[0] = 0.271f;
	uParam0->f_22.f_53[1] = 0.411f;
	uParam0->f_22.f_56 = "GTAO_EXEC_WH_DOOR_GENERIC_SOUNDS";
}

void func_194(var uParam0)//Position - 0xEF0E
{
	uParam0->f_21 = "AM_MP_BIKER_WAREHOUSE";
	uParam0->f_89.f_1 = { 13.54f, -2.89f, 0.356f };
	uParam0->f_89.f_4 = { 13.54f, -0.53f, -3f };
	uParam0->f_89.f_7 = 2.548f;
	uParam0->f_89 = 180f;
	uParam0->f_22.f_50[0] = "PUSH";
	uParam0->f_22.f_50[1] = "LIMIT";
	uParam0->f_22.f_53[0] = 0.271f;
	uParam0->f_22.f_53[1] = 0.411f;
	uParam0->f_22.f_56 = "GTAO_EXEC_WH_DOOR_GENERIC_SOUNDS";
}

void func_195(var uParam0)//Position - 0xEFA0
{
	uParam0->f_21 = "AM_MP_BIKER_WAREHOUSE";
	uParam0->f_89.f_1 = { -6.445f, 9.43f, 0.785f };
	uParam0->f_89.f_4 = { -3.475f, 9.43f, -1.47f };
	uParam0->f_89.f_7 = 3.06f;
	uParam0->f_89 = 0f;
	uParam0->f_22.f_50[0] = "PUSH";
	uParam0->f_22.f_50[1] = "LIMIT";
	uParam0->f_22.f_53[0] = 0.271f;
	uParam0->f_22.f_53[1] = 0.411f;
	uParam0->f_22.f_56 = "GTAO_EXEC_WH_DOOR_GENERIC_SOUNDS";
}

void func_196(var uParam0)//Position - 0xF02E
{
	uParam0->f_21 = "AM_MP_BIKER_WAREHOUSE";
	uParam0->f_89.f_1 = { 17.635f, 13.228f, 1.148f };
	uParam0->f_89.f_4 = { 14.985f, 13.228f, -1.725f };
	uParam0->f_89.f_7 = 2.13f;
	uParam0->f_89 = 270f;
	uParam0->f_22.f_50[0] = "PUSH";
	uParam0->f_22.f_50[1] = "LIMIT";
	uParam0->f_22.f_53[0] = 0.271f;
	uParam0->f_22.f_53[1] = 0.411f;
	uParam0->f_22.f_56 = "GTAO_EXEC_WH_DOOR_GENERIC_SOUNDS";
}

void func_197(var uParam0)//Position - 0xF0C0
{
	uParam0->f_21 = "AM_MP_BIKER_WAREHOUSE";
	uParam0->f_89.f_1 = { -13.148f, -4.12f, 0.84f };
	uParam0->f_89.f_4 = { -10.838f, -4.12f, 3.758f };
	uParam0->f_89.f_7 = 3.611f;
	uParam0->f_89 = 90f;
	uParam0->f_22.f_50[0] = "PUSH";
	uParam0->f_22.f_50[1] = "LIMIT";
	uParam0->f_22.f_53[0] = 0.271f;
	uParam0->f_22.f_53[1] = 0.411f;
	uParam0->f_22.f_56 = "GTAO_EXEC_WH_DOOR_GENERIC_SOUNDS";
}

void func_198(int iParam0, char* sParam1, var uParam2, var uParam3)//Position - 0xF152
{
	switch (iParam0)
	{
		case 22:
		case 27:
		case 32:
		case 37:
			*uParam2 = { 1009.5f, -3196.6f, -38.5f };
			*uParam3 = 0f;
			StringCopy(sParam1, "bkr_biker_dlc_int_ware01", 64);
			break;
		
		case 23:
		case 28:
		case 33:
		case 38:
			*uParam2 = { 1049.6f, -3196.6f, -38.5f };
			*uParam3 = 0f;
			StringCopy(sParam1, "bkr_biker_dlc_int_ware02", 64);
			break;
		
		case 24:
		case 29:
		case 34:
		case 39:
			*uParam2 = { 1093.6f, -3196.6f, -38.5f };
			*uParam3 = 0f;
			StringCopy(sParam1, "bkr_biker_dlc_int_ware03", 64);
			break;
		
		case 25:
		case 30:
		case 35:
		case 40:
			*uParam2 = { 1124.6f, -3196.6f, -38.5f };
			*uParam3 = 0f;
			StringCopy(sParam1, "bkr_biker_dlc_int_ware04", 64);
			break;
		
		case 26:
		case 31:
		case 36:
		case 41:
			*uParam2 = { 1165f, -3196.6f, -38.2f };
			*uParam3 = 0f;
			StringCopy(sParam1, "bkr_biker_dlc_int_ware05", 64);
			break;
	}
}

bool func_199(var uParam0)//Position - 0xF283
{
	return true;
}

void func_200(var uParam0, int iParam1)//Position - 0xF28C
{
	switch (iParam1)
	{
		case 0:
			*uParam0 = 98869/*func_329*/;
			break;
		
		case 1:
			uParam0->f_1 = 98760/*func_328*/;
			break;
		
		case 2:
			uParam0->f_2 = 96301/*func_322*/;
			break;
		
		case 3:
			uParam0->f_3 = 96152/*func_321*/;
			break;
		
		case 4:
			uParam0->f_4 = 96034/*func_320*/;
			break;
		
		case 5:
			uParam0->f_5 = 95739/*func_319*/;
			break;
		
		case 6:
			uParam0->f_6 = 95717/*func_318*/;
			break;
		
		case 7:
			uParam0->f_7 = 95627/*func_317*/;
			break;
		
		case 8:
			uParam0->f_8 = 95539/*func_316*/;
			break;
		
		case 9:
			uParam0->f_9 = 89627/*func_293*/;
			break;
		
		case 10:
			uParam0->f_10 = 89588/*func_292*/;
			break;
		
		case 11:
			uParam0->f_11 = 89544/*func_291*/;
			break;
		
		case 12:
			uParam0->f_12 = 89492/*func_290*/;
			break;
		
		case 13:
			uParam0->f_13 = 89231/*func_289*/;
			break;
		
		case 14:
			uParam0->f_14 = 89104/*func_288*/;
			break;
		
		case 15:
			uParam0->f_15 = 88888/*func_287*/;
			break;
		
		case 16:
			uParam0->f_16 = 88626/*func_286*/;
			break;
		
		case 17:
			uParam0->f_17 = 88220/*func_285*/;
			break;
		
		case 18:
			uParam0->f_18 = 70689/*func_284*/;
			break;
		
		case 19:
			uParam0->f_19 = 70680/*func_283*/;
			break;
		
		case 20:
			uParam0->f_20 = 70596/*func_282*/;
			break;
		
		case 21:
			uParam0->f_21 = 70548/*func_281*/;
			break;
		
		case 22:
			uParam0->f_22 = 70512/*func_280*/;
			break;
		
		case 23:
			uParam0->f_23 = 70334/*func_279*/;
			break;
		
		case 24:
			uParam0->f_24 = 70312/*func_278*/;
			break;
		
		case 25:
			uParam0->f_25 = 70301/*func_277*/;
			break;
		
		case 26:
			uParam0->f_26 = 70281/*func_276*/;
			break;
		
		case 27:
			uParam0->f_27 = 69513/*func_268*/;
			break;
		
		case 28:
			uParam0->f_28 = 64634/*func_225*/;
			break;
		
		case 29:
			uParam0->f_29 = 64620/*func_224*/;
			break;
		
		case 30:
			uParam0->f_30 = 63324/*func_209*/;
			break;
		
		case 31:
			uParam0->f_31 = 63316/*func_208*/;
			break;
		
		case 32:
			uParam0->f_32 = 63264/*func_207*/;
			break;
		
		case 33:
			uParam0->f_33 = 63235/*func_206*/;
			break;
		
		case 34:
			uParam0->f_34 = 63226/*func_205*/;
			break;
		
		case 35:
			uParam0->f_35 = 63217/*func_204*/;
			break;
		
		case 36:
			uParam0->f_36 = 62933/*func_203*/;
			break;
		
		case 37:
			uParam0->f_37 = 62781/*func_202*/;
			break;
		
		case 38:
			uParam0->f_38 = 62769/*func_201*/;
			break;
	}
}

void func_201(var uParam0, var uParam1, var uParam2, var uParam3)//Position - 0xF531
{
	*uParam1 = 0;
}

bool func_202(int iParam0, int iParam1, var uParam2, var uParam3, var uParam4, var uParam5)//Position - 0xF53D
{
	*uParam4 = 200f;
	switch (iParam0)
	{
		case 63:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { 1755.993f, -1654.617f, 111.6811f };
					*uParam3 = 4f;
					*uParam5 = 1890640474;
					return true;
					break;
			}
			break;
		
		case 66:
			*uParam4 = 300f;
			switch (iParam1)
			{
				case 0:
					*uParam2 = { -1099.531f, -2020.803f, 12.174f };
					*uParam3 = 4f;
					*uParam5 = joaat("prop_facgate_01");
					return true;
					break;
			}
			break;
	}
	return false;
}

void func_203(int iParam0, var uParam1, var uParam2, var uParam3)//Position - 0xF5D5
{
	if (iParam0 == 57)
	{
		*uParam2 = { -639.7239f, -1789.571f, 23.09021f };
		*uParam3 = { -628.3115f, -1794.311f, 24.76166f };
		*uParam1 = 1;
		return;
	}
	else if (iParam0 == 59)
	{
		*uParam2 = { -68.4866f, -1837.983f, 25.86152f };
		*uParam3 = { -55.57874f, -1822.911f, 33.3497f };
		*uParam1 = 1;
		return;
	}
	else if (iParam0 == 60)
	{
		*uParam2 = { 40.70252f, -1295.222f, 28.26908f };
		*uParam3 = { 48.47887f, -1277.385f, 30.06107f };
		*uParam1 = 1;
		return;
	}
	else if (iParam0 == 62)
	{
		*uParam2 = { 804.3705f, -2241.252f, 28.61585f };
		*uParam3 = { 785.4146f, -2239.441f, 35.856f };
		*uParam1 = 1;
		return;
	}
	else if (iParam0 == 64)
	{
		*uParam2 = { 148.0206f, -2982.688f, 5.096388f };
		*uParam3 = { 141.8934f, -2982.797f, 6.537447f };
		*uParam1 = 1;
		return;
	}
	*uParam1 = 0;
}

bool func_204(var uParam0)//Position - 0xF6F1
{
	return true;
}

bool func_205(var uParam0)//Position - 0xF6FA
{
	return true;
}

void func_206(var uParam0, var uParam1)//Position - 0xF703
{
	if (gameplay::is_bit_set(uParam0->f_103, 0))
	{
		gameplay::clear_bit(&(uParam0->f_103), 0);
	}
}

void func_207(var uParam0, var uParam1)//Position - 0xF720
{
	if (!gameplay::is_bit_set(uParam0->f_103, 0))
	{
		if (player::get_player_wanted_level(player::player_id()) > 0)
		{
			player::set_player_wanted_level(player::player_id(), 0, 0);
		}
		gameplay::set_bit(&(uParam0->f_103), 0);
	}
}

void func_208(var uParam0, var uParam1)//Position - 0xF754
{
}

void func_209(var uParam0, var uParam1, var uParam2, var uParam3)//Position - 0xF75C
{
	*uParam3 = func_223(player::player_id());
	func_210(uParam0);
}

void func_210(var uParam0)//Position - 0xF775
{
	if (func_91(player::player_id(), 1))
	{
		if (cam::is_screen_faded_out())
		{
			if (func_222(func_81()) && func_221(player::player_id()))
			{
				if (!gameplay::is_bit_set(uParam0->f_103, 1))
				{
					if (!player::is_player_teleport_active())
					{
						cam::do_screen_fade_in(500);
						func_14(player::player_id(), 1, 0);
						func_220(0);
						gameplay::set_bit(&(uParam0->f_103), 1);
					}
				}
			}
			else if (func_223(player::player_id()))
			{
				if (!func_219(&Global_2482205))
				{
					func_8(&Global_2482205, 0, 0);
				}
				else if (func_388(&Global_2482205, Global_262145.f_17150, 0))
				{
					if (func_218(player::player_id()))
					{
						func_216();
						func_220(0);
						func_215(player::player_id(), 1);
						func_214(player::player_id(), 0);
						func_213(0);
						func_7(&Global_2482205);
					}
					else
					{
						cam::do_screen_fade_in(500);
						func_213(0);
						func_220(0);
						func_215(player::player_id(), 1);
						func_214(player::player_id(), 0);
						func_14(player::player_id(), 1, 0);
						func_7(&Global_2482205);
					}
				}
			}
			if (player::player_id() == func_81())
			{
				if (Global_1760728 > -1)
				{
					func_212(1);
					func_220(0);
					func_214(player::player_id(), 0);
					Global_1760728 = -1;
					cam::do_screen_fade_in(500);
				}
			}
			else if (func_211(func_81()))
			{
				func_220(0);
				cam::do_screen_fade_in(500);
			}
		}
		if ((gameplay::is_bit_set(uParam0->f_103, 1) && cam::is_screen_faded_in()) && !func_221(player::player_id()))
		{
			if (player::player_id() == func_81())
			{
				func_213(0);
				func_215(player::player_id(), 1);
				func_214(player::player_id(), 0);
				gameplay::clear_bit(&(uParam0->f_103), 1);
			}
			else
			{
				func_213(0);
				gameplay::clear_bit(&(uParam0->f_103), 1);
			}
		}
	}
}

int func_211(var uParam0)//Position - 0xF92C
{
	return gameplay::is_bit_set(Global_2421621[uParam0 /*358*/].f_199, 6);
}

void func_212(int iParam0)//Position - 0xF944
{
	if (iParam0)
	{
		if (!gameplay::is_bit_set(Global_2421621[player::player_id() /*358*/].f_199, 6))
		{
			gameplay::set_bit(&(Global_2421621[player::player_id() /*358*/].f_199), 6);
		}
	}
	else if (gameplay::is_bit_set(Global_2421621[player::player_id() /*358*/].f_199, 6))
	{
		gameplay::clear_bit(&(Global_2421621[player::player_id() /*358*/].f_199), 6);
	}
}

void func_213(int iParam0)//Position - 0xF9A3
{
	if (iParam0)
	{
		if (!gameplay::is_bit_set(Global_2421621[player::player_id() /*358*/].f_199, 7))
		{
			gameplay::set_bit(&(Global_2421621[player::player_id() /*358*/].f_199), 7);
			if (func_219(&Global_2482205))
			{
				func_7(&Global_2482205);
			}
		}
	}
	else if (gameplay::is_bit_set(Global_2421621[player::player_id() /*358*/].f_199, 7))
	{
		gameplay::clear_bit(&(Global_2421621[player::player_id() /*358*/].f_199), 7);
	}
}

void func_214(int iParam0, int iParam1)//Position - 0xFA15
{
	if (iParam1)
	{
		if (iParam0 != func_9())
		{
			if (!gameplay::is_bit_set(Global_2421621[iParam0 /*358*/].f_198, 19))
			{
				gameplay::set_bit(&(Global_2421621[iParam0 /*358*/].f_198), 19);
			}
		}
	}
	else if (iParam0 != func_9())
	{
		if (gameplay::is_bit_set(Global_2421621[iParam0 /*358*/].f_198, 19))
		{
			gameplay::clear_bit(&(Global_2421621[iParam0 /*358*/].f_198), 19);
		}
	}
}

void func_215(int iParam0, int iParam1)//Position - 0xFA82
{
	if (iParam1)
	{
		if (iParam0 != func_9())
		{
			if (!gameplay::is_bit_set(Global_2421621[iParam0 /*358*/].f_198, 21))
			{
				gameplay::set_bit(&(Global_2421621[iParam0 /*358*/].f_198), 21);
			}
			if (gameplay::is_bit_set(Global_2421621[iParam0 /*358*/].f_198, 20))
			{
				gameplay::clear_bit(&(Global_2421621[iParam0 /*358*/].f_198), 20);
			}
		}
	}
	else if (iParam0 != func_9())
	{
		if (gameplay::is_bit_set(Global_2421621[iParam0 /*358*/].f_198, 21))
		{
			gameplay::clear_bit(&(Global_2421621[iParam0 /*358*/].f_198), 21);
		}
		if (!gameplay::is_bit_set(Global_2421621[iParam0 /*358*/].f_198, 20))
		{
			gameplay::set_bit(&(Global_2421621[iParam0 /*358*/].f_198), 20);
		}
	}
}

void func_216()//Position - 0xFB3A
{
	if (!func_217())
	{
		Global_1760739.f_591 = 1;
	}
}

var func_217()//Position - 0xFB52
{
	return Global_1760739.f_12;
}

int func_218(int iParam0)//Position - 0xFB60
{
	if (iParam0 != func_9())
	{
		if (func_387(iParam0, 1, 1))
		{
			if (Global_2421621[iParam0 /*358*/].f_312.f_1 != -1)
			{
				return func_384(Global_2421621[iParam0 /*358*/].f_312.f_1) == 1;
			}
		}
	}
	return false;
}

var func_219(var uParam0)//Position - 0xFBA6
{
	return uParam0->f_1;
}

void func_220(int iParam0)//Position - 0xFBB2
{
	if (iParam0)
	{
		if (!gameplay::is_bit_set(Global_2421621[player::player_id() /*358*/].f_198, 18))
		{
			gameplay::set_bit(&(Global_2421621[player::player_id() /*358*/].f_198), 18);
		}
	}
	else if (gameplay::is_bit_set(Global_2421621[player::player_id() /*358*/].f_198, 18))
	{
		gameplay::clear_bit(&(Global_2421621[player::player_id() /*358*/].f_198), 18);
	}
}

int func_221(int iParam0)//Position - 0xFC15
{
	if (iParam0 == func_9())
	{
		return false;
	}
	return gameplay::is_bit_set(Global_2421621[iParam0 /*358*/].f_198, 18);
}

int func_222(var uParam0)//Position - 0xFC3B
{
	return gameplay::is_bit_set(Global_2421621[uParam0 /*358*/].f_198, 22);
}

int func_223(int iParam0)//Position - 0xFC54
{
	return gameplay::is_bit_set(Global_2421621[iParam0 /*358*/].f_199, 7);
}

Vector3 func_224(int iParam0)//Position - 0xFC6C
{
	return func_276(iParam0);
}

int func_225(int iParam0)//Position - 0xFC7A
{
	int iVar0;
	
	if (func_227(iParam0))
	{
		return 5;
	}
	if (func_226(0))
	{
		return func_85(func_86(player::player_id()));
	}
	else if (func_83(player::player_id(), 0, 0))
	{
		iVar0 = func_81();
		return func_85(func_86(iVar0));
	}
	return 4;
}

int func_226(int iParam0)//Position - 0xFCCA
{
	if (func_92(player::player_id()))
	{
		return func_115(player::player_id(), iParam0);
	}
	return false;
}

int func_227(int iParam0)//Position - 0xFCEB
{
	int iVar0;
	int iVar1;
	var uVar2;
	int iVar3;
	var uVar4;
	int iVar5;
	
	if (Global_2482054.f_6 != 0 && !func_265(Global_2482054.f_6, 1))
	{
		iVar0 = func_263(func_264(iParam0));
		iVar1 = func_261(Global_2482054.f_6);
		if (iVar1 != func_9())
		{
			if (iVar1 == player::player_id())
			{
				uVar2 = func_230(iVar0);
				return uVar2;
			}
			else if (func_229(iVar1, player::player_id()))
			{
				func_228(iVar0, &uVar4, &iVar3);
				iVar5 = gameplay::is_bit_set(Global_1618089[iVar1 /*390*/].f_358.f_1[uVar4], iVar3);
				return iVar5;
			}
		}
	}
	return false;
}

void func_228(int iParam0, var uParam1, var uParam2)//Position - 0xFD80
{
	*uParam1 = system::floor((system::to_float(iParam0) / 32f));
	*uParam2 = (iParam0 - *uParam1 * 32);
}

int func_229(int iParam0, int iParam1)//Position - 0xFDA6
{
	int iVar0;
	
	if (iParam0 != func_9() && iParam1 != func_9())
	{
		iVar0 = func_90(iParam0);
		if (iVar0 != func_9())
		{
			return iVar0 == func_90(iParam1);
		}
	}
	return false;
}

bool func_230(int iParam0)//Position - 0xFDE2
{
	var uVar0;
	int iVar1;
	int iVar2;
	int iVar3;
	int iVar4;
	int iVar5;
	int iVar6;
	int iVar7;
	
	if (entity::is_entity_dead(player::player_ped_id(), 0))
	{
		return false;
	}
	if (func_260())
	{
		return false;
	}
	iVar1 = func_258(player::player_id(), &uVar0, &uVar0);
	if (iVar1 == 0)
	{
		return false;
	}
	iVar2 = func_265(iVar1, 1);
	if (!iVar2)
	{
		if (!func_257(1))
		{
			if (iParam0 == func_254(3))
			{
				return true;
			}
		}
		else
		{
			iVar3 = func_81();
			if (func_253(1))
			{
				if (iParam0 == func_254(5))
				{
					return true;
				}
			}
			else
			{
				iVar4 = !gameplay::is_bit_set(func_252(iVar1), 31);
				if (iVar4)
				{
					iVar5 = func_250(iVar1);
					if (func_249(iVar3, iVar5))
					{
						iVar4 = false;
					}
					else if (func_245(iVar3, func_248(iVar3)))
					{
						iVar4 = false;
					}
				}
				if (iVar4)
				{
					if (!func_240())
					{
						iVar4 = false;
					}
				}
				if (iVar4)
				{
					iVar6 = func_248(iVar3);
					if (iVar6 != 0)
					{
						if (func_263(iVar6) == iParam0)
						{
							return true;
						}
					}
				}
				if (iParam0 == func_254(3))
				{
					return true;
				}
			}
		}
	}
	else
	{
		if (func_239())
		{
			return false;
		}
		iVar7 = func_233(iVar1);
		if (iVar7 == iParam0)
		{
			if ((func_232(iParam0) && func_257(1)) && func_231(func_81()))
			{
				if (!func_249(func_81(), func_250(iVar1)))
				{
					return true;
				}
			}
			else
			{
				return true;
			}
		}
	}
	return false;
}

int func_231(int iParam0)//Position - 0xFF3F
{
	return func_248(iParam0) != 0;
}

bool func_232(int iParam0)//Position - 0xFF4F
{
	switch (iParam0)
	{
		case 36:
		case 37:
		case 38:
		case 39:
		case 40:
		case 41:
		case 42:
		case 43:
		case 44:
		case 45:
			return true;
		
		default:
	}
	return false;
}

int func_233(int iParam0)//Position - 0xFF9F
{
	if ((entity::does_entity_exist(iParam0) && !entity::is_entity_dead(iParam0, 0)) && entity::is_entity_a_mission_entity(iParam0))
	{
		if (func_238(iParam0))
		{
			return Global_1618089[func_234(iParam0) /*390*/].f_11.f_245[func_237(iParam0)];
		}
	}
	return -1;
}

int func_234(int iParam0)//Position - 0xFFEE
{
	int iVar0;
	int iVar1;
	
	if (entity::is_entity_a_mission_entity(iParam0) || func_236(player::player_id(), 6))
	{
		if (decorator::decor_is_registered_as_type("ContrabandOwner", 3))
		{
			if (decorator::decor_exist_on(iParam0, "ContrabandOwner"))
			{
				iVar0 = decorator::decor_get_int(iParam0, "ContrabandOwner");
				func_235(&iVar0);
				iVar1 = player::int_to_playerindex(iVar0);
				return iVar1;
			}
		}
	}
	return func_9();
}

int func_235(int iParam0)//Position - 0x1004D
{
	int iVar0;
	int iVar1;
	
	iVar0 = 0;
	while (iVar0 < 8)
	{
		iVar1 = (24 + iVar0);
		if (gameplay::is_bit_set(*iParam0, iVar1))
		{
			gameplay::clear_bit(iParam0, iVar1);
			return iVar0;
		}
		iVar0++;
	}
	return -1;
}

int func_236(int iParam0, int iParam1)//Position - 0x10089
{
	return gameplay::is_bit_set(Global_1618089[iParam0 /*390*/].f_11.f_5, iParam1);
}

int func_237(int iParam0)//Position - 0x100A4
{
	int iVar0;
	
	if (entity::is_entity_a_mission_entity(iParam0) || func_236(player::player_id(), 6))
	{
		if (decorator::decor_is_registered_as_type("ContrabandOwner", 3))
		{
			if (decorator::decor_exist_on(iParam0, "ContrabandOwner"))
			{
				iVar0 = decorator::decor_get_int(iParam0, "ContrabandOwner");
				return func_235(&iVar0);
			}
		}
	}
	return -1;
}

int func_238(int iParam0)//Position - 0x100F3
{
	if (entity::is_entity_a_mission_entity(iParam0) || func_236(player::player_id(), 6))
	{
		if (decorator::decor_is_registered_as_type("ContrabandDeliveryType", 3))
		{
			if (decorator::decor_exist_on(iParam0, "ContrabandDeliveryType"))
			{
				return decorator::decor_get_int(iParam0, "ContrabandDeliveryType") == 2;
			}
		}
	}
	return false;
}

int func_239()//Position - 0x1013C
{
	if (func_91(player::player_id(), 1))
	{
		return Global_1618089[func_81() /*390*/].f_11.f_250;
	}
	return 0;
}

bool func_240()//Position - 0x10163
{
	int iVar0;
	
	if (func_244() == 0)
	{
		return false;
	}
	if (func_242())
	{
		return true;
	}
	iVar0 = func_241(5346, -1, 0);
	if (iVar0 < func_244())
	{
		return true;
	}
	return false;
}

int func_241(int iParam0, int iParam1, int iParam2)//Position - 0x1019B
{
	int iVar0;
	var uVar1;
	
	if (iParam2 == 0)
	{
	}
	iVar0 = Global_2503773[iParam0 /*3*/][func_180(iParam1)];
	if (stats::stat_get_int(iVar0, &uVar1, -1))
	{
		return uVar1;
	}
	return 0;
}

int func_242()//Position - 0x101CD
{
	int iVar0;
	
	iVar0 = func_241(5345, -1, 0);
	return network::_get_posix_time() >= (iVar0 + func_243());
}

int func_243()//Position - 0x101EC
{
	return (Global_262145.f_17167 / 1000);
}

var func_244()//Position - 0x101FF
{
	return Global_262145.f_17168;
}

int func_245(int iParam0, int iParam1)//Position - 0x1020E
{
	return func_246(iParam0, iParam1) >= 40;
}

int func_246(int iParam0, int iParam1)//Position - 0x10221
{
	if (func_247(iParam1) && iParam0 != func_9())
	{
		return Global_1589933[iParam0 /*601*/].f_257.f_103.f_1;
	}
	return 0;
}

bool func_247(int iParam0)//Position - 0x10252
{
	if (iParam0 > 0 && iParam0 < 11)
	{
		return true;
	}
	return false;
}

int func_248(int iParam0)//Position - 0x10270
{
	if (iParam0 == func_9())
	{
		return 0;
	}
	return Global_1589933[iParam0 /*601*/].f_257.f_103;
}

bool func_249(var uParam0, int iParam1)//Position - 0x10293
{
	int iVar0;
	int iVar1;
	
	iVar0 = 0;
	while (iVar0 < 40)
	{
		if (Global_1589933[uParam0 /*601*/].f_257.f_103.f_2[iVar0] == iParam1)
		{
			return true;
		}
		else if (Global_1589933[uParam0 /*601*/].f_257.f_103.f_2[iVar0] > 1000)
		{
			iVar1 = (Global_1589933[uParam0 /*601*/].f_257.f_103.f_2[iVar0] - 1000);
			if (iVar1 == iParam1)
			{
				return true;
			}
		}
		iVar0++;
	}
	return false;
}

int func_250(int iParam0)//Position - 0x1030E
{
	int iVar0;
	
	if (entity::is_entity_a_mission_entity(iParam0) || func_236(player::player_id(), 6))
	{
		if (decorator::decor_is_registered_as_type("ContrabandOwner", 3))
		{
			if (decorator::decor_exist_on(iParam0, "ContrabandOwner"))
			{
				if (decorator::decor_is_registered_as_type("ExportVehicle", 3))
				{
					if (decorator::decor_exist_on(iParam0, "ExportVehicle"))
					{
						iVar0 = decorator::decor_get_int(iParam0, "ExportVehicle");
						func_251(&iVar0);
						return iVar0;
					}
				}
			}
		}
	}
	return 0;
}

int func_251(int iParam0)//Position - 0x10379
{
	int iVar0;
	int iVar1;
	
	iVar1 = 0;
	iVar0 = 8;
	while (iVar0 <= 31)
	{
		if (gameplay::is_bit_set(*iParam0, iVar0))
		{
			gameplay::clear_bit(iParam0, iVar0);
			gameplay::set_bit(&iVar1, iVar0);
		}
		iVar0++;
	}
	return iVar1;
}

int func_252(int iParam0)//Position - 0x103B6
{
	int iVar0;
	
	if (entity::is_entity_a_mission_entity(iParam0) || func_236(player::player_id(), 6))
	{
		if (decorator::decor_is_registered_as_type("ContrabandOwner", 3))
		{
			if (decorator::decor_exist_on(iParam0, "ContrabandOwner"))
			{
				if (decorator::decor_is_registered_as_type("ExportVehicle", 3))
				{
					if (decorator::decor_exist_on(iParam0, "ExportVehicle"))
					{
						iVar0 = decorator::decor_get_int(iParam0, "ExportVehicle");
						return func_251(&iVar0);
					}
				}
			}
		}
	}
	return 0;
}

int func_253(int iParam0)//Position - 0x1041E
{
	return func_82(player::player_id(), iParam0);
}

int func_254(int iParam0)//Position - 0x10430
{
	float fVar0;
	vector3 vVar1;
	vector3 vVar4;
	int iVar7;
	int iVar8;
	float fVar9;
	
	fVar0 = 12000f;
	vVar1 = { func_131(player::player_id()) };
	iVar8 = -1;
	iVar7 = 0;
	while (iVar7 < 49)
	{
		vVar4 = { func_256(iVar7) };
		if (iParam0 == func_255(iVar7))
		{
			fVar9 = system::vdist(vVar1, vVar4);
			if (fVar9 < fVar0)
			{
				fVar0 = fVar9;
				iVar8 = iVar7;
			}
		}
		iVar7++;
	}
	if (iVar8 == -1)
	{
		return -1;
	}
	return iVar8;
}

int func_255(int iParam0)//Position - 0x104A0
{
	switch (iParam0)
	{
		case 0:
		case 1:
		case 2:
		case 3:
		case 4:
		case 5:
		case 19:
			return 0;
		
		case 36:
		case 37:
		case 38:
		case 39:
		case 40:
		case 41:
		case 42:
		case 43:
		case 44:
		case 45:
			return 4;
		
		case 6:
		case 9:
			return 1;
		
		case 10:
			return 2;
		
		case 27:
		case 28:
		case 29:
		case 30:
		case 31:
		case 32:
		case 33:
		case 34:
		case 35:
			return 3;
			break;
		
		case 46:
		case 47:
		case 48:
			return 5;
	}
	return -1;
}

Vector3 func_256(int iParam0)//Position - 0x1058B
{
	switch (iParam0)
	{
		case 19:
			return -2597.411f, 1930.107f, 166.3086f;
		
		case 20:
			return -1920.153f, 2048.602f, 139.7356f;
		
		case 21:
			return -68.3441f, 894.488f, 234.5414f;
		
		case 22:
			return 1407.563f, 1118.505f, 113.8377f;
		
		case 23:
			return -1788.983f, 455.5039f, 127.3081f;
		
		case 24:
			return 217.052f, 757.9442f, 203.6637f;
		
		case 25:
			return -1615.404f, 17.2934f, 61.1779f;
		
		case 26:
			return -3102.533f, 716.4913f, 19.297f;
		
		case 0:
			return 880.8726f, -2919.058f, 4.9006f;
		
		case 1:
			return 928.5625f, -2920.391f, 4.9021f;
		
		case 2:
			return 972.3794f, -2920.422f, 4.9021f;
		
		case 3:
			return 1091.055f, -2920.289f, 4.9021f;
		
		case 4:
			return 1148.923f, -2920.104f, 4.9021f;
		
		case 5:
			return 1180.085f, -2970.068f, 4.9021f;
		
		case 6:
			return -1082.496f, -500.419f, 35.432f;
		
		case 7:
			return 165.3373f, 2284.929f, 92.178f;
		
		case 8:
			return -2221.172f, 3484.129f, 29.1695f;
		
		case 9:
			return 2906.938f, 4345.68f, 49.3003f;
		
		case 10:
			return 1579.18f, 6438.313f, 23.7935f;
		
		case 11:
			return 477.29f, -1889.14f, 25.0946f;
		
		case 12:
			return 2534.13f, 2584.07f, 36.9449f;
		
		case 13:
			return 452.3711f, 3573.672f, 32.2386f;
		
		case 14:
			return -222.6743f, 6249.478f, 30.4912f;
		
		case 15:
			return -65.6218f, 81.307f, 70.5533f;
		
		case 16:
			return -28.1873f, -1083.637f, 25.5732f;
		
		case 17:
			return 2510.956f, 4109.705f, 37.5692f;
		
		case 18:
			return -763.496f, -243.3722f, 36.2426f;
		
		case 27:
			return 859.9324f, -1350.51f, 25.0668f;
		
		case 28:
			return 417.7273f, -1618.991f, 28.2898f;
		
		case 29:
			return 452.691f, -1007.568f, 26.12f;
		
		case 30:
			return -1120.411f, -842.7603f, 12.3767f;
		
		case 31:
			return -1326.011f, -1502.188f, 3.3245f;
		
		case 32:
			return -576.611f, -130.9079f, 33.659f;
		
		case 33:
			return 537.8883f, -32.6088f, 69.6464f;
		
		case 34:
			return 1858.998f, 3676.471f, 32.546f;
		
		case 35:
			return -433.4332f, 6042.402f, 30.3373f;
		
		case 36:
			return -633.966f, -1780.525f, 23.0708f;
		
		case 37:
			return 995.0766f, -1858.65f, 29.8898f;
		
		case 38:
			return -70.5644f, -1822.705f, 25.942f;
		
		case 39:
			return 38.8324f, -1284.2f, 28.278f;
		
		case 40:
			return 1211.217f, -1262.491f, 34.2267f;
		
		case 41:
			return 804.3043f, -2225.151f, 28.5425f;
		
		case 42:
			return 1764.46f, -1648.041f, 111.649f;
		
		case 43:
			return 144.143f, -3003.358f, 6.031f;
		
		case 44:
			return -513.2193f, -2200.612f, 5.394f;
		
		case 45:
			return -1153.689f, -2172.111f, 12.2625f;
		
		case 46:
			return -511.2002f, -1736.564f, 18.1967f;
		
		case 47:
			return 2352.237f, 3036.937f, 47.1521f;
		
		case 48:
			return -194.5653f, 6268.56f, 30.4893f;
		
		default:
	}
	return 0f, 0f, 0f;
}

int func_257(int iParam0)//Position - 0x10A35
{
	return func_91(player::player_id(), iParam0);
}

int func_258(int iParam0, var uParam1, var uParam2)//Position - 0x10A47
{
	int iVar0;
	int iVar1;
	int iVar2;
	int iVar3;
	int iVar4;
	int iVar5;
	
	*uParam1 = 0;
	*uParam2 = 0;
	if (iParam0 != func_9() && func_387(iParam0, 1, 1))
	{
		iVar0 = player::get_player_ped(iParam0);
		if (!entity::is_entity_dead(iVar0, 0))
		{
			if (ped::is_ped_in_any_vehicle(iVar0, 0))
			{
				iVar1 = 0;
				iVar2 = ped::get_vehicle_ped_is_in(iVar0, 0);
				if (!entity::is_entity_dead(iVar2, 0))
				{
					iVar3 = entity::get_entity_model(iVar2);
					if (((iVar3 == joaat("cargobob") || iVar3 == joaat("cargobob2")) || iVar3 == joaat("cargobob3")) || iVar3 == joaat("cargobob4"))
					{
						iVar4 = vehicle::get_vehicle_attached_to_cargobob(iVar2);
						if ((iVar4 != 0 && entity::does_entity_exist(iVar4)) && entity::is_entity_a_vehicle(iVar4))
						{
							iVar1 = entity::get_vehicle_index_from_entity_index(iVar4);
							*uParam1 = 1;
						}
					}
					else if (iVar3 == joaat("towtruck") || iVar3 == joaat("towtruck2"))
					{
						iVar5 = vehicle::get_entity_attached_to_tow_truck(iVar2);
						if ((iVar5 != 0 && entity::does_entity_exist(iVar5)) && entity::is_entity_a_vehicle(iVar5))
						{
							iVar1 = entity::get_vehicle_index_from_entity_index(iVar5);
							*uParam2 = 1;
						}
					}
					else
					{
						iVar1 = iVar2;
					}
				}
				if (iVar1 != 0 && func_259(iVar1))
				{
					return iVar1;
				}
			}
		}
	}
	return 0;
}

bool func_259(int iParam0)//Position - 0x10B7C
{
	if (entity::does_entity_exist(iParam0) && !entity::is_entity_dead(iParam0, 0))
	{
		if (func_238(iParam0))
		{
			return true;
		}
	}
	return false;
}

var func_260()//Position - 0x10BA8
{
	return Global_1618089[player::player_id() /*390*/].f_358.f_4;
}

int func_261(int iParam0)//Position - 0x10BC0
{
	int iVar0;
	int iVar1;
	int iVar2;
	int iVar3;
	int iVar4;
	int iVar5;
	int iVar6;
	int iVar7;
	int iVar8;
	
	if (entity::does_entity_exist(iParam0) && !entity::is_entity_dead(iParam0, 0))
	{
		iVar6 = func_9();
		iVar7 = func_9();
		iVar8 = func_9();
		iVar0 = 0;
		while (iVar0 < 30)
		{
			iVar1 = player::int_to_playerindex(iVar0);
			if (func_387(iVar1, 1, 1))
			{
				iVar2 = player::get_player_ped(iVar1);
				if (!entity::is_entity_dead(iVar2, 0) && ped::is_ped_in_any_vehicle(iVar2, 0))
				{
					iVar3 = ped::get_vehicle_ped_is_in(iVar2, 0);
					if (!entity::is_entity_dead(iVar3, 0))
					{
						if (func_262(iVar2, 0) == -1)
						{
							iVar4 = entity::get_entity_model(iVar3);
							if (((iVar4 == joaat("cargobob") || iVar4 == joaat("cargobob2")) || iVar4 == joaat("cargobob3")) || iVar4 == joaat("cargobob4"))
							{
								iVar5 = vehicle::get_vehicle_attached_to_cargobob(iVar3);
								if (entity::does_entity_exist(iVar5) && entity::get_vehicle_index_from_entity_index(iVar5) == iParam0)
								{
									iVar6 = iVar1;
								}
							}
							else if (iVar4 == joaat("towtruck") || iVar4 == joaat("towtruck2"))
							{
								iVar5 = vehicle::get_entity_attached_to_tow_truck(iVar3);
								if (entity::does_entity_exist(iVar5) && entity::get_vehicle_index_from_entity_index(iVar5) == iParam0)
								{
									iVar7 = iVar1;
								}
							}
							else if (iVar3 == iParam0)
							{
								iVar8 = iVar1;
							}
						}
					}
				}
			}
			iVar0++;
		}
		if (iVar6 != func_9())
		{
			return iVar6;
		}
		if (iVar7 != func_9())
		{
			return iVar7;
		}
		if (iVar8 != func_9())
		{
			return iVar8;
		}
	}
	return func_9();
}

int func_262(int iParam0, int iParam1)//Position - 0x10D2F
{
	int iVar0;
	int iVar1;
	int iVar2;
	int iVar3;
	
	if (!ped::is_ped_injured(iParam0))
	{
		if (ped::is_ped_in_any_vehicle(iParam0, iParam1))
		{
			iVar0 = ped::get_vehicle_ped_is_in(iParam0, iParam1);
			if (entity::does_entity_exist(iVar0))
			{
				if (!entity::is_entity_dead(iVar0, 0))
				{
					iVar1 = vehicle::_get_vehicle_model_max_number_of_passengers(entity::get_entity_model(iVar0));
					iVar2 = 0;
					while (iVar2 < iVar1)
					{
						iVar3 = (iVar2 - 1);
						if (!vehicle::is_vehicle_seat_free(iVar0, iVar3, 0))
						{
							if (vehicle::get_ped_in_vehicle_seat(iVar0, iVar3, 0) == iParam0)
							{
								return iVar3;
							}
						}
						iVar2++;
					}
				}
			}
		}
	}
	return iVar3;
}

int func_263(int iParam0)//Position - 0x10DB1
{
	switch (iParam0)
	{
		case 1:
			return 36;
		
		case 2:
			return 37;
		
		case 3:
			return 38;
		
		case 4:
			return 39;
		
		case 5:
			return 40;
		
		case 6:
			return 41;
		
		case 7:
			return 42;
		
		case 8:
			return 43;
		
		case 9:
			return 44;
		
		case 10:
			return 45;
		
		default:
	}
	return -1;
}

int func_264(int iParam0)//Position - 0x10E2F
{
	switch (iParam0)
	{
		case 57:
			return 1;
		
		case 58:
			return 2;
		
		case 59:
			return 3;
		
		case 60:
			return 4;
		
		case 61:
			return 5;
		
		case 62:
			return 6;
		
		case 63:
			return 7;
		
		case 64:
			return 8;
		
		case 65:
			return 9;
		
		case 66:
			return 10;
		
		default:
	}
	return 0;
}

bool func_265(int iParam0, int iParam1)//Position - 0x10EA6
{
	int iVar0;
	
	if (entity::does_entity_exist(iParam0))
	{
		if (func_238(iParam0))
		{
			iVar0 = func_234(iParam0);
			if (iVar0 != func_9())
			{
				if (func_267(player::player_id(), iVar0))
				{
					return true;
				}
				if (iParam1)
				{
					if (func_266(player::player_id(), iVar0, 0))
					{
						return true;
					}
				}
			}
		}
	}
	return false;
}

int func_266(int iParam0, int iParam1, int iParam2)//Position - 0x10EFA
{
	if (iParam1 != func_9())
	{
		if (!iParam2)
		{
			if (func_267(iParam0, iParam1))
			{
				return false;
			}
		}
		if (Global_1618089[iParam0 /*390*/].f_11 != func_9())
		{
			return iParam1 == Global_1618089[iParam0 /*390*/].f_11;
		}
	}
	return false;
}

int func_267(int iParam0, int iParam1)//Position - 0x10F44
{
	if (iParam1 != func_9())
	{
		if (iParam0 != func_9())
		{
			if (Global_1618089[iParam0 /*390*/].f_11 != func_9())
			{
				if (Global_1618089[iParam0 /*390*/].f_11 == iParam0)
				{
					return iParam1 == iParam0;
				}
			}
		}
	}
	return false;
}

void func_268(int iParam0, var uParam1, var uParam2, var uParam3)//Position - 0x10F89
{
	int iVar0;
	int iVar1;
	struct<16> Var2;
	
	iVar0 = func_264(iParam0);
	iVar1 = false;
	if (func_91(player::player_id(), 1))
	{
		if (func_227(iParam0))
		{
			if (*uParam2 != 4)
			{
				ui::set_blip_route(*uParam1, true);
				ui::set_blip_scale(*uParam1, 1.4f);
				ui::set_blip_priority(*uParam1, 7);
				ui::set_blip_flash_timer(*uParam1, 7000);
				*uParam2 = 4;
				return;
			}
		}
		else
		{
			if (*uParam2 != 1)
			{
				if (*uParam2 == 4)
				{
					ui::set_blip_route(*uParam1, false);
					ui::set_blip_scale(*uParam1, 1f);
					ui::set_blip_priority(*uParam1, 5);
				}
				iVar1 = true;
			}
			Var2 = { func_270(player::player_id()) };
			if (!iVar1)
			{
				if (!gameplay::is_string_null_or_empty(&Var2) && gameplay::get_hash_key(&Var2) != *uParam3)
				{
					iVar1 = true;
				}
			}
			if (iVar1)
			{
				ui::begin_text_command_set_blip_name("IE_WHOUSE_BLIP2");
				ui::add_text_component_substring_player_name(&Var2);
				ui::end_text_command_set_blip_name(*uParam1);
				*uParam3 = gameplay::get_hash_key(&Var2);
				*uParam2 = 1;
				return;
			}
		}
	}
	else
	{
		if (*uParam2 != 2)
		{
			iVar1 = true;
		}
		if (*uParam2 == 4)
		{
			ui::set_blip_route(*uParam1, false);
			ui::set_blip_scale(*uParam1, 1f);
			ui::set_blip_priority(*uParam1, 5);
		}
		if (iVar1)
		{
			if (func_269(player::player_id(), iVar0))
			{
				ui::set_blip_name_from_text_file(*uParam1, "IE_WHOUSE_BLIP0");
				*uParam2 = 2;
				return;
			}
		}
	}
	if (*uParam2 == 0)
	{
		iVar1 = true;
	}
	if (iVar1)
	{
		ui::set_blip_name_from_text_file(*uParam1, "IE_WHOUSE_BLIP1");
		*uParam2 = 3;
	}
}

int func_269(int iParam0, int iParam1)//Position - 0x110D8
{
	return func_248(iParam0) == iParam1;
}

struct<16> func_270(int iParam0)//Position - 0x110E9
{
	struct<16> Var0;
	int iVar16;
	
	if (Global_1618089[iParam0 /*390*/].f_11.f_113 != Global_1618089[player::player_id() /*390*/].f_11.f_113)
	{
		StringCopy(&Var0, func_274(iParam0, 0), 64);
		return Var0;
	}
	if (((func_162(iParam0, 28) || func_162(player::player_id(), 28)) || func_273(iParam0)) && !func_271(iParam0))
	{
		StringCopy(&Var0, func_274(iParam0, 0), 64);
		return Var0;
	}
	iVar16 = func_90(iParam0);
	if (iVar16 != player::player_id())
	{
		if (!gameplay::is_durango_version() && !network::_0x595F028698072DD9(0, -1, 1))
		{
			StringCopy(&Var0, func_274(iParam0, 0), 64);
			return Var0;
		}
	}
	if (iVar16 != func_9())
	{
		return Global_1618089[iVar16 /*390*/].f_11.f_97;
	}
	StringCopy(&Var0, "", 64);
	return Var0;
}

bool func_271(int iParam0)//Position - 0x111C9
{
	struct<13> Var0;
	
	Var0 = { func_272(iParam0) };
	if (gameplay::is_durango_version() && network::_0xB57A49545BA53CE7(&Var0))
	{
		return true;
	}
	return false;
}

struct<13> func_272(int iParam0)//Position - 0x111F3
{
	struct<13> Var0;
	
	network::network_handle_from_player(iParam0, &Var0, 13);
	return Var0;
}

bool func_273(int iParam0)//Position - 0x1120A
{
	struct<13> Var0;
	
	Var0 = { func_272(iParam0) };
	if (gameplay::is_orbis_version() || gameplay::is_pc_version())
	{
		if (network::_0x72D918C99BCACC54(0))
		{
			return false;
		}
	}
	else if (gameplay::is_durango_version())
	{
		if (network::_0xB57A49545BA53CE7(&Var0))
		{
			return false;
		}
	}
	return true;
}

char* func_274(int iParam0, int iParam1)//Position - 0x11252
{
	if (!iParam1)
	{
		if (func_82(iParam0, 1))
		{
			return func_275();
		}
	}
	return ui::_get_label_text("GB_REST_ACC");
}

char* func_275()//Position - 0x11279
{
	return ui::_get_label_text("GB_REST_ACCM");
}

Vector3 func_276(int iParam0)//Position - 0x11289
{
	vector3 vVar0;
	
	func_319(iParam0, &vVar0);
	return vVar0;
}

int func_277(var uParam0)//Position - 0x1129D
{
	return 524;
}

bool func_278(int iParam0)//Position - 0x112A8
{
	if (func_227(iParam0))
	{
		return false;
	}
	return true;
}

bool func_279(int iParam0)//Position - 0x112BE
{
	if (func_101(player::player_id(), 1))
	{
		return false;
	}
	if (func_82(player::player_id(), 1))
	{
		return false;
	}
	if (Global_2482054.f_6 != 0)
	{
		if (func_230(func_263(func_264(iParam0))))
		{
			if (func_265(Global_2482054.f_6, 1))
			{
				return false;
			}
		}
	}
	if (func_91(player::player_id(), 1))
	{
		if (func_92(player::player_id()))
		{
			if (func_269(player::player_id(), func_264(iParam0)))
			{
				return true;
			}
		}
		else if (func_269(func_81(), func_264(iParam0)))
		{
			return true;
		}
	}
	else if (func_269(player::player_id(), func_264(iParam0)))
	{
		return true;
	}
	return false;
}

int func_280(var uParam0)//Position - 0x11370
{
	return (gameplay::is_bit_set(Global_1760739.f_2, 2) || gameplay::is_bit_set(Global_1760739.f_2, 0));
}

void func_281(var uParam0, char* sParam1, var uParam2, var uParam3)//Position - 0x11394
{
	if (*uParam2 != 3)
	{
		return;
	}
	StringCopy(sParam1, "IE_WH_EXIT", 64);
	*uParam3 = 2;
	(*uParam2)[0] = "IE_WH_EXITa";
	(*uParam2)[1] = "IE_WH_EXITb";
}

int func_282(int iParam0)//Position - 0x113C4
{
	switch (iParam0)
	{
		case 57:
		case 58:
		case 59:
		case 60:
		case 61:
		case 62:
		case 63:
		case 64:
		case 65:
		case 66:
			return 25;
			break;
	}
	return -1;
}

int func_283(var uParam0)//Position - 0x11418
{
	return -1;
}

bool func_284(int iParam0, int iParam1, var uParam2, var uParam3, int iParam4)//Position - 0x11421
{
	switch (iParam0)
	{
		case 57:
			switch (iParam1)
			{
				case 0:
					if (iParam4)
					{
						*uParam2 = { -657.7001f, -1768.682f, 23.7805f };
						*uParam3 = 123.9987f;
						return true;
					}
					else
					{
						*uParam2 = { -632.606f, -1782.232f, 23.0552f };
						*uParam3 = 127.08f;
						return true;
					}
					break;
				
				case 1:
					if (iParam4)
					{
						*uParam2 = { -655.3964f, -1771.848f, 23.7106f };
						*uParam3 = 123.9987f;
						return true;
					}
					else
					{
						*uParam2 = { -633.5104f, -1781.035f, 23.0613f };
						*uParam3 = 127.08f;
						return true;
					}
					break;
				
				case 2:
					if (iParam4)
					{
						*uParam2 = { -648.6033f, -1767.288f, 23.3981f };
						*uParam3 = 125.1987f;
						return true;
					}
					else
					{
						*uParam2 = { -634.4148f, -1779.838f, 23.077f };
						*uParam3 = 127.08f;
						return true;
					}
					break;
				
				case 3:
					if (iParam4)
					{
						*uParam2 = { -650.9087f, -1764.181f, 23.4708f };
						*uParam3 = 125.1987f;
						return true;
					}
					else
					{
						*uParam2 = { -635.3192f, -1778.642f, 23.0927f };
						*uParam3 = 127.08f;
						return true;
					}
					break;
				
				case 4:
					if (iParam4)
					{
						*uParam2 = { -602.0138f, -1795.589f, 22.434f };
						*uParam3 = 213.9991f;
						return true;
					}
					else
					{
						*uParam2 = { -636.2236f, -1777.445f, 23.0951f };
						*uParam3 = 127.08f;
						return true;
					}
					break;
				
				case 5:
					if (iParam4)
					{
						*uParam2 = { -605.937f, -1796.599f, 22.4856f };
						*uParam3 = 214.1985f;
						return true;
					}
					else
					{
						*uParam2 = { -633.8027f, -1783.136f, 23.1172f };
						*uParam3 = 127.08f;
						return true;
					}
					break;
				
				case 6:
					if (iParam4)
					{
						*uParam2 = { -606.3922f, -1789.077f, 22.5908f };
						*uParam3 = 213.9991f;
						return true;
					}
					else
					{
						*uParam2 = { -634.7071f, -1781.939f, 23.1235f };
						*uParam3 = 127.08f;
						return true;
					}
					break;
				
				case 7:
					if (iParam4)
					{
						*uParam2 = { -610.54f, -1790.125f, 22.663f };
						*uParam3 = 214.1985f;
						return true;
					}
					else
					{
						*uParam2 = { -635.6115f, -1780.743f, 23.14f };
						*uParam3 = 127.08f;
						return true;
					}
					break;
				
				case 8:
					if (iParam4)
					{
						*uParam2 = { -584.6882f, -1803.907f, 22.1466f };
						*uParam3 = 145.5985f;
						return true;
					}
					else
					{
						*uParam2 = { -636.5159f, -1779.546f, 23.1557f };
						*uParam3 = 127.08f;
						return true;
					}
					break;
				
				case 9:
					if (iParam4)
					{
						*uParam2 = { -587.9329f, -1801.679f, 22.1249f };
						*uParam3 = 145.5985f;
						return true;
					}
					else
					{
						*uParam2 = { -637.4203f, -1778.349f, 23.1556f };
						*uParam3 = 127.08f;
						return true;
					}
					break;
				
				case 10:
					if (iParam4)
					{
						*uParam2 = { -579.8873f, -1797.329f, 21.8573f };
						*uParam3 = 145.5985f;
						return true;
					}
					else
					{
						*uParam2 = { -634.9994f, -1784.04f, 23.1768f };
						*uParam3 = 127.08f;
						return true;
					}
					break;
				
				case 11:
					if (iParam4)
					{
						*uParam2 = { -583.0121f, -1794.965f, 21.8514f };
						*uParam3 = 145.5985f;
						return true;
					}
					else
					{
						*uParam2 = { -635.9038f, -1782.844f, 23.1849f };
						*uParam3 = 127.08f;
						return true;
					}
					break;
				
				case 12:
					*uParam2 = { -636.8082f, -1781.647f, 23.2029f };
					*uParam3 = 127.08f;
					return true;
					break;
				
				case 13:
					*uParam2 = { -637.7126f, -1780.45f, 23.2167f };
					*uParam3 = 127.08f;
					return true;
					break;
				
				case 14:
					*uParam2 = { -638.6171f, -1779.254f, 23.216f };
					*uParam3 = 127.08f;
					return true;
					break;
				
				case 15:
					*uParam2 = { -636.1961f, -1784.945f, 23.2387f };
					*uParam3 = 127.08f;
					return true;
					break;
				
				case 16:
					*uParam2 = { -637.1005f, -1783.748f, 23.2462f };
					*uParam3 = 127.08f;
					return true;
					break;
				
				case 17:
					*uParam2 = { -638.0049f, -1782.552f, 23.2646f };
					*uParam3 = 127.08f;
					return true;
					break;
				
				case 18:
					*uParam2 = { -638.9094f, -1781.355f, 23.2771f };
					*uParam3 = 127.08f;
					return true;
					break;
				
				case 19:
					*uParam2 = { -639.8138f, -1780.158f, 23.2757f };
					*uParam3 = 127.08f;
					return true;
					break;
				
				case 20:
					*uParam2 = { -637.3928f, -1785.849f, 23.2716f };
					*uParam3 = 127.08f;
					return true;
					break;
				
				case 21:
					*uParam2 = { -638.2972f, -1784.653f, 23.309f };
					*uParam3 = 127.08f;
					return true;
					break;
				
				case 22:
					*uParam2 = { -639.2017f, -1783.456f, 23.3221f };
					*uParam3 = 127.08f;
					return true;
					break;
				
				case 23:
					*uParam2 = { -640.1061f, -1782.259f, 23.3352f };
					*uParam3 = 127.08f;
					return true;
					break;
				
				case 24:
					*uParam2 = { -641.0105f, -1781.063f, 23.3348f };
					*uParam3 = 127.08f;
					return true;
					break;
				
				case 25:
					*uParam2 = { -638.5895f, -1786.754f, 23.2275f };
					*uParam3 = 127.08f;
					return true;
					break;
				
				case 26:
					*uParam2 = { -639.494f, -1785.557f, 23.3362f };
					*uParam3 = 127.08f;
					return true;
					break;
				
				case 27:
					*uParam2 = { -640.3984f, -1784.36f, 23.3793f };
					*uParam3 = 127.08f;
					return true;
					break;
				
				case 28:
					*uParam2 = { -641.3028f, -1783.164f, 23.3855f };
					*uParam3 = 127.08f;
					return true;
					break;
				
				case 29:
					*uParam2 = { -642.2072f, -1781.967f, 23.3939f };
					*uParam3 = 127.08f;
					return true;
					break;
				
				case 30:
					*uParam2 = { -639.7863f, -1787.658f, 23.1932f };
					*uParam3 = 127.08f;
					return true;
					break;
				
				case 31:
					*uParam2 = { -640.6907f, -1786.461f, 23.3052f };
					*uParam3 = 127.08f;
					return true;
					break;
			}
			break;
		
		case 58:
			switch (iParam1)
			{
				case 0:
					if (iParam4)
					{
						*uParam2 = { 979.9278f, -1876.913f, 30.1646f };
						*uParam3 = 176.7983f;
						return true;
					}
					else
					{
						*uParam2 = { 1007.406f, -1856.609f, 30.0398f };
						*uParam3 = 174.6f;
						return true;
					}
					break;
				
				case 1:
					if (iParam4)
					{
						*uParam2 = { 984.3694f, -1877.127f, 29.9286f };
						*uParam3 = 176.7983f;
						return true;
					}
					else
					{
						*uParam2 = { 1005.913f, -1856.468f, 30.0398f };
						*uParam3 = 174.6f;
						return true;
					}
					break;
				
				case 2:
					if (iParam4)
					{
						*uParam2 = { 982.5048f, -1869.278f, 30.0577f };
						*uParam3 = 176.7983f;
						return true;
					}
					else
					{
						*uParam2 = { 1004.419f, -1856.327f, 30.0398f };
						*uParam3 = 174.6f;
						return true;
					}
					break;
				
				case 3:
					if (iParam4)
					{
						*uParam2 = { 983.0613f, -1860.717f, 30.0778f };
						*uParam3 = 176.7983f;
						return true;
					}
					else
					{
						*uParam2 = { 1002.926f, -1856.185f, 30.0398f };
						*uParam3 = 174.6f;
						return true;
					}
					break;
				
				case 4:
					if (iParam4)
					{
						*uParam2 = { 1012.444f, -1856.21f, 29.8898f };
						*uParam3 = 176.7983f;
						return true;
					}
					else
					{
						*uParam2 = { 1001.433f, -1856.044f, 30.0398f };
						*uParam3 = 174.6f;
						return true;
					}
					break;
				
				case 5:
					if (iParam4)
					{
						*uParam2 = { 1017.324f, -1856.525f, 29.8898f };
						*uParam3 = 176.7983f;
						return true;
					}
					else
					{
						*uParam2 = { 999.9392f, -1855.903f, 30.0398f };
						*uParam3 = 174.6f;
						return true;
					}
					break;
				
				case 6:
					if (iParam4)
					{
						*uParam2 = { 1013.175f, -1847.474f, 30.1998f };
						*uParam3 = 176.7983f;
						return true;
					}
					else
					{
						*uParam2 = { 998.4459f, -1855.762f, 30.0398f };
						*uParam3 = 174.6f;
						return true;
					}
					break;
				
				case 7:
					if (iParam4)
					{
						*uParam2 = { 1017.998f, -1847.712f, 30.2f };
						*uParam3 = 176.7983f;
						return true;
					}
					else
					{
						*uParam2 = { 996.9525f, -1855.621f, 30.0398f };
						*uParam3 = 174.6f;
						return true;
					}
					break;
				
				case 8:
					if (iParam4)
					{
						*uParam2 = { 1016.346f, -1811.841f, 32.4611f };
						*uParam3 = 356.7981f;
						return true;
					}
					else
					{
						*uParam2 = { 1007.265f, -1858.102f, 29.8898f };
						*uParam3 = 174.6f;
						return true;
					}
					break;
				
				case 9:
					if (iParam4)
					{
						*uParam2 = { 1020.174f, -1812.289f, 32.512f };
						*uParam3 = 356.7981f;
						return true;
					}
					else
					{
						*uParam2 = { 1005.771f, -1857.961f, 29.8898f };
						*uParam3 = 174.6f;
						return true;
					}
					break;
				
				case 10:
					if (iParam4)
					{
						*uParam2 = { 1015.858f, -1820.207f, 31.9309f };
						*uParam3 = 356.7981f;
						return true;
					}
					else
					{
						*uParam2 = { 1004.278f, -1857.82f, 29.8898f };
						*uParam3 = 174.6f;
						return true;
					}
					break;
				
				case 11:
					if (iParam4)
					{
						*uParam2 = { 1019.733f, -1820.782f, 31.9801f };
						*uParam3 = 356.7981f;
						return true;
					}
					else
					{
						*uParam2 = { 1002.785f, -1857.679f, 29.8898f };
						*uParam3 = 174.6f;
						return true;
					}
					break;
				
				case 12:
					*uParam2 = { 1001.291f, -1857.538f, 29.8898f };
					*uParam3 = 174.6f;
					return true;
					break;
				
				case 13:
					*uParam2 = { 999.798f, -1857.396f, 29.8979f };
					*uParam3 = 174.6f;
					return true;
					break;
				
				case 14:
					*uParam2 = { 998.3047f, -1857.255f, 29.8898f };
					*uParam3 = 174.6f;
					return true;
					break;
				
				case 15:
					*uParam2 = { 996.8113f, -1857.114f, 29.8979f };
					*uParam3 = 174.6f;
					return true;
					break;
				
				case 16:
					*uParam2 = { 1007.124f, -1859.595f, 29.8898f };
					*uParam3 = 174.6f;
					return true;
					break;
				
				case 17:
					*uParam2 = { 1005.63f, -1859.454f, 29.8898f };
					*uParam3 = 174.6f;
					return true;
					break;
				
				case 18:
					*uParam2 = { 1004.137f, -1859.313f, 29.8898f };
					*uParam3 = 174.6f;
					return true;
					break;
				
				case 19:
					*uParam2 = { 1002.644f, -1859.172f, 29.8898f };
					*uParam3 = 174.6f;
					return true;
					break;
				
				case 20:
					*uParam2 = { 1001.15f, -1859.031f, 29.8898f };
					*uParam3 = 174.6f;
					return true;
					break;
				
				case 21:
					*uParam2 = { 999.6569f, -1858.89f, 29.8898f };
					*uParam3 = 174.6f;
					return true;
					break;
				
				case 22:
					*uParam2 = { 998.1635f, -1858.749f, 29.8898f };
					*uParam3 = 174.6f;
					return true;
					break;
				
				case 23:
					*uParam2 = { 996.6702f, -1858.608f, 29.8898f };
					*uParam3 = 174.6f;
					return true;
					break;
				
				case 24:
					*uParam2 = { 1006.982f, -1861.089f, 29.8898f };
					*uParam3 = 174.6f;
					return true;
					break;
				
				case 25:
					*uParam2 = { 1005.489f, -1860.948f, 29.8898f };
					*uParam3 = 174.6f;
					return true;
					break;
				
				case 26:
					*uParam2 = { 1003.996f, -1860.806f, 29.8898f };
					*uParam3 = 174.6f;
					return true;
					break;
				
				case 27:
					*uParam2 = { 1002.502f, -1860.665f, 29.8898f };
					*uParam3 = 174.6f;
					return true;
					break;
				
				case 28:
					*uParam2 = { 1001.009f, -1860.524f, 29.8898f };
					*uParam3 = 174.6f;
					return true;
					break;
				
				case 29:
					*uParam2 = { 999.5157f, -1860.383f, 29.8898f };
					*uParam3 = 174.6f;
					return true;
					break;
				
				case 30:
					*uParam2 = { 998.0223f, -1860.242f, 29.8898f };
					*uParam3 = 174.6f;
					return true;
					break;
				
				case 31:
					*uParam2 = { 996.529f, -1860.101f, 29.8898f };
					*uParam3 = 174.6f;
					return true;
					break;
			}
			break;
		
		case 59:
			switch (iParam1)
			{
				case 0:
					if (iParam4)
					{
						*uParam2 = { -62.0338f, -1839.62f, 25.6831f };
						*uParam3 = 319.7973f;
						return true;
					}
					else
					{
						*uParam2 = { -69.8565f, -1819.105f, 25.942f };
						*uParam3 = 230.76f;
						return true;
					}
					break;
				
				case 1:
					if (iParam4)
					{
						*uParam2 = { -59.219f, -1841.875f, 25.5775f };
						*uParam3 = 319.7973f;
						return true;
					}
					else
					{
						*uParam2 = { -70.6788f, -1820.112f, 25.942f };
						*uParam3 = 230.76f;
						return true;
					}
					break;
				
				case 2:
					if (iParam4)
					{
						*uParam2 = { -56.6504f, -1844.082f, 25.4785f };
						*uParam3 = 319.7973f;
						return true;
					}
					else
					{
						*uParam2 = { -71.5012f, -1821.119f, 25.942f };
						*uParam3 = 230.76f;
						return true;
					}
					break;
				
				case 3:
					if (iParam4)
					{
						*uParam2 = { -54.0422f, -1846.377f, 25.3723f };
						*uParam3 = 319.7973f;
						return true;
					}
					else
					{
						*uParam2 = { -72.3235f, -1822.125f, 25.942f };
						*uParam3 = 230.76f;
						return true;
					}
					break;
				
				case 4:
					if (iParam4)
					{
						*uParam2 = { -41.8232f, -1809.353f, 25.5185f };
						*uParam3 = 50.3972f;
						return true;
					}
					else
					{
						*uParam2 = { -73.1459f, -1823.132f, 25.942f };
						*uParam3 = 230.76f;
						return true;
					}
					break;
				
				case 5:
					if (iParam4)
					{
						*uParam2 = { -48.0753f, -1804.241f, 25.8218f };
						*uParam3 = 50.3972f;
						return true;
					}
					else
					{
						*uParam2 = { -73.9682f, -1824.139f, 25.942f };
						*uParam3 = 230.76f;
						return true;
					}
					break;
				
				case 6:
					if (iParam4)
					{
						*uParam2 = { -53.8064f, -1799.192f, 26.2119f };
						*uParam3 = 50.3972f;
						return true;
					}
					else
					{
						*uParam2 = { -74.7905f, -1825.146f, 25.942f };
						*uParam3 = 230.76f;
						return true;
					}
					break;
				
				case 7:
					if (iParam4)
					{
						*uParam2 = { -59.6964f, -1794.331f, 26.4409f };
						*uParam3 = 50.3972f;
						return true;
					}
					else
					{
						*uParam2 = { -75.6129f, -1826.153f, 25.942f };
						*uParam3 = 230.76f;
						return true;
					}
					break;
				
				case 8:
					if (iParam4)
					{
						*uParam2 = { -34.517f, -1831.259f, 24.9874f };
						*uParam3 = 231.9969f;
						return true;
					}
					else
					{
						*uParam2 = { -68.8496f, -1819.927f, 25.942f };
						*uParam3 = 230.76f;
						return true;
					}
					break;
				
				case 9:
					if (iParam4)
					{
						*uParam2 = { -28.8192f, -1835.994f, 24.7421f };
						*uParam3 = 231.9969f;
						return true;
					}
					else
					{
						*uParam2 = { -69.672f, -1820.934f, 25.942f };
						*uParam3 = 230.76f;
						return true;
					}
					break;
				
				case 10:
					if (iParam4)
					{
						*uParam2 = { -22.9205f, -1840.831f, 24.2874f };
						*uParam3 = 231.9969f;
						return true;
					}
					else
					{
						*uParam2 = { -70.4943f, -1821.941f, 25.942f };
						*uParam3 = 230.76f;
						return true;
					}
					break;
				
				case 11:
					if (iParam4)
					{
						*uParam2 = { -16.5848f, -1845.825f, 23.9532f };
						*uParam3 = 231.9969f;
						return true;
					}
					else
					{
						*uParam2 = { -71.3167f, -1822.948f, 25.942f };
						*uParam3 = 230.76f;
						return true;
					}
					break;
				
				case 12:
					*uParam2 = { -72.139f, -1823.955f, 25.942f };
					*uParam3 = 230.76f;
					return true;
					break;
				
				case 13:
					*uParam2 = { -72.9613f, -1824.961f, 25.942f };
					*uParam3 = 230.76f;
					return true;
					break;
				
				case 14:
					*uParam2 = { -73.7837f, -1825.968f, 25.942f };
					*uParam3 = 230.76f;
					return true;
					break;
				
				case 15:
					*uParam2 = { -74.606f, -1826.975f, 25.942f };
					*uParam3 = 230.76f;
					return true;
					break;
				
				case 16:
					*uParam2 = { -67.8428f, -1820.75f, 25.942f };
					*uParam3 = 230.76f;
					return true;
					break;
				
				case 17:
					*uParam2 = { -68.6651f, -1821.756f, 25.942f };
					*uParam3 = 230.76f;
					return true;
					break;
				
				case 18:
					*uParam2 = { -69.4875f, -1822.763f, 25.942f };
					*uParam3 = 230.76f;
					return true;
					break;
				
				case 19:
					*uParam2 = { -70.3098f, -1823.77f, 25.942f };
					*uParam3 = 230.76f;
					return true;
					break;
				
				case 20:
					*uParam2 = { -71.1322f, -1824.777f, 25.942f };
					*uParam3 = 230.76f;
					return true;
					break;
				
				case 21:
					*uParam2 = { -71.9545f, -1825.784f, 25.942f };
					*uParam3 = 230.76f;
					return true;
					break;
				
				case 22:
					*uParam2 = { -72.7768f, -1826.791f, 25.942f };
					*uParam3 = 230.76f;
					return true;
					break;
				
				case 23:
					*uParam2 = { -73.5992f, -1827.797f, 25.942f };
					*uParam3 = 230.76f;
					return true;
					break;
				
				case 24:
					*uParam2 = { -66.8359f, -1821.572f, 25.942f };
					*uParam3 = 230.76f;
					return true;
					break;
				
				case 25:
					*uParam2 = { -67.6583f, -1822.579f, 25.942f };
					*uParam3 = 230.76f;
					return true;
					break;
				
				case 26:
					*uParam2 = { -68.4806f, -1823.586f, 25.9422f };
					*uParam3 = 230.76f;
					return true;
					break;
				
				case 27:
					*uParam2 = { -69.303f, -1824.593f, 25.9425f };
					*uParam3 = 230.76f;
					return true;
					break;
				
				case 28:
					*uParam2 = { -70.1253f, -1825.599f, 25.9424f };
					*uParam3 = 230.76f;
					return true;
					break;
				
				case 29:
					*uParam2 = { -70.9476f, -1826.606f, 25.9422f };
					*uParam3 = 230.76f;
					return true;
					break;
				
				case 30:
					*uParam2 = { -71.77f, -1827.613f, 25.942f };
					*uParam3 = 230.76f;
					return true;
					break;
				
				case 31:
					*uParam2 = { -72.5923f, -1828.62f, 25.942f };
					*uParam3 = 230.76f;
					return true;
					break;
			}
			break;
		
		case 60:
			switch (iParam1)
			{
				case 0:
					if (iParam4)
					{
						*uParam2 = { 44.6433f, -1296.79f, 28.1665f };
						*uParam3 = 298.5938f;
						return true;
					}
					else
					{
						*uParam2 = { 37.8403f, -1281.028f, 28.2825f };
						*uParam3 = 269.64f;
						return true;
					}
					break;
				
				case 1:
					if (iParam4)
					{
						*uParam2 = { 46.517f, -1299.956f, 28.1904f };
						*uParam3 = 298.5938f;
						return true;
					}
					else
					{
						*uParam2 = { 37.8321f, -1282.328f, 28.2777f };
						*uParam3 = 269.64f;
						return true;
					}
					break;
				
				case 2:
					if (iParam4)
					{
						*uParam2 = { 48.2259f, -1303.01f, 28.2008f };
						*uParam3 = 298.5938f;
						return true;
					}
					else
					{
						*uParam2 = { 37.824f, -1283.628f, 28.2738f };
						*uParam3 = 269.64f;
						return true;
					}
					break;
				
				case 3:
					if (iParam4)
					{
						*uParam2 = { 49.9452f, -1306.057f, 28.2014f };
						*uParam3 = 298.5938f;
						return true;
					}
					else
					{
						*uParam2 = { 37.8158f, -1284.928f, 28.2767f };
						*uParam3 = 269.64f;
						return true;
					}
					break;
				
				case 4:
					if (iParam4)
					{
						*uParam2 = { 37.1659f, -1306.792f, 28.2016f };
						*uParam3 = 268.5924f;
						return true;
					}
					else
					{
						*uParam2 = { 37.8076f, -1286.228f, 28.2804f };
						*uParam3 = 269.64f;
						return true;
					}
					break;
				
				case 5:
					if (iParam4)
					{
						*uParam2 = { 37.3594f, -1302.457f, 28.2447f };
						*uParam3 = 268.5924f;
						return true;
					}
					else
					{
						*uParam2 = { 37.7995f, -1287.528f, 28.2836f };
						*uParam3 = 269.64f;
						return true;
					}
					break;
				
				case 6:
					if (iParam4)
					{
						*uParam2 = { 28.8771f, -1306.55f, 28.1192f };
						*uParam3 = 268.5924f;
						return true;
					}
					else
					{
						*uParam2 = { 37.7913f, -1288.828f, 28.2885f };
						*uParam3 = 269.64f;
						return true;
					}
					break;
				
				case 7:
					if (iParam4)
					{
						*uParam2 = { 29.0857f, -1302.207f, 28.1848f };
						*uParam3 = 268.5924f;
						return true;
					}
					else
					{
						*uParam2 = { 37.7831f, -1290.128f, 28.2929f };
						*uParam3 = 269.64f;
						return true;
					}
					break;
				
				case 8:
					if (iParam4)
					{
						*uParam2 = { 51.8603f, -1309.064f, 28.1933f };
						*uParam3 = 299.1927f;
						return true;
					}
					else
					{
						*uParam2 = { 39.1403f, -1281.036f, 28.2915f };
						*uParam3 = 269.64f;
						return true;
					}
					break;
				
				case 9:
					if (iParam4)
					{
						*uParam2 = { 53.7922f, -1312.055f, 28.1986f };
						*uParam3 = 299.1927f;
						return true;
					}
					else
					{
						*uParam2 = { 39.1321f, -1282.336f, 28.2858f };
						*uParam3 = 269.64f;
						return true;
					}
					break;
				
				case 10:
					if (iParam4)
					{
						*uParam2 = { 55.7237f, -1315.21f, 28.2201f };
						*uParam3 = 299.1927f;
						return true;
					}
					else
					{
						*uParam2 = { 39.1239f, -1283.636f, 28.2808f };
						*uParam3 = 269.64f;
						return true;
					}
					break;
				
				case 11:
					if (iParam4)
					{
						*uParam2 = { 57.742f, -1318.5f, 28.2915f };
						*uParam3 = 299.1927f;
						return true;
					}
					else
					{
						*uParam2 = { 39.1158f, -1284.936f, 28.2792f };
						*uParam3 = 269.64f;
						return true;
					}
					break;
				
				case 12:
					*uParam2 = { 39.1076f, -1286.236f, 28.2782f };
					*uParam3 = 269.64f;
					return true;
					break;
				
				case 13:
					*uParam2 = { 39.0994f, -1287.536f, 28.2771f };
					*uParam3 = 269.64f;
					return true;
					break;
				
				case 14:
					*uParam2 = { 39.0913f, -1288.836f, 28.2752f };
					*uParam3 = 269.64f;
					return true;
					break;
				
				case 15:
					*uParam2 = { 39.0831f, -1290.136f, 28.2734f };
					*uParam3 = 269.64f;
					return true;
					break;
				
				case 16:
					*uParam2 = { 40.4403f, -1281.044f, 28.3006f };
					*uParam3 = 269.64f;
					return true;
					break;
				
				case 17:
					*uParam2 = { 40.4321f, -1282.344f, 28.2946f };
					*uParam3 = 269.64f;
					return true;
					break;
				
				case 18:
					*uParam2 = { 40.4239f, -1283.644f, 28.2892f };
					*uParam3 = 269.64f;
					return true;
					break;
				
				case 19:
					*uParam2 = { 40.4157f, -1284.944f, 28.2879f };
					*uParam3 = 269.64f;
					return true;
					break;
				
				case 20:
					*uParam2 = { 40.4076f, -1286.244f, 28.2866f };
					*uParam3 = 269.64f;
					return true;
					break;
				
				case 21:
					*uParam2 = { 40.3994f, -1287.544f, 28.2854f };
					*uParam3 = 269.64f;
					return true;
					break;
				
				case 22:
					*uParam2 = { 40.3912f, -1288.844f, 28.2835f };
					*uParam3 = 269.64f;
					return true;
					break;
				
				case 23:
					*uParam2 = { 40.3831f, -1290.144f, 28.2818f };
					*uParam3 = 269.64f;
					return true;
					break;
				
				case 24:
					*uParam2 = { 41.7402f, -1281.053f, 28.1523f };
					*uParam3 = 269.64f;
					return true;
					break;
				
				case 25:
					*uParam2 = { 41.7321f, -1282.353f, 28.1465f };
					*uParam3 = 269.64f;
					return true;
					break;
				
				case 26:
					*uParam2 = { 41.7239f, -1283.652f, 28.1411f };
					*uParam3 = 269.64f;
					return true;
					break;
				
				case 27:
					*uParam2 = { 41.7157f, -1284.952f, 28.1413f };
					*uParam3 = 269.64f;
					return true;
					break;
				
				case 28:
					*uParam2 = { 41.7076f, -1286.252f, 28.1414f };
					*uParam3 = 269.64f;
					return true;
					break;
				
				case 29:
					*uParam2 = { 41.6994f, -1287.552f, 28.2923f };
					*uParam3 = 269.64f;
					return true;
					break;
				
				case 30:
					*uParam2 = { 41.6912f, -1288.852f, 28.2918f };
					*uParam3 = 269.64f;
					return true;
					break;
				
				case 31:
					*uParam2 = { 41.6831f, -1290.152f, 28.2898f };
					*uParam3 = 269.64f;
					return true;
					break;
			}
			break;
		
		case 61:
			switch (iParam1)
			{
				case 0:
					if (iParam4)
					{
						*uParam2 = { 1195.646f, -1261.693f, 34.2195f };
						*uParam3 = 266.1938f;
						return true;
					}
					else
					{
						*uParam2 = { 1212.141f, -1263.78f, 34.2267f };
						*uParam3 = 91.44f;
						return true;
					}
					break;
				
				case 1:
					if (iParam4)
					{
						*uParam2 = { 1195.94f, -1265.737f, 34.2205f };
						*uParam3 = 266.1938f;
						return true;
					}
					else
					{
						*uParam2 = { 1212.109f, -1262.48f, 34.2267f };
						*uParam3 = 91.44f;
						return true;
					}
					break;
				
				case 2:
					if (iParam4)
					{
						*uParam2 = { 1199.91f, -1269.677f, 34.2267f };
						*uParam3 = 266.1938f;
						return true;
					}
					else
					{
						*uParam2 = { 1212.076f, -1261.181f, 34.2267f };
						*uParam3 = 91.44f;
						return true;
					}
					break;
				
				case 3:
					if (iParam4)
					{
						*uParam2 = { 1199.64f, -1273.775f, 34.2236f };
						*uParam3 = 266.1938f;
						return true;
					}
					else
					{
						*uParam2 = { 1212.043f, -1259.881f, 34.2267f };
						*uParam3 = 91.44f;
						return true;
					}
					break;
				
				case 4:
					if (iParam4)
					{
						*uParam2 = { 1194.89f, -1284.992f, 34.1627f };
						*uParam3 = 264.9908f;
						return true;
					}
					else
					{
						*uParam2 = { 1212.01f, -1258.581f, 34.2267f };
						*uParam3 = 91.44f;
						return true;
					}
					break;
				
				case 5:
					if (iParam4)
					{
						*uParam2 = { 1194.377f, -1289.017f, 34.0681f };
						*uParam3 = 264.9908f;
						return true;
					}
					else
					{
						*uParam2 = { 1211.978f, -1257.282f, 34.2267f };
						*uParam3 = 91.44f;
						return true;
					}
					break;
				
				case 6:
					if (iParam4)
					{
						*uParam2 = { 1186.583f, -1284.243f, 33.9627f };
						*uParam3 = 264.9908f;
						return true;
					}
					else
					{
						*uParam2 = { 1211.945f, -1255.982f, 34.2267f };
						*uParam3 = 91.44f;
						return true;
					}
					break;
				
				case 7:
					if (iParam4)
					{
						*uParam2 = { 1186.12f, -1288.351f, 33.8788f };
						*uParam3 = 264.9908f;
						return true;
					}
					else
					{
						*uParam2 = { 1211.912f, -1254.683f, 34.2267f };
						*uParam3 = 91.44f;
						return true;
					}
					break;
				
				case 8:
					if (iParam4)
					{
						*uParam2 = { 1175.642f, -1292.637f, 33.8245f };
						*uParam3 = 354.7906f;
						return true;
					}
					else
					{
						*uParam2 = { 1210.842f, -1263.812f, 34.2267f };
						*uParam3 = 91.44f;
						return true;
					}
					break;
				
				case 9:
					if (iParam4)
					{
						*uParam2 = { 1179.274f, -1293.122f, 33.8035f };
						*uParam3 = 354.7906f;
						return true;
					}
					else
					{
						*uParam2 = { 1210.809f, -1262.513f, 34.2267f };
						*uParam3 = 91.44f;
						return true;
					}
					break;
				
				case 10:
					if (iParam4)
					{
						*uParam2 = { 1175.042f, -1301.148f, 33.8329f };
						*uParam3 = 354.7906f;
						return true;
					}
					else
					{
						*uParam2 = { 1210.776f, -1261.213f, 34.2267f };
						*uParam3 = 91.44f;
						return true;
					}
					break;
				
				case 11:
					if (iParam4)
					{
						*uParam2 = { 1178.645f, -1301.519f, 33.8056f };
						*uParam3 = 354.7906f;
						return true;
					}
					else
					{
						*uParam2 = { 1210.744f, -1259.914f, 34.2267f };
						*uParam3 = 91.44f;
						return true;
					}
					break;
				
				case 12:
					*uParam2 = { 1210.711f, -1258.614f, 34.2267f };
					*uParam3 = 91.44f;
					return true;
					break;
				
				case 13:
					*uParam2 = { 1210.678f, -1257.315f, 34.2267f };
					*uParam3 = 91.44f;
					return true;
					break;
				
				case 14:
					*uParam2 = { 1210.645f, -1256.015f, 34.2267f };
					*uParam3 = 91.44f;
					return true;
					break;
				
				case 15:
					*uParam2 = { 1210.613f, -1254.715f, 34.2267f };
					*uParam3 = 91.44f;
					return true;
					break;
				
				case 16:
					*uParam2 = { 1209.542f, -1263.845f, 34.2267f };
					*uParam3 = 91.44f;
					return true;
					break;
				
				case 17:
					*uParam2 = { 1209.509f, -1262.546f, 34.2267f };
					*uParam3 = 91.44f;
					return true;
					break;
				
				case 18:
					*uParam2 = { 1209.477f, -1261.246f, 34.2267f };
					*uParam3 = 91.44f;
					return true;
					break;
				
				case 19:
					*uParam2 = { 1209.444f, -1259.946f, 34.2267f };
					*uParam3 = 91.44f;
					return true;
					break;
				
				case 20:
					*uParam2 = { 1209.411f, -1258.647f, 34.2267f };
					*uParam3 = 91.44f;
					return true;
					break;
				
				case 21:
					*uParam2 = { 1209.379f, -1257.347f, 34.2267f };
					*uParam3 = 91.44f;
					return true;
					break;
				
				case 22:
					*uParam2 = { 1209.346f, -1256.048f, 34.2267f };
					*uParam3 = 91.44f;
					return true;
					break;
				
				case 23:
					*uParam2 = { 1209.313f, -1254.748f, 34.2267f };
					*uParam3 = 91.44f;
					return true;
					break;
				
				case 24:
					*uParam2 = { 1208.243f, -1263.878f, 34.2267f };
					*uParam3 = 91.44f;
					return true;
					break;
				
				case 25:
					*uParam2 = { 1208.21f, -1262.578f, 34.2267f };
					*uParam3 = 91.44f;
					return true;
					break;
				
				case 26:
					*uParam2 = { 1208.177f, -1261.279f, 34.2267f };
					*uParam3 = 91.44f;
					return true;
					break;
				
				case 27:
					*uParam2 = { 1208.144f, -1259.979f, 34.2267f };
					*uParam3 = 91.44f;
					return true;
					break;
				
				case 28:
					*uParam2 = { 1208.112f, -1258.68f, 34.2267f };
					*uParam3 = 91.44f;
					return true;
					break;
				
				case 29:
					*uParam2 = { 1208.079f, -1257.38f, 34.2267f };
					*uParam3 = 91.44f;
					return true;
					break;
				
				case 30:
					*uParam2 = { 1208.046f, -1256.08f, 34.2267f };
					*uParam3 = 91.44f;
					return true;
					break;
				
				case 31:
					*uParam2 = { 1208.014f, -1254.781f, 34.2267f };
					*uParam3 = 91.44f;
					return true;
					break;
			}
			break;
		
		case 62:
			switch (iParam1)
			{
				case 0:
					if (iParam4)
					{
						*uParam2 = { 814.3074f, -2231.162f, 28.7591f };
						*uParam3 = 136.3901f;
						return true;
					}
					else
					{
						*uParam2 = { 806.7189f, -2222.363f, 28.5564f };
						*uParam3 = 178.92f;
						return true;
					}
					break;
				
				case 1:
					if (iParam4)
					{
						*uParam2 = { 818.5963f, -2231.665f, 28.8321f };
						*uParam3 = 136.3901f;
						return true;
					}
					else
					{
						*uParam2 = { 805.4192f, -2222.338f, 28.5129f };
						*uParam3 = 178.92f;
						return true;
					}
					break;
				
				case 2:
					if (iParam4)
					{
						*uParam2 = { 822.9283f, -2232.598f, 28.8594f };
						*uParam3 = 136.3901f;
						return true;
					}
					else
					{
						*uParam2 = { 804.1194f, -2222.314f, 28.4545f };
						*uParam3 = 178.92f;
						return true;
					}
					break;
				
				case 3:
					if (iParam4)
					{
						*uParam2 = { 828.4664f, -2233.104f, 28.9445f };
						*uParam3 = 136.3901f;
						return true;
					}
					else
					{
						*uParam2 = { 802.8197f, -2222.289f, 28.4468f };
						*uParam3 = 178.92f;
						return true;
					}
					break;
				
				case 4:
					if (iParam4)
					{
						*uParam2 = { 779.4756f, -2269.983f, 28.2386f };
						*uParam3 = 86.1935f;
						return true;
					}
					else
					{
						*uParam2 = { 801.52f, -2222.265f, 28.439f };
						*uParam3 = 178.92f;
						return true;
					}
					break;
				
				case 5:
					if (iParam4)
					{
						*uParam2 = { 779.1962f, -2273.839f, 28.2358f };
						*uParam3 = 86.1935f;
						return true;
					}
					else
					{
						*uParam2 = { 806.6945f, -2223.662f, 28.5693f };
						*uParam3 = 178.92f;
						return true;
					}
					break;
				
				case 6:
					if (iParam4)
					{
						*uParam2 = { 778.7557f, -2277.931f, 28.1127f };
						*uParam3 = 86.1935f;
						return true;
					}
					else
					{
						*uParam2 = { 805.3947f, -2223.638f, 28.5246f };
						*uParam3 = 178.92f;
						return true;
					}
					break;
				
				case 7:
					if (iParam4)
					{
						*uParam2 = { 778.3351f, -2281.816f, 27.9724f };
						*uParam3 = 86.1935f;
						return true;
					}
					else
					{
						*uParam2 = { 804.095f, -2223.614f, 28.4952f };
						*uParam3 = 178.92f;
						return true;
					}
					break;
				
				case 8:
					if (iParam4)
					{
						*uParam2 = { 777.4008f, -2288.069f, 27.7f };
						*uParam3 = 86.1935f;
						return true;
					}
					else
					{
						*uParam2 = { 802.7952f, -2223.589f, 28.4875f };
						*uParam3 = 85.7933f;
						return true;
					}
					break;
				
				case 9:
					if (iParam4)
					{
						*uParam2 = { 776.8676f, -2292.316f, 27.4908f };
						*uParam3 = 85.7933f;
						return true;
					}
					else
					{
						*uParam2 = { 801.4955f, -2223.565f, 28.4797f };
						*uParam3 = 178.92f;
						return true;
					}
					break;
				
				case 10:
					if (iParam4)
					{
						*uParam2 = { 776.4733f, -2296.191f, 27.2854f };
						*uParam3 = 85.7933f;
						return true;
					}
					else
					{
						*uParam2 = { 806.67f, -2224.962f, 28.5838f };
						*uParam3 = 178.92f;
						return true;
					}
					break;
				
				case 11:
					if (iParam4)
					{
						*uParam2 = { 776.2014f, -2300.281f, 26.9733f };
						*uParam3 = 85.7933f;
						return true;
					}
					else
					{
						*uParam2 = { 805.3702f, -2224.938f, 28.5437f };
						*uParam3 = 178.92f;
						return true;
					}
					break;
				
				case 12:
					*uParam2 = { 804.0705f, -2224.913f, 28.5359f };
					*uParam3 = 178.92f;
					return true;
					break;
				
				case 13:
					*uParam2 = { 802.7708f, -2224.889f, 28.5085f };
					*uParam3 = 178.92f;
					return true;
					break;
				
				case 14:
					*uParam2 = { 801.471f, -2224.865f, 28.479f };
					*uParam3 = 178.92f;
					return true;
					break;
				
				case 15:
					*uParam2 = { 806.6455f, -2226.262f, 28.6176f };
					*uParam3 = 178.92f;
					return true;
					break;
				
				case 16:
					*uParam2 = { 805.3458f, -2226.238f, 28.5875f };
					*uParam3 = 178.92f;
					return true;
					break;
				
				case 17:
					*uParam2 = { 804.046f, -2226.213f, 28.5615f };
					*uParam3 = 178.92f;
					return true;
					break;
				
				case 18:
					*uParam2 = { 802.7463f, -2226.189f, 28.5343f };
					*uParam3 = 178.92f;
					return true;
					break;
				
				case 19:
					*uParam2 = { 801.4465f, -2226.164f, 28.507f };
					*uParam3 = 178.92f;
					return true;
					break;
				
				case 20:
					*uParam2 = { 806.621f, -2227.562f, 28.6616f };
					*uParam3 = 178.92f;
					return true;
					break;
				
				case 21:
					*uParam2 = { 805.3213f, -2227.537f, 28.6379f };
					*uParam3 = 178.92f;
					return true;
					break;
				
				case 22:
					*uParam2 = { 804.0215f, -2227.513f, 28.6159f };
					*uParam3 = 178.92f;
					return true;
					break;
				
				case 23:
					*uParam2 = { 802.7218f, -2227.489f, 28.5944f };
					*uParam3 = 178.92f;
					return true;
					break;
				
				case 24:
					*uParam2 = { 801.4221f, -2227.464f, 28.5753f };
					*uParam3 = 178.92f;
					return true;
					break;
				
				case 25:
					*uParam2 = { 806.5966f, -2228.862f, 28.6682f };
					*uParam3 = 178.92f;
					return true;
					break;
				
				case 26:
					*uParam2 = { 805.2968f, -2228.837f, 28.6386f };
					*uParam3 = 178.92f;
					return true;
					break;
				
				case 27:
					*uParam2 = { 803.9971f, -2228.813f, 28.6174f };
					*uParam3 = 178.92f;
					return true;
					break;
				
				case 28:
					*uParam2 = { 802.6973f, -2228.788f, 28.5957f };
					*uParam3 = 178.92f;
					return true;
					break;
				
				case 29:
					*uParam2 = { 801.3976f, -2228.764f, 28.5766f };
					*uParam3 = 178.92f;
					return true;
					break;
				
				case 30:
					*uParam2 = { 806.5721f, -2230.161f, 28.6749f };
					*uParam3 = 178.92f;
					return true;
					break;
				
				case 31:
					*uParam2 = { 805.2723f, -2230.137f, 28.639f };
					*uParam3 = 178.92f;
					return true;
					break;
			}
			break;
		
		case 63:
			switch (iParam1)
			{
				case 0:
					if (iParam4)
					{
						*uParam2 = { 1732.364f, -1699.852f, 111.5346f };
						*uParam3 = 182.9893f;
						return true;
					}
					else
					{
						*uParam2 = { 1767.051f, -1647.813f, 111.6467f };
						*uParam3 = 190.44f;
						return true;
					}
					break;
				
				case 1:
					if (iParam4)
					{
						*uParam2 = { 1728.957f, -1701.908f, 111.5529f };
						*uParam3 = 182.9893f;
						return true;
					}
					else
					{
						*uParam2 = { 1765.576f, -1648.085f, 111.6503f };
						*uParam3 = 190.44f;
						return true;
					}
					break;
				
				case 2:
					if (iParam4)
					{
						*uParam2 = { 1732.007f, -1691.745f, 111.6779f };
						*uParam3 = 182.9893f;
						return true;
					}
					else
					{
						*uParam2 = { 1764.101f, -1648.357f, 111.6528f };
						*uParam3 = 190.44f;
						return true;
					}
					break;
				
				case 3:
					if (iParam4)
					{
						*uParam2 = { 1728.593f, -1694.057f, 111.5217f };
						*uParam3 = 182.9893f;
						return true;
					}
					else
					{
						*uParam2 = { 1762.626f, -1648.629f, 111.6545f };
						*uParam3 = 190.44f;
						return true;
					}
					break;
				
				case 4:
					if (iParam4)
					{
						*uParam2 = { 1730.364f, -1681.616f, 111.6619f };
						*uParam3 = 182.9893f;
						return true;
					}
					else
					{
						*uParam2 = { 1761.15f, -1648.901f, 111.6538f };
						*uParam3 = 190.44f;
						return true;
					}
					break;
				
				case 5:
					if (iParam4)
					{
						*uParam2 = { 1727.072f, -1683.145f, 111.6702f };
						*uParam3 = 182.9893f;
						return true;
					}
					else
					{
						*uParam2 = { 1759.675f, -1649.173f, 111.6562f };
						*uParam3 = 190.44f;
						return true;
					}
					break;
				
				case 6:
					if (iParam4)
					{
						*uParam2 = { 1730.124f, -1673.256f, 111.5968f };
						*uParam3 = 182.9893f;
						return true;
					}
					else
					{
						*uParam2 = { 1758.2f, -1649.444f, 111.6584f };
						*uParam3 = 190.44f;
						return true;
					}
					break;
				
				case 7:
					if (iParam4)
					{
						*uParam2 = { 1726.772f, -1675.225f, 111.5985f };
						*uParam3 = 182.9893f;
						return true;
					}
					else
					{
						*uParam2 = { 1756.725f, -1649.716f, 111.6591f };
						*uParam3 = 190.44f;
						return true;
					}
					break;
				
				case 8:
					if (iParam4)
					{
						*uParam2 = { 1716.898f, -1666.006f, 111.5213f };
						*uParam3 = 238.1895f;
						return true;
					}
					else
					{
						*uParam2 = { 1767.323f, -1649.289f, 111.658f };
						*uParam3 = 190.44f;
						return true;
					}
					break;
				
				case 9:
					if (iParam4)
					{
						*uParam2 = { 1716.425f, -1661.644f, 111.4922f };
						*uParam3 = 238.1895f;
						return true;
					}
					else
					{
						*uParam2 = { 1765.848f, -1649.56f, 111.6611f };
						*uParam3 = 190.44f;
						return true;
					}
					break;
				
				case 10:
					if (iParam4)
					{
						*uParam2 = { 1716.255f, -1657.604f, 111.4835f };
						*uParam3 = 238.1895f;
						return true;
					}
					else
					{
						*uParam2 = { 1764.373f, -1649.832f, 111.6585f };
						*uParam3 = 190.44f;
						return true;
					}
					break;
				
				case 11:
					if (iParam4)
					{
						*uParam2 = { 1715.214f, -1653.176f, 111.5042f };
						*uParam3 = 238.1895f;
						return true;
					}
					else
					{
						*uParam2 = { 1762.897f, -1650.104f, 111.6574f };
						*uParam3 = 190.44f;
						return true;
					}
					break;
				
				case 12:
					*uParam2 = { 1761.422f, -1650.376f, 111.6587f };
					*uParam3 = 190.44f;
					return true;
					break;
				
				case 13:
					*uParam2 = { 1759.947f, -1650.648f, 111.6611f };
					*uParam3 = 190.44f;
					return true;
					break;
				
				case 14:
					*uParam2 = { 1758.472f, -1650.92f, 111.6638f };
					*uParam3 = 190.44f;
					return true;
					break;
				
				case 15:
					*uParam2 = { 1756.997f, -1651.192f, 111.6683f };
					*uParam3 = 190.44f;
					return true;
					break;
				
				case 16:
					*uParam2 = { 1767.595f, -1650.764f, 111.6655f };
					*uParam3 = 190.44f;
					return true;
					break;
				
				case 17:
					*uParam2 = { 1766.12f, -1651.036f, 111.6606f };
					*uParam3 = 190.44f;
					return true;
					break;
				
				case 18:
					*uParam2 = { 1764.645f, -1651.307f, 111.6596f };
					*uParam3 = 190.44f;
					return true;
					break;
				
				case 19:
					*uParam2 = { 1763.169f, -1651.579f, 111.6601f };
					*uParam3 = 190.44f;
					return true;
					break;
				
				case 20:
					*uParam2 = { 1761.694f, -1651.851f, 111.6617f };
					*uParam3 = 190.44f;
					return true;
					break;
				
				case 21:
					*uParam2 = { 1760.219f, -1652.123f, 111.6657f };
					*uParam3 = 190.44f;
					return true;
					break;
				
				case 22:
					*uParam2 = { 1758.744f, -1652.395f, 111.6726f };
					*uParam3 = 190.44f;
					return true;
					break;
				
				case 23:
					*uParam2 = { 1757.268f, -1652.667f, 111.6784f };
					*uParam3 = 190.44f;
					return true;
					break;
				
				case 24:
					*uParam2 = { 1767.867f, -1652.239f, 111.6634f };
					*uParam3 = 190.44f;
					return true;
					break;
				
				case 25:
					*uParam2 = { 1766.392f, -1652.511f, 111.6607f };
					*uParam3 = 190.44f;
					return true;
					break;
				
				case 26:
					*uParam2 = { 1764.916f, -1652.783f, 111.6589f };
					*uParam3 = 190.44f;
					return true;
					break;
				
				case 27:
					*uParam2 = { 1763.441f, -1653.055f, 111.6613f };
					*uParam3 = 190.44f;
					return true;
					break;
				
				case 28:
					*uParam2 = { 1761.966f, -1653.326f, 111.6665f };
					*uParam3 = 190.44f;
					return true;
					break;
				
				case 29:
					*uParam2 = { 1760.491f, -1653.598f, 111.6768f };
					*uParam3 = 190.44f;
					return true;
					break;
				
				case 30:
					*uParam2 = { 1759.016f, -1653.87f, 111.6833f };
					*uParam3 = 190.44f;
					return true;
					break;
				
				case 31:
					*uParam2 = { 1757.54f, -1654.142f, 111.6889f };
					*uParam3 = 190.44f;
					return true;
					break;
			}
			break;
		
		case 64:
			switch (iParam1)
			{
				case 0:
					if (iParam4)
					{
						*uParam2 = { 179.0235f, -2983.04f, 4.9006f };
						*uParam3 = 305.1886f;
						return true;
					}
					else
					{
						*uParam2 = { 142.0598f, -3004.689f, 6.0309f };
						*uParam3 = 0f;
						return true;
					}
					break;
				
				case 1:
					if (iParam4)
					{
						*uParam2 = { 178.999f, -2987.185f, 4.8741f };
						*uParam3 = 305.1886f;
						return true;
					}
					else
					{
						*uParam2 = { 143.5598f, -3004.689f, 6.0309f };
						*uParam3 = 0f;
						return true;
					}
					break;
				
				case 2:
					if (iParam4)
					{
						*uParam2 = { 172.0389f, -2988.008f, 4.8866f };
						*uParam3 = 305.1886f;
						return true;
					}
					else
					{
						*uParam2 = { 145.0598f, -3004.689f, 6.0309f };
						*uParam3 = 0f;
						return true;
					}
					break;
				
				case 3:
					if (iParam4)
					{
						*uParam2 = { 172.1585f, -2992.226f, 4.8364f };
						*uParam3 = 305.1886f;
						return true;
					}
					else
					{
						*uParam2 = { 146.5598f, -3004.689f, 6.031f };
						*uParam3 = 0f;
						return true;
					}
					break;
				
				case 4:
					if (iParam4)
					{
						*uParam2 = { 179.2999f, -2993.637f, 4.777f };
						*uParam3 = 305.1886f;
						return true;
					}
					else
					{
						*uParam2 = { 142.0598f, -3003.189f, 6.0309f };
						*uParam3 = 0f;
						return true;
					}
					break;
				
				case 5:
					if (iParam4)
					{
						*uParam2 = { 179.3002f, -2998.515f, 4.7422f };
						*uParam3 = 305.1886f;
						return true;
					}
					else
					{
						*uParam2 = { 143.5598f, -3003.189f, 6.0309f };
						*uParam3 = 0f;
						return true;
					}
					break;
				
				case 6:
					if (iParam4)
					{
						*uParam2 = { 172.1279f, -2998.175f, 4.7668f };
						*uParam3 = 305.1886f;
						return true;
					}
					else
					{
						*uParam2 = { 145.0598f, -3003.189f, 6.031f };
						*uParam3 = 0f;
						return true;
					}
					break;
				
				case 7:
					if (iParam4)
					{
						*uParam2 = { 172.6838f, -3003.119f, 4.7802f };
						*uParam3 = 305.1886f;
						return true;
					}
					else
					{
						*uParam2 = { 146.5598f, -3003.189f, 6.031f };
						*uParam3 = 0f;
						return true;
					}
					break;
				
				case 8:
					if (iParam4)
					{
						*uParam2 = { 178.9094f, -2966.464f, 4.9906f };
						*uParam3 = 305.1886f;
						return true;
					}
					else
					{
						*uParam2 = { 142.0598f, -3001.689f, 6.031f };
						*uParam3 = 0f;
						return true;
					}
					break;
				
				case 9:
					if (iParam4)
					{
						*uParam2 = { 177.6397f, -2962.168f, 4.9975f };
						*uParam3 = 305.1886f;
						return true;
					}
					else
					{
						*uParam2 = { 143.5598f, -3001.689f, 6.031f };
						*uParam3 = 0f;
						return true;
					}
					break;
				
				case 10:
					if (iParam4)
					{
						*uParam2 = { 172.2873f, -2971.257f, 4.9236f };
						*uParam3 = 305.1886f;
						return true;
					}
					else
					{
						*uParam2 = { 145.0598f, -3001.689f, 6.0311f };
						*uParam3 = 0f;
						return true;
					}
					break;
				
				case 11:
					if (iParam4)
					{
						*uParam2 = { 170.9007f, -2967.456f, 4.9488f };
						*uParam3 = 305.1886f;
						return true;
					}
					else
					{
						*uParam2 = { 146.5598f, -3001.689f, 6.0311f };
						*uParam3 = 0f;
						return true;
					}
					break;
				
				case 12:
					*uParam2 = { 142.0598f, -3000.189f, 6.031f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 13:
					*uParam2 = { 143.5598f, -3000.189f, 6.0311f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 14:
					*uParam2 = { 145.0598f, -3000.189f, 6.0311f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 15:
					*uParam2 = { 146.5598f, -3000.189f, 6.0312f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 16:
					*uParam2 = { 142.0598f, -2998.689f, 6.031f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 17:
					*uParam2 = { 143.5598f, -2998.689f, 6.0311f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 18:
					*uParam2 = { 145.0598f, -2998.689f, 6.0311f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 19:
					*uParam2 = { 146.5598f, -2998.689f, 6.0312f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 20:
					*uParam2 = { 142.0598f, -2997.189f, 6.031f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 21:
					*uParam2 = { 143.5598f, -2997.189f, 6.0311f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 22:
					*uParam2 = { 145.0598f, -2997.189f, 6.0312f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 23:
					*uParam2 = { 146.5598f, -2997.189f, 6.0313f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 24:
					*uParam2 = { 142.0598f, -2995.689f, 6.031f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 25:
					*uParam2 = { 143.5598f, -2995.689f, 6.0311f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 26:
					*uParam2 = { 145.0598f, -2995.689f, 6.0312f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 27:
					*uParam2 = { 146.5598f, -2995.689f, 6.0313f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 28:
					*uParam2 = { 142.0598f, -2994.189f, 6.0311f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 29:
					*uParam2 = { 143.5598f, -2994.189f, 6.0312f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 30:
					*uParam2 = { 145.0598f, -2994.189f, 6.0313f };
					*uParam3 = 0f;
					return true;
					break;
				
				case 31:
					*uParam2 = { 146.5598f, -2994.189f, 6.0314f };
					*uParam3 = 0f;
					return true;
					break;
			}
			break;
		
		case 65:
			switch (iParam1)
			{
				case 0:
					if (iParam4)
					{
						*uParam2 = { -482.7018f, -2168.995f, 8.4192f };
						*uParam3 = 323.3885f;
						return true;
					}
					else
					{
						*uParam2 = { -516.6584f, -2199.877f, 5.394f };
						*uParam3 = 321.48f;
						return true;
					}
					break;
				
				case 1:
					if (iParam4)
					{
						*uParam2 = { -479.5692f, -2171.427f, 8.5546f };
						*uParam3 = 323.3885f;
						return true;
					}
					else
					{
						*uParam2 = { -515.4848f, -2200.811f, 5.394f };
						*uParam3 = 321.48f;
						return true;
					}
					break;
				
				case 2:
					if (iParam4)
					{
						*uParam2 = { -487.8007f, -2175.853f, 8.0351f };
						*uParam3 = 323.3885f;
						return true;
					}
					else
					{
						*uParam2 = { -514.3112f, -2201.745f, 5.394f };
						*uParam3 = 321.48f;
						return true;
					}
					break;
				
				case 3:
					if (iParam4)
					{
						*uParam2 = { -484.4329f, -2178.406f, 8.144f };
						*uParam3 = 323.3885f;
						return true;
					}
					else
					{
						*uParam2 = { -513.1376f, -2202.679f, 5.394f };
						*uParam3 = 321.48f;
						return true;
					}
					break;
				
				case 4:
					if (iParam4)
					{
						*uParam2 = { -490.9238f, -2160.861f, 8.2446f };
						*uParam3 = 312.9879f;
						return true;
					}
					else
					{
						*uParam2 = { -511.9641f, -2203.613f, 5.394f };
						*uParam3 = 321.48f;
						return true;
					}
					break;
				
				case 5:
					if (iParam4)
					{
						*uParam2 = { -494.0761f, -2158.499f, 8.1971f };
						*uParam3 = 312.9879f;
						return true;
					}
					else
					{
						*uParam2 = { -510.7905f, -2204.547f, 5.394f };
						*uParam3 = 321.48f;
						return true;
					}
					break;
				
				case 6:
					if (iParam4)
					{
						*uParam2 = { -496.8955f, -2166.596f, 7.8227f };
						*uParam3 = 312.9879f;
						return true;
					}
					else
					{
						*uParam2 = { -515.7242f, -2198.703f, 5.394f };
						*uParam3 = 321.48f;
						return true;
					}
					break;
				
				case 7:
					if (iParam4)
					{
						*uParam2 = { -499.7228f, -2163.837f, 7.8161f };
						*uParam3 = 312.9879f;
						return true;
					}
					else
					{
						*uParam2 = { -514.5506f, -2199.637f, 5.394f };
						*uParam3 = 321.48f;
						return true;
					}
					break;
				
				case 8:
					if (iParam4)
					{
						*uParam2 = { -471.1009f, -2164.748f, 8.7873f };
						*uParam3 = 15.9878f;
						return true;
					}
					else
					{
						*uParam2 = { -513.377f, -2200.571f, 5.394f };
						*uParam3 = 321.48f;
						return true;
					}
					break;
				
				case 9:
					if (iParam4)
					{
						*uParam2 = { -467.0619f, -2164.841f, 8.9238f };
						*uParam3 = 15.9878f;
						return true;
					}
					else
					{
						*uParam2 = { -512.2034f, -2201.505f, 5.394f };
						*uParam3 = 321.48f;
						return true;
					}
					break;
				
				case 10:
					if (iParam4)
					{
						*uParam2 = { -468.8961f, -2172.722f, 8.9299f };
						*uParam3 = 15.9878f;
						return true;
					}
					else
					{
						*uParam2 = { -511.0298f, -2202.439f, 5.394f };
						*uParam3 = 321.48f;
						return true;
					}
					break;
				
				case 11:
					if (iParam4)
					{
						*uParam2 = { -464.9085f, -2172.709f, 9.0347f };
						*uParam3 = 15.9878f;
						return true;
					}
					else
					{
						*uParam2 = { -509.8563f, -2203.374f, 5.394f };
						*uParam3 = 321.48f;
						return true;
					}
					break;
				
				case 12:
					*uParam2 = { -514.79f, -2197.53f, 5.394f };
					*uParam3 = 321.48f;
					return true;
					break;
				
				case 13:
					*uParam2 = { -513.6164f, -2198.464f, 5.394f };
					*uParam3 = 321.48f;
					return true;
					break;
				
				case 14:
					*uParam2 = { -512.4428f, -2199.398f, 5.394f };
					*uParam3 = 321.48f;
					return true;
					break;
				
				case 15:
					*uParam2 = { -511.2692f, -2200.332f, 5.394f };
					*uParam3 = 321.48f;
					return true;
					break;
				
				case 16:
					*uParam2 = { -510.0956f, -2201.266f, 5.394f };
					*uParam3 = 321.48f;
					return true;
					break;
				
				case 17:
					*uParam2 = { -508.9221f, -2202.2f, 5.394f };
					*uParam3 = 321.48f;
					return true;
					break;
				
				case 18:
					*uParam2 = { -513.8558f, -2196.356f, 5.394f };
					*uParam3 = 321.48f;
					return true;
					break;
				
				case 19:
					*uParam2 = { -512.6822f, -2197.29f, 5.394f };
					*uParam3 = 321.48f;
					return true;
					break;
				
				case 20:
					*uParam2 = { -511.5086f, -2198.224f, 5.394f };
					*uParam3 = 321.48f;
					return true;
					break;
				
				case 21:
					*uParam2 = { -510.335f, -2199.158f, 5.394f };
					*uParam3 = 321.48f;
					return true;
					break;
				
				case 22:
					*uParam2 = { -509.1614f, -2200.092f, 5.394f };
					*uParam3 = 321.48f;
					return true;
					break;
				
				case 23:
					*uParam2 = { -507.9879f, -2201.026f, 5.394f };
					*uParam3 = 321.48f;
					return true;
					break;
				
				case 24:
					*uParam2 = { -512.9216f, -2195.182f, 5.394f };
					*uParam3 = 321.48f;
					return true;
					break;
				
				case 25:
					*uParam2 = { -511.748f, -2196.116f, 5.394f };
					*uParam3 = 321.48f;
					return true;
					break;
				
				case 26:
					*uParam2 = { -510.5744f, -2197.051f, 5.394f };
					*uParam3 = 321.48f;
					return true;
					break;
				
				case 27:
					*uParam2 = { -509.4008f, -2197.985f, 5.394f };
					*uParam3 = 321.48f;
					return true;
					break;
				
				case 28:
					*uParam2 = { -508.2272f, -2198.919f, 5.394f };
					*uParam3 = 321.48f;
					return true;
					break;
				
				case 29:
					*uParam2 = { -507.0536f, -2199.853f, 5.394f };
					*uParam3 = 321.48f;
					return true;
					break;
				
				case 30:
					*uParam2 = { -511.9874f, -2194.009f, 5.394f };
					*uParam3 = 321.48f;
					return true;
					break;
				
				case 31:
					*uParam2 = { -510.8138f, -2194.943f, 5.394f };
					*uParam3 = 321.48f;
					return true;
					break;
			}
			break;
		
		case 66:
			switch (iParam1)
			{
				case 0:
					if (iParam4)
					{
						*uParam2 = { -1176.566f, -2193.284f, 12.1952f };
						*uParam3 = 329.7995f;
						return true;
					}
					else
					{
						*uParam2 = { -1149.437f, -2175.302f, 12.2749f };
						*uParam3 = 136f;
						return true;
					}
					break;
				
				case 1:
					if (iParam4)
					{
						*uParam2 = { -1172.991f, -2195.325f, 12.1953f };
						*uParam3 = 329.7995f;
						return true;
					}
					else
					{
						*uParam2 = { -1150.516f, -2174.26f, 12.271f };
						*uParam3 = 136f;
						return true;
					}
					break;
				
				case 2:
					if (iParam4)
					{
						*uParam2 = { -1180.919f, -2200.967f, 12.1951f };
						*uParam3 = 329.7995f;
						return true;
					}
					else
					{
						*uParam2 = { -1151.595f, -2173.219f, 12.2669f };
						*uParam3 = 136f;
						return true;
					}
					break;
				
				case 3:
					if (iParam4)
					{
						*uParam2 = { -1177.17f, -2203.107f, 12.1953f };
						*uParam3 = 329.7995f;
						return true;
					}
					else
					{
						*uParam2 = { -1152.674f, -2172.177f, 12.2654f };
						*uParam3 = 136f;
						return true;
					}
					break;
				
				case 4:
					if (iParam4)
					{
						*uParam2 = { -1169.578f, -2197.272f, 12.1954f };
						*uParam3 = 329.7995f;
						return true;
					}
					else
					{
						*uParam2 = { -1153.753f, -2171.135f, 12.2648f };
						*uParam3 = 136f;
						return true;
					}
					break;
				
				case 5:
					if (iParam4)
					{
						*uParam2 = { -1166.128f, -2199.225f, 12.1955f };
						*uParam3 = 329.7995f;
						return true;
					}
					else
					{
						*uParam2 = { -1154.832f, -2170.093f, 12.2647f };
						*uParam3 = 136f;
						return true;
					}
					break;
				
				case 6:
					if (iParam4)
					{
						*uParam2 = { -1173.715f, -2204.923f, 12.1954f };
						*uParam3 = 329.7995f;
						return true;
					}
					else
					{
						*uParam2 = { -1155.911f, -2169.051f, 12.2646f };
						*uParam3 = 136f;
						return true;
					}
					break;
				
				case 7:
					if (iParam4)
					{
						*uParam2 = { -1170.49f, -2206.781f, 12.1956f };
						*uParam3 = 329.7995f;
						return true;
					}
					else
					{
						*uParam2 = { -1156.99f, -2168.009f, 12.2646f };
						*uParam3 = 136f;
						return true;
					}
					break;
				
				case 8:
					if (iParam4)
					{
						*uParam2 = { -1162.528f, -2201.375f, 12.1957f };
						*uParam3 = 329.7995f;
						return true;
					}
					else
					{
						*uParam2 = { -1150.479f, -2176.382f, 12.2637f };
						*uParam3 = 136f;
						return true;
					}
					break;
				
				case 9:
					if (iParam4)
					{
						*uParam2 = { -1159.016f, -2203.38f, 12.1959f };
						*uParam3 = 329.7995f;
						return true;
					}
					else
					{
						*uParam2 = { -1151.558f, -2175.34f, 12.259f };
						*uParam3 = 136f;
						return true;
					}
					break;
				
				case 10:
					if (iParam4)
					{
						*uParam2 = { -1166.667f, -2208.739f, 12.1959f };
						*uParam3 = 329.7995f;
						return true;
					}
					else
					{
						*uParam2 = { -1152.637f, -2174.298f, 12.2543f };
						*uParam3 = 136f;
						return true;
					}
					break;
				
				case 11:
					if (iParam4)
					{
						*uParam2 = { -1163.183f, -2210.749f, 12.1959f };
						*uParam3 = 329.7995f;
						return true;
					}
					else
					{
						*uParam2 = { -1153.716f, -2173.256f, 12.2536f };
						*uParam3 = 136f;
						return true;
					}
					break;
				
				case 12:
					*uParam2 = { -1154.795f, -2172.214f, 12.2531f };
					*uParam3 = 136f;
					return true;
					break;
				
				case 13:
					*uParam2 = { -1155.874f, -2171.172f, 12.2526f };
					*uParam3 = 136f;
					return true;
					break;
				
				case 14:
					*uParam2 = { -1156.953f, -2170.13f, 12.2522f };
					*uParam3 = 136f;
					return true;
					break;
				
				case 15:
					*uParam2 = { -1158.032f, -2169.088f, 12.2518f };
					*uParam3 = 136f;
					return true;
					break;
				
				case 16:
					*uParam2 = { -1151.521f, -2177.461f, 12.2296f };
					*uParam3 = 136f;
					return true;
					break;
				
				case 17:
					*uParam2 = { -1152.6f, -2176.419f, 12.2292f };
					*uParam3 = 136f;
					return true;
					break;
				
				case 18:
					*uParam2 = { -1153.679f, -2175.377f, 12.2288f };
					*uParam3 = 136f;
					return true;
					break;
				
				case 19:
					*uParam2 = { -1154.758f, -2174.335f, 12.2285f };
					*uParam3 = 136f;
					return true;
					break;
				
				case 20:
					*uParam2 = { -1155.837f, -2173.293f, 12.228f };
					*uParam3 = 136f;
					return true;
					break;
				
				case 21:
					*uParam2 = { -1156.916f, -2172.251f, 12.2276f };
					*uParam3 = 136f;
					return true;
					break;
				
				case 22:
					*uParam2 = { -1157.995f, -2171.209f, 12.2311f };
					*uParam3 = 136f;
					return true;
					break;
				
				case 23:
					*uParam2 = { -1159.074f, -2170.167f, 12.2425f };
					*uParam3 = 136f;
					return true;
					break;
				
				case 24:
					*uParam2 = { -1152.563f, -2178.54f, 12.2045f };
					*uParam3 = 136f;
					return true;
					break;
				
				case 25:
					*uParam2 = { -1153.642f, -2177.498f, 12.2041f };
					*uParam3 = 136f;
					return true;
					break;
				
				case 26:
					*uParam2 = { -1154.721f, -2176.456f, 12.2037f };
					*uParam3 = 136f;
					return true;
					break;
				
				case 27:
					*uParam2 = { -1155.8f, -2175.414f, 12.2034f };
					*uParam3 = 136f;
					return true;
					break;
				
				case 28:
					*uParam2 = { -1156.879f, -2174.372f, 12.2038f };
					*uParam3 = 136f;
					return true;
					break;
				
				case 29:
					*uParam2 = { -1157.958f, -2173.33f, 12.2146f };
					*uParam3 = 136f;
					return true;
					break;
				
				case 30:
					*uParam2 = { -1159.037f, -2172.288f, 12.2243f };
					*uParam3 = 136f;
					return true;
					break;
				
				case 31:
					*uParam2 = { -1160.116f, -2171.246f, 12.234f };
					*uParam3 = 136f;
					return true;
					break;
			}
			break;
	}
	return false;
}

bool func_285(int iParam0, int iParam1, var uParam2, var uParam3, var uParam4)//Position - 0x1589C
{
	switch (iParam0)
	{
		case 57:
		case 58:
		case 59:
		case 60:
		case 61:
		case 62:
		case 63:
		case 64:
		case 65:
		case 66:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { -4.1915f, 9.9929f, -5.6471f };
					*uParam3 = 175.7734f;
					return true;
					break;
				
				case 1:
					*uParam2 = { -2.8057f, 9.4189f, -5.6471f };
					*uParam3 = 175.7734f;
					return true;
					break;
				
				case 2:
					*uParam2 = { -4.7656f, 8.6072f, -5.6471f };
					*uParam3 = 175.7734f;
					return true;
					break;
				
				case 3:
					*uParam2 = { -5.5773f, 10.5669f, -5.6471f };
					*uParam3 = 175.7734f;
					return true;
					break;
				
				case 4:
					*uParam2 = { -3.6175f, 11.3787f, -5.6471f };
					*uParam3 = 175.7734f;
					return true;
					break;
				
				case 5:
					*uParam2 = { -3.3798f, 8.0332f, -5.6471f };
					*uParam3 = 175.7734f;
					return true;
					break;
				
				case 6:
					*uParam2 = { -6.1514f, 9.1812f, -5.6471f };
					*uParam3 = 175.7734f;
					return true;
					break;
				
				case 7:
					*uParam2 = { -5.0033f, 11.9526f, -5.6471f };
					*uParam3 = 175.7734f;
					return true;
					break;
			}
			break;
	}
	return false;
}

void func_286(int iParam0, var uParam1)//Position - 0x15A32
{
	int iVar0;
	int iVar1;
	int iVar2;
	
	Global_2421621[player::player_id() /*358*/].f_312.f_3 = 0;
	if (func_91(player::player_id(), 1))
	{
		if (func_92(player::player_id()))
		{
			gameplay::set_bit(&(Global_1760739.f_2), 0);
		}
		else
		{
			gameplay::set_bit(&(Global_1760739.f_2), 1);
		}
		iVar0 = func_90(player::player_id());
		if (iVar0 != func_9() && iVar0 != player::player_id())
		{
			gameplay::set_bit(&(Global_2421621[player::player_id() /*358*/].f_312.f_3), iVar0);
		}
		iVar2 = 0;
		while (iVar2 < 32)
		{
			iVar1 = player::int_to_playerindex(iVar2);
			if ((iVar1 != func_9() && iVar1 != player::player_id()) && iVar1 != iVar0)
			{
				if (func_387(iVar1, 1, 1))
				{
					if (func_266(iVar1, iVar0, 1))
					{
						gameplay::set_bit(&(Global_2421621[player::player_id() /*358*/].f_312.f_3), iVar1);
					}
				}
			}
			iVar2++;
		}
	}
	else if (func_269(player::player_id(), func_264(iParam0)))
	{
		gameplay::set_bit(&(Global_1760739.f_2), 2);
	}
}

char* func_287(var uParam0, var uParam1, var uParam2)//Position - 0x15B38
{
	if (Global_1760739.f_592)
	{
		Global_1760739.f_592 = 0;
		return "MP_GARAGE_KICKe";
	}
	if (Global_1760739.f_2 == 0)
	{
		return "MP_GARAGE_KICKc";
	}
	if (gameplay::is_bit_set(Global_1760739.f_2, 1))
	{
		if (func_82(player::player_id(), 1))
		{
			if (func_94(player::player_id()))
			{
				return "MP_GARAGE_KICKf";
			}
			else
			{
				return "MP_GARAGE_KICKg";
			}
		}
		if (!func_91(player::player_id(), 0))
		{
			return "MP_GARAGE_KICKb";
		}
	}
	if (gameplay::is_bit_set(Global_1760739.f_2, 0) || gameplay::is_bit_set(Global_1760739.f_2, 2))
	{
		if (func_82(player::player_id(), 1))
		{
			if (func_94(player::player_id()))
			{
				return "MP_GARAGE_KICKf";
			}
			else
			{
				return "MP_GARAGE_KICKg";
			}
		}
		if (func_91(player::player_id(), 0))
		{
			return "MP_GARAGE_KICKd";
		}
	}
	return "";
}

int func_288(int iParam0, var uParam1)//Position - 0x15C10
{
	if (Global_1760739.f_2 == 0)
	{
		return true;
	}
	if (func_82(player::player_id(), 1))
	{
		return true;
	}
	if (gameplay::is_bit_set(Global_1760739.f_2, 1))
	{
		if (!func_91(player::player_id(), 0))
		{
			return true;
		}
	}
	if (gameplay::is_bit_set(Global_1760739.f_2, 0) || gameplay::is_bit_set(Global_1760739.f_2, 2))
	{
		if (func_91(player::player_id(), 0))
		{
			return true;
		}
	}
	return !func_316(player::player_id(), iParam0);
}

void func_289(int iParam0, var uParam1)//Position - 0x15C8F
{
	vector3 vVar0;
	vector3 vVar3;
	int iVar6;
	int iVar7;
	int iVar8;
	
	if (func_92(player::player_id()) && func_292(player::player_id(), iParam0))
	{
		func_319(iParam0, &vVar0);
		vVar0.z = 0f;
		iVar8 = 0;
		while (iVar8 < func_133())
		{
			iVar6 = func_132(player::player_id(), iVar8);
			if ((iVar6 != func_9() && iVar6 != player::player_id()) && func_387(iVar6, 1, 1))
			{
				vVar3 = { func_131(iVar6) };
				vVar3.z = 0f;
				if (system::vdist(vVar3, vVar0) <= IntToFloat(func_130(iParam0)))
				{
					iVar7++;
				}
			}
			iVar8++;
		}
		if (iVar7 == 0)
		{
			func_128(uParam1, 1, 0);
		}
		else
		{
			func_128(uParam1, 1, 1);
		}
		if (func_127(1, uParam1))
		{
			if (iVar7 > 0)
			{
				func_122(player::player_id(), iParam0);
			}
			Global_1760739.f_1 = -1;
			Global_1760739.f_708 = 1;
			Global_1760739.f_709 = iParam0;
			Global_1760739.f_710 = 0;
			Global_1760739.f_715 = 1;
		}
	}
	else
	{
		func_128(uParam1, 1, 0);
	}
}

void func_290(int iParam0, char* sParam1, var uParam2, var uParam3, var uParam4)//Position - 0x15D94
{
	StringCopy(sParam1, func_321(iParam0), 64);
	(*uParam2)[0] = "IEWHS_ENTR_ALONE";
	(*uParam3)[0] = 3;
	(*uParam2)[1] = "IEWHS_ENTR_ALL";
	(*uParam3)[1] = 4;
	*uParam4 = 2;
}

bool func_291(int iParam0, int iParam1)//Position - 0x15DC8
{
	if (func_91(iParam0, 0) && func_269(func_90(iParam0), func_264(iParam1)))
	{
		return true;
	}
	return false;
}

bool func_292(int iParam0, int iParam1)//Position - 0x15DF4
{
	if (func_92(iParam0) && func_269(iParam0, func_264(iParam1)))
	{
		return true;
	}
	return false;
}

char* func_293(int iParam0, var uParam1)//Position - 0x15E1B
{
	int iVar0;
	
	if (func_269(player::player_id(), func_264(iParam0)))
	{
		if ((ped::is_ped_in_any_vehicle(player::player_ped_id(), 0) && !func_314(player::player_id())) && !func_313(ped::get_vehicle_ped_is_in(player::player_ped_id(), 0)))
		{
			return "IE_WH_VEH_BLCK";
		}
		if (func_82(player::player_id(), 1))
		{
			if (func_94(player::player_id()))
			{
				if (func_294())
				{
					return "IE_WHS_HLP_SV2";
				}
				else
				{
					return "GARAGE_MC_BLOCK_P";
				}
			}
			else if (func_294())
			{
				return "IE_WHS_HLP_SV3";
			}
			else
			{
				return "GARAGE_MC_BLOCK_M";
			}
		}
		else if (func_91(player::player_id(), 0))
		{
			iVar0 = func_90(player::player_id());
			if (!func_269(iVar0, func_264(iParam0)))
			{
				if (func_145(func_81()))
				{
					if (func_294())
					{
						return "IE_WHS_HLP_SV1";
					}
					else
					{
						return "GARAGE_GOON_HLP1C";
					}
				}
				else if (func_294())
				{
					return "IE_WHS_HLP_SV4";
				}
				else
				{
					return "GARAGE_GOON_HLP1";
				}
			}
		}
	}
	else if ((ped::is_ped_in_any_vehicle(player::player_ped_id(), 0) && !func_314(player::player_id())) && !func_313(ped::get_vehicle_ped_is_in(player::player_ped_id(), 0)))
	{
		return "IE_WH_VEH_BLCK";
	}
	if (func_141(player::player_id(), 0))
	{
		if (func_140(player::player_id()) == 178)
		{
			if (!entity::is_entity_dead(player::player_ped_id(), 0) && !ped::is_ped_in_any_vehicle(player::player_ped_id(), 0))
			{
				return "IE_WH_MSSN_BLCK";
			}
		}
	}
	return "";
}

bool func_294()//Position - 0x15F8E
{
	int iVar0;
	int iVar1;
	int iVar2;
	
	iVar2 = 0;
	while (iVar2 < 8)
	{
		iVar1 = (iVar2 + func_305(11));
		func_304(iVar1, &iVar0, 0);
		if (iVar0 >= 0)
		{
			if (func_295(Global_1320588[iVar0 /*140*/].f_66, 1))
			{
				return true;
			}
		}
		iVar2++;
	}
	return false;
}

bool func_295(int iParam0, int iParam1)//Position - 0x15FDA
{
	int iVar0;
	struct<2> Var1;
	
	if (iParam0 == 0)
	{
		return false;
	}
	if (!streaming::is_model_a_vehicle(iParam0))
	{
		return false;
	}
	if ((((((((((((iParam0 == joaat("dodo") || iParam0 == joaat("dukes")) || iParam0 == joaat("dukes2")) || (iParam0 == joaat("dominator2") && !network::network_is_game_in_progress())) || (iParam0 == joaat("buffalo3") && !network::network_is_game_in_progress())) || (iParam0 == joaat("gauntlet2") && !network::network_is_game_in_progress())) || iParam0 == joaat("blimp2")) || iParam0 == joaat("stalion")) || (iParam0 == joaat("stalion2") && !network::network_is_game_in_progress())) || iParam0 == joaat("submersible2")) || iParam0 == joaat("marshall")) || iParam0 == joaat("blista2")) || iParam0 == joaat("blista3"))
	{
		if (!func_303())
		{
			return false;
		}
	}
	else
	{
		iVar0 = 0;
		while (iVar0 < dlc1::get_num_dlc_vehicles())
		{
			if (dlc1::get_dlc_vehicle_data(iVar0, &Var1))
			{
				if (iParam0 == Var1.f_1)
				{
					if (dlc1::_is_dlc_data_empty(Var1))
					{
						return false;
					}
				}
			}
			iVar0++;
		}
	}
	if (iParam0 == joaat("blimp"))
	{
		if ((((!func_302() && !func_301()) && !func_300()) && !func_299()) && !func_303())
		{
			return false;
		}
	}
	if ((iParam0 == joaat("hotknife") || iParam0 == joaat("carbonrs")) || iParam0 == joaat("khamelion"))
	{
		if ((gameplay::is_durango_version() || gameplay::is_pc_version()) || gameplay::is_orbis_version())
		{
		}
		else if (!func_300())
		{
			return false;
		}
	}
	if (iParam1)
	{
		if (!func_298(iParam0))
		{
			return false;
		}
	}
	if (!func_296(iParam0))
	{
		return false;
	}
	return true;
}

bool func_296(int iParam0)//Position - 0x161CA
{
	int iVar0;
	var uVar1;
	char cVar2[64];
	
	if (!func_297())
	{
		return true;
	}
	unk3::_0x897433D292B44130(&iVar0, &uVar1);
	if (iVar0 == 4)
	{
		return true;
	}
	switch (iParam0)
	{
		case joaat("dune4"):
			StringCopy(&cVar2, "VE_DUNE4_t0_v3", 64);
			break;
		
		case joaat("voltic2"):
			StringCopy(&cVar2, "VE_VOLTIC2_t0_v3", 64);
			break;
		
		case joaat("ruiner2"):
			StringCopy(&cVar2, "VE_RUINER2_t0_v3", 64);
			break;
		
		case joaat("phantom2"):
			StringCopy(&cVar2, "VE_PHANTOM2_t0_v3", 64);
			break;
		
		case joaat("technical2"):
			StringCopy(&cVar2, "VE_TECHNICAL2_t0_v3", 64);
			break;
		
		case joaat("boxville5"):
			StringCopy(&cVar2, "VE_BOXVILLE5_t0_v3", 64);
			break;
		
		case joaat("wastelander"):
			StringCopy(&cVar2, "VE_WASTELANDER_t0_v3", 64);
			break;
		
		case joaat("blazer5"):
			StringCopy(&cVar2, "VE_BLAZER5_t0_v3", 64);
			break;
		
		default:
			return true;
			break;
	}
	if (!mobile::_0xBD4D7EAF8A30F637(&cVar2))
	{
		return false;
	}
	return true;
}

bool func_297()//Position - 0x16296
{
	if (gameplay::is_pc_version())
	{
		return true;
	}
	return false;
}

int func_298(int iParam0)//Position - 0x162AA
{
	int iVar0;
	int iVar1;
	
	if (Global_2482045)
	{
		return 1;
	}
	iVar0 = 1;
	iVar1 = network::_get_posix_time();
	if (iParam0 == joaat("btype3"))
	{
		if ((!Global_262145.f_5431 && !Global_262145.f_11409) && iVar1 < Global_262145.f_11410)
		{
			iVar0 = 0;
		}
	}
	if (iParam0 == joaat("faction3"))
	{
		if (!Global_262145.f_12221 && iVar1 < Global_262145.f_12233)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("virgo3") || iParam0 == joaat("virgo2"))
	{
		if (!Global_262145.f_12217 && iVar1 < Global_262145.f_12229)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("sabregt2"))
	{
		if (!Global_262145.f_12218 && iVar1 < Global_262145.f_12230)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("tornado5"))
	{
		if (!Global_262145.f_12219 && iVar1 < Global_262145.f_12231)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("minivan2"))
	{
		if (!Global_262145.f_12220 && iVar1 < Global_262145.f_12232)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("slamvan3"))
	{
		if (!Global_262145.f_12222 && iVar1 < Global_262145.f_12234)
		{
			iVar0 = 0;
		}
	}
	if (iParam0 == joaat("prototipo"))
	{
		if (!Global_262145.f_12223 && iVar1 < Global_262145.f_12226)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("seven70"))
	{
		if (!Global_262145.f_12224 && iVar1 < Global_262145.f_12227)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("pfister811"))
	{
		if (!Global_262145.f_12225 && iVar1 < Global_262145.f_12228)
		{
			iVar0 = 0;
		}
	}
	if (iParam0 == joaat("bf400"))
	{
		if (!Global_262145.f_14848 && iVar1 < Global_262145.f_14813)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("brioso"))
	{
		if (!Global_262145.f_14843 && iVar1 < Global_262145.f_14808)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("cliffhanger"))
	{
		if (!Global_262145.f_14847 && iVar1 < Global_262145.f_14812)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("contender"))
	{
		if (!Global_262145.f_14846 && iVar1 < Global_262145.f_14811)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("le7b"))
	{
		if (!Global_262145.f_14840 && iVar1 < Global_262145.f_14805)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("omnis"))
	{
		if (!Global_262145.f_14841 && iVar1 < Global_262145.f_14806)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("trophytruck"))
	{
		if (!Global_262145.f_14844 && iVar1 < Global_262145.f_14809)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("trophytruck2"))
	{
		if (!Global_262145.f_14845 && iVar1 < Global_262145.f_14810)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("tropos"))
	{
		if (!Global_262145.f_14842 && iVar1 < Global_262145.f_14807)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("gargoyle"))
	{
		if (!Global_262145.f_14850 && iVar1 < Global_262145.f_14815)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("rallytruck"))
	{
		if (!Global_262145.f_14851 && iVar1 < Global_262145.f_14816)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("tampa2"))
	{
		if (!Global_262145.f_14839 && iVar1 < Global_262145.f_14804)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("tyrus"))
	{
		if (!Global_262145.f_14838 && iVar1 < Global_262145.f_14803)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("sheava"))
	{
		if (!Global_262145.f_14837 && iVar1 < Global_262145.f_14802)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("lynx"))
	{
		if (!Global_262145.f_14849 && iVar1 < Global_262145.f_14814)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("stalion2"))
	{
		if (!Global_262145.f_14852 && iVar1 < Global_262145.f_14817)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("gauntlet2"))
	{
		if (!Global_262145.f_14853 && iVar1 < Global_262145.f_14818)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("dominator2"))
	{
		if (!Global_262145.f_14854 && iVar1 < Global_262145.f_14819)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("buffalo3"))
	{
		if (!Global_262145.f_14855 && iVar1 < Global_262145.f_14820)
		{
			iVar0 = 0;
		}
	}
	if (iParam0 == joaat("defiler"))
	{
		if (!Global_262145.f_15000 && iVar1 < Global_262145.f_15022)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("nightblade"))
	{
		if (!Global_262145.f_15001 && iVar1 < Global_262145.f_15023)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("zombiea"))
	{
		if (!Global_262145.f_15002 && iVar1 < Global_262145.f_15024)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("esskey"))
	{
		if (!Global_262145.f_15003 && iVar1 < Global_262145.f_15025)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("avarus"))
	{
		if (!Global_262145.f_15004 && iVar1 < Global_262145.f_15026)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("zombieb"))
	{
		if (!Global_262145.f_15005 && iVar1 < Global_262145.f_15027)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("hakuchou2"))
	{
		if (!Global_262145.f_15007 && iVar1 < Global_262145.f_15028)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("vortex"))
	{
		if (!Global_262145.f_15008 && iVar1 < Global_262145.f_15029)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("shotaro"))
	{
		if (!Global_262145.f_15009 && iVar1 < Global_262145.f_15030)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("chimera"))
	{
		if (!Global_262145.f_15010 && iVar1 < Global_262145.f_15031)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("raptor"))
	{
		if (!Global_262145.f_15011 && iVar1 < Global_262145.f_15032)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("daemon2"))
	{
		if (!Global_262145.f_15012 && iVar1 < Global_262145.f_15033)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("blazer4"))
	{
		if (!Global_262145.f_15013 && iVar1 < Global_262145.f_15034)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("tornado6"))
	{
		if (!Global_262145.f_15019 && iVar1 < Global_262145.f_15041)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("youga2"))
	{
		if (!Global_262145.f_15016 && iVar1 < Global_262145.f_15037)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("wolfsbane"))
	{
		if (!Global_262145.f_15017 && iVar1 < Global_262145.f_15038)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("faggio3"))
	{
		if (!Global_262145.f_15018 && iVar1 < Global_262145.f_15039)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("faggio"))
	{
		if (!Global_262145.f_15006 && iVar1 < Global_262145.f_15040)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("bagger"))
	{
		if (!Global_262145.f_15020 && iVar1 < Global_262145.f_15042)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("sanctus"))
	{
		if (!Global_262145.f_15014 && iVar1 < Global_262145.f_15035)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("manchez"))
	{
		if (!Global_262145.f_15015 && iVar1 < Global_262145.f_15036)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("ratbike"))
	{
		if (!Global_262145.f_15021 && iVar1 < Global_262145.f_15043)
		{
			iVar0 = 0;
		}
	}
	if (iParam0 == joaat("voltic2"))
	{
		if (!Global_262145.f_16649 && iVar1 < Global_262145.f_16690)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("ruiner2"))
	{
		if (!Global_262145.f_16650 && iVar1 < Global_262145.f_16691)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("dune4"))
	{
		if (!Global_262145.f_16651 && iVar1 < Global_262145.f_16692)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("dune5"))
	{
		if (!Global_262145.f_16652 && iVar1 < Global_262145.f_16693)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("phantom2"))
	{
		if (!Global_262145.f_16653 && iVar1 < Global_262145.f_16694)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("technical2"))
	{
		if (!Global_262145.f_16654 && iVar1 < Global_262145.f_16695)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("boxville5"))
	{
		if (!Global_262145.f_16655 && iVar1 < Global_262145.f_16696)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("wastelander"))
	{
		if (!Global_262145.f_16656 && iVar1 < Global_262145.f_16697)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("blazer5"))
	{
		if (!Global_262145.f_16657 && iVar1 < Global_262145.f_16698)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("comet2"))
	{
		if (!Global_262145.f_16658 && iVar1 < Global_262145.f_16699)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("comet3"))
	{
		if (!Global_262145.f_16659 && iVar1 < Global_262145.f_16700)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("diablous"))
	{
		if (!Global_262145.f_16660 && iVar1 < Global_262145.f_16701)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("diablous2"))
	{
		if (!Global_262145.f_16661 && iVar1 < Global_262145.f_16702)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("elegy"))
	{
		if (!Global_262145.f_16662 && iVar1 < Global_262145.f_16703)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("elegy2"))
	{
		if (!Global_262145.f_16663 && iVar1 < Global_262145.f_16704)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("fcr"))
	{
		if (!Global_262145.f_16664 && iVar1 < Global_262145.f_16705)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("fcr2"))
	{
		if (!Global_262145.f_16665 && iVar1 < Global_262145.f_16706)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("italigtb"))
	{
		if (!Global_262145.f_16666 && iVar1 < Global_262145.f_16707)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("italigtb2"))
	{
		if (!Global_262145.f_16667 && iVar1 < Global_262145.f_16708)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("nero"))
	{
		if (!Global_262145.f_16668 && iVar1 < Global_262145.f_16709)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("nero2"))
	{
		if (!Global_262145.f_16669 && iVar1 < Global_262145.f_16710)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("penetrator"))
	{
		if (!Global_262145.f_16670 && iVar1 < Global_262145.f_16711)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("specter"))
	{
		if (!Global_262145.f_16671 && iVar1 < Global_262145.f_16712)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("specter2"))
	{
		if (!Global_262145.f_16672 && iVar1 < Global_262145.f_16713)
		{
			iVar0 = 0;
		}
	}
	else if (iParam0 == joaat("tempesta"))
	{
		if (!Global_262145.f_16673 && iVar1 < Global_262145.f_16714)
		{
			iVar0 = 0;
		}
	}
	return iVar0;
}

bool func_299()//Position - 0x16F48
{
	return false;
}

bool func_300()//Position - 0x16F51
{
	return true;
}

bool func_301()//Position - 0x16F5A
{
	return true;
}

bool func_302()//Position - 0x16F63
{
	if (dlc2::is_dlc_present(-1226939934))
	{
		return true;
	}
	return false;
}

bool func_303()//Position - 0x16F7C
{
	int iVar0;
	
	if (network::network_is_signed_in())
	{
		if (network::_network_are_ros_available())
		{
			if (network::_0x593570C289A77688())
			{
				stats::stat_get_int(joaat("sp_unlock_exclus_content"), &iVar0, -1);
				gameplay::set_bit(&iVar0, 2);
				gameplay::set_bit(&iVar0, 4);
				gameplay::set_bit(&iVar0, 6);
				gameplay::set_bit(&Global_25, 2);
				gameplay::set_bit(&Global_25, 4);
				gameplay::set_bit(&Global_25, 6);
				stats::stat_set_int(joaat("sp_unlock_exclus_content"), iVar0, 1);
				if (gameplay::_0x5AA3BEFA29F03AD4())
				{
					iVar0 = gameplay::get_profile_setting(866);
					gameplay::set_bit(&iVar0, 0);
					stats::_0xDAC073C7901F9E15(iVar0);
				}
				return true;
			}
		}
	}
	if (Global_139115 == 2)
	{
		return true;
	}
	else if (Global_139115 == 3)
	{
		return false;
	}
	if (gameplay::_0x5AA3BEFA29F03AD4())
	{
		if (gameplay::is_bit_set(gameplay::get_profile_setting(866), 0))
		{
			return true;
		}
	}
	return false;
}

void func_304(int iParam0, var uParam1, int iParam2)//Position - 0x17037
{
	if (Global_262145.f_8675)
	{
		*uParam1 = iParam0;
	}
	if (iParam0 >= 0)
	{
		*uParam1 = (Global_1756335[iParam0] - 1);
		if (iParam2)
		{
		}
	}
	else
	{
		*uParam1 = -1;
	}
}

int func_305(int iParam0)//Position - 0x1706D
{
	switch (iParam0)
	{
		case 8:
			return 88;
			break;
		
		case 9:
			return 108;
			break;
		
		case 10:
			return 128;
			break;
		
		case 11:
			return 148;
			break;
		
		case 6:
			return 65;
			break;
		
		case 7:
			return 75;
			break;
		
		case 5:
			return -1;
			break;
	}
	return (func_306(iParam0, -1) * iParam0);
}

int func_306(int iParam0, int iParam1)//Position - 0x170E7
{
	if (iParam0 == -1)
	{
		if (iParam1 >= 1)
		{
			if (func_309(iParam1, 0, 0))
			{
				return 20;
			}
			else if (func_308(iParam1))
			{
				return 0;
			}
			else if (func_307(iParam1, -1))
			{
				return 10;
			}
			else if (iParam1 == 115)
			{
				return 8;
			}
			else if (iParam1 <= 115 && iParam1 > 0)
			{
				if (Global_1049427[iParam1 /*1942*/].f_33 == 2)
				{
					return 3;
				}
				else if (Global_1049427[iParam1 /*1942*/].f_33 == 6)
				{
					return 8;
				}
				else if (Global_1049427[iParam1 /*1942*/].f_33 == 10)
				{
					return 13;
				}
			}
		}
	}
	switch (iParam0)
	{
		case 0:
		case 1:
		case 2:
		case 3:
		case 4:
		case 7:
			return 13;
			break;
		
		case 5:
			return 0;
			break;
		
		case 6:
			return 10;
			break;
		
		case 8:
		case 9:
		case 10:
			return 20;
			break;
		
		case 11:
			return 8;
			break;
	}
	return 0;
}

bool func_307(int iParam0, int iParam1)//Position - 0x17209
{
	if (iParam1 == -1)
	{
		switch (iParam0)
		{
			case 91:
			case 92:
			case 93:
			case 94:
			case 95:
			case 96:
			case 97:
			case 98:
			case 99:
			case 100:
			case 101:
			case 102:
				return true;
				break;
		}
	}
	else if (iParam1 == 91)
	{
		switch (iParam0)
		{
			case 91:
			case 92:
			case 93:
			case 94:
			case 95:
			case 96:
				return true;
				break;
		}
	}
	else if (iParam1 == 97)
	{
		switch (iParam0)
		{
			case 97:
			case 98:
			case 99:
			case 100:
			case 101:
			case 102:
				return true;
				break;
			}
	}
	return false;
}

bool func_308(int iParam0)//Position - 0x172E6
{
	switch (iParam0)
	{
		case 87:
		case 88:
		case 89:
		case 90:
			return true;
			break;
	}
	return false;
}

int func_309(int iParam0, int iParam1, int iParam2)//Position - 0x17315
{
	if (iParam2)
	{
		return func_310(player::player_id(), 0);
	}
	if (iParam1)
	{
		if (func_310(player::player_id(), 0))
		{
			return false;
		}
		switch (iParam0)
		{
			case 103:
			case 106:
			case 109:
			case 112:
			case 104:
			case 107:
			case 110:
			case 113:
			case 105:
			case 108:
			case 111:
			case 114:
				return true;
				break;
			}
	}
	switch (iParam0)
	{
		case 103:
		case 106:
		case 109:
		case 112:
		case 104:
		case 107:
		case 110:
		case 113:
		case 105:
		case 108:
		case 111:
		case 114:
			return true;
			break;
	}
	return false;
}

int func_310(int iParam0, int iParam1)//Position - 0x173F0
{
	if (Global_1589801 != func_9())
	{
		if (!func_312(Global_1589801))
		{
			return false;
		}
		if (iParam1)
		{
			if (player::player_id() != Global_1589801)
			{
				if (gameplay::is_bit_set(Global_2421621[Global_1589801 /*358*/].f_198, 24) || func_311(Global_1589801))
				{
					return true;
				}
			}
		}
	}
	return gameplay::is_bit_set(Global_2421621[iParam0 /*358*/].f_198, 24);
}

int func_311(var uParam0)//Position - 0x1745C
{
	return gameplay::is_bit_set(Global_2421621[uParam0 /*358*/].f_198, 9);
}

int func_312(int iParam0)//Position - 0x17475
{
	if (iParam0 != func_9())
	{
		return gameplay::is_bit_set(Global_1589933[iParam0 /*601*/].f_257.f_210, 2);
	}
	return false;
}

bool func_313(int iParam0)//Position - 0x174A0
{
	switch (entity::get_entity_model(iParam0))
	{
		case joaat("technical2"):
		case joaat("boxville5"):
		case joaat("wastelander"):
		case joaat("phantom2"):
		case joaat("voltic2"):
		case joaat("dune4"):
		case joaat("dune5"):
		case joaat("ruiner2"):
		case joaat("blazer5"):
			return true;
			break;
	}
	return false;
}

int func_314(int iParam0)//Position - 0x174F1
{
	int iVar0;
	
	iVar0 = func_315(iParam0);
	if (iVar0 != func_9())
	{
		return Global_1618089[iVar0 /*390*/].f_11.f_324 == 2;
	}
	return false;
}

var func_315(var uParam0)//Position - 0x1751E
{
	return Global_1618089[uParam0 /*390*/].f_11.f_168;
}

int func_316(int iParam0, int iParam1)//Position - 0x17533
{
	if (Global_262145.f_13357)
	{
		return 0;
	}
	if (func_82(iParam0, 1))
	{
		return 0;
	}
	if (func_91(iParam0, 1))
	{
		return func_269(func_90(iParam0), func_264(iParam1));
	}
	else if (func_269(iParam0, func_264(iParam1)))
	{
		return 1;
	}
	return 0;
}

bool func_317(var uParam0)//Position - 0x1758B
{
	int iVar0;
	
	if (Global_1573331)
	{
		return true;
	}
	if (network::network_is_activity_session())
	{
		return true;
	}
	if (func_141(player::player_id(), 0))
	{
		if (func_140(player::player_id()) == 178)
		{
			return true;
		}
	}
	if (!func_164(1))
	{
		return true;
	}
	iVar0 = false;
	if (func_148(iVar0, 5))
	{
		return true;
	}
	return false;
}

void func_318(var uParam0, int iParam1, int iParam2, int iParam3, var uParam4)//Position - 0x175E5
{
	ui::get_hud_colour(9, iParam1, iParam2, iParam3, uParam4);
}

void func_319(int iParam0, var uParam1)//Position - 0x175FB
{
	switch (iParam0)
	{
		case 57:
			*uParam1 = { -631.9747f, -1779.181f, 22.9802f };
			break;
		
		case 58:
			*uParam1 = { 1007.51f, -1855.032f, 30.0398f };
			break;
		
		case 59:
			*uParam1 = { -72.3389f, -1820.984f, 25.942f };
			break;
		
		case 60:
			*uParam1 = { 36.8712f, -1284.028f, 28.2924f };
			break;
		
		case 61:
			*uParam1 = { 1213.233f, -1251.249f, 35.3258f };
			break;
		
		case 62:
			*uParam1 = { 808.8002f, -2222.5f, 28.6239f };
			break;
		
		case 63:
			*uParam1 = { 1754.546f, -1649.167f, 111.6556f };
			break;
		
		case 64:
			*uParam1 = { 144.3155f, -3005.919f, 6.0309f };
			break;
		
		case 65:
			*uParam1 = { -521.2753f, -2196.688f, 5.394f };
			break;
		
		case 66:
			*uParam1 = { -1161.292f, -2163.7f, 12.3808f };
			break;
	}
}

void func_320(int iParam0, var uParam1)//Position - 0x17722
{
	switch (iParam0)
	{
		case 57:
		case 58:
		case 59:
		case 60:
		case 61:
		case 62:
		case 63:
		case 64:
		case 65:
		case 66:
			*uParam1 = { 908.7148f, -3039.493f, -50f };
			uParam1->f_3 = { 1032.384f, -2972.831f, -28.15f };
			break;
	}
}

char* func_321(int iParam0)//Position - 0x17798
{
	switch (iParam0)
	{
		case 57:
			return "MP_WAREHOUSE_1";
		
		case 58:
			return "MP_WAREHOUSE_2";
		
		case 59:
			return "MP_WAREHOUSE_3";
		
		case 60:
			return "MP_WAREHOUSE_4";
		
		case 61:
			return "MP_WAREHOUSE_5";
		
		case 62:
			return "MP_WAREHOUSE_6";
		
		case 63:
			return "MP_WAREHOUSE_7";
		
		case 64:
			return "MP_WAREHOUSE_8";
		
		case 65:
			return "MP_WAREHOUSE_9";
		
		case 66:
			return "MP_WAREHOUSE_10";
		
		default:
	}
	return "INVALID_IE_GARAGE_NAME";
}

void func_322(int iParam0, var uParam1)//Position - 0x1782D
{
	switch (iParam0)
	{
		case 57:
			func_327(uParam1);
			uParam1->f_22.f_3 = "anim@apt_trans@garage";
			uParam1->f_22.f_4 = "gar_open_1_left";
			uParam1->f_22.f_14 = { -631.693f, -1778.812f, 22.98f };
			uParam1->f_22.f_17 = { 0f, 0f, 36.36f };
			uParam1->f_22.f_20 = 0f;
			uParam1->f_22.f_21 = 0.45f;
			uParam1->f_22.f_40 = { -634.1538f, -1796.448f, 34.5912f };
			uParam1->f_22.f_43 = { -22.1262f, 0f, 5.0337f };
			uParam1->f_22.f_46 = 50f;
			func_325(&(uParam1->f_22));
			break;
		
		case 58:
			func_324(uParam1);
			uParam1->f_22.f_3 = "anim@apt_trans@garage";
			uParam1->f_22.f_4 = "gar_open_1_left";
			uParam1->f_22.f_14 = { 1007.344f, -1854.104f, 30.055f };
			uParam1->f_22.f_17 = { 0f, 0f, 84.24f };
			uParam1->f_22.f_20 = 0f;
			uParam1->f_22.f_21 = 0.45f;
			uParam1->f_22.f_40 = { 1012.218f, -1868.811f, 40.1672f };
			uParam1->f_22.f_43 = { -16.8435f, 0f, 30.4879f };
			uParam1->f_22.f_46 = 50f;
			func_325(&(uParam1->f_22));
			break;
		
		case 59:
			func_327(uParam1);
			uParam1->f_22.f_3 = "anim@apt_trans@garage";
			uParam1->f_22.f_4 = "gar_open_1_left";
			uParam1->f_22.f_14 = { -72.69f, -1820.721f, 25.96f };
			uParam1->f_22.f_17 = { 0f, 0f, 138.96f };
			uParam1->f_22.f_20 = 0f;
			uParam1->f_22.f_21 = 0.45f;
			uParam1->f_22.f_40 = { -50.4334f, -1820.483f, 40.6842f };
			uParam1->f_22.f_43 = { -21.9918f, 0f, 89.4914f };
			uParam1->f_22.f_46 = 50f;
			func_325(&(uParam1->f_22));
			break;
		
		case 60:
			func_327(uParam1);
			uParam1->f_22.f_3 = "anim@apt_trans@garage";
			uParam1->f_22.f_4 = "gar_open_1_left";
			uParam1->f_22.f_14 = { 36.29f, -1283.851f, 28.3f };
			uParam1->f_22.f_17 = { 0f, 0f, -180f };
			uParam1->f_22.f_20 = 0f;
			uParam1->f_22.f_21 = 0.45f;
			uParam1->f_22.f_40 = { 51.6316f, -1261.693f, 47.7187f };
			uParam1->f_22.f_43 = { -20.6347f, 0f, 135.6605f };
			uParam1->f_22.f_46 = 50f;
			func_325(&(uParam1->f_22));
			break;
		
		case 61:
			func_324(uParam1);
			uParam1->f_22.f_3 = "anim@apt_trans@garage";
			uParam1->f_22.f_4 = "gar_open_1_left";
			uParam1->f_22.f_14 = { 1213.935f, -1251.067f, 35.34f };
			uParam1->f_22.f_17 = { 0f, 0f, -4.68f };
			uParam1->f_22.f_20 = 0.025f;
			uParam1->f_22.f_21 = 0.45f;
			uParam1->f_22.f_40 = { 1203.779f, -1268.013f, 45.1178f };
			uParam1->f_22.f_43 = { -26.6439f, 0f, -50.7787f };
			uParam1->f_22.f_46 = 50f;
			func_325(&(uParam1->f_22));
			break;
		
		case 62:
			func_323(uParam1);
			uParam1->f_22.f_3 = "anim@apt_trans@hinge_l";
			uParam1->f_22.f_4 = "ext_player";
			uParam1->f_22.f_6 = { 808.9337f, -2226.635f, 30.5702f };
			uParam1->f_22.f_9 = { -8.7836f, 0f, -2.5026f };
			uParam1->f_22.f_12 = 50f;
			uParam1->f_22.f_14 = { 809.47f, -2222.665f, 28.602f };
			uParam1->f_22.f_17 = { 0f, 0f, -95.04f };
			uParam1->f_22.f_20 = 0.2f;
			uParam1->f_22.f_21 = 0.46f;
			uParam1->f_22.f_40 = { 795.856f, -2239.975f, 43.3438f };
			uParam1->f_22.f_43 = { -25.9078f, 0f, -21.35f };
			uParam1->f_22.f_46 = 50f;
			break;
		
		case 63:
			func_323(uParam1);
			uParam1->f_22.f_3 = "anim@apt_trans@hinge_l";
			uParam1->f_22.f_4 = "ext_player";
			uParam1->f_22.f_6 = { 1755.083f, -1652.772f, 113.9896f };
			uParam1->f_22.f_9 = { -2.252f, 0f, 14.1658f };
			uParam1->f_22.f_12 = 50f;
			uParam1->f_22.f_14 = { 1753.699f, -1649.109f, 111.65f };
			uParam1->f_22.f_17 = { 0f, 0f, 98.28f };
			uParam1->f_22.f_20 = 0.2f;
			uParam1->f_22.f_21 = 0.46f;
			uParam1->f_22.f_40 = { 1770.462f, -1654.995f, 121.1074f };
			uParam1->f_22.f_43 = { -27.1992f, 0f, 60.7515f };
			uParam1->f_22.f_46 = 50f;
			break;
		
		case 64:
			func_327(uParam1);
			uParam1->f_22.f_3 = "anim@apt_trans@garage";
			uParam1->f_22.f_4 = "gar_open_1_left";
			uParam1->f_22.f_14 = { 144.163f, -3006.28f, 6.025f };
			uParam1->f_22.f_17 = { 0f, 0f, -90f };
			uParam1->f_22.f_20 = 0f;
			uParam1->f_22.f_21 = 0.45f;
			uParam1->f_22.f_40 = { 133.3796f, -2997.328f, 16.4858f };
			uParam1->f_22.f_43 = { -23.3212f, 0f, -128.0707f };
			uParam1->f_22.f_46 = 50f;
			func_325(&(uParam1->f_22));
			break;
		
		case 65:
			func_323(uParam1);
			uParam1->f_22.f_3 = "anim@apt_trans@hinge_l";
			uParam1->f_22.f_4 = "ext_player";
			uParam1->f_22.f_6 = { -514.9109f, -2200.778f, 8.504f };
			uParam1->f_22.f_9 = { -19.0944f, 0f, 59.8399f };
			uParam1->f_22.f_12 = 50f;
			uParam1->f_22.f_14 = { -522.064f, -2197.247f, 5.396f };
			uParam1->f_22.f_17 = { 0f, 0f, 138.96f };
			uParam1->f_22.f_20 = 0.2f;
			uParam1->f_22.f_21 = 0.46f;
			uParam1->f_22.f_40 = { -518.5544f, -2180.63f, 18.0885f };
			uParam1->f_22.f_43 = { -26.4987f, 0f, -170.4673f };
			uParam1->f_22.f_46 = 50f;
			break;
		
		case 66:
			func_323(uParam1);
			uParam1->f_22.f_3 = "anim@apt_trans@hinge_l";
			uParam1->f_22.f_4 = "ext_player";
			uParam1->f_22.f_6 = { -1157.207f, -2167.523f, 14.6173f };
			uParam1->f_22.f_9 = { 4.5508f, -0.0443f, 47.9725f };
			uParam1->f_22.f_12 = 50f;
			uParam1->f_22.f_14 = { -1160.481f, -2162.972f, 12.411f };
			uParam1->f_22.f_17 = { 0f, 0f, -23.04f };
			uParam1->f_22.f_20 = 0.2f;
			uParam1->f_22.f_21 = 0.46f;
			uParam1->f_22.f_40 = { -1154.279f, -2196.895f, 24.1398f };
			uParam1->f_22.f_43 = { -17.9349f, 0f, -12.0432f };
			uParam1->f_22.f_46 = 50f;
			break;
	}
}

void func_323(var uParam0)//Position - 0x17EF8
{
	uParam0->f_21 = "AM_MP_IE_WAREHOUSE";
	uParam0->f_89.f_1 = { -0.9f, 12.75f, -5.64f };
	uParam0->f_89.f_4 = { -7.36f, 12.75f, -3.18f };
	uParam0->f_89.f_7 = 1f;
	uParam0->f_89 = 0f;
	uParam0->f_22.f_50[0] = "GENERIC_DOOR_PUSH";
	uParam0->f_22.f_50[1] = "GENERIC_DOOR_LIMIT";
	uParam0->f_22.f_53[0] = 0.295f;
	uParam0->f_22.f_53[1] = 0.35f;
	uParam0->f_22.f_56 = "GTAO_SCRIPT_DOORS_SOUNDS";
	uParam0->f_22.f_66 = "GTAO_Script_Doors_Faded_Screen_Sounds";
	uParam0->f_22.f_65 = "Garage_Door_Close";
	uParam0->f_22.f_64 = "GTAO_Script_Doors_Faded_Screen_Sounds";
	uParam0->f_22.f_63 = "Garage_Door_Open";
}

void func_324(var uParam0)//Position - 0x17FAA
{
	uParam0->f_21 = "AM_MP_IE_WAREHOUSE";
	uParam0->f_89.f_1 = { -0.9f, 12.75f, -5.64f };
	uParam0->f_89.f_4 = { -7.36f, 12.75f, -3.18f };
	uParam0->f_89.f_7 = 1f;
	uParam0->f_89 = 0f;
	uParam0->f_22.f_49 = 1500;
	uParam0->f_22.f_58 = "GTAO_Script_Doors_Faded_Screen_Sounds";
	uParam0->f_22.f_57 = "METAL_SHUTTER_RAISE_LOOP";
	uParam0->f_22.f_66 = "GTAO_Script_Doors_Faded_Screen_Sounds";
	uParam0->f_22.f_65 = "Garage_Door_Close";
	uParam0->f_22.f_64 = "GTAO_Script_Doors_Faded_Screen_Sounds";
	uParam0->f_22.f_63 = "Garage_Door_Open";
}

void func_325(var uParam0)//Position - 0x1803B
{
	vector3 vVar0;
	vector3 vVar3;
	vector3 vVar6;
	vector3 vVar9;
	float fVar12;
	vector3 vVar13;
	float fVar16;
	
	vVar0 = { func_326(231.848f, -1006.707f, -99.992f, 63.36f) };
	vVar3 = { 0f, 0f, -63.36f };
	vVar6 = { func_326(233.2975f, -1005.81f, -98.5457f, 63.36f) };
	vVar9 = { -26.8902f, -0.038f, 129.5137f };
	fVar12 = 30.3982f;
	vVar13 = { vVar6 - vVar0 };
	fVar16 = (vVar9.y - vVar3.y);
	uParam0->f_6 = { func_326(func_326(uParam0->f_14, (-1f * uParam0->f_17.f_2)) + vVar13, uParam0->f_17.f_2) };
	uParam0->f_9 = { vVar9 };
	uParam0->f_9.f_2 = (uParam0->f_17.f_2 + fVar16);
	uParam0->f_12 = fVar12;
}

Vector3 func_326(vector3 vParam0, float fParam3)//Position - 0x180FE
{
	vector3 vVar0;
	float fVar3;
	float fVar4;
	
	fVar3 = system::sin(fParam3);
	fVar4 = system::cos(fParam3);
	vVar0.x = ((vParam0.x * fVar4) - (vParam0.y * fVar3));
	vVar0.y = ((vParam0.x * fVar3) + (vParam0.y * fVar4));
	vVar0.z = vParam0.y;
	return vVar0;
}

void func_327(var uParam0)//Position - 0x18142
{
	uParam0->f_21 = "AM_MP_IE_WAREHOUSE";
	uParam0->f_89.f_1 = { -0.9f, 12.75f, -5.64f };
	uParam0->f_89.f_4 = { -7.36f, 12.75f, -3.18f };
	uParam0->f_89.f_7 = 1f;
	uParam0->f_89 = 0f;
	uParam0->f_22.f_58 = "GTAO_Script_Doors_Faded_Screen_Sounds";
	uParam0->f_22.f_57 = "Garage_Door_Close";
	uParam0->f_22.f_66 = "GTAO_Script_Doors_Faded_Screen_Sounds";
	uParam0->f_22.f_65 = "Garage_Door_Close";
	uParam0->f_22.f_64 = "GTAO_Script_Doors_Faded_Screen_Sounds";
	uParam0->f_22.f_63 = "Garage_Door_Open";
}

void func_328(int iParam0, char* sParam1, var uParam2, var uParam3)//Position - 0x181C8
{
	switch (iParam0)
	{
		case 57:
		case 58:
		case 59:
		case 60:
		case 61:
		case 62:
		case 63:
		case 64:
		case 65:
		case 66:
			*uParam2 = { 974.9542f, -3000.091f, -35f };
			*uParam3 = 0f;
			StringCopy(sParam1, "imp_impexp_intwaremed", 64);
			break;
	}
}

bool func_329(var uParam0)//Position - 0x18235
{
	return true;
}

void func_330(var uParam0, int iParam1)//Position - 0x1823E
{
	switch (iParam1)
	{
		case 0:
			*uParam0 = 125702/*func_383*/;
			break;
		
		case 1:
			uParam0->f_1 = 125559/*func_382*/;
			break;
		
		case 2:
			uParam0->f_2 = 120450/*func_376*/;
			break;
		
		case 3:
			uParam0->f_3 = 120063/*func_374*/;
			break;
		
		case 4:
			uParam0->f_4 = 119893/*func_373*/;
			break;
		
		case 5:
			uParam0->f_5 = 119262/*func_372*/;
			break;
		
		case 6:
			uParam0->f_6 = 119240/*func_371*/;
			break;
		
		case 7:
			uParam0->f_7 = 119016/*func_368*/;
			break;
		
		case 8:
			uParam0->f_8 = 118928/*func_367*/;
			break;
		
		case 9:
			uParam0->f_9 = 118779/*func_366*/;
			break;
		
		case 10:
			uParam0->f_10 = 118770/*func_365*/;
			break;
		
		case 11:
			uParam0->f_11 = 118761/*func_364*/;
			break;
		
		case 12:
			uParam0->f_12 = 118753/*func_363*/;
			break;
		
		case 13:
			uParam0->f_13 = 118745/*func_362*/;
			break;
		
		case 14:
			uParam0->f_14 = 118618/*func_361*/;
			break;
		
		case 15:
			uParam0->f_15 = 118376/*func_360*/;
			break;
		
		case 16:
			uParam0->f_16 = 118143/*func_359*/;
			break;
		
		case 17:
			uParam0->f_17 = 115990/*func_357*/;
			break;
		
		case 18:
			uParam0->f_18 = 101536/*func_356*/;
			break;
		
		case 19:
			uParam0->f_19 = 101527/*func_355*/;
			break;
		
		case 20:
			uParam0->f_20 = 101518/*func_354*/;
			break;
		
		case 21:
			uParam0->f_21 = 101470/*func_353*/;
			break;
		
		case 22:
			uParam0->f_22 = 101434/*func_352*/;
			break;
		
		case 23:
			uParam0->f_23 = 101305/*func_351*/;
			break;
		
		case 24:
			uParam0->f_24 = 101296/*func_350*/;
			break;
		
		case 25:
			uParam0->f_25 = 101285/*func_349*/;
			break;
		
		case 26:
			uParam0->f_26 = 101265/*func_348*/;
			break;
		
		case 27:
			uParam0->f_27 = 100645/*func_344*/;
			break;
		
		case 28:
			uParam0->f_28 = 100578/*func_343*/;
			break;
		
		case 29:
			uParam0->f_29 = 100564/*func_342*/;
			break;
		
		case 30:
			uParam0->f_30 = 100011/*func_340*/;
			break;
		
		case 31:
			uParam0->f_31 = 99780/*func_338*/;
			break;
		
		case 32:
			uParam0->f_32 = 99728/*func_337*/;
			break;
		
		case 33:
			uParam0->f_33 = 99711/*func_336*/;
			break;
		
		case 34:
			uParam0->f_34 = 99702/*func_335*/;
			break;
		
		case 35:
			uParam0->f_35 = 99693/*func_334*/;
			break;
		
		case 36:
			uParam0->f_36 = 99576/*func_333*/;
			break;
		
		case 37:
			uParam0->f_37 = 99567/*func_332*/;
			break;
		
		case 38:
			uParam0->f_38 = 99555/*func_331*/;
			break;
	}
}

void func_331(var uParam0, var uParam1, var uParam2, var uParam3)//Position - 0x184E3
{
	*uParam1 = 0;
}

bool func_332(var uParam0, var uParam1, var uParam2, var uParam3, var uParam4, var uParam5)//Position - 0x184EF
{
	return false;
}

void func_333(int iParam0, var uParam1, var uParam2, var uParam3)//Position - 0x184F8
{
	if (iParam0 == 3)
	{
		*uParam2 = { 238.6076f, -1980.373f, 19.7774f };
		*uParam3 = { 262.0809f, -1954.533f, 28.2874f };
		*uParam1 = 1;
		return;
	}
	else if (iParam0 == 4)
	{
		*uParam2 = { -416.9828f, 175.1209f, 78.2398f };
		*uParam3 = { -404.4813f, 188.327f, 85.6049f };
		*uParam1 = 1;
		return;
	}
	*uParam1 = 0;
}

bool func_334(var uParam0)//Position - 0x1856D
{
	return true;
}

bool func_335(var uParam0)//Position - 0x18576
{
	return true;
}

void func_336(var uParam0, var uParam1)//Position - 0x1857F
{
	gameplay::clear_bit(&(uParam0->f_103), 1);
}

void func_337(var uParam0, var uParam1)//Position - 0x18590
{
	if (!gameplay::is_bit_set(uParam0->f_103, 1))
	{
		if (player::get_player_wanted_level(player::player_id()) > 0)
		{
			player::set_player_wanted_level(player::player_id(), 0, 0);
		}
		gameplay::set_bit(&(uParam0->f_103), 1);
	}
}

void func_338(var uParam0, int iParam1)//Position - 0x185C4
{
	if (iParam1 == 20)
	{
	}
	func_339(uParam0, iParam1);
}

void func_339(var uParam0, int iParam1)//Position - 0x185DB
{
	if (gameplay::is_bit_set(uParam0->f_103, 3))
	{
		if (iParam1 == 18)
		{
			entity::remove_model_hide(996.4036f, -2481.757f, 28.8007f, 4f, joaat("prop_facgate_04_l"), false);
			entity::remove_model_hide(985.8288f, -2480.68f, 28.8007f, 4f, joaat("prop_facgate_04_r"), false);
			entity::remove_model_hide(996.5616f, -2481.773f, 28.8807f, 2f, joaat("prop_facgate_03post"), false);
			entity::remove_model_hide(985.6758f, -2480.667f, 28.8807f, 2f, joaat("prop_facgate_03post"), false);
			gameplay::clear_bit(&(uParam0->f_103), 3);
		}
		if (iParam1 == 12)
		{
			entity::remove_model_hide(-550.8629f, -1772.796f, 22.3438f, 4f, -1391539216, false);
			entity::remove_model_hide(-542.201f, -1777.798f, 22.1771f, 4f, 406528547, false);
			gameplay::clear_bit(&(uParam0->f_103), 3);
		}
	}
}

void func_340(var uParam0, int iParam1, var uParam2, var uParam3)//Position - 0x186AB
{
	vector3 vVar0;
	int iVar3;
	
	if (iParam1 == 20)
	{
		vVar0 = { 550.9767f, -1896.741f, 24.1463f };
		if (gameplay::is_bit_set(uParam0->f_103, 2))
		{
			if (system::vdist(func_131(player::player_id()), vVar0) > 70f)
			{
				gameplay::clear_bit(&(uParam0->f_103), 2);
			}
		}
		else if (system::vdist(func_131(player::player_id()), vVar0) <= 70f)
		{
			if (!object::_0x589F80B325CC82C5(vVar0, joaat("prop_facgate_01"), &iVar3))
			{
				iVar3 = gameplay::get_hash_key("WHOUSE_DOOR_RANCHO_2A");
				if (!object::_does_door_exist(iVar3))
				{
					object::add_door_to_system(iVar3, joaat("prop_facgate_01"), vVar0, 0, 0, 0);
				}
			}
			object::_set_door_ajar_angle(iVar3, 1f, 0, 0);
			object::_set_door_acceleration_limit(iVar3, 0, 0, 0);
			vVar0 = { 539.9537f, -1901.956f, 24.2126f };
			if (!object::_0x589F80B325CC82C5(vVar0, joaat("prop_facgate_01b"), &iVar3))
			{
				iVar3 = gameplay::get_hash_key("WHOUSE_DOOR_RANCHO_2B");
				if (!object::_does_door_exist(iVar3))
				{
					object::add_door_to_system(iVar3, joaat("prop_facgate_01b"), vVar0, 0, 0, 0);
				}
			}
			object::_set_door_ajar_angle(iVar3, -1f, 0, 0);
			object::_set_door_acceleration_limit(iVar3, 0, 0, 0);
			gameplay::set_bit(&(uParam0->f_103), 2);
		}
	}
	if (!func_341())
	{
		if (iParam1 == 18 && !gameplay::is_bit_set(uParam0->f_103, 3))
		{
			entity::create_model_hide(996.4036f, -2481.757f, 28.8007f, 4f, joaat("prop_facgate_04_l"), 0);
			entity::create_model_hide(985.8288f, -2480.68f, 28.8007f, 4f, joaat("prop_facgate_04_r"), 0);
			entity::create_model_hide(996.5616f, -2481.773f, 28.8807f, 2f, joaat("prop_facgate_03post"), 0);
			entity::create_model_hide(985.6758f, -2480.667f, 28.8807f, 2f, joaat("prop_facgate_03post"), 0);
			gameplay::set_bit(&(uParam0->f_103), 3);
		}
		if (iParam1 == 12 && !gameplay::is_bit_set(uParam0->f_103, 3))
		{
			entity::create_model_hide(-550.8629f, -1772.796f, 22.3438f, 4f, -1391539216, 0);
			entity::create_model_hide(-542.201f, -1777.798f, 22.1771f, 4f, 406528547, 0);
			gameplay::set_bit(&(uParam0->f_103), 3);
		}
	}
	else if (gameplay::is_bit_set(uParam0->f_103, 3))
	{
		func_339(uParam0, iParam1);
	}
}

int func_341()//Position - 0x188C4
{
	return Global_1760739.f_1 != -1;
}

Vector3 func_342(int iParam0)//Position - 0x188D4
{
	return func_348(iParam0);
}

int func_343(var uParam0)//Position - 0x188E2
{
	int iVar0;
	
	if (func_226(0))
	{
		return func_85(func_86(player::player_id()));
	}
	else if (func_83(player::player_id(), 0, 0))
	{
		iVar0 = func_81();
		return func_85(func_86(iVar0));
	}
	return 4;
}

void func_344(int iParam0, var uParam1, var uParam2, var uParam3)//Position - 0x18925
{
	int iVar0;
	int iVar1;
	struct<16> Var2;
	
	iVar0 = func_347(iParam0);
	iVar1 = false;
	if (func_91(player::player_id(), 1))
	{
		if (*uParam2 != 1)
		{
			iVar1 = true;
		}
		Var2 = { func_270(player::player_id()) };
		if (!iVar1)
		{
			if (!gameplay::is_string_null_or_empty(&Var2) && gameplay::get_hash_key(&Var2) != *uParam3)
			{
				iVar1 = true;
			}
		}
		if (iVar1)
		{
			ui::begin_text_command_set_blip_name("MP_WHOUSE_BLP2");
			ui::add_text_component_substring_player_name(&Var2);
			ui::end_text_command_set_blip_name(*uParam1);
			*uParam3 = gameplay::get_hash_key(&Var2);
			*uParam2 = 1;
			return;
		}
	}
	else
	{
		if (*uParam2 != 2)
		{
			iVar1 = true;
		}
		if (iVar1)
		{
			if (func_345(player::player_id(), iVar0))
			{
				ui::set_blip_name_from_text_file(*uParam1, "MP_WHOUSE_BLP0");
				*uParam2 = 2;
				return;
			}
		}
	}
	if (*uParam2 == 0)
	{
		iVar1 = true;
	}
	if (iVar1)
	{
		ui::set_blip_name_from_text_file(*uParam1, "MP_WHOUSE_BLP1");
		*uParam2 = 3;
	}
}

bool func_345(int iParam0, int iParam1)//Position - 0x189F6
{
	int iVar0;
	
	if (func_346(iParam1))
	{
		iVar0 = 0;
		while (iVar0 <= 4)
		{
			if (Global_1589933[iParam0 /*601*/].f_257.f_80[iVar0 /*3*/] == iParam1)
			{
				return true;
			}
			iVar0++;
		}
	}
	return false;
}

bool func_346(int iParam0)//Position - 0x18A35
{
	if (iParam0 < 1 || iParam0 > 22)
	{
		return false;
	}
	return true;
}

int func_347(int iParam0)//Position - 0x18A54
{
	switch (iParam0)
	{
		case 0:
			return 1;
			break;
		
		case 1:
			return 2;
			break;
		
		case 2:
			return 3;
			break;
		
		case 3:
			return 4;
			break;
		
		case 4:
			return 5;
			break;
		
		case 5:
			return 6;
			break;
		
		case 6:
			return 7;
			break;
		
		case 7:
			return 8;
			break;
		
		case 8:
			return 9;
			break;
		
		case 9:
			return 10;
			break;
		
		case 10:
			return 11;
			break;
		
		case 11:
			return 12;
			break;
		
		case 12:
			return 13;
			break;
		
		case 13:
			return 14;
			break;
		
		case 14:
			return 15;
			break;
		
		case 15:
			return 16;
			break;
		
		case 16:
			return 17;
			break;
		
		case 17:
			return 18;
			break;
		
		case 18:
			return 19;
			break;
		
		case 19:
			return 20;
			break;
		
		case 20:
			return 21;
			break;
		
		case 21:
			return 22;
			break;
	}
	return 0;
}

Vector3 func_348(int iParam0)//Position - 0x18B91
{
	vector3 vVar0;
	
	func_372(iParam0, &vVar0);
	return vVar0;
}

int func_349(var uParam0)//Position - 0x18BA5
{
	return 473;
}

bool func_350(var uParam0)//Position - 0x18BB0
{
	return true;
}

bool func_351(int iParam0)//Position - 0x18BB9
{
	int iVar0;
	
	if (func_101(player::player_id(), 1))
	{
		return false;
	}
	if (func_82(player::player_id(), 1))
	{
		return false;
	}
	iVar0 = func_347(iParam0);
	if (func_91(player::player_id(), 1))
	{
		if (func_92(player::player_id()))
		{
			if (func_345(player::player_id(), iVar0))
			{
				return true;
			}
		}
		else if (func_345(func_81(), iVar0))
		{
			return true;
		}
	}
	else if (func_345(player::player_id(), iVar0))
	{
		return true;
	}
	return false;
}

int func_352(var uParam0)//Position - 0x18C3A
{
	return (gameplay::is_bit_set(Global_1760739.f_2, 2) || gameplay::is_bit_set(Global_1760739.f_2, 0));
}

void func_353(var uParam0, char* sParam1, var uParam2, var uParam3)//Position - 0x18C5E
{
	if (*uParam2 != 3)
	{
		return;
	}
	StringCopy(sParam1, "MP_WHOUSE_EXITT", 64);
	*uParam3 = 2;
	(*uParam2)[0] = "MP_WHOUSE_EXITa";
	(*uParam2)[1] = "MP_WHOUSE_EXITb";
}

int func_354(var uParam0)//Position - 0x18C8E
{
	return -1;
}

int func_355(var uParam0)//Position - 0x18C97
{
	return -1;
}

bool func_356(int iParam0, int iParam1, var uParam2, var uParam3, var uParam4)//Position - 0x18CA0
{
	switch (iParam0)
	{
		case 0:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { 53.5655f, -2569.264f, 5.0046f };
					*uParam3 = 88.92f;
					return true;
					break;
				
				case 1:
					*uParam2 = { 53.3032f, -2566.764f, 5.0046f };
					*uParam3 = 88.92f;
					return true;
					break;
				
				case 2:
					*uParam2 = { 53.2278f, -2570.463f, 5.0046f };
					*uParam3 = 88.92f;
					return true;
					break;
				
				case 3:
					*uParam2 = { 53.3409f, -2564.764f, 5.0046f };
					*uParam3 = 88.92f;
					return true;
					break;
				
				case 4:
					*uParam2 = { 51.2658f, -2568.726f, 5.0046f };
					*uParam3 = 88.92f;
					return true;
					break;
				
				case 5:
					*uParam2 = { 51.3035f, -2566.726f, 5.0046f };
					*uParam3 = 88.92f;
					return true;
					break;
				
				case 6:
					*uParam2 = { 51.8281f, -2569.926f, 5.0046f };
					*uParam3 = 88.92f;
					return true;
					break;
				
				case 7:
					*uParam2 = { 51.3412f, -2564.727f, 5.0046f };
					*uParam3 = 88.92f;
					return true;
					break;
				
				case 8:
					*uParam2 = { 49.2662f, -2568.688f, 5.0046f };
					*uParam3 = 88.92f;
					return true;
					break;
				
				case 9:
					*uParam2 = { 49.3039f, -2566.689f, 5.0046f };
					*uParam3 = 88.92f;
					return true;
					break;
				
				case 10:
					*uParam2 = { 54.6285f, -2565.288f, 5.2087f };
					*uParam3 = 88.92f;
					return true;
					break;
				
				case 11:
					*uParam2 = { 49.3416f, -2564.689f, 5.0046f };
					*uParam3 = 88.92f;
					return true;
					break;
				
				case 12:
					*uParam2 = { 47.2666f, -2568.651f, 5.0046f };
					*uParam3 = 88.92f;
					return true;
					break;
				
				case 13:
					*uParam2 = { 47.3042f, -2566.651f, 5.0046f };
					*uParam3 = 88.92f;
					return true;
					break;
				
				case 14:
					*uParam2 = { 52.3289f, -2563.151f, 5.0046f };
					*uParam3 = 88.92f;
					return true;
					break;
				
				case 15:
					*uParam2 = { 47.3419f, -2564.651f, 5.0046f };
					*uParam3 = 88.92f;
					return true;
					break;
			}
			break;
		
		case 1:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { -1082.37f, -1261.376f, 4.6112f };
					*uParam3 = 300.96f;
					return true;
					break;
				
				case 1:
					*uParam2 = { -1080.826f, -1263.949f, 4.6936f };
					*uParam3 = 300.96f;
					return true;
					break;
				
				case 2:
					*uParam2 = { -1083.913f, -1258.803f, 4.4974f };
					*uParam3 = 300.96f;
					return true;
					break;
				
				case 3:
					*uParam2 = { -1079.283f, -1266.521f, 4.7761f };
					*uParam3 = 300.96f;
					return true;
					break;
				
				case 4:
					*uParam2 = { -1085.456f, -1256.231f, 4.4452f };
					*uParam3 = 300.96f;
					return true;
					break;
				
				case 5:
					*uParam2 = { -1079.797f, -1259.833f, 4.6507f };
					*uParam3 = 300.96f;
					return true;
					break;
				
				case 6:
					*uParam2 = { -1078.254f, -1262.405f, 4.7587f };
					*uParam3 = 300.96f;
					return true;
					break;
				
				case 7:
					*uParam2 = { -1081.34f, -1257.26f, 4.5154f };
					*uParam3 = 300.96f;
					return true;
					break;
				
				case 8:
					*uParam2 = { -1076.71f, -1264.978f, 4.8411f };
					*uParam3 = 300.96f;
					return true;
					break;
				
				case 9:
					*uParam2 = { -1082.884f, -1254.688f, 4.4188f };
					*uParam3 = 300.96f;
					return true;
					break;
				
				case 10:
					*uParam2 = { -1077.224f, -1258.289f, 4.6669f };
					*uParam3 = 300.96f;
					return true;
					break;
				
				case 11:
					*uParam2 = { -1075.681f, -1260.862f, 4.7941f };
					*uParam3 = 300.96f;
					return true;
					break;
				
				case 12:
					*uParam2 = { -1078.768f, -1255.717f, 4.5341f };
					*uParam3 = 300.96f;
					return true;
					break;
				
				case 13:
					*uParam2 = { -1074.138f, -1263.435f, 4.8505f };
					*uParam3 = 300.96f;
					return true;
					break;
				
				case 14:
					*uParam2 = { -1080.311f, -1253.144f, 4.4313f };
					*uParam3 = 300.96f;
					return true;
					break;
				
				case 15:
					*uParam2 = { -1074.652f, -1256.746f, 4.6728f };
					*uParam3 = 300.96f;
					return true;
					break;
			}
			break;
		
		case 2:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { 896.2726f, -1035.337f, 34.1073f };
					*uParam3 = 360f;
					return true;
					break;
				
				case 1:
					*uParam2 = { 898.7726f, -1035.337f, 34.1073f };
					*uParam3 = 360f;
					return true;
					break;
				
				case 2:
					*uParam2 = { 901.2726f, -1035.337f, 34.1073f };
					*uParam3 = 360f;
					return true;
					break;
				
				case 3:
					*uParam2 = { 903.7726f, -1035.337f, 34.1073f };
					*uParam3 = 360f;
					return true;
					break;
				
				case 4:
					*uParam2 = { 896.2726f, -1032.837f, 33.9666f };
					*uParam3 = 360f;
					return true;
					break;
				
				case 5:
					*uParam2 = { 898.7726f, -1032.837f, 33.9662f };
					*uParam3 = 360f;
					return true;
					break;
				
				case 6:
					*uParam2 = { 901.2726f, -1032.837f, 33.9661f };
					*uParam3 = 360f;
					return true;
					break;
				
				case 7:
					*uParam2 = { 903.7726f, -1032.837f, 33.9661f };
					*uParam3 = 360f;
					return true;
					break;
				
				case 8:
					*uParam2 = { 896.2726f, -1030.337f, 33.9666f };
					*uParam3 = 360f;
					return true;
					break;
				
				case 9:
					*uParam2 = { 898.7726f, -1030.337f, 33.9666f };
					*uParam3 = 360f;
					return true;
					break;
				
				case 10:
					*uParam2 = { 901.2726f, -1030.337f, 33.9666f };
					*uParam3 = 360f;
					return true;
					break;
				
				case 11:
					*uParam2 = { 903.7726f, -1030.337f, 33.9666f };
					*uParam3 = 360f;
					return true;
					break;
				
				case 12:
					*uParam2 = { 896.2726f, -1027.837f, 33.9666f };
					*uParam3 = 360f;
					return true;
					break;
				
				case 13:
					*uParam2 = { 898.7726f, -1027.837f, 33.9666f };
					*uParam3 = 360f;
					return true;
					break;
				
				case 14:
					*uParam2 = { 901.2726f, -1027.837f, 33.9666f };
					*uParam3 = 360f;
					return true;
					break;
				
				case 15:
					*uParam2 = { 903.7726f, -1027.837f, 33.9666f };
					*uParam3 = 360f;
					return true;
					break;
			}
			break;
		
		case 3:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { 247.8323f, -1956.504f, 22.1788f };
					*uParam3 = 317.16f;
					return true;
					break;
				
				case 1:
					*uParam2 = { 249.5188f, -1958.068f, 22.1585f };
					*uParam3 = 317.16f;
					return true;
					break;
				
				case 2:
					*uParam2 = { 246.1458f, -1954.94f, 22.2111f };
					*uParam3 = 317.16f;
					return true;
					break;
				
				case 3:
					*uParam2 = { 251.2053f, -1959.632f, 22.1202f };
					*uParam3 = 317.16f;
					return true;
					break;
				
				case 4:
					*uParam2 = { 244.4594f, -1953.377f, 22.251f };
					*uParam3 = 317.16f;
					return true;
					break;
				
				case 5:
					*uParam2 = { 249.3962f, -1954.818f, 22.1503f };
					*uParam3 = 317.16f;
					return true;
					break;
				
				case 6:
					*uParam2 = { 251.0827f, -1956.382f, 22.1042f };
					*uParam3 = 317.16f;
					return true;
					break;
				
				case 7:
					*uParam2 = { 247.7097f, -1953.254f, 22.1978f };
					*uParam3 = 317.16f;
					return true;
					break;
				
				case 8:
					*uParam2 = { 252.7692f, -1957.945f, 22.0476f };
					*uParam3 = 317.16f;
					return true;
					break;
				
				case 9:
					*uParam2 = { 246.0232f, -1951.69f, 22.2508f };
					*uParam3 = 317.16f;
					return true;
					break;
				
				case 10:
					*uParam2 = { 250.9601f, -1953.131f, 22.0426f };
					*uParam3 = 317.16f;
					return true;
					break;
				
				case 11:
					*uParam2 = { 252.6466f, -1954.695f, 21.9945f };
					*uParam3 = 317.16f;
					return true;
					break;
				
				case 12:
					*uParam2 = { 249.2736f, -1951.567f, 22.0914f };
					*uParam3 = 317.16f;
					return true;
					break;
				
				case 13:
					*uParam2 = { 254.3331f, -1956.259f, 21.9397f };
					*uParam3 = 317.16f;
					return true;
					break;
				
				case 14:
					*uParam2 = { 247.5871f, -1950.004f, 22.1449f };
					*uParam3 = 317.16f;
					return true;
					break;
				
				case 15:
					*uParam2 = { 243.824f, -1951.445f, 22.26f };
					*uParam3 = 317.16f;
					return true;
					break;
			}
			break;
		
		case 4:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { -424.8701f, 185.5529f, 79.7918f };
					*uParam3 = 178.56f;
					return true;
					break;
				
				case 1:
					*uParam2 = { -421.9708f, 184.8951f, 79.7919f };
					*uParam3 = 178.56f;
					return true;
					break;
				
				case 2:
					*uParam2 = { -420.2715f, 184.8373f, 79.7612f };
					*uParam3 = 178.56f;
					return true;
					break;
				
				case 3:
					*uParam2 = { -417.9722f, 185.4795f, 79.7288f };
					*uParam3 = 178.56f;
					return true;
					break;
				
				case 4:
					*uParam2 = { -415.6729f, 185.4217f, 79.6811f };
					*uParam3 = 178.56f;
					return true;
					break;
				
				case 5:
					*uParam2 = { -413.3736f, 185.3639f, 79.6331f };
					*uParam3 = 178.56f;
					return true;
					break;
				
				case 6:
					*uParam2 = { -424.9279f, 183.2536f, 79.627f };
					*uParam3 = 178.56f;
					return true;
					break;
				
				case 7:
					*uParam2 = { -422.6286f, 183.1958f, 79.5531f };
					*uParam3 = 178.56f;
					return true;
					break;
				
				case 8:
					*uParam2 = { -420.3293f, 183.138f, 79.4768f };
					*uParam3 = 178.56f;
					return true;
					break;
				
				case 9:
					*uParam2 = { -418.03f, 183.4802f, 79.4155f };
					*uParam3 = 178.56f;
					return true;
					break;
				
				case 10:
					*uParam2 = { -415.7307f, 183.3224f, 79.3917f };
					*uParam3 = 178.56f;
					return true;
					break;
				
				case 11:
					*uParam2 = { -413.4314f, 183.2646f, 79.3209f };
					*uParam3 = 178.56f;
					return true;
					break;
				
				case 12:
					*uParam2 = { -424.3857f, 181.2543f, 79.617f };
					*uParam3 = 265.56f;
					return true;
					break;
				
				case 13:
					*uParam2 = { -426.886f, 185.0965f, 79.5167f };
					*uParam3 = 88.56f;
					return true;
					break;
				
				case 14:
					*uParam2 = { -417.0871f, 181.4387f, 79.4749f };
					*uParam3 = 270.56f;
					return true;
					break;
				
				case 15:
					*uParam2 = { -414.4878f, 181.3809f, 79.406f };
					*uParam3 = 271.56f;
					return true;
					break;
			}
			break;
		
		case 5:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { -1042.974f, -2022.881f, 12.1616f };
					*uParam3 = 43.56f;
					return true;
					break;
				
				case 1:
					*uParam2 = { -1044.941f, -2024.766f, 12.1616f };
					*uParam3 = 43.56f;
					return true;
					break;
				
				case 2:
					*uParam2 = { -1046.607f, -2026.351f, 12.1616f };
					*uParam3 = 43.56f;
					return true;
					break;
				
				case 3:
					*uParam2 = { -1048.274f, -2027.936f, 12.1616f };
					*uParam3 = 43.56f;
					return true;
					break;
				
				case 4:
					*uParam2 = { -1044.859f, -2021.514f, 12.1616f };
					*uParam3 = 43.56f;
					return true;
					break;
				
				case 5:
					*uParam2 = { -1046.526f, -2023.099f, 12.1616f };
					*uParam3 = 43.56f;
					return true;
					break;
				
				case 6:
					*uParam2 = { -1048.192f, -2024.684f, 12.1616f };
					*uParam3 = 43.56f;
					return true;
					break;
				
				case 7:
					*uParam2 = { -1049.859f, -2026.269f, 12.1616f };
					*uParam3 = 43.56f;
					return true;
					break;
				
				case 8:
					*uParam2 = { -1046.444f, -2019.847f, 12.1616f };
					*uParam3 = 43.56f;
					return true;
					break;
				
				case 9:
					*uParam2 = { -1048.111f, -2021.432f, 12.1616f };
					*uParam3 = 43.56f;
					return true;
					break;
				
				case 10:
					*uParam2 = { -1049.777f, -2023.017f, 12.1616f };
					*uParam3 = 43.56f;
					return true;
					break;
				
				case 11:
					*uParam2 = { -1051.444f, -2024.602f, 12.1616f };
					*uParam3 = 43.56f;
					return true;
					break;
				
				case 12:
					*uParam2 = { -1048.029f, -2018.181f, 12.1616f };
					*uParam3 = 43.56f;
					return true;
					break;
				
				case 13:
					*uParam2 = { -1049.696f, -2019.766f, 12.1616f };
					*uParam3 = 43.56f;
					return true;
					break;
				
				case 14:
					*uParam2 = { -1051.362f, -2021.351f, 12.1616f };
					*uParam3 = 43.56f;
					return true;
					break;
				
				case 15:
					*uParam2 = { -1053.029f, -2022.936f, 12.1616f };
					*uParam3 = 43.56f;
					return true;
					break;
			}
			break;
		
		case 6:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { -1268.466f, -812.4496f, 16.1077f };
					*uParam3 = 127.8f;
					return true;
					break;
				
				case 1:
					*uParam2 = { -1269.998f, -810.4742f, 16.1168f };
					*uParam3 = 127.8f;
					return true;
					break;
				
				case 2:
					*uParam2 = { -1266.933f, -814.425f, 16.0992f };
					*uParam3 = 127.8f;
					return true;
					break;
				
				case 3:
					*uParam2 = { -1271.53f, -808.4988f, 16.1253f };
					*uParam3 = 127.8f;
					return true;
					break;
				
				case 4:
					*uParam2 = { -1265.401f, -816.4004f, 16.0992f };
					*uParam3 = 127.8f;
					return true;
					break;
				
				case 5:
					*uParam2 = { -1270.441f, -813.9819f, 16.1078f };
					*uParam3 = 127.8f;
					return true;
					break;
				
				case 6:
					*uParam2 = { -1271.973f, -812.0065f, 16.1169f };
					*uParam3 = 127.8f;
					return true;
					break;
				
				case 7:
					*uParam2 = { -1268.909f, -815.9573f, 16.0992f };
					*uParam3 = 127.8f;
					return true;
					break;
				
				case 8:
					*uParam2 = { -1273.505f, -810.0311f, 16.1253f };
					*uParam3 = 127.8f;
					return true;
					break;
				
				case 9:
					*uParam2 = { -1267.377f, -817.9327f, 16.0992f };
					*uParam3 = 127.8f;
					return true;
					break;
				
				case 10:
					*uParam2 = { -1272.416f, -815.5142f, 16.1078f };
					*uParam3 = 127.8f;
					return true;
					break;
				
				case 11:
					*uParam2 = { -1273.949f, -813.5388f, 16.1169f };
					*uParam3 = 127.8f;
					return true;
					break;
				
				case 12:
					*uParam2 = { -1270.884f, -817.4896f, 16.0992f };
					*uParam3 = 127.8f;
					return true;
					break;
				
				case 13:
					*uParam2 = { -1275.481f, -811.5634f, 16.1253f };
					*uParam3 = 127.8f;
					return true;
					break;
				
				case 14:
					*uParam2 = { -1269.352f, -819.465f, 16.0992f };
					*uParam3 = 127.8f;
					return true;
					break;
				
				case 15:
					*uParam2 = { -1274.392f, -817.0464f, 16.1222f };
					*uParam3 = 127.8f;
					return true;
					break;
			}
			break;
		
		case 7:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { -874.0634f, -2734.716f, 12.9095f };
					*uParam3 = 59.04f;
					return true;
					break;
				
				case 1:
					*uParam2 = { -872.7773f, -2732.572f, 12.9109f };
					*uParam3 = 59.04f;
					return true;
					break;
				
				case 2:
					*uParam2 = { -875.3495f, -2736.86f, 12.9053f };
					*uParam3 = 59.04f;
					return true;
					break;
				
				case 3:
					*uParam2 = { -871.4913f, -2730.428f, 12.9083f };
					*uParam3 = 59.04f;
					return true;
					break;
				
				case 4:
					*uParam2 = { -876.6356f, -2739.004f, 12.9029f };
					*uParam3 = 59.04f;
					return true;
					break;
				
				case 5:
					*uParam2 = { -876.2072f, -2733.43f, 12.8285f };
					*uParam3 = 59.04f;
					return true;
					break;
				
				case 6:
					*uParam2 = { -874.9211f, -2731.286f, 12.8285f };
					*uParam3 = 59.04f;
					return true;
					break;
				
				case 7:
					*uParam2 = { -877.4933f, -2735.574f, 12.8285f };
					*uParam3 = 59.04f;
					return true;
					break;
				
				case 8:
					*uParam2 = { -873.6351f, -2729.142f, 12.8285f };
					*uParam3 = 59.04f;
					return true;
					break;
				
				case 9:
					*uParam2 = { -878.7794f, -2737.718f, 12.8285f };
					*uParam3 = 59.04f;
					return true;
					break;
				
				case 10:
					*uParam2 = { -878.351f, -2732.144f, 12.8285f };
					*uParam3 = 59.04f;
					return true;
					break;
				
				case 11:
					*uParam2 = { -877.0649f, -2730f, 12.8285f };
					*uParam3 = 59.04f;
					return true;
					break;
				
				case 12:
					*uParam2 = { -879.6371f, -2734.288f, 12.8285f };
					*uParam3 = 59.04f;
					return true;
					break;
				
				case 13:
					*uParam2 = { -875.7789f, -2727.856f, 12.8285f };
					*uParam3 = 59.04f;
					return true;
					break;
				
				case 14:
					*uParam2 = { -880.9232f, -2736.431f, 12.8285f };
					*uParam3 = 59.04f;
					return true;
					break;
				
				case 15:
					*uParam2 = { -880.4948f, -2730.858f, 12.8285f };
					*uParam3 = 59.04f;
					return true;
					break;
			}
			break;
		
		case 8:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { 274.3696f, -3015.411f, 4.6999f };
					*uParam3 = 88.92f;
					return true;
					break;
				
				case 1:
					*uParam2 = { 274.4167f, -3012.911f, 4.6995f };
					*uParam3 = 88.92f;
					return true;
					break;
				
				case 2:
					*uParam2 = { 274.3225f, -3017.91f, 4.7001f };
					*uParam3 = 88.92f;
					return true;
					break;
				
				case 3:
					*uParam2 = { 274.4639f, -3010.412f, 4.6994f };
					*uParam3 = 88.92f;
					return true;
					break;
				
				case 4:
					*uParam2 = { 274.2754f, -3020.41f, 4.7003f };
					*uParam3 = 88.92f;
					return true;
					break;
				
				case 5:
					*uParam2 = { 271.8701f, -3015.364f, 4.7094f };
					*uParam3 = 88.92f;
					return true;
					break;
				
				case 6:
					*uParam2 = { 271.9172f, -3012.864f, 4.7092f };
					*uParam3 = 88.92f;
					return true;
					break;
				
				case 7:
					*uParam2 = { 271.823f, -3017.863f, 4.7096f };
					*uParam3 = 88.92f;
					return true;
					break;
				
				case 8:
					*uParam2 = { 271.9643f, -3010.365f, 4.709f };
					*uParam3 = 88.92f;
					return true;
					break;
				
				case 9:
					*uParam2 = { 271.7758f, -3020.363f, 4.7097f };
					*uParam3 = 88.92f;
					return true;
					break;
				
				case 10:
					*uParam2 = { 269.3705f, -3015.316f, 4.7188f };
					*uParam3 = 88.92f;
					return true;
					break;
				
				case 11:
					*uParam2 = { 269.4177f, -3012.817f, 4.7196f };
					*uParam3 = 88.92f;
					return true;
					break;
				
				case 12:
					*uParam2 = { 269.3234f, -3017.816f, 4.7189f };
					*uParam3 = 88.92f;
					return true;
					break;
				
				case 13:
					*uParam2 = { 269.4648f, -3010.317f, 4.7188f };
					*uParam3 = 88.92f;
					return true;
					break;
				
				case 14:
					*uParam2 = { 269.2763f, -3020.315f, 4.7191f };
					*uParam3 = 88.92f;
					return true;
					break;
				
				case 15:
					*uParam2 = { 266.871f, -3015.269f, 4.7284f };
					*uParam3 = 88.92f;
					return true;
					break;
			}
			break;
		
		case 9:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { 1569.859f, -2130.302f, 77.3351f };
					*uParam3 = 105.84f;
					return true;
					break;
				
				case 1:
					*uParam2 = { 1568.416f, -2130.711f, 77.3351f };
					*uParam3 = 105.84f;
					return true;
					break;
				
				case 2:
					*uParam2 = { 1566.973f, -2131.121f, 76.8952f };
					*uParam3 = 105.84f;
					return true;
					break;
				
				case 3:
					*uParam2 = { 1566.092f, -2133.605f, 76.6096f };
					*uParam3 = 180f;
					return true;
					break;
				
				case 4:
					*uParam2 = { 1563.592f, -2133.605f, 76.5872f };
					*uParam3 = 180f;
					return true;
					break;
				
				case 5:
					*uParam2 = { 1568.592f, -2133.605f, 76.6408f };
					*uParam3 = 180f;
					return true;
					break;
				
				case 6:
					*uParam2 = { 1566.092f, -2136.105f, 76.5637f };
					*uParam3 = 180f;
					return true;
					break;
				
				case 7:
					*uParam2 = { 1563.592f, -2136.105f, 76.5312f };
					*uParam3 = 180f;
					return true;
					break;
				
				case 8:
					*uParam2 = { 1568.592f, -2136.105f, 76.6043f };
					*uParam3 = 180f;
					return true;
					break;
				
				case 9:
					*uParam2 = { 1566.092f, -2138.605f, 76.6349f };
					*uParam3 = 180f;
					return true;
					break;
				
				case 10:
					*uParam2 = { 1563.592f, -2138.605f, 76.602f };
					*uParam3 = 180f;
					return true;
					break;
				
				case 11:
					*uParam2 = { 1568.592f, -2138.605f, 76.6595f };
					*uParam3 = 180f;
					return true;
					break;
				
				case 12:
					*uParam2 = { 1566.092f, -2141.105f, 76.6486f };
					*uParam3 = 180f;
					return true;
					break;
				
				case 13:
					*uParam2 = { 1563.592f, -2141.105f, 76.6264f };
					*uParam3 = 180f;
					return true;
					break;
				
				case 14:
					*uParam2 = { 1568.592f, -2141.105f, 76.6633f };
					*uParam3 = 180f;
					return true;
					break;
				
				case 15:
					*uParam2 = { 1566.092f, -2143.605f, 76.638f };
					*uParam3 = 180f;
					return true;
					break;
			}
			break;
		
		case 10:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { -315.0531f, -2698.236f, 6.5502f };
					*uParam3 = 315.72f;
					return true;
					break;
				
				case 1:
					*uParam2 = { -314.0059f, -2697.162f, 6.3438f };
					*uParam3 = 315.72f;
					return true;
					break;
				
				case 2:
					*uParam2 = { -312.9586f, -2696.088f, 5.951f };
					*uParam3 = 315.72f;
					return true;
					break;
				
				case 3:
					*uParam2 = { -311.9114f, -2695.014f, 5.5625f };
					*uParam3 = 315.72f;
					return true;
					break;
				
				case 4:
					*uParam2 = { -310.8642f, -2693.94f, 5.1789f };
					*uParam3 = 315.72f;
					return true;
					break;
				
				case 5:
					*uParam2 = { -309.8169f, -2692.866f, 5.1532f };
					*uParam3 = 315.72f;
					return true;
					break;
				
				case 6:
					*uParam2 = { -308.7697f, -2691.792f, 5.0003f };
					*uParam3 = 315.72f;
					return true;
					break;
				
				case 7:
					*uParam2 = { -307.7224f, -2690.718f, 5.0003f };
					*uParam3 = 315.72f;
					return true;
					break;
				
				case 8:
					*uParam2 = { -314.0204f, -2699.495f, 6.5486f };
					*uParam3 = 225f;
					return true;
					break;
				
				case 9:
					*uParam2 = { -312.9597f, -2700.555f, 6.5465f };
					*uParam3 = 225f;
					return true;
					break;
				
				case 10:
					*uParam2 = { -311.899f, -2701.616f, 6.0171f };
					*uParam3 = 225f;
					return true;
					break;
				
				case 11:
					*uParam2 = { -310.8384f, -2702.677f, 5.3512f };
					*uParam3 = 225f;
					return true;
					break;
				
				case 12:
					*uParam2 = { -309.7777f, -2703.737f, 5.1532f };
					*uParam3 = 225f;
					return true;
					break;
				
				case 13:
					*uParam2 = { -308.717f, -2704.798f, 5.1532f };
					*uParam3 = 225f;
					return true;
					break;
				
				case 14:
					*uParam2 = { -307.6564f, -2705.858f, 5.1532f };
					*uParam3 = 225f;
					return true;
					break;
				
				case 15:
					*uParam2 = { -306.5957f, -2706.919f, 5.1532f };
					*uParam3 = 225f;
					return true;
					break;
			}
			break;
		
		case 11:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { 500.513f, -652.0776f, 23.9102f };
					*uParam3 = 262.8f;
					return true;
					break;
				
				case 1:
					*uParam2 = { 500.1997f, -654.5579f, 23.9046f };
					*uParam3 = 262.8f;
					return true;
					break;
				
				case 2:
					*uParam2 = { 500.8264f, -649.5973f, 23.7512f };
					*uParam3 = 262.8f;
					return true;
					break;
				
				case 3:
					*uParam2 = { 499.8864f, -657.0381f, 23.899f };
					*uParam3 = 262.8f;
					return true;
					break;
				
				case 4:
					*uParam2 = { 501.1397f, -647.117f, 23.7512f };
					*uParam3 = 262.8f;
					return true;
					break;
				
				case 5:
					*uParam2 = { 502.9933f, -652.3909f, 23.7512f };
					*uParam3 = 262.8f;
					return true;
					break;
				
				case 6:
					*uParam2 = { 502.68f, -654.8712f, 23.7512f };
					*uParam3 = 262.8f;
					return true;
					break;
				
				case 7:
					*uParam2 = { 503.3066f, -649.9106f, 23.7512f };
					*uParam3 = 262.8f;
					return true;
					break;
				
				case 8:
					*uParam2 = { 502.3667f, -657.3515f, 23.7512f };
					*uParam3 = 262.8f;
					return true;
					break;
				
				case 9:
					*uParam2 = { 503.62f, -647.4304f, 23.7512f };
					*uParam3 = 262.8f;
					return true;
					break;
				
				case 10:
					*uParam2 = { 505.4736f, -652.7043f, 23.7512f };
					*uParam3 = 262.8f;
					return true;
					break;
				
				case 11:
					*uParam2 = { 505.1603f, -655.1846f, 23.7512f };
					*uParam3 = 262.8f;
					return true;
					break;
				
				case 12:
					*uParam2 = { 505.7869f, -650.224f, 23.7512f };
					*uParam3 = 262.8f;
					return true;
					break;
				
				case 13:
					*uParam2 = { 504.847f, -657.6649f, 23.7512f };
					*uParam3 = 262.8f;
					return true;
					break;
				
				case 14:
					*uParam2 = { 506.1003f, -647.7437f, 23.7512f };
					*uParam3 = 262.8f;
					return true;
					break;
				
				case 15:
					*uParam2 = { 507.9539f, -653.0176f, 23.7512f };
					*uParam3 = 262.8f;
					return true;
					break;
			}
			break;
		
		case 12:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { -527.8182f, -1783.653f, 20.5241f };
					*uParam3 = 331.56f;
					return true;
					break;
				
				case 1:
					*uParam2 = { -530.0165f, -1782.462f, 20.5136f };
					*uParam3 = 331.56f;
					return true;
					break;
				
				case 2:
					*uParam2 = { -532.2148f, -1781.272f, 20.4936f };
					*uParam3 = 322.56f;
					return true;
					break;
				
				case 3:
					*uParam2 = { -526.6276f, -1781.455f, 20.3953f };
					*uParam3 = 331.56f;
					return true;
					break;
				
				case 4:
					*uParam2 = { -528.8259f, -1780.264f, 20.3978f };
					*uParam3 = 331.56f;
					return true;
					break;
				
				case 5:
					*uParam2 = { -531.0242f, -1779.073f, 20.4048f };
					*uParam3 = 325.56f;
					return true;
					break;
				
				case 6:
					*uParam2 = { -525.437f, -1779.556f, 20.3393f };
					*uParam3 = 331.56f;
					return true;
					break;
				
				case 7:
					*uParam2 = { -527.6353f, -1778.366f, 20.362f };
					*uParam3 = 331.56f;
					return true;
					break;
				
				case 8:
					*uParam2 = { -531.9336f, -1776.875f, 20.3854f };
					*uParam3 = 331.56f;
					return true;
					break;
				
				case 9:
					*uParam2 = { -525.7464f, -1777.658f, 20.3332f };
					*uParam3 = 325.56f;
					return true;
					break;
				
				case 10:
					*uParam2 = { -527.9447f, -1776.468f, 20.3559f };
					*uParam3 = 325.56f;
					return true;
					break;
				
				case 11:
					*uParam2 = { -529.543f, -1777.077f, 20.3792f };
					*uParam3 = 331.56f;
					return true;
					break;
				
				case 12:
					*uParam2 = { -522.1558f, -1779.36f, 20.1963f };
					*uParam3 = 322.56f;
					return true;
					break;
				
				case 13:
					*uParam2 = { -520.1541f, -1780.869f, 20.225f };
					*uParam3 = 316.56f;
					return true;
					break;
				
				case 14:
					*uParam2 = { -523.2524f, -1780.879f, 20.2515f };
					*uParam3 = 331.56f;
					return true;
					break;
				
				case 15:
					*uParam2 = { -521.8652f, -1782.562f, 20.3421f };
					*uParam3 = 331.56f;
					return true;
					break;
			}
			break;
		
		case 13:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { -294.8197f, -1353.221f, 30.3182f };
					*uParam3 = 268.2f;
					return true;
					break;
				
				case 1:
					*uParam2 = { -294.8982f, -1355.72f, 30.3161f };
					*uParam3 = 268.2f;
					return true;
					break;
				
				case 2:
					*uParam2 = { -294.7412f, -1350.722f, 30.3066f };
					*uParam3 = 268.2f;
					return true;
					break;
				
				case 3:
					*uParam2 = { -293.1767f, -1357.019f, 30.3098f };
					*uParam3 = 268.2f;
					return true;
					break;
				
				case 4:
					*uParam2 = { -294.6627f, -1348.224f, 30.3058f };
					*uParam3 = 268.2f;
					return true;
					break;
				
				case 5:
					*uParam2 = { -295.0553f, -1360.718f, 30.3097f };
					*uParam3 = 268.2f;
					return true;
					break;
				
				case 6:
					*uParam2 = { -294.5841f, -1345.725f, 30.3098f };
					*uParam3 = 268.2f;
					return true;
					break;
				
				case 7:
					*uParam2 = { -295.1338f, -1363.216f, 30.3097f };
					*uParam3 = 268.2f;
					return true;
					break;
				
				case 8:
					*uParam2 = { -292.9209f, -1351.8f, 30.317f };
					*uParam3 = 268.2f;
					return true;
					break;
				
				case 9:
					*uParam2 = { -292.9994f, -1354.598f, 30.3113f };
					*uParam3 = 268.2f;
					return true;
					break;
				
				case 10:
					*uParam2 = { -293.1424f, -1349.601f, 30.3154f };
					*uParam3 = 268.2f;
					return true;
					break;
				
				case 11:
					*uParam2 = { -292.778f, -1358.897f, 30.3111f };
					*uParam3 = 268.2f;
					return true;
					break;
				
				case 12:
					*uParam2 = { -293.0639f, -1347.102f, 30.307f };
					*uParam3 = 268.2f;
					return true;
					break;
				
				case 13:
					*uParam2 = { -293.1565f, -1360.796f, 30.3111f };
					*uParam3 = 268.2f;
					return true;
					break;
				
				case 14:
					*uParam2 = { -292.9854f, -1344.303f, 30.3044f };
					*uParam3 = 268.2f;
					return true;
					break;
				
				case 15:
					*uParam2 = { -293.235f, -1363.295f, 30.3111f };
					*uParam3 = 268.2f;
					return true;
					break;
			}
			break;
		
		case 14:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { 349.8802f, 328.4255f, 103.3104f };
					*uParam3 = 165.6f;
					return true;
					break;
				
				case 1:
					*uParam2 = { 352.3017f, 327.8038f, 103.1931f };
					*uParam3 = 165.6f;
					return true;
					break;
				
				case 2:
					*uParam2 = { 354.7231f, 327.182f, 103.0763f };
					*uParam3 = 165.6f;
					return true;
					break;
				
				case 3:
					*uParam2 = { 357.1446f, 326.5603f, 102.9681f };
					*uParam3 = 165.6f;
					return true;
					break;
				
				case 4:
					*uParam2 = { 359.566f, 325.9386f, 102.8674f };
					*uParam3 = 165.6f;
					return true;
					break;
				
				case 5:
					*uParam2 = { 361.9875f, 325.3168f, 102.771f };
					*uParam3 = 165.6f;
					return true;
					break;
				
				case 6:
					*uParam2 = { 364.4089f, 324.6951f, 102.7018f };
					*uParam3 = 165.6f;
					return true;
					break;
				
				case 7:
					*uParam2 = { 366.8304f, 324.0734f, 102.6326f };
					*uParam3 = 165.6f;
					return true;
					break;
				
				case 8:
					*uParam2 = { 348.0585f, 327.5041f, 103.3091f };
					*uParam3 = 165.6f;
					return true;
					break;
				
				case 9:
					*uParam2 = { 350.78f, 326.2823f, 103.1918f };
					*uParam3 = 165.6f;
					return true;
					break;
				
				case 10:
					*uParam2 = { 353.5014f, 325.6606f, 103.075f };
					*uParam3 = 165.6f;
					return true;
					break;
				
				case 11:
					*uParam2 = { 356.2229f, 324.7389f, 102.9793f };
					*uParam3 = 165.6f;
					return true;
					break;
				
				case 12:
					*uParam2 = { 358.6443f, 324.1171f, 102.8786f };
					*uParam3 = 165.6f;
					return true;
					break;
				
				case 13:
					*uParam2 = { 361.0658f, 323.4954f, 102.7693f };
					*uParam3 = 165.6f;
					return true;
					break;
				
				case 14:
					*uParam2 = { 363.1872f, 322.8737f, 102.7001f };
					*uParam3 = 165.6f;
					return true;
					break;
				
				case 15:
					*uParam2 = { 365.9086f, 322.2519f, 102.6309f };
					*uParam3 = 165.6f;
					return true;
					break;
			}
			break;
		
		case 15:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { 925.6405f, -1560.243f, 29.7406f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 1:
					*uParam2 = { 925.6606f, -1557.043f, 29.8954f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 2:
					*uParam2 = { 925.6204f, -1563.443f, 29.8634f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 3:
					*uParam2 = { 925.6807f, -1553.843f, 29.8012f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 4:
					*uParam2 = { 925.6003f, -1566.642f, 29.6487f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 5:
					*uParam2 = { 922.4406f, -1560.222f, 29.7553f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 6:
					*uParam2 = { 922.4606f, -1557.022f, 29.775f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 7:
					*uParam2 = { 922.4205f, -1563.422f, 29.7366f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 8:
					*uParam2 = { 922.4807f, -1553.823f, 29.7882f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 9:
					*uParam2 = { 922.4004f, -1566.622f, 29.704f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 10:
					*uParam2 = { 919.2406f, -1560.202f, 29.7592f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 11:
					*uParam2 = { 919.2607f, -1557.002f, 29.7694f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 12:
					*uParam2 = { 919.2205f, -1563.402f, 29.76f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 13:
					*uParam2 = { 919.2808f, -1553.802f, 29.779f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 14:
					*uParam2 = { 919.2004f, -1566.602f, 29.744f };
					*uParam3 = 89.64f;
					return true;
					break;
				
				case 15:
					*uParam2 = { 916.0406f, -1560.182f, 29.7456f };
					*uParam3 = 89.64f;
					return true;
					break;
			}
			break;
		
		case 16:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { 760.1638f, -909.4731f, 24.2546f };
					*uParam3 = 269.64f;
					return true;
					break;
				
				case 1:
					*uParam2 = { 760.1839f, -906.2732f, 24.249f };
					*uParam3 = 269.64f;
					return true;
					break;
				
				case 2:
					*uParam2 = { 760.204f, -903.0732f, 24.2297f };
					*uParam3 = 269.64f;
					return true;
					break;
				
				case 3:
					*uParam2 = { 760.2241f, -899.8733f, 24.2069f };
					*uParam3 = 269.64f;
					return true;
					break;
				
				case 4:
					*uParam2 = { 760.2441f, -896.6733f, 24.1849f };
					*uParam3 = 269.64f;
					return true;
					break;
				
				case 5:
					*uParam2 = { 760.2642f, -893.4734f, 24.1641f };
					*uParam3 = 269.64f;
					return true;
					break;
				
				case 6:
					*uParam2 = { 760.2843f, -890.2734f, 24.1432f };
					*uParam3 = 269.64f;
					return true;
					break;
				
				case 7:
					*uParam2 = { 760.6044f, -911.6735f, 24.1212f };
					*uParam3 = 269.64f;
					return true;
					break;
				
				case 8:
					*uParam2 = { 762.1638f, -909.4932f, 24.2505f };
					*uParam3 = 269.64f;
					return true;
					break;
				
				case 9:
					*uParam2 = { 762.1839f, -906.2933f, 24.2306f };
					*uParam3 = 269.64f;
					return true;
					break;
				
				case 10:
					*uParam2 = { 762.2039f, -903.0933f, 24.1944f };
					*uParam3 = 269.64f;
					return true;
					break;
				
				case 11:
					*uParam2 = { 762.224f, -899.8934f, 24.1655f };
					*uParam3 = 269.64f;
					return true;
					break;
				
				case 12:
					*uParam2 = { 762.2441f, -896.6934f, 24.1417f };
					*uParam3 = 269.64f;
					return true;
					break;
				
				case 13:
					*uParam2 = { 762.2642f, -893.4935f, 24.1227f };
					*uParam3 = 269.64f;
					return true;
					break;
				
				case 14:
					*uParam2 = { 762.2843f, -890.2935f, 24.1055f };
					*uParam3 = 269.64f;
					return true;
					break;
				
				case 15:
					*uParam2 = { 762.3043f, -911.9936f, 24.0937f };
					*uParam3 = 269.64f;
					return true;
					break;
			}
			break;
		
		case 17:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { 1038.552f, -2173.207f, 30.5259f };
					*uParam3 = 265.68f;
					return true;
					break;
				
				case 1:
					*uParam2 = { 1038.311f, -2176.398f, 30.5213f };
					*uParam3 = 265.68f;
					return true;
					break;
				
				case 2:
					*uParam2 = { 1038.793f, -2170.016f, 30.5306f };
					*uParam3 = 265.68f;
					return true;
					break;
				
				case 3:
					*uParam2 = { 1038.07f, -2179.589f, 30.5189f };
					*uParam3 = 265.68f;
					return true;
					break;
				
				case 4:
					*uParam2 = { 1039.034f, -2166.825f, 30.533f };
					*uParam3 = 265.68f;
					return true;
					break;
				
				case 5:
					*uParam2 = { 1037.829f, -2182.78f, 30.5083f };
					*uParam3 = 265.68f;
					return true;
					break;
				
				case 6:
					*uParam2 = { 1041.743f, -2173.448f, 30.4763f };
					*uParam3 = 265.68f;
					return true;
					break;
				
				case 7:
					*uParam2 = { 1041.502f, -2176.639f, 30.4677f };
					*uParam3 = 265.68f;
					return true;
					break;
				
				case 8:
					*uParam2 = { 1041.984f, -2170.257f, 30.5075f };
					*uParam3 = 265.68f;
					return true;
					break;
				
				case 9:
					*uParam2 = { 1041.261f, -2179.83f, 30.4313f };
					*uParam3 = 265.68f;
					return true;
					break;
				
				case 10:
					*uParam2 = { 1042.225f, -2167.066f, 30.5287f };
					*uParam3 = 265.68f;
					return true;
					break;
				
				case 11:
					*uParam2 = { 1041.02f, -2183.021f, 30.4238f };
					*uParam3 = 265.68f;
					return true;
					break;
				
				case 12:
					*uParam2 = { 1044.934f, -2173.689f, 30.453f };
					*uParam3 = 265.68f;
					return true;
					break;
				
				case 13:
					*uParam2 = { 1044.693f, -2176.88f, 30.422f };
					*uParam3 = 265.68f;
					return true;
					break;
				
				case 14:
					*uParam2 = { 1045.175f, -2170.498f, 30.4845f };
					*uParam3 = 265.68f;
					return true;
					break;
				
				case 15:
					*uParam2 = { 1044.452f, -2180.071f, 30.3856f };
					*uParam3 = 265.68f;
					return true;
					break;
			}
			break;
		
		case 18:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { 1018.338f, -2511.65f, 27.4777f };
					*uParam3 = 86.4f;
					return true;
					break;
				
				case 1:
					*uParam2 = { 1017.937f, -2516.668f, 27.302f };
					*uParam3 = 86.4f;
					return true;
					break;
				
				case 2:
					*uParam2 = { 1018.138f, -2514.375f, 27.302f };
					*uParam3 = 86.4f;
					return true;
					break;
				
				case 3:
					*uParam2 = { 1017.736f, -2519.862f, 27.302f };
					*uParam3 = 86.4f;
					return true;
					break;
				
				case 4:
					*uParam2 = { 1014.542f, -2519.661f, 27.3058f };
					*uParam3 = 86.4f;
					return true;
					break;
				
				case 5:
					*uParam2 = { 1014.743f, -2516.468f, 27.3049f };
					*uParam3 = 86.4f;
					return true;
					break;
				
				case 6:
					*uParam2 = { 1014.944f, -2513.274f, 27.3037f };
					*uParam3 = 86.4f;
					return true;
					break;
				
				case 7:
					*uParam2 = { 1015.145f, -2510.08f, 27.3024f };
					*uParam3 = 86.4f;
					return true;
					break;
				
				case 8:
					*uParam2 = { 1011.348f, -2519.46f, 27.3077f };
					*uParam3 = 86.4f;
					return true;
					break;
				
				case 9:
					*uParam2 = { 1011.549f, -2516.267f, 27.3062f };
					*uParam3 = 86.4f;
					return true;
					break;
				
				case 10:
					*uParam2 = { 1011.75f, -2513.073f, 27.3048f };
					*uParam3 = 86.4f;
					return true;
					break;
				
				case 11:
					*uParam2 = { 1011.951f, -2509.879f, 27.3034f };
					*uParam3 = 86.4f;
					return true;
					break;
				
				case 12:
					*uParam2 = { 1008.155f, -2519.259f, 27.3043f };
					*uParam3 = 86.4f;
					return true;
					break;
				
				case 13:
					*uParam2 = { 1008.356f, -2516.066f, 27.302f };
					*uParam3 = 86.4f;
					return true;
					break;
				
				case 14:
					*uParam2 = { 1008.557f, -2512.872f, 27.302f };
					*uParam3 = 86.4f;
					return true;
					break;
				
				case 15:
					*uParam2 = { 1008.757f, -2509.678f, 27.302f };
					*uParam3 = 86.4f;
					return true;
					break;
			}
			break;
		
		case 19:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { -245.497f, 202.4499f, 82.7567f };
					*uParam3 = 181.44f;
					return true;
					break;
				
				case 1:
					*uParam2 = { -247.9962f, 202.387f, 83.0061f };
					*uParam3 = 181.44f;
					return true;
					break;
				
				case 2:
					*uParam2 = { -250.4954f, 202.3242f, 83.2191f };
					*uParam3 = 181.44f;
					return true;
					break;
				
				case 3:
					*uParam2 = { -252.9946f, 202.2614f, 83.5141f };
					*uParam3 = 181.44f;
					return true;
					break;
				
				case 4:
					*uParam2 = { -245.4342f, 199.9507f, 82.2888f };
					*uParam3 = 181.44f;
					return true;
					break;
				
				case 5:
					*uParam2 = { -247.9334f, 199.8878f, 82.6439f };
					*uParam3 = 181.44f;
					return true;
					break;
				
				case 6:
					*uParam2 = { -250.4326f, 199.825f, 82.9599f };
					*uParam3 = 181.44f;
					return true;
					break;
				
				case 7:
					*uParam2 = { -252.9318f, 199.7622f, 83.3373f };
					*uParam3 = 181.44f;
					return true;
					break;
				
				case 8:
					*uParam2 = { -245.3714f, 197.4514f, 81.7634f };
					*uParam3 = 181.44f;
					return true;
					break;
				
				case 9:
					*uParam2 = { -247.8706f, 197.3886f, 82.2527f };
					*uParam3 = 181.44f;
					return true;
					break;
				
				case 10:
					*uParam2 = { -250.3698f, 197.3258f, 82.6763f };
					*uParam3 = 181.44f;
					return true;
					break;
				
				case 11:
					*uParam2 = { -252.869f, 197.263f, 83.1381f };
					*uParam3 = 181.44f;
					return true;
					break;
				
				case 12:
					*uParam2 = { -245.3085f, 194.9522f, 81.3477f };
					*uParam3 = 181.44f;
					return true;
					break;
				
				case 13:
					*uParam2 = { -247.8077f, 194.8894f, 81.9302f };
					*uParam3 = 181.44f;
					return true;
					break;
				
				case 14:
					*uParam2 = { -250.3069f, 194.8266f, 82.4314f };
					*uParam3 = 181.44f;
					return true;
					break;
				
				case 15:
					*uParam2 = { -252.8062f, 194.7638f, 82.9539f };
					*uParam3 = 181.44f;
					return true;
					break;
			}
			break;
		
		case 20:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { 540.8308f, -1944.671f, 23.9851f };
					*uParam3 = 302.4f;
					return true;
					break;
				
				case 1:
					*uParam2 = { 542.1703f, -1946.782f, 23.9845f };
					*uParam3 = 302.4f;
					return true;
					break;
				
				case 2:
					*uParam2 = { 539.4913f, -1942.561f, 23.9851f };
					*uParam3 = 302.4f;
					return true;
					break;
				
				case 3:
					*uParam2 = { 543.5099f, -1948.893f, 23.9824f };
					*uParam3 = 302.4f;
					return true;
					break;
				
				case 4:
					*uParam2 = { 538.1517f, -1940.45f, 23.9851f };
					*uParam3 = 302.4f;
					return true;
					break;
				
				case 5:
					*uParam2 = { 544.8494f, -1951.004f, 23.9803f };
					*uParam3 = 302.4f;
					return true;
					break;
				
				case 6:
					*uParam2 = { 542.9417f, -1943.332f, 23.9851f };
					*uParam3 = 302.4f;
					return true;
					break;
				
				case 7:
					*uParam2 = { 544.2812f, -1945.443f, 23.9851f };
					*uParam3 = 302.4f;
					return true;
					break;
				
				case 8:
					*uParam2 = { 541.6021f, -1941.221f, 23.9851f };
					*uParam3 = 302.4f;
					return true;
					break;
				
				case 9:
					*uParam2 = { 545.6207f, -1947.553f, 23.9851f };
					*uParam3 = 302.4f;
					return true;
					break;
				
				case 10:
					*uParam2 = { 540.2626f, -1939.11f, 23.9851f };
					*uParam3 = 302.4f;
					return true;
					break;
				
				case 11:
					*uParam2 = { 546.9603f, -1949.664f, 23.9838f };
					*uParam3 = 302.4f;
					return true;
					break;
				
				case 12:
					*uParam2 = { 545.0525f, -1941.992f, 23.9851f };
					*uParam3 = 302.4f;
					return true;
					break;
				
				case 13:
					*uParam2 = { 546.392f, -1944.103f, 23.9851f };
					*uParam3 = 302.4f;
					return true;
					break;
				
				case 14:
					*uParam2 = { 543.713f, -1939.881f, 23.9851f };
					*uParam3 = 302.4f;
					return true;
					break;
				
				case 15:
					*uParam2 = { 547.7316f, -1946.214f, 23.9851f };
					*uParam3 = 302.4f;
					return true;
					break;
			}
			break;
		
		case 21:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { 95.663f, -2216.311f, 5.1712f };
					*uParam3 = 90.36f;
					return true;
					break;
				
				case 1:
					*uParam2 = { 95.6473f, -2213.811f, 5.1787f };
					*uParam3 = 90.36f;
					return true;
					break;
				
				case 2:
					*uParam2 = { 95.6787f, -2218.811f, 5.1712f };
					*uParam3 = 90.36f;
					return true;
					break;
				
				case 3:
					*uParam2 = { 95.6316f, -2211.311f, 5.0431f };
					*uParam3 = 90.36f;
					return true;
					break;
				
				case 4:
					*uParam2 = { 95.6945f, -2221.311f, 5.1712f };
					*uParam3 = 90.36f;
					return true;
					break;
				
				case 5:
					*uParam2 = { 95.6159f, -2208.811f, 5.0431f };
					*uParam3 = 90.36f;
					return true;
					break;
				
				case 6:
					*uParam2 = { 93.1631f, -2216.326f, 5.0333f };
					*uParam3 = 90.36f;
					return true;
					break;
				
				case 7:
					*uParam2 = { 93.1474f, -2213.826f, 5.0368f };
					*uParam3 = 90.36f;
					return true;
					break;
				
				case 8:
					*uParam2 = { 93.1788f, -2218.826f, 5.0333f };
					*uParam3 = 90.36f;
					return true;
					break;
				
				case 9:
					*uParam2 = { 93.1317f, -2211.326f, 5.0431f };
					*uParam3 = 90.36f;
					return true;
					break;
				
				case 10:
					*uParam2 = { 93.1945f, -2221.326f, 5.0333f };
					*uParam3 = 90.36f;
					return true;
					break;
				
				case 11:
					*uParam2 = { 93.116f, -2208.826f, 5.0431f };
					*uParam3 = 90.36f;
					return true;
					break;
				
				case 12:
					*uParam2 = { 90.6631f, -2216.342f, 5.0373f };
					*uParam3 = 90.36f;
					return true;
					break;
				
				case 13:
					*uParam2 = { 90.6474f, -2213.842f, 5.0409f };
					*uParam3 = 90.36f;
					return true;
					break;
				
				case 14:
					*uParam2 = { 90.6788f, -2218.842f, 5.0371f };
					*uParam3 = 90.36f;
					return true;
					break;
				
				case 15:
					*uParam2 = { 90.6317f, -2211.342f, 5.0468f };
					*uParam3 = 90.36f;
					return true;
					break;
			}
			break;
	}
	return false;
}

bool func_357(int iParam0, int iParam1, var uParam2, var uParam3, var uParam4)//Position - 0x1C516
{
	switch (func_358(func_347(iParam0)))
	{
		case 0:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { -6.3318f, 5.2695f, 0.0001f };
					*uParam3 = 269.64f;
					return true;
					break;
				
				case 1:
					*uParam2 = { -6.339f, 4.1196f, 0.0001f };
					*uParam3 = 269.64f;
					return true;
					break;
				
				case 2:
					*uParam2 = { -6.3246f, 6.4194f, 0.0001f };
					*uParam3 = 269.64f;
					return true;
					break;
				
				case 3:
					*uParam2 = { -5.1818f, 5.2622f, 0.0001f };
					*uParam3 = 269.64f;
					return true;
					break;
				
				case 4:
					*uParam2 = { -5.189f, 4.1123f, 0.0001f };
					*uParam3 = 269.64f;
					return true;
					break;
				
				case 5:
					*uParam2 = { -5.1746f, 6.4121f, 0.0001f };
					*uParam3 = 269.64f;
					return true;
					break;
				
				case 6:
					*uParam2 = { -4.0317f, 5.2549f, 0.0001f };
					*uParam3 = 269.64f;
					return true;
					break;
				
				case 7:
					*uParam2 = { -4.0389f, 4.105f, 0.0001f };
					*uParam3 = 269.64f;
					return true;
					break;
				
				case 8:
					*uParam2 = { -4.0245f, 6.4048f, 0.0001f };
					*uParam3 = 269.64f;
					return true;
					break;
				
				case 9:
					*uParam2 = { -2.8817f, 5.2476f, 0.0001f };
					*uParam3 = 269.64f;
					return true;
					break;
				
				case 10:
					*uParam2 = { -2.8889f, 4.0977f, 0.0001f };
					*uParam3 = 269.64f;
					return true;
					break;
				
				case 11:
					*uParam2 = { -2.8745f, 6.3975f, 0.0001f };
					*uParam3 = 269.64f;
					return true;
					break;
				
				case 12:
					*uParam2 = { -1.7317f, 5.2402f, 0.0001f };
					*uParam3 = 269.64f;
					return true;
					break;
				
				case 13:
					*uParam2 = { -1.7389f, 4.0903f, 0.0001f };
					*uParam3 = 269.64f;
					return true;
					break;
				
				case 14:
					*uParam2 = { -1.7245f, 6.3901f, 0.0001f };
					*uParam3 = 269.64f;
					return true;
					break;
				
				case 15:
					*uParam2 = { -0.5817f, 5.2329f, 0.0001f };
					*uParam3 = 269.64f;
					return true;
					break;
			}
			break;
		
		case 1:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { -7.2566f, 8.0942f, 0.0001f };
					*uParam3 = 270f;
					return true;
					break;
				
				case 1:
					*uParam2 = { -6.8567f, 6.594f, 0.0001f };
					*uParam3 = 270f;
					return true;
					break;
				
				case 2:
					*uParam2 = { -6.5566f, 5.094f, 0.0001f };
					*uParam3 = 270f;
					return true;
					break;
				
				case 3:
					*uParam2 = { -6.9567f, 0.8938f, 0.0001f };
					*uParam3 = 270f;
					return true;
					break;
				
				case 4:
					*uParam2 = { -6.9567f, -0.6062f, 0.0001f };
					*uParam3 = 270f;
					return true;
					break;
				
				case 5:
					*uParam2 = { -5.7566f, 8.0942f, 0.0001f };
					*uParam3 = 270f;
					return true;
					break;
				
				case 6:
					*uParam2 = { -5.7566f, 6.5942f, 0.0001f };
					*uParam3 = 270f;
					return true;
					break;
				
				case 7:
					*uParam2 = { -4.8567f, 5.2939f, 0.0001f };
					*uParam3 = 270f;
					return true;
					break;
				
				case 8:
					*uParam2 = { -4.5566f, 0.6238f, 0.0001f };
					*uParam3 = 270f;
					return true;
					break;
				
				case 9:
					*uParam2 = { -4.5566f, -1.8062f, 0.0001f };
					*uParam3 = 270f;
					return true;
					break;
				
				case 10:
					*uParam2 = { -4.2566f, 8.0942f, 0.0001f };
					*uParam3 = 270f;
					return true;
					break;
				
				case 11:
					*uParam2 = { -0.6566f, 6.5942f, 0.0001f };
					*uParam3 = 270f;
					return true;
					break;
				
				case 12:
					*uParam2 = { -2.7567f, 5.3938f, 0f };
					*uParam3 = 270f;
					return true;
					break;
				
				case 13:
					*uParam2 = { -2.7567f, 0.6238f, 0.0001f };
					*uParam3 = 270f;
					return true;
					break;
				
				case 14:
					*uParam2 = { -2.4567f, -1.8062f, 0.0001f };
					*uParam3 = 270f;
					return true;
					break;
				
				case 15:
					*uParam2 = { -2.7566f, 8.0942f, 0.0001f };
					*uParam3 = 270f;
					return true;
					break;
			}
			break;
		
		case 2:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { -13.3667f, 4.2373f, 0.0001f };
					*uParam3 = 180f;
					return true;
					break;
				
				case 1:
					*uParam2 = { -13.6667f, 2.2373f, 0.0001f };
					*uParam3 = 180f;
					return true;
					break;
				
				case 2:
					*uParam2 = { -13.1667f, -0.2207f, 0.0001f };
					*uParam3 = 270f;
					return true;
					break;
				
				case 3:
					*uParam2 = { -10.7667f, -0.2207f, 0f };
					*uParam3 = 270f;
					return true;
					break;
				
				case 4:
					*uParam2 = { -9.3663f, -0.1626f, 0.0001f };
					*uParam3 = 270f;
					return true;
					break;
				
				case 5:
					*uParam2 = { -8.6663f, 6.2373f, 0.0001f };
					*uParam3 = 270f;
					return true;
					break;
				
				case 6:
					*uParam2 = { -8.3663f, 4.6375f, 0.0001f };
					*uParam3 = 270f;
					return true;
					break;
				
				case 7:
					*uParam2 = { -9.2663f, 1.5374f, 0.0001f };
					*uParam3 = 270f;
					return true;
					break;
				
				case 8:
					*uParam2 = { -10.1663f, -2.4626f, 0.0001f };
					*uParam3 = 270f;
					return true;
					break;
				
				case 9:
					*uParam2 = { -8.3663f, -2.2629f, 0.0001f };
					*uParam3 = 270f;
					return true;
					break;
				
				case 10:
					*uParam2 = { -6.7667f, 2.9373f, 0.0001f };
					*uParam3 = 270f;
					return true;
					break;
				
				case 11:
					*uParam2 = { -6.7667f, 1.6375f, 0.0001f };
					*uParam3 = 270f;
					return true;
					break;
				
				case 12:
					*uParam2 = { -8.5663f, -4.1626f, 0.0001f };
					*uParam3 = 270f;
					return true;
					break;
				
				case 13:
					*uParam2 = { -9.4663f, -1.2629f, 0.0001f };
					*uParam3 = 270f;
					return true;
					break;
				
				case 14:
					*uParam2 = { -7.0663f, -3.1626f, 0.0001f };
					*uParam3 = 270f;
					return true;
					break;
				
				case 15:
					*uParam2 = { -9.9667f, -4.1626f, 0.0001f };
					*uParam3 = 270f;
					return true;
					break;
			}
			break;
	}
	return false;
}

int func_358(int iParam0)//Position - 0x1CCD6
{
	if (func_346(iParam0))
	{
		switch (iParam0)
		{
			case 1:
			case 2:
			case 3:
			case 4:
			case 5:
			case 9:
				return 0;
			
			case 10:
			case 11:
			case 12:
			case 13:
			case 14:
			case 15:
			case 21:
			case 7:
				return 1;
			
			case 16:
			case 17:
			case 18:
			case 19:
			case 20:
			case 22:
			case 6:
			case 8:
				return 2;
			}
		
		default:
	}
	return 3;
}

void func_359(int iParam0, var uParam1)//Position - 0x1CD7F
{
	int iVar0;
	int iVar1;
	int iVar2;
	
	Global_2421621[player::player_id() /*358*/].f_312.f_3 = 0;
	if (func_91(player::player_id(), 1))
	{
		if (func_92(player::player_id()))
		{
			gameplay::set_bit(&(Global_1760739.f_2), 0);
		}
		else
		{
			gameplay::set_bit(&(Global_1760739.f_2), 1);
		}
		iVar0 = func_90(player::player_id());
		if (iVar0 != func_9() && iVar0 != player::player_id())
		{
			gameplay::set_bit(&(Global_2421621[player::player_id() /*358*/].f_312.f_3), iVar0);
		}
		iVar2 = 0;
		while (iVar2 < func_133())
		{
			iVar1 = func_132(iVar0, iVar2);
			if (iVar1 != func_9() && iVar1 != player::player_id())
			{
				gameplay::set_bit(&(Global_2421621[player::player_id() /*358*/].f_312.f_3), iVar1);
			}
			iVar2++;
		}
	}
	else if (func_345(player::player_id(), func_347(iParam0)))
	{
		gameplay::set_bit(&(Global_1760739.f_2), 2);
	}
}

char* func_360(var uParam0, char* sParam1, var uParam2)//Position - 0x1CE68
{
	if (Global_1760739.f_592)
	{
		Global_1760739.f_592 = 0;
		return "MP_WHOUSE_KICKe";
	}
	if (Global_1760739.f_2 == 0)
	{
		return "MP_WHOUSE_KICKc";
	}
	if (gameplay::is_bit_set(Global_1760739.f_2, 1))
	{
		if (func_82(player::player_id(), 1))
		{
			if (func_94(player::player_id()))
			{
				return "MP_WHOUSE_KICKf";
			}
			else
			{
				StringCopy(sParam1, func_119(player::player_id(), 0), 64);
				return "MP_WHOUSE_KICKg";
			}
		}
		if (!func_91(player::player_id(), 0))
		{
			return "MP_WHOUSE_KICKb";
		}
	}
	if (gameplay::is_bit_set(Global_1760739.f_2, 0) || gameplay::is_bit_set(Global_1760739.f_2, 2))
	{
		if (func_82(player::player_id(), 1))
		{
			if (func_94(player::player_id()))
			{
				return "MP_WHOUSE_KICKf";
			}
			else
			{
				StringCopy(sParam1, func_119(player::player_id(), 0), 64);
				return "MP_WHOUSE_KICKg";
			}
		}
		if (func_91(player::player_id(), 0))
		{
			return "MP_WHOUSE_KICKd";
		}
	}
	return "";
}

int func_361(int iParam0, var uParam1)//Position - 0x1CF5A
{
	if (Global_1760739.f_2 == 0)
	{
		return true;
	}
	if (func_82(player::player_id(), 1))
	{
		return true;
	}
	if (gameplay::is_bit_set(Global_1760739.f_2, 1))
	{
		if (!func_91(player::player_id(), 0))
		{
			return true;
		}
	}
	if (gameplay::is_bit_set(Global_1760739.f_2, 0) || gameplay::is_bit_set(Global_1760739.f_2, 2))
	{
		if (func_91(player::player_id(), 0))
		{
			return true;
		}
	}
	return !func_367(player::player_id(), iParam0);
}

void func_362(var uParam0, var uParam1)//Position - 0x1CFD9
{
}

void func_363(var uParam0, var uParam1, var uParam2, var uParam3, var uParam4)//Position - 0x1CFE1
{
}

bool func_364(var uParam0, var uParam1)//Position - 0x1CFE9
{
	return false;
}

bool func_365(var uParam0, var uParam1)//Position - 0x1CFF2
{
	return false;
}

char* func_366(int iParam0, char* sParam1)//Position - 0x1CFFB
{
	int iVar0;
	
	if (func_345(player::player_id(), func_347(iParam0)))
	{
		if (func_82(player::player_id(), 1))
		{
			if (func_94(player::player_id()))
			{
				return "WHOUSE_MC_BLOCK_P";
			}
			else
			{
				StringCopy(sParam1, func_119(player::player_id(), 0), 64);
				return "WHOUSE_MC_BLOCK_M";
			}
		}
		else if (func_91(player::player_id(), 0))
		{
			iVar0 = func_90(player::player_id());
			if (!func_345(iVar0, func_347(iParam0)))
			{
				if (func_145(func_81()))
				{
					return "WHOUSE_GOONHLP1C";
				}
				else
				{
					return "WHOUSE_GOON_HLP1";
				}
			}
		}
	}
	return "";
}

int func_367(int iParam0, int iParam1)//Position - 0x1D090
{
	if (Global_262145.f_13357)
	{
		return 0;
	}
	if (func_82(iParam0, 1))
	{
		return 0;
	}
	if (func_91(iParam0, 1))
	{
		return func_345(func_90(iParam0), func_347(iParam1));
	}
	else if (func_345(iParam0, func_347(iParam1)))
	{
		return 1;
	}
	return 0;
}

bool func_368(var uParam0)//Position - 0x1D0E8
{
	int iVar0;
	
	if (Global_262145.f_13357)
	{
		return true;
	}
	if (!func_164(1))
	{
		return true;
	}
	if (!func_369(player::player_id()) && Global_1573331)
	{
		return true;
	}
	if (func_141(player::player_id(), 0))
	{
		if (func_140(player::player_id()) == 168 && !gameplay::is_bit_set(Global_1759239.f_3, 4))
		{
			return true;
		}
		else if (func_140(player::player_id()) == 167)
		{
			if (player::get_player_wanted_level(player::player_id()) > 0)
			{
				return true;
			}
		}
	}
	if (network::network_is_activity_session())
	{
		return true;
	}
	iVar0 = false;
	if (func_148(iVar0, 2))
	{
		return true;
	}
	return false;
}

int func_369(int iParam0)//Position - 0x1D190
{
	return func_370(func_140(iParam0));
}

bool func_370(int iParam0)//Position - 0x1D1A2
{
	switch (iParam0)
	{
		case 167:
		case 169:
		case 168:
			return true;
		
		default:
	}
	return false;
}

void func_371(var uParam0, int iParam1, int iParam2, int iParam3, var uParam4)//Position - 0x1D1C8
{
	ui::get_hud_colour(9, iParam1, iParam2, iParam3, uParam4);
}

void func_372(int iParam0, var uParam1)//Position - 0x1D1DE
{
	switch (iParam0)
	{
		case 0:
			*uParam1 = { 54.191f, -2569.248f, 5.0046f };
			break;
		
		case 1:
			*uParam1 = { -1083.054f, -1261.893f, 4.534f };
			break;
		
		case 2:
			*uParam1 = { 896.3665f, -1035.749f, 34.1096f };
			break;
		
		case 3:
			*uParam1 = { 247.473f, -1956.943f, 22.1908f };
			break;
		
		case 4:
			*uParam1 = { -424.828f, 185.825f, 79.775f };
			break;
		
		case 5:
			*uParam1 = { -1042.482f, -2023.516f, 12.1616f };
			break;
		
		case 6:
			*uParam1 = { -1268.119f, -812.2741f, 16.1075f };
			break;
		
		case 7:
			*uParam1 = { -873.65f, -2735.948f, 12.9438f };
			break;
		
		case 8:
			*uParam1 = { 274.5224f, -3015.413f, 4.6993f };
			break;
		
		case 9:
			*uParam1 = { 1569.69f, -2129.792f, 77.3351f };
			break;
		
		case 10:
			*uParam1 = { -315.551f, -2698.654f, 6.5495f };
			break;
		
		case 11:
			*uParam1 = { 499.81f, -651.982f, 23.909f };
			break;
		
		case 12:
			*uParam1 = { -528.5296f, -1784.573f, 20.5853f };
			break;
		
		case 13:
			*uParam1 = { -295.8596f, -1353.238f, 30.3138f };
			break;
		
		case 14:
			*uParam1 = { 349.839f, 328.889f, 103.272f };
			break;
		
		case 15:
			*uParam1 = { 926.2818f, -1560.311f, 29.7404f };
			break;
		
		case 16:
			*uParam1 = { 759.566f, -909.466f, 24.244f };
			break;
		
		case 17:
			*uParam1 = { 1037.813f, -2173.062f, 30.5334f };
			break;
		
		case 18:
			*uParam1 = { 1019.116f, -2511.69f, 27.302f };
			break;
		
		case 19:
			*uParam1 = { -245.3405f, 203.3286f, 82.818f };
			break;
		
		case 20:
			*uParam1 = { 539.346f, -1945.682f, 23.984f };
			break;
		
		case 21:
			*uParam1 = { 96.1538f, -2216.4f, 5.1712f };
			break;
	}
}

void func_373(int iParam0, var uParam1)//Position - 0x1D455
{
	switch (func_358(func_347(iParam0)))
	{
		case 0:
			*uParam1 = { 1086.836f, -3103.88f, -41f };
			uParam1->f_3 = { 1105.807f, -3094.803f, -36.0099f };
			break;
		
		case 1:
			*uParam1 = { 1047.356f, -3112.175f, -41f };
			uParam1->f_3 = { 1074.308f, -3092.826f, -33.7074f };
			break;
		
		case 2:
			*uParam1 = { 990.5693f, -3113.382f, -41f };
			uParam1->f_3 = { 1030.264f, -3088.479f, -28.7216f };
			break;
	}
}

var func_374(int iParam0)//Position - 0x1D4FF
{
	return func_375(func_347(iParam0));
}

char* func_375(int iParam0)//Position - 0x1D511
{
	switch (iParam0)
	{
		case 1:
			return "MP_WHOUSE_0";
			break;
		
		case 2:
			return "MP_WHOUSE_1";
			break;
		
		case 3:
			return "MP_WHOUSE_2";
			break;
		
		case 4:
			return "MP_WHOUSE_3";
			break;
		
		case 5:
			return "MP_WHOUSE_4";
			break;
		
		case 6:
			return "MP_WHOUSE_5";
			break;
		
		case 7:
			return "MP_WHOUSE_6";
			break;
		
		case 8:
			return "MP_WHOUSE_7";
			break;
		
		case 9:
			return "MP_WHOUSE_8";
			break;
		
		case 10:
			return "MP_WHOUSE_9";
			break;
		
		case 11:
			return "MP_WHOUSE_10";
			break;
		
		case 12:
			return "MP_WHOUSE_11";
			break;
		
		case 13:
			return "MP_WHOUSE_12";
			break;
		
		case 14:
			return "MP_WHOUSE_13";
			break;
		
		case 15:
			return "MP_WHOUSE_14";
			break;
		
		case 16:
			return "MP_WHOUSE_15";
			break;
		
		case 17:
			return "MP_WHOUSE_16";
			break;
		
		case 18:
			return "MP_WHOUSE_17";
			break;
		
		case 19:
			return "MP_WHOUSE_18";
			break;
		
		case 20:
			return "MP_WHOUSE_19";
			break;
		
		case 21:
			return "MP_WHOUSE_20";
			break;
		
		case 22:
			return "MP_WHOUSE_21";
			break;
	}
	return "";
}

void func_376(int iParam0, var uParam1)//Position - 0x1D682
{
	int iVar0;
	
	iVar0 = func_347(iParam0);
	switch (func_358(iVar0))
	{
		case 0:
			func_381(uParam1);
			break;
		
		case 1:
			func_380(uParam1);
			break;
		
		case 2:
			func_379(uParam1);
			break;
	}
	func_373(iParam0, &(uParam1->f_97));
	func_378(iParam0, uParam1);
	uParam1->f_21 = "AM_MP_WAREHOUSE";
	switch (iParam0)
	{
		case 0:
			uParam1->f_22.f_3 = "anim@apt_trans@hinge_r";
			uParam1->f_22.f_4 = "ext_player";
			uParam1->f_22.f_6 = { 55.6698f, -2562.517f, 9.7216f };
			uParam1->f_22.f_9 = { -26.9934f, 0f, 158.2394f };
			uParam1->f_22.f_12 = 40f;
			uParam1->f_22.f_14 = { 55.173f, -2569.18f, 5.005f };
			uParam1->f_22.f_17 = { 0f, 0f, 88.92f };
			uParam1->f_22.f_20 = 0.185f;
			uParam1->f_22.f_21 = 0.45f;
			uParam1->f_22.f_40 = { 47.462f, -2556.352f, 9.3575f };
			uParam1->f_22.f_43 = { -3.9405f, 0f, -159.8518f };
			uParam1->f_22.f_46 = 60.9384f;
			break;
		
		case 1:
			uParam1->f_22.f_3 = "anim@apt_trans@hinge_l";
			uParam1->f_22.f_4 = "ext_player";
			uParam1->f_22.f_6 = { -1085.303f, -1258.34f, 6.2175f };
			uParam1->f_22.f_9 = { -8.7714f, 0f, -149.6619f };
			uParam1->f_22.f_12 = 40f;
			uParam1->f_22.f_14 = { -1083.55f, -1262.168f, 4.584f };
			uParam1->f_22.f_17 = { 0f, 0f, 120f };
			uParam1->f_22.f_20 = 0.2f;
			uParam1->f_22.f_21 = 0.46f;
			uParam1->f_22.f_40 = { -1076.223f, -1243.307f, 10.6771f };
			uParam1->f_22.f_43 = { -9.2423f, 0f, 147.7254f };
			uParam1->f_22.f_46 = 51.5371f;
			uParam1->f_22.f_24 = joaat("prop_damdoor_01");
			uParam1->f_22.f_25 = { -1083.314f, -1262.911f, 6.048f };
			uParam1->f_22.f_28 = { 0f, 0f, 120f };
			uParam1->f_22.f_32 = joaat("prop_damdoor_01");
			uParam1->f_22.f_33 = { -1083.289f, -1262.854f, 3.742f };
			uParam1->f_22.f_36 = { 0f, 0f, 120f };
			break;
		
		case 2:
			uParam1->f_22.f_3 = "anim@apt_trans@hinge_l";
			uParam1->f_22.f_4 = "ext_player";
			uParam1->f_22.f_6 = { 894.9501f, -1036.63f, 35.7994f };
			uParam1->f_22.f_9 = { -6.6207f, 0f, -74.3905f };
			uParam1->f_22.f_12 = 40f;
			uParam1->f_22.f_14 = { 896.377f, -1036.943f, 34.114f };
			uParam1->f_22.f_17 = { 0f, 0f, -176.04f };
			uParam1->f_22.f_20 = 0.2f;
			uParam1->f_22.f_21 = 0.46f;
			uParam1->f_22.f_40 = { 905.355f, -1022.531f, 39.7356f };
			uParam1->f_22.f_43 = { -11.3208f, 0f, 143.5729f };
			uParam1->f_22.f_46 = 57.37f;
			break;
		
		case 3:
			uParam1->f_22.f_3 = "anim@apt_trans@hinge_r";
			uParam1->f_22.f_4 = "ext_player";
			uParam1->f_22.f_6 = { 249.927f, -1959.511f, 23.9722f };
			uParam1->f_22.f_9 = { 0.0683f, 0f, 47.4904f };
			uParam1->f_22.f_12 = 40f;
			uParam1->f_22.f_14 = { 246.915f, -1957.426f, 22.234f };
			uParam1->f_22.f_17 = { 0f, 0f, -41.4f };
			uParam1->f_22.f_20 = 0.2f;
			uParam1->f_22.f_21 = 0.46f;
			uParam1->f_22.f_40 = { 245.938f, -1938.42f, 27.6721f };
			uParam1->f_22.f_43 = { -7.5442f, 0f, 159.4763f };
			uParam1->f_22.f_46 = 59.7297f;
			break;
		
		case 4:
			uParam1->f_22.f_3 = "anim@apt_trans@hinge_l";
			uParam1->f_22.f_4 = "ext_player";
			uParam1->f_22.f_6 = { -422.9159f, 186.277f, 81.3179f };
			uParam1->f_22.f_9 = { 0.2632f, 0f, 96.0908f };
			uParam1->f_22.f_12 = 40f;
			uParam1->f_22.f_14 = { -424.77f, 186.591f, 79.806f };
			uParam1->f_22.f_17 = { 0f, 0f, 6.84f };
			uParam1->f_22.f_20 = 0.2f;
			uParam1->f_22.f_21 = 0.46f;
			uParam1->f_22.f_40 = { -408.0694f, 174.6422f, 86.9432f };
			uParam1->f_22.f_43 = { -13.2642f, 0f, 28.3935f };
			uParam1->f_22.f_46 = 52.4348f;
			break;
		
		case 5:
			uParam1->f_22.f_3 = "anim@apt_trans@hinge_r";
			uParam1->f_22.f_4 = "ext_player";
			uParam1->f_22.f_6 = { -1040.969f, -2022.84f, 13.8865f };
			uParam1->f_22.f_9 = { -4.3062f, 0f, 128.7958f };
			uParam1->f_22.f_12 = 40f;
			uParam1->f_22.f_14 = { -1041.771f, -2024.093f, 12.262f };
			uParam1->f_22.f_17 = { 0f, 0f, 48.6f };
			uParam1->f_22.f_20 = 0.2f;
			uParam1->f_22.f_21 = 0.46f;
			uParam1->f_22.f_40 = { -1085.943f, -2028.454f, 24.7947f };
			uParam1->f_22.f_43 = { -1.2216f, 0f, -90.0273f };
			uParam1->f_22.f_46 = 55.8325f;
			break;
		
		case 6:
			uParam1->f_22.f_3 = "anim@apt_trans@hinge_r";
			uParam1->f_22.f_4 = "ext_player";
			uParam1->f_22.f_6 = { -1269.049f, -810.1869f, 17.6841f };
			uParam1->f_22.f_9 = { -5.2284f, 0f, -154.3061f };
			uParam1->f_22.f_12 = 40f;
			uParam1->f_22.f_14 = { -1267.408f, -811.694f, 16.108f };
			uParam1->f_22.f_17 = { 0f, 0f, 129.24f };
			uParam1->f_22.f_20 = 0.2f;
			uParam1->f_22.f_21 = 0.46f;
			uParam1->f_22.f_40 = { -1275.577f, -830.3143f, 21.4835f };
			uParam1->f_22.f_43 = { -1.8344f, 0f, -30.0049f };
			uParam1->f_22.f_46 = 54.6851f;
			break;
		
		case 7:
			uParam1->f_22.f_3 = "anim@apt_trans@garage";
			uParam1->f_22.f_4 = "gar_open_1_left";
			uParam1->f_22.f_14 = { -873.02f, -2736.37f, 12.96f };
			uParam1->f_22.f_17 = { 0f, 0f, -1.44f };
			uParam1->f_22.f_20 = 0f;
			uParam1->f_22.f_21 = 0.45f;
			uParam1->f_22.f_40 = { -900.0779f, -2719.921f, 22.445f };
			uParam1->f_22.f_43 = { 2.7476f, 0f, -120.3092f };
			uParam1->f_22.f_46 = 74.842f;
			func_377(&(uParam1->f_22));
			break;
		
		case 8:
			uParam1->f_22.f_3 = "anim@apt_trans@hinge_r";
			uParam1->f_22.f_4 = "ext_player";
			uParam1->f_22.f_6 = { 275.3322f, -3009.54f, 10.6753f };
			uParam1->f_22.f_9 = { -38.649f, 0f, 167.1707f };
			uParam1->f_22.f_12 = 40f;
			uParam1->f_22.f_14 = { 276.13f, -3015.219f, 5.299f };
			uParam1->f_22.f_17 = { 0f, 0f, 89.64f };
			uParam1->f_22.f_20 = 0.22f;
			uParam1->f_22.f_21 = 0.48f;
			uParam1->f_22.f_40 = { 258.2233f, -3009.183f, 8.997f };
			uParam1->f_22.f_43 = { -1.9814f, 0f, -115.932f };
			uParam1->f_22.f_46 = 51.7418f;
			uParam1->f_22.f_24 = joaat("prop_damdoor_01");
			uParam1->f_22.f_25 = { 276.161f, -3016.038f, 6.4456f };
			uParam1->f_22.f_28 = { 0f, 0f, 90f };
			break;
		
		case 9:
			uParam1->f_22.f_3 = "anim@apt_trans@hinge_l";
			uParam1->f_22.f_4 = "ext_player";
			uParam1->f_22.f_6 = { 1575.451f, -2129.365f, 80.8606f };
			uParam1->f_22.f_9 = { -16.8649f, 0f, 103.5603f };
			uParam1->f_22.f_12 = 40f;
			uParam1->f_22.f_14 = { 1569.734f, -2129.194f, 77.335f };
			uParam1->f_22.f_17 = { 0f, 0f, 15.48f };
			uParam1->f_22.f_20 = 0.2f;
			uParam1->f_22.f_21 = 0.46f;
			uParam1->f_22.f_40 = { 1581.396f, -2133.452f, 81.8751f };
			uParam1->f_22.f_43 = { -6.7888f, 0f, 56.6227f };
			uParam1->f_22.f_46 = 62.3286f;
			uParam1->f_22.f_24 = joaat("prop_damdoor_01");
			uParam1->f_22.f_25 = { 1568.861f, -2129.332f, 78.573f };
			uParam1->f_22.f_28 = { 0f, 0f, 15.3f };
			break;
		
		case 10:
			uParam1->f_22.f_3 = "anim@apt_trans@hinge_l";
			uParam1->f_22.f_4 = "ext_player";
			uParam1->f_22.f_6 = { -307.5915f, -2705.994f, 11.3516f };
			uParam1->f_22.f_9 = { -13.9349f, 0f, 44.8217f };
			uParam1->f_22.f_12 = 40f;
			uParam1->f_22.f_14 = { -316.077f, -2698.804f, 6.55f };
			uParam1->f_22.f_17 = { 0f, 0f, 134.28f };
			uParam1->f_22.f_20 = 0.2f;
			uParam1->f_22.f_21 = 0.46f;
			uParam1->f_22.f_40 = { -291.8181f, -2701.502f, 11.8306f };
			uParam1->f_22.f_43 = { -7.1218f, 0f, 90.1946f };
			uParam1->f_22.f_46 = 51.9229f;
			break;
		
		case 11:
			uParam1->f_22.f_3 = "anim@apt_trans@hinge_l";
			uParam1->f_22.f_4 = "ext_player";
			uParam1->f_22.f_6 = { 501.5328f, -645.445f, 28.0574f };
			uParam1->f_22.f_9 = { -22.2649f, 0f, 160.9995f };
			uParam1->f_22.f_12 = 40f;
			uParam1->f_22.f_14 = { 499.179f, -651.811f, 23.909f };
			uParam1->f_22.f_17 = { 0f, 0f, 84.24f };
			uParam1->f_22.f_20 = 0.2f;
			uParam1->f_22.f_21 = 0.46f;
			uParam1->f_22.f_40 = { 512.1525f, -636.3975f, 28.448f };
			uParam1->f_22.f_43 = { -1.2414f, 0f, 122.172f };
			uParam1->f_22.f_46 = 53.7499f;
			break;
		
		case 12:
			uParam1->f_22.f_3 = "anim@apt_trans@hinge_l";
			uParam1->f_22.f_4 = "ext_player";
			uParam1->f_22.f_6 = { -539.1638f, -1778.434f, 23.8737f };
			uParam1->f_22.f_9 = { -9.2253f, 0f, -119.9646f };
			uParam1->f_22.f_12 = 40f;
			uParam1->f_22.f_14 = { -528.827f, -1784.887f, 20.598f };
			uParam1->f_22.f_17 = { 0f, 0f, 149.04f };
			uParam1->f_22.f_20 = 0.2f;
			uParam1->f_22.f_21 = 0.46f;
			uParam1->f_22.f_40 = { -539.6097f, -1759.142f, 27.4026f };
			uParam1->f_22.f_43 = { -5.2881f, 0f, -171.1322f };
			uParam1->f_22.f_46 = 53.8715f;
			break;
		
		case 13:
			uParam1->f_22.f_3 = "anim@apt_trans@hinge_r";
			uParam1->f_22.f_4 = "ext_player";
			uParam1->f_22.f_6 = { -294.106f, -1359.92f, 32.7505f };
			uParam1->f_22.f_9 = { -4.7499f, 0f, -0.9732f };
			uParam1->f_22.f_12 = 40f;
			uParam1->f_22.f_14 = { -296.605f, -1353.023f, 30.308f };
			uParam1->f_22.f_17 = { 0f, 0f, -89.64f };
			uParam1->f_22.f_20 = 0.2f;
			uParam1->f_22.f_21 = 0.46f;
			uParam1->f_22.f_40 = { -277.6619f, -1368.544f, 35.1506f };
			uParam1->f_22.f_43 = { -1.3521f, 0f, 55.7123f };
			uParam1->f_22.f_46 = 50.9305f;
			break;
		
		case 14:
			uParam1->f_22.f_3 = "anim@apt_trans@hinge_l";
			uParam1->f_22.f_4 = "ext_player";
			uParam1->f_22.f_6 = { 356.1015f, 326.3331f, 107.5898f };
			uParam1->f_22.f_9 = { -18.8627f, 0f, 59.592f };
			uParam1->f_22.f_12 = 40f;
			uParam1->f_22.f_14 = { 350.351f, 330.055f, 103.445f };
			uParam1->f_22.f_17 = { 0f, 0f, -13.68f };
			uParam1->f_22.f_20 = 0.2f;
			uParam1->f_22.f_21 = 0.46f;
			uParam1->f_22.f_40 = { 360.9772f, 310.175f, 109.4587f };
			uParam1->f_22.f_43 = { -2.4531f, 0f, 12.6192f };
			uParam1->f_22.f_46 = 51.9772f;
			break;
		
		case 15:
			uParam1->f_22.f_3 = "anim@apt_trans@hinge_l";
			uParam1->f_22.f_4 = "ext_player";
			uParam1->f_22.f_6 = { 925.8218f, -1564.616f, 34.3633f };
			uParam1->f_22.f_9 = { -32.8521f, 0f, -19.6456f };
			uParam1->f_22.f_12 = 40f;
			uParam1->f_22.f_14 = { 927.6f, -1560.443f, 29.943f };
			uParam1->f_22.f_17 = { 0f, 0f, -90.72f };
			uParam1->f_22.f_20 = 0.2f;
			uParam1->f_22.f_21 = 0.46f;
			uParam1->f_22.f_40 = { 913.1396f, -1575.709f, 34.2933f };
			uParam1->f_22.f_43 = { 3.1582f, 0f, -58.1463f };
			uParam1->f_22.f_46 = 53.8629f;
			uParam1->f_22.f_24 = joaat("prop_damdoor_01");
			uParam1->f_22.f_25 = { 927.711f, -1559.567f, 31.094f };
			uParam1->f_22.f_28 = { 0f, 0f, -90f };
			break;
		
		case 16:
			uParam1->f_22.f_3 = "anim@apt_trans@hinge_l";
			uParam1->f_22.f_4 = "ext_player";
			uParam1->f_22.f_6 = { 759.1849f, -906.91f, 26.0423f };
			uParam1->f_22.f_9 = { -1.1809f, 0f, -179.4534f };
			uParam1->f_22.f_12 = 40f;
			uParam1->f_22.f_14 = { 758.631f, -909.267f, 24.438f };
			uParam1->f_22.f_17 = { 0f, 0f, 91.44f };
			uParam1->f_22.f_20 = 0.2f;
			uParam1->f_22.f_21 = 0.46f;
			uParam1->f_22.f_40 = { 777.9869f, -877.492f, 33.0619f };
			uParam1->f_22.f_43 = { -7.513f, 0f, 129.5847f };
			uParam1->f_22.f_46 = 50.8783f;
			break;
		
		case 17:
			uParam1->f_22.f_3 = "anim@apt_trans@hinge_l";
			uParam1->f_22.f_4 = "ext_player";
			uParam1->f_22.f_6 = { 1038f, -2170.053f, 32.9912f };
			uParam1->f_22.f_9 = { -22.5347f, 0f, 175.7987f };
			uParam1->f_22.f_12 = 40f;
			uParam1->f_22.f_14 = { 1037.014f, -2172.944f, 30.55f };
			uParam1->f_22.f_17 = { 0f, 0f, 84.96f };
			uParam1->f_22.f_20 = 0.2f;
			uParam1->f_22.f_21 = 0.46f;
			uParam1->f_22.f_40 = { 1061.911f, -2157.021f, 35.0165f };
			uParam1->f_22.f_43 = { -2.572f, 0f, 111.921f };
			uParam1->f_22.f_46 = 58.6139f;
			break;
		
		case 18:
			uParam1->f_22.f_3 = "anim@apt_trans@hinge_l";
			uParam1->f_22.f_4 = "ext_player";
			uParam1->f_22.f_6 = { 1017.937f, -2517.583f, 30.4418f };
			uParam1->f_22.f_9 = { -18.4157f, 0f, -15.4654f };
			uParam1->f_22.f_12 = 40f;
			uParam1->f_22.f_14 = { 1019.739f, -2511.918f, 27.445f };
			uParam1->f_22.f_17 = { 0f, 0f, -96.12f };
			uParam1->f_22.f_20 = 0.2f;
			uParam1->f_22.f_21 = 0.46f;
			uParam1->f_22.f_40 = { 1000.552f, -2529.795f, 32.7126f };
			uParam1->f_22.f_43 = { -5.7162f, 0f, -73.9334f };
			uParam1->f_22.f_46 = 55.0288f;
			break;
		
		case 19:
			uParam1->f_22.f_3 = "anim@apt_trans@hinge_l";
			uParam1->f_22.f_4 = "ext_player";
			uParam1->f_22.f_6 = { -248.4653f, 203.9834f, 86.8847f };
			uParam1->f_22.f_9 = { -36.3135f, 0f, -102.8081f };
			uParam1->f_22.f_12 = 40f;
			uParam1->f_22.f_14 = { -245.054f, 204.085f, 83f };
			uParam1->f_22.f_17 = { 0f, 0f, -3.6f };
			uParam1->f_22.f_20 = 0.2f;
			uParam1->f_22.f_21 = 0.46f;
			uParam1->f_22.f_40 = { -270.0336f, 183.7648f, 90.1035f };
			uParam1->f_22.f_43 = { -1.7739f, 0f, -22.3539f };
			uParam1->f_22.f_46 = 62.3599f;
			break;
		
		case 20:
			uParam1->f_22.f_3 = "anim@apt_trans@garage";
			uParam1->f_22.f_4 = "gar_open_1_right";
			uParam1->f_22.f_14 = { 539.003f, -1945.851f, 23.984f };
			uParam1->f_22.f_17 = { 0f, 0f, -131.04f };
			uParam1->f_22.f_20 = 0f;
			uParam1->f_22.f_21 = 0.45f;
			uParam1->f_22.f_40 = { 545.4655f, -1926.31f, 30.7424f };
			uParam1->f_22.f_43 = { -6.6888f, 0f, 152.7569f };
			uParam1->f_22.f_46 = 52.6655f;
			func_377(&(uParam1->f_22));
			break;
		
		case 21:
			uParam1->f_22.f_3 = "anim@apt_trans@hinge_l";
			uParam1->f_22.f_4 = "ext_player";
			uParam1->f_22.f_6 = { 97.0925f, -2218.317f, 6.9921f };
			uParam1->f_22.f_9 = { -1.0588f, 0f, -3.5294f };
			uParam1->f_22.f_12 = 40f;
			uParam1->f_22.f_14 = { 97.293f, -2215.945f, 5.502f };
			uParam1->f_22.f_17 = { 0f, 0f, -88.2f };
			uParam1->f_22.f_20 = 0.2f;
			uParam1->f_22.f_21 = 0.46f;
			uParam1->f_22.f_40 = { 82.9859f, -2232.355f, 9.8449f };
			uParam1->f_22.f_43 = { -1.3436f, 0f, -57.1714f };
			uParam1->f_22.f_46 = 55.5776f;
			break;
	}
}

void func_377(var uParam0)//Position - 0x1E840
{
	vector3 vVar0;
	vector3 vVar3;
	vector3 vVar6;
	vector3 vVar9;
	float fVar12;
	vector3 vVar13;
	float fVar16;
	
	vVar0 = { func_326(231.848f, -1006.707f, -99.992f, 63.36f) };
	vVar3 = { 0f, 0f, -63.36f };
	vVar6 = { func_326(233.2975f, -1005.81f, -98.5457f, 63.36f) };
	vVar9 = { -26.8902f, -0.038f, 129.5137f };
	fVar12 = 30.3982f;
	vVar13 = { vVar6 - vVar0 };
	fVar16 = (vVar9.y - vVar3.y);
	uParam0->f_6 = { func_326(func_326(uParam0->f_14, (-1f * uParam0->f_17.f_2)) + vVar13, uParam0->f_17.f_2) };
	uParam0->f_9 = { vVar9 };
	uParam0->f_9.f_2 = (uParam0->f_17.f_2 + fVar16);
	uParam0->f_12 = fVar12;
}

void func_378(int iParam0, var uParam1)//Position - 0x1E903
{
	int iVar0;
	
	iVar0 = func_347(iParam0);
	if (iVar0 == 8 || iVar0 == 21)
	{
		uParam1->f_22.f_58 = "GTAO_EXEC_WH_GARAGE_DOOR_SOUNDS";
		uParam1->f_22.f_57 = "Door_Open";
		uParam1->f_22.f_60 = "GTAO_EXEC_WH_GARAGE_DOOR_SOUNDS";
		uParam1->f_22.f_59 = "Door_Close";
	}
	else
	{
		uParam1->f_22.f_50[0] = "PUSH";
		uParam1->f_22.f_50[1] = "LIMIT";
		uParam1->f_22.f_53[0] = 0.271f;
		uParam1->f_22.f_53[1] = 0.411f;
		uParam1->f_22.f_56 = "GTAO_EXEC_WH_DOOR_GENERIC_SOUNDS";
		uParam1->f_22.f_60 = "GTAO_EXEC_WH_DOOR_GENERIC_SOUNDS";
		uParam1->f_22.f_59 = "Closed";
	}
}

void func_379(var uParam0)//Position - 0x1E9A5
{
	uParam0->f_89.f_1 = { -15.091f, 2.575f, 0f };
	uParam0->f_89.f_4 = { -15.091f, 5.875f, 2.2f };
	uParam0->f_89.f_7 = 3.86f;
	uParam0->f_89 = 90f;
}

void func_380(var uParam0)//Position - 0x1E9EB
{
	uParam0->f_89.f_1 = { -8.78f, 6.917f, 0f };
	uParam0->f_89.f_4 = { -8.78f, 10f, 2.2f };
	uParam0->f_89.f_7 = 3.86f;
	uParam0->f_89 = 90f;
}

void func_381(var uParam0)//Position - 0x1EA31
{
	uParam0->f_89.f_1 = { -7.911f, 4.559f, 0f };
	uParam0->f_89.f_4 = { -7.911f, 6.989f, 2.2f };
	uParam0->f_89.f_7 = 3.86f;
	uParam0->f_89 = 90f;
}

void func_382(int iParam0, char* sParam1, var uParam2, var uParam3)//Position - 0x1EA77
{
	switch (func_358(func_347(iParam0)))
	{
		case 0:
			*uParam2 = { 1094.988f, -3104.776f, -40f };
			*uParam3 = 0f;
			StringCopy(sParam1, "ex_int_warehouse_s_dlc", 64);
			break;
		
		case 1:
			*uParam2 = { 1056.488f, -3105.724f, -40f };
			*uParam3 = 0f;
			StringCopy(sParam1, "ex_int_warehouse_m_dlc", 64);
			break;
		
		case 2:
			*uParam2 = { 1007.135f, -3102.079f, -40f };
			*uParam3 = 0f;
			StringCopy(sParam1, "ex_int_warehouse_l_dlc", 64);
			break;
	}
}

bool func_383(var uParam0)//Position - 0x1EB06
{
	return true;
}

int func_384(int iParam0)//Position - 0x1EB0F
{
	switch (iParam0)
	{
		case 0:
		case 1:
		case 2:
		case 3:
		case 4:
		case 5:
		case 6:
		case 7:
		case 8:
		case 9:
		case 10:
		case 11:
		case 12:
		case 13:
		case 14:
		case 15:
		case 16:
		case 17:
		case 18:
		case 19:
		case 20:
		case 21:
			return 0;
			break;
		
		case 57:
		case 58:
		case 59:
		case 60:
		case 61:
		case 62:
		case 63:
		case 64:
		case 65:
		case 66:
			return 1;
			break;
		
		case 22:
		case 23:
		case 24:
		case 25:
		case 26:
		case 27:
		case 28:
		case 29:
		case 30:
		case 31:
		case 32:
		case 33:
		case 34:
		case 35:
		case 36:
		case 37:
		case 38:
		case 39:
		case 40:
		case 41:
			return 2;
			break;
		
		case 43:
		case 42:
		case 44:
		case 45:
		case 46:
		case 47:
		case 48:
		case 49:
		case 50:
		case 51:
		case 52:
		case 53:
		case 54:
		case 55:
		case 56:
			return 3;
			break;
	}
	return -1;
}

void func_385(int iParam0)//Position - 0x1ECCD
{
	Global_1760739.f_11 = iParam0;
}

int func_386(int iParam0)//Position - 0x1ECDD
{
	int iVar0;
	
	if (iParam0 != func_9() && func_387(iParam0, 1, 1))
	{
		iVar0 = gameplay::is_bit_set(Global_2421621[iParam0 /*358*/].f_312, 1);
		return iVar0;
	}
	return false;
}

bool func_387(int iParam0, int iParam1, int iParam2)//Position - 0x1ED15
{
	int iVar0;
	
	iVar0 = iParam0;
	if (iVar0 != -1)
	{
		if (network::network_is_player_active(iParam0))
		{
			if (iParam1)
			{
				if (!player::is_player_playing(iParam0))
				{
					return false;
				}
			}
			if (iParam2)
			{
				if (!Global_2433082.f_3[iVar0])
				{
					return false;
				}
			}
			return true;
		}
	}
	return false;
}

bool func_388(var uParam0, int iParam1, int iParam2)//Position - 0x1ED5F
{
	if (iParam1 == -1)
	{
		return true;
	}
	func_8(uParam0, iParam2, 0);
	if (network::network_is_game_in_progress() && !iParam2)
	{
		if (gameplay::absi(network::get_time_difference(network::get_network_time(), *uParam0)) >= iParam1)
		{
			return true;
		}
	}
	else if (gameplay::absi(network::get_time_difference(gameplay::get_game_timer(), *uParam0)) >= iParam1)
	{
		return true;
	}
	return false;
}

var func_389(int iParam0)//Position - 0x1EDBD
{
	struct<21> Var0;
	
	func_23(iParam0, &Var0, 20);
	Stack.Push(iParam0);
	Call_Loc(Var0.f_20);
	return StackVal;
}

void func_390()//Position - 0x1EDD6
{
	int iVar0;
	int iVar1[8];
	var uVar10[8];
	int iVar19;
	int iVar20;
	int iVar21;
	int iVar22;
	
	if (!entity::is_entity_dead(player::player_ped_id(), 0))
	{
		if (entity::is_entity_visible(player::player_ped_id()))
		{
			entity::set_entity_visible(player::player_ped_id(), false, 0);
		}
	}
	iVar0 = func_389(Local_133.f_1);
	iVar19 = 0;
	while (iVar19 < iVar1)
	{
		iVar1[iVar19] = func_9();
		iVar19++;
	}
	iVar19 = 0;
	while (iVar19 < network::_network_get_num_participants_host())
	{
		iVar22 = player::int_to_participantindex(iVar19);
		if (network::network_is_participant_active(iVar22))
		{
			iVar21 = network::network_get_player_index(iVar22);
			if (func_387(iVar21, 1, 1) && !entity::is_entity_dead(player::get_player_ped(iVar21), 0))
			{
				if (func_386(iVar21))
				{
					if (iVar20 < 8)
					{
						iVar1[iVar20] = iVar21;
						iVar20++;
					}
				}
			}
		}
		iVar19++;
	}
	func_422(&iVar1, iVar20, &uVar10);
	if (!Local_133.f_194)
	{
		iVar19 = 0;
		while (iVar19 < 8)
		{
			if (uVar10[iVar19] == player::player_id())
			{
				Local_133.f_194 = 1;
				Jump @311; //curOff = 240
			}
			else if (func_387(uVar10[iVar19], 1, 1) && !gameplay::is_bit_set(Global_1761522.f_829[iVar0], uVar10[iVar19]))
			{
			}
			else
			{
				if (iVar19 == 7)
				{
					Local_133.f_194 = 1;
				}
				iVar19++;
			}
		}
	}
	if (Local_133.f_194)
	{
		if (func_392(iVar0, 0))
		{
			func_391(&(Local_133.f_195), 0, 0);
			func_4(17);
		}
	}
}

void func_391(var uParam0, int iParam1, int iParam2)//Position - 0x1EF31
{
	if (network::network_is_game_in_progress() && !iParam1)
	{
		if (!iParam2)
		{
			*uParam0 = network::get_network_time();
		}
		else
		{
			*uParam0 = network::_0x89023FBBF9200E9F();
		}
	}
	else
	{
		*uParam0 = gameplay::get_game_timer();
	}
	uParam0->f_1 = 1;
}

bool func_392(int iParam0, int iParam1)//Position - 0x1EF6E
{
	var uVar0;
	int iVar1;
	struct<24> Var2;
	int iVar26;
	struct<24> Var27;
	int iVar51;
	var uVar52;
	var uVar55;
	var uVar58;
	int iVar59;
	vector3 vVar60;
	var uVar63;
	float fVar64;
	
	if (iParam0 == -1)
	{
		return true;
	}
	if (!Global_1761522)
	{
		func_420(iParam0);
	}
	else
	{
		func_418();
		if (Global_1761522.f_522)
		{
			if (!Global_1761522.f_521)
			{
				Var2.f_10 = 8;
				Var2.f_20 = 1069547520;
				Var2 = { func_417(iParam0) };
				iVar26 = func_416((Var2.f_8 * Var2.f_9), 256);
				func_414(&(Global_1761522.f_7), &(Global_1761522.f_264), iVar26);
				Global_1761522.f_521 = 1;
				return false;
			}
		}
		if (Global_2415705.f_2265[iParam0] == player::player_id())
		{
			Var27.f_10 = 8;
			Var27.f_20 = 1069547520;
			Var27 = { func_417(iParam0) };
			if (!Global_1761522.f_524 && Global_1761522.f_5 == 0)
			{
				if (!Global_1761522.f_6)
				{
					if (Global_1761522.f_522)
					{
						Global_1761522.f_4 = func_413(&Var27);
					}
					else
					{
						Global_1761522.f_4 = func_412(&Var27);
					}
					if (Global_1761522.f_4 > -1)
					{
						Global_1761522.f_525 = { func_407(&Var27, Global_1761522.f_4) };
						Global_1761522.f_6 = 1;
					}
					else
					{
						func_406(&Var27);
						return false;
					}
				}
				if (Global_1761522.f_6)
				{
					if (!func_405(Global_1761522.f_525, Var27.f_6, Var27.f_20))
					{
						Global_1761522.f_5 = func_404(Global_1761522.f_525, Var27.f_6, Var27.f_20);
						if (Global_1761522.f_5 != 0)
						{
							func_403(Global_1761522.f_4, &uVar0, &iVar1);
							gameplay::set_bit(&(Global_1761522.f_530[uVar0]), iVar1);
						}
					}
					else
					{
						Global_1761522.f_5 = 0;
						Global_1761522.f_6 = 0;
					}
				}
			}
			if (!Global_1761522.f_524)
			{
				if (Global_1761522.f_5 != 0)
				{
					iVar59 = worldprobe::_get_raycast_result(Global_1761522.f_5, &iVar51, &uVar52, &uVar55, &uVar58);
					if (iVar59 == 2)
					{
						if (iVar51 > 0)
						{
							Global_1761522.f_5 = 0;
							Global_1761522.f_6 = 0;
							return false;
						}
						else
						{
							Global_1761522.f_524 = 1;
						}
					}
					else if (iVar59 == 0)
					{
						Global_1761522.f_5 = 0;
					}
				}
			}
			if (Global_1761522.f_524)
			{
				vVar60 = { Global_1761522.f_525 };
				fVar64 = func_401(Global_1761522.f_1, &Var27, &(Global_1761522.f_525));
				if (gameplay::get_ground_z_for_3d_coord(Global_1761522.f_525, &uVar63, 0))
				{
					vVar60.z = uVar63;
				}
				if (func_395(vVar60, fVar64, 0, 0, 0, 0, 1, iParam1, 1, 1))
				{
					func_393();
					return true;
				}
			}
		}
	}
	return false;
}

void func_393()//Position - 0x1F1E2
{
	if (Global_1761522)
	{
		func_394(player::player_id(), Global_1761522.f_1, Global_1761522.f_4);
		Global_1761522 = 0;
		Global_1761522.f_4 = 0;
		Global_1761522.f_5 = 0;
		Global_1761522.f_529 = gameplay::get_game_timer();
		Global_1761522.f_6 = 0;
	}
}

void func_394(int iParam0, var uParam1, var uParam2)//Position - 0x1F22A
{
	struct<5> Var0;
	int iVar5;
	
	Var0 = 525;
	Var0.f_2 = iParam0;
	Var0.f_3 = uParam1;
	Var0.f_4 = uParam2;
	iVar5 = func_123(1, 1);
	if (!iVar5 == 0)
	{
		script::trigger_script_event(1, &Var0, 5, iVar5);
	}
}

bool func_395(vector3 vParam0, float fParam3, int iParam4, int iParam5, int iParam6, int iParam7, int iParam8, int iParam9, int iParam10, int iParam11)//Position - 0x1F266
{
	vector3 vVar0;
	float fVar3;
	int iVar4;
	
	Global_17151.f_6 = 1;
	if (streaming::is_player_switch_in_progress() && !iParam9)
	{
		if (Global_2433082.f_731)
		{
			func_399(0, iParam9);
		}
		return false;
	}
	if ((streaming::is_new_load_scene_active() && !iParam9) && !player::is_player_teleport_active())
	{
		return false;
	}
	if (!func_167())
	{
		if (func_398(player::player_id(), 1, 0))
		{
			if (((iParam9 && func_387(player::player_id(), 1, 0)) && streaming::is_player_switch_in_progress()) && Global_2421621[player::player_id() /*358*/].f_225 == 1)
			{
			}
			else
			{
				return false;
			}
		}
	}
	if (fParam3 < 0f)
	{
		fParam3 = (fParam3 + 360f);
	}
	if (fParam3 >= 360f)
	{
		fParam3 = (fParam3 + -360f);
	}
	if (!Global_2433082.f_731 && !iParam11)
	{
		vVar0 = { entity::get_entity_coords(player::player_ped_id(), 0) };
		if ((gameplay::absf((vVar0.x - vParam0.x)) < 0.2f && gameplay::absf((vVar0.y - vParam0.y)) < 0.2f) && gameplay::absf((vVar0.y - vParam0.y)) < 1.2f)
		{
			fVar3 = (fParam3 - entity::get_entity_heading(player::player_ped_id()));
			if (fVar3 > 180f)
			{
				fVar3 = (fVar3 + -360f);
			}
			if (fVar3 < -180f)
			{
				fVar3 = (fVar3 + 360f);
			}
			if (gameplay::absf(fVar3) < 1f)
			{
				Global_2433082.f_731 = 0;
				Global_2433082.f_732 = 0;
				if (player::is_player_teleport_active())
				{
					player::stop_player_teleport();
				}
				return true;
			}
		}
	}
	if (((!vParam0.x == Global_2433082.f_733 || !vParam0.y == Global_2433082.f_733.f_1) || !vParam0.y == Global_2433082.f_733.f_2) || !fParam3 == Global_2433082.f_736)
	{
		if (Global_2433082.f_731 == 1)
		{
			if (network::get_time_difference(network::get_network_time(), Global_2433082.f_737) < func_397(0))
			{
				return false;
			}
			player::stop_player_teleport();
			Global_2433082.f_732 = 1;
		}
		else
		{
			Global_2433082.f_732 = 0;
		}
		Global_2433082.f_733 = { vParam0 };
		Global_2433082.f_736 = fParam3;
		Global_2433082.f_731 = 0;
	}
	if (!Global_2433082.f_731 && !player::is_player_teleport_active())
	{
		if (iParam4)
		{
			iParam5 = false;
		}
		iParam7 = iParam7;
		if (iParam7)
		{
		}
		if (iParam5)
		{
		}
		if (iParam8)
		{
		}
		if (ped::is_ped_in_any_vehicle(player::player_ped_id(), 0))
		{
			if (!gameplay::is_bit_set(Global_91538.f_1308[44], 16))
			{
				func_396();
			}
			if (!weapon::get_current_ped_vehicle_weapon(player::player_ped_id(), &(Global_2404994.f_485)))
			{
				Global_2404994.f_485 = 0;
			}
		}
		if (iParam9)
		{
			if (iParam4)
			{
				if (ped::is_ped_in_any_vehicle(player::player_ped_id(), 0))
				{
					iVar4 = ped::get_vehicle_ped_is_using(player::player_ped_id());
					entity::set_entity_coords(iVar4, vParam0, 0, true, 1, 1);
					entity::set_entity_heading(iVar4, fParam3);
				}
				else
				{
					entity::set_entity_coords(player::player_ped_id(), vParam0, 0, false, 0, 1);
					entity::set_entity_heading(player::player_ped_id(), fParam3);
				}
			}
			else
			{
				entity::set_entity_coords(player::player_ped_id(), vParam0, 0, false, 0, 1);
				entity::set_entity_heading(player::player_ped_id(), fParam3);
			}
			func_399(iParam6, iParam9);
			return true;
		}
		else
		{
			streaming::clear_focus();
			player::start_player_teleport(player::player_id(), vParam0, fParam3, iParam4, iParam10, 0);
		}
		Global_2433082.f_737 = network::get_network_time();
		Global_2433082.f_731 = 1;
	}
	if (Global_2433082.f_731)
	{
		Global_17151.f_6 = 1;
		Global_2433082.f_737 = network::get_network_time();
		if (iParam9)
		{
			if (system::vdist(entity::get_entity_coords(player::player_ped_id(), 0), Global_2433082.f_733) < 2f)
			{
				if (player::is_player_teleport_active())
				{
					player::stop_player_teleport();
				}
				func_399(iParam6, iParam9);
				return true;
			}
		}
		if (!player::is_player_teleport_active())
		{
			func_399(iParam6, iParam9);
			return true;
		}
	}
	return false;
}

void func_396()//Position - 0x1F60F
{
	int iVar0;
	
	iVar0 = audio::get_player_radio_station_index();
	if (unk_0x2DD39BF3E2F9C47F() && Global_2404994.f_2214 == 0)
	{
		iVar0 = 255;
	}
	if (!iVar0 == Global_2404994.f_2213)
	{
		if (!audio::is_radio_retuning())
		{
			Global_2404994.f_2213 = iVar0;
		}
	}
}

int func_397(int iParam0)//Position - 0x1F658
{
	if (cam::is_screen_faded_out())
	{
		return 10000;
	}
	if (iParam0)
	{
		return 5000;
	}
	return 1000;
}

bool func_398(int iParam0, int iParam1, int iParam2)//Position - 0x1F67B
{
	if (Global_2421621[iParam0 /*358*/].f_225 == 99)
	{
		if ((iParam2 && Global_2421621[iParam0 /*358*/].f_228 == 0) || iParam2 == 0)
		{
			return false;
		}
	}
	if (iParam1)
	{
		if (Global_2421621[iParam0 /*358*/].f_225 == 13)
		{
			return false;
		}
	}
	return true;
}

void func_399(int iParam0, int iParam1)//Position - 0x1F6D2
{
	if (!iParam0)
	{
		cam::set_gameplay_cam_relative_pitch(0f, 1065353216);
		cam::set_gameplay_cam_relative_heading(0f);
	}
	if (!entity::is_entity_dead(player::player_ped_id(), 0))
	{
		ped::clear_ped_wetness(player::player_ped_id());
	}
	if (!iParam1)
	{
		streaming::clear_focus();
	}
	if (player::is_player_teleport_active())
	{
		player::stop_player_teleport();
	}
	func_16();
	if (!gameplay::is_bit_set(Global_1589933[player::player_id() /*601*/].f_257.f_13, 14))
	{
		func_400();
	}
}

void func_400()//Position - 0x1F73B
{
	Global_2501629.f_80 = 1;
}

var func_401(int iParam0, var uParam1, var uParam2)//Position - 0x1F74A
{
	vector3 vVar0;
	vector3 vVar3;
	int iVar6;
	float fVar7;
	var uVar8;
	
	while (func_402(iParam0, iVar6, &vVar0, &vVar3, &fVar7, &uVar8))
	{
		if (object::is_point_in_angled_area(*uParam2, vVar0, vVar3, fVar7, 0, true))
		{
			return uVar8;
		}
		iVar6++;
	}
	return uParam1->f_7;
}

bool func_402(int iParam0, int iParam1, var uParam2, var uParam3, var uParam4, var uParam5)//Position - 0x1F78E
{
	switch (iParam0)
	{
		case 21:
			switch (iParam1)
			{
				case 0:
					*uParam2 = { 998.0289f, -3202.443f, -38.86309f };
					*uParam3 = { 998.0486f, -3196.208f, -35.64316f };
					*uParam4 = 3.5f;
					*uParam5 = 0f;
					return true;
					break;
			}
			break;
	}
	return false;
}

void func_403(int iParam0, var uParam1, var uParam2)//Position - 0x1F7ED
{
	if (iParam0 > -1 && iParam0 < 256)
	{
		*uParam1 = system::floor((system::to_float(iParam0) / 32f));
		*uParam2 = (iParam0 - *uParam1 * 32);
	}
	else
	{
		*uParam1 = 0;
		*uParam2 = 0;
	}
}

int func_404(vector3 vParam0, float fParam3, var uParam4)//Position - 0x1F830
{
	vector3 vVar0;
	int iVar3;
	
	vVar0 = { vParam0 + Vector(uParam4, 0f, 0f) };
	iVar3 = worldprobe::_cast_3d_ray_point_to_point(vParam0, vVar0, fParam3, 7, 0, 0);
	if (iVar3 != 0)
	{
	}
	return iVar3;
}

bool func_405(vector3 vParam0, float fParam3, float fParam4)//Position - 0x1F863
{
	int iVar0;
	int iVar1;
	vector3 vVar2;
	vector3 vVar5;
	vector3 vVar8;
	float fVar11;
	
	vVar8 = { vParam0 };
	vVar8.z = 0f;
	fVar11 = (fParam3 * fParam3);
	iVar0 = 0;
	while (iVar0 < 30)
	{
		iVar1 = player::int_to_playerindex(iVar0);
		if (func_387(iVar1, 1, 1))
		{
			vVar2 = { func_131(iVar1) };
			vVar5 = { vVar2 };
			vVar5.z = 0f;
			if (system::vdist2(vVar5, vVar8) < fVar11)
			{
				if (vVar2.y >= (vParam0.y - fParam3) && vVar2.y < ((vParam0.y + fParam4) + fParam3))
				{
					return true;
				}
			}
		}
		iVar0++;
	}
	return false;
}

void func_406(var uParam0)//Position - 0x1F8F6
{
	if (Global_1761522)
	{
		Global_1761522.f_524 = 1;
		Global_1761522.f_525 = { func_407(uParam0, uParam0->f_19) };
		Global_1761522.f_4 = uParam0->f_19;
	}
}

Vector3 func_407(var uParam0, int iParam1)//Position - 0x1F92A
{
	vector3 vVar0;
	int iVar3;
	int iVar4;
	int iVar5;
	vector3 vVar6;
	vector3 vVar9;
	float fVar12;
	float fVar13;
	
	if (iParam1 > -1 && iParam1 < 256)
	{
		iVar3 = system::floor((system::to_float(iParam1) / system::to_float(uParam0->f_8)));
		iVar4 = (iParam1 - (uParam0->f_8 * iVar3));
		if ((iVar4 % 2) == 1)
		{
			iVar5 = system::ceil((system::to_float(iVar4) / 2f));
		}
		else
		{
			iVar5 = (system::floor((system::to_float(iVar4) / 2f)) * -1);
		}
		vVar6 = { func_410(uParam0) };
		vVar9 = { func_409(vVar6, 2) };
		fVar12 = 0f;
		if ((iVar3 % 2) == 1)
		{
			if ((system::floor((system::to_float(iVar3) / 2f)) % 2) == 0)
			{
				fVar12 = 0.5f;
			}
			else
			{
				fVar12 = -0.5f;
			}
		}
		vVar0 = { *uParam0 + FtoV((system::to_float(iVar5) + fVar12)) * vVar9 * Vector(uParam0->f_3, uParam0->f_3, uParam0->f_3) + FtoV(system::to_float(iVar3)) * vVar6 * Vector(uParam0->f_4, uParam0->f_4, uParam0->f_4) };
		if (uParam0->f_21)
		{
			vVar0 = { vVar0 + func_408(uParam0, iParam1) };
		}
		if (gameplay::get_ground_z_for_3d_coord(vVar0, &fVar13, 0))
		{
			vVar0.z = ((fVar13 + uParam0->f_6) + uParam0->f_5);
		}
	}
	return vVar0;
}

Vector3 func_408(var uParam0, int iParam1)//Position - 0x1FA3E
{
	float fVar0;
	int iVar1;
	float fVar2;
	float fVar3;
	vector3 vVar4;
	vector3 vVar7;
	
	fVar0 = (system::to_float((iParam1 % uParam0->f_8)) * uParam0->f_3);
	iVar1 = system::floor((system::to_float(iParam1) / system::to_float(uParam0->f_8)));
	fVar2 = 0f;
	if ((iVar1 % 2) == 1)
	{
		if ((system::floor((system::to_float(iVar1) / 2f)) % 2) == 0)
		{
			fVar2 = 0.5f;
		}
		else
		{
			fVar2 = -0.5f;
		}
	}
	fVar3 = (system::sin(((fVar0 + fVar2) * uParam0->f_22)) * uParam0->f_23);
	vVar4 = { func_410(uParam0) };
	vVar7 = { vVar4 * Vector(fVar3, fVar3, fVar3) };
	return vVar7;
}

Vector3 func_409(vector3 vParam0, int iParam3)//Position - 0x1FACA
{
	vector3 vVar0;
	
	switch (iParam3)
	{
		case 0:
			vVar0.x = -vParam0.y;
			vVar0.y = vParam0.x;
			break;
		
		case 1:
			vVar0.x = -vParam0.x;
			vVar0.y = -vParam0.y;
			break;
		
		case 2:
			vVar0.x = vParam0.y;
			vVar0.y = -vParam0.x;
			break;
	}
	vVar0.z = vParam0.y;
	return vVar0;
}

Vector3 func_410(var uParam0)//Position - 0x1FB28
{
	return func_411(uParam0->f_7);
}

Vector3 func_411(float fParam0)//Position - 0x1FB38
{
	return -system::sin(fParam0), system::cos(fParam0), 0f;
}

int func_412(var uParam0)//Position - 0x1FB4E
{
	int iVar0;
	vector3 vVar1;
	float fVar4;
	float fVar5;
	int iVar6;
	int iVar7;
	var uVar8;
	int iVar9;
	int iVar10;
	vector3 vVar11;
	
	iVar0 = -1;
	fVar4 = 9999.9f;
	iVar6 = func_416((uParam0->f_8 * uParam0->f_9), 256);
	iVar10 = uParam0->f_19;
	vVar11 = { func_407(uParam0, iVar10) };
	iVar7 = 0;
	while (iVar7 < iVar6)
	{
		func_403(iVar7, &uVar8, &iVar9);
		if ((!gameplay::is_bit_set(Global_1761522.f_530[uVar8], iVar9) && !gameplay::is_bit_set(uParam0->f_10[uVar8], iVar9)) && !gameplay::is_bit_set(Global_1761522.f_539[Global_1761522.f_1 /*9*/][uVar8], iVar9))
		{
			vVar1 = { func_407(uParam0, iVar7) };
			fVar5 = system::vdist(vVar1, vVar11);
			if (fVar5 < fVar4)
			{
				fVar4 = fVar5;
				iVar0 = iVar7;
			}
		}
		iVar7++;
	}
	return iVar0;
}

int func_413(var uParam0)//Position - 0x1FC15
{
	var uVar0;
	int iVar1;
	int iVar2;
	int iVar3;
	
	if (!Global_1761522.f_522)
	{
	}
	if (Global_1761522.f_523 < 0 || Global_1761522.f_523 >= Global_1761522.f_264)
	{
		return -1;
	}
	iVar2 = false;
	iVar3 = -1;
	while (!iVar2)
	{
		iVar3 = Global_1761522.f_264[Global_1761522.f_523];
		if (iVar3 > -1)
		{
			func_403(iVar3, &uVar0, &iVar1);
			if ((!gameplay::is_bit_set(Global_1761522.f_530[uVar0], iVar1) && !gameplay::is_bit_set(uParam0->f_10[uVar0], iVar1)) && !gameplay::is_bit_set(Global_1761522.f_539[Global_1761522.f_1 /*9*/][uVar0], iVar1))
			{
				iVar2 = true;
			}
		}
	else
	{
		}
		else
		{
			if (Global_1761522.f_523 < (Global_1761522.f_264 - 1))
			{
				Global_1761522.f_523++;
			}
		}
	}
	if (!iVar2)
	{
		return -1;
	}
	return iVar3;
}

void func_414(var uParam0, var uParam1, int iParam2)//Position - 0x1FCFE
{
	int iVar0;
	int iVar1;
	
	iVar0 = 1;
	while (iVar0 <= (iParam2 - 1))
	{
		iVar1 = iVar0;
		while (iVar1 > 0 && (*uParam0)[(iVar1 - 1)] > (*uParam0)[iVar1])
		{
			func_415(uParam0, uParam1, iVar1, (iVar1 - 1));
			iVar1 = (iVar1 - 1);
		}
		iVar0++;
	}
}

void func_415(var uParam0, var uParam1, int iParam2, int iParam3)//Position - 0x1FD51
{
	var uVar0;
	var uVar1;
	
	uVar0 = (*uParam0)[iParam2];
	(*uParam0)[iParam2] = (*uParam0)[iParam3];
	(*uParam0)[iParam3] = uVar0;
	uVar1 = (*uParam1)[iParam2];
	(*uParam1)[iParam2] = (*uParam1)[iParam3];
	(*uParam1)[iParam3] = uVar1;
}

int func_416(int iParam0, int iParam1)//Position - 0x1FD91
{
	if (iParam0 > iParam1)
	{
		return iParam1;
	}
	return iParam0;
}

struct<24> func_417(int iParam0)//Position - 0x1FDA7
{
	struct<24> Var0;
	
	Var0.f_10 = 8;
	Var0.f_20 = 1069547520;
	switch (iParam0)
	{
		case 0:
			Var0 = { 51.7513f, 6339.846f, 31.2258f };
			Var0.f_3 = 1.41f;
			Var0.f_4 = 1.81f;
			Var0.f_5 = 0.1f;
			Var0.f_6 = 0.71f;
			Var0.f_7 = 29.16f;
			Var0.f_8 = 13;
			Var0.f_9 = 9;
			Var0.f_10[0] = 0;
			Var0.f_10[1] = 0;
			Var0.f_10[2] = 0;
			Var0.f_10[3] = 0;
			gameplay::set_bit(&(Var0.f_10[3]), 11);
			gameplay::set_bit(&(Var0.f_10[3]), 13);
			gameplay::set_bit(&(Var0.f_10[3]), 15);
			Var0.f_10[4] = 0;
			Var0.f_10[5] = 0;
			Var0.f_10[6] = 0;
			Var0.f_10[7] = 0;
			break;
		
		case 2:
			Var0 = { 418.4608f, 6520.72f, 27.7201f };
			Var0.f_3 = 1.41f;
			Var0.f_4 = 1.81f;
			Var0.f_5 = 0.13f;
			Var0.f_6 = 0.8f;
			Var0.f_7 = 263.52f;
			Var0.f_8 = 15;
			Var0.f_9 = 7;
			Var0.f_10[0] = 0;
			gameplay::set_bit(&(Var0.f_10[0]), 13);
			Var0.f_10[1] = 0;
			Var0.f_10[2] = 0;
			gameplay::set_bit(&(Var0.f_10[2]), 11);
			gameplay::set_bit(&(Var0.f_10[2]), 13);
			gameplay::set_bit(&(Var0.f_10[2]), 14);
			gameplay::set_bit(&(Var0.f_10[2]), 15);
			gameplay::set_bit(&(Var0.f_10[2]), 16);
			gameplay::set_bit(&(Var0.f_10[2]), 26);
			gameplay::set_bit(&(Var0.f_10[2]), 27);
			gameplay::set_bit(&(Var0.f_10[2]), 28);
			gameplay::set_bit(&(Var0.f_10[2]), 30);
			gameplay::set_bit(&(Var0.f_10[2]), 31);
			Var0.f_10[3] = 0;
			gameplay::set_bit(&(Var0.f_10[3]), 1);
			Var0.f_10[4] = 0;
			Var0.f_10[5] = 0;
			Var0.f_10[6] = 0;
			Var0.f_10[7] = 0;
			break;
		
		case 1:
			Var0 = { 52.7514f, 6487.154f, 31.4267f };
			Var0.f_3 = 1.41f;
			Var0.f_4 = 1.42f;
			Var0.f_5 = 0.13f;
			Var0.f_6 = 0.8f;
			Var0.f_7 = 314.9f;
			Var0.f_8 = 31;
			Var0.f_9 = 2;
			Var0.f_19 = 0;
			Var0.f_10[0] = 0;
			gameplay::set_bit(&(Var0.f_10[0]), 18);
			gameplay::set_bit(&(Var0.f_10[0]), 20);
			Var0.f_10[1] = 0;
			Var0.f_10[2] = 0;
			gameplay::set_bit(&(Var0.f_10[2]), 23);
			gameplay::set_bit(&(Var0.f_10[2]), 25);
			gameplay::set_bit(&(Var0.f_10[2]), 27);
			Var0.f_10[3] = 0;
			Var0.f_10[4] = 0;
			Var0.f_10[5] = 0;
			Var0.f_10[6] = 0;
			Var0.f_10[7] = 0;
			break;
		
		case 4:
			Var0 = { -408.6213f, 6168.991f, 31.4782f };
			Var0.f_3 = 1.41f;
			Var0.f_4 = 1.58f;
			Var0.f_5 = 0.13f;
			Var0.f_6 = 0.8f;
			Var0.f_7 = 314.9f;
			Var0.f_8 = 19;
			Var0.f_9 = 5;
			Var0.f_19 = 8;
			Var0.f_10[0] = 0;
			Var0.f_10[1] = 0;
			Var0.f_10[2] = 0;
			gameplay::set_bit(&(Var0.f_10[2]), 8);
			gameplay::set_bit(&(Var0.f_10[2]), 10);
			gameplay::set_bit(&(Var0.f_10[2]), 25);
			gameplay::set_bit(&(Var0.f_10[2]), 27);
			gameplay::set_bit(&(Var0.f_10[2]), 29);
			Var0.f_10[3] = 0;
			Var0.f_10[4] = 0;
			Var0.f_10[5] = 0;
			Var0.f_10[6] = 0;
			Var0.f_10[7] = 0;
			break;
		
		case 3:
			Var0 = { -160.5925f, 6333.8f, 31.5808f };
			Var0.f_3 = 1.47f;
			Var0.f_4 = 16.07f;
			Var0.f_5 = 0.1f;
			Var0.f_6 = 0.8f;
			Var0.f_7 = 316.08f;
			Var0.f_8 = 27;
			Var0.f_9 = 2;
			Var0.f_19 = 4;
			Var0.f_10[0] = 0;
			gameplay::set_bit(&(Var0.f_10[0]), 22);
			gameplay::set_bit(&(Var0.f_10[0]), 24);
			gameplay::set_bit(&(Var0.f_10[0]), 26);
			Var0.f_10[1] = 0;
			gameplay::set_bit(&(Var0.f_10[1]), 1);
			gameplay::set_bit(&(Var0.f_10[1]), 3);
			gameplay::set_bit(&(Var0.f_10[1]), 5);
			gameplay::set_bit(&(Var0.f_10[1]), 7);
			gameplay::set_bit(&(Var0.f_10[1]), 8);
			gameplay::set_bit(&(Var0.f_10[1]), 9);
			gameplay::set_bit(&(Var0.f_10[1]), 10);
			gameplay::set_bit(&(Var0.f_10[1]), 11);
			gameplay::set_bit(&(Var0.f_10[1]), 13);
			gameplay::set_bit(&(Var0.f_10[1]), 15);
			gameplay::set_bit(&(Var0.f_10[1]), 17);
			Var0.f_10[2] = 0;
			Var0.f_10[3] = 0;
			Var0.f_10[4] = 0;
			Var0.f_10[5] = 0;
			Var0.f_10[6] = 0;
			Var0.f_10[7] = 0;
			break;
		
		case 5:
			Var0 = { 1443.526f, -1652.72f, 66.0608f };
			Var0.f_3 = 1.41f;
			Var0.f_4 = 1.83f;
			Var0.f_5 = 0.1f;
			Var0.f_6 = 0.8f;
			Var0.f_7 = 20.88f;
			Var0.f_8 = 18;
			Var0.f_9 = 6;
			Var0.f_19 = 11;
			Var0.f_10[0] = 0;
			gameplay::set_bit(&(Var0.f_10[0]), 0);
			gameplay::set_bit(&(Var0.f_10[0]), 1);
			gameplay::set_bit(&(Var0.f_10[0]), 14);
			gameplay::set_bit(&(Var0.f_10[0]), 16);
			Var0.f_10[1] = 0;
			gameplay::set_bit(&(Var0.f_10[1]), 2);
			gameplay::set_bit(&(Var0.f_10[1]), 20);
			Var0.f_10[2] = 0;
			gameplay::set_bit(&(Var0.f_10[2]), 4);
			gameplay::set_bit(&(Var0.f_10[2]), 6);
			gameplay::set_bit(&(Var0.f_10[2]), 15);
			gameplay::set_bit(&(Var0.f_10[2]), 17);
			gameplay::set_bit(&(Var0.f_10[2]), 19);
			gameplay::set_bit(&(Var0.f_10[2]), 21);
			gameplay::set_bit(&(Var0.f_10[2]), 23);
			gameplay::set_bit(&(Var0.f_10[2]), 25);
			gameplay::set_bit(&(Var0.f_10[2]), 31);
			Var0.f_10[3] = 0;
			gameplay::set_bit(&(Var0.f_10[3]), 1);
			gameplay::set_bit(&(Var0.f_10[3]), 3);
			gameplay::set_bit(&(Var0.f_10[3]), 5);
			gameplay::set_bit(&(Var0.f_10[3]), 7);
			gameplay::set_bit(&(Var0.f_10[3]), 9);
			gameplay::set_bit(&(Var0.f_10[3]), 11);
			Var0.f_10[4] = 0;
			Var0.f_10[5] = 0;
			Var0.f_10[6] = 0;
			Var0.f_10[7] = 0;
			break;
		
		case 7:
			Var0 = { 101.7318f, 174.0827f, 104.5913f };
			Var0.f_3 = 1.41f;
			Var0.f_4 = 1.81f;
			Var0.f_5 = 0.1f;
			Var0.f_6 = 1f;
			Var0.f_7 = 160.92f;
			Var0.f_8 = 19;
			Var0.f_9 = 7;
			Var0.f_10[0] = 0;
			gameplay::set_bit(&(Var0.f_10[0]), 3);
			gameplay::set_bit(&(Var0.f_10[0]), 4);
			gameplay::set_bit(&(Var0.f_10[0]), 5);
			gameplay::set_bit(&(Var0.f_10[0]), 6);
			gameplay::set_bit(&(Var0.f_10[0]), 7);
			gameplay::set_bit(&(Var0.f_10[0]), 8);
			gameplay::set_bit(&(Var0.f_10[0]), 9);
			gameplay::set_bit(&(Var0.f_10[0]), 10);
			gameplay::set_bit(&(Var0.f_10[0]), 11);
			gameplay::set_bit(&(Var0.f_10[0]), 12);
			gameplay::set_bit(&(Var0.f_10[0]), 14);
			gameplay::set_bit(&(Var0.f_10[0]), 16);
			gameplay::set_bit(&(Var0.f_10[0]), 18);
			Var0.f_10[1] = 0;
			Var0.f_10[2] = 0;
			gameplay::set_bit(&(Var0.f_10[2]), 31);
			Var0.f_10[3] = 0;
			gameplay::set_bit(&(Var0.f_10[3]), 0);
			gameplay::set_bit(&(Var0.f_10[3]), 1);
			gameplay::set_bit(&(Var0.f_10[3]), 3);
			gameplay::set_bit(&(Var0.f_10[3]), 5);
			gameplay::set_bit(&(Var0.f_10[3]), 7);
			gameplay::set_bit(&(Var0.f_10[3]), 9);
			gameplay::set_bit(&(Var0.f_10[3]), 15);
			gameplay::set_bit(&(Var0.f_10[3]), 17);
			gameplay::set_bit(&(Var0.f_10[3]), 19);
			Var0.f_10[4] = 0;
			gameplay::set_bit(&(Var0.f_10[4]), 2);
			gameplay::set_bit(&(Var0.f_10[4]), 4);
			Var0.f_10[5] = 0;
			Var0.f_10[6] = 0;
			Var0.f_10[7] = 0;
			break;
		
		case 6:
			Var0 = { -1461.558f, -382.7768f, 38.7483f };
			Var0.f_3 = 1.41f;
			Var0.f_4 = 1.69f;
			Var0.f_5 = 0.1f;
			Var0.f_6 = 0.8f;
			Var0.f_7 = 225.72f;
			Var0.f_8 = 20;
			Var0.f_9 = 5;
			Var0.f_19 = 0;
			Var0.f_10[0] = 0;
			gameplay::set_bit(&(Var0.f_10[0]), 12);
			gameplay::set_bit(&(Var0.f_10[0]), 14);
			gameplay::set_bit(&(Var0.f_10[0]), 16);
			gameplay::set_bit(&(Var0.f_10[0]), 18);
			Var0.f_10[1] = 0;
			gameplay::set_bit(&(Var0.f_10[1]), 2);
			gameplay::set_bit(&(Var0.f_10[1]), 4);
			gameplay::set_bit(&(Var0.f_10[1]), 6);
			gameplay::set_bit(&(Var0.f_10[1]), 26);
			Var0.f_10[2] = 0;
			gameplay::set_bit(&(Var0.f_10[2]), 11);
			gameplay::set_bit(&(Var0.f_10[2]), 13);
			gameplay::set_bit(&(Var0.f_10[2]), 15);
			gameplay::set_bit(&(Var0.f_10[2]), 16);
			gameplay::set_bit(&(Var0.f_10[2]), 17);
			gameplay::set_bit(&(Var0.f_10[2]), 19);
			gameplay::set_bit(&(Var0.f_10[2]), 21);
			gameplay::set_bit(&(Var0.f_10[2]), 23);
			gameplay::set_bit(&(Var0.f_10[2]), 25);
			gameplay::set_bit(&(Var0.f_10[2]), 27);
			gameplay::set_bit(&(Var0.f_10[2]), 29);
			gameplay::set_bit(&(Var0.f_10[2]), 31);
			Var0.f_10[3] = 0;
			gameplay::set_bit(&(Var0.f_10[3]), 1);
			gameplay::set_bit(&(Var0.f_10[3]), 3);
			Var0.f_10[4] = 0;
			Var0.f_10[5] = 0;
			Var0.f_10[6] = 0;
			Var0.f_10[7] = 0;
			break;
		
		case 9:
			Var0 = { -1176.414f, -1382.795f, 4.8572f };
			Var0.f_3 = 1.41f;
			Var0.f_4 = 1.83f;
			Var0.f_5 = 0.1f;
			Var0.f_6 = 0.8f;
			Var0.f_7 = 35.64f;
			Var0.f_8 = 11;
			Var0.f_9 = 8;
			Var0.f_19 = 7;
			Var0.f_10[0] = 0;
			gameplay::set_bit(&(Var0.f_10[0]), 9);
			gameplay::set_bit(&(Var0.f_10[0]), 20);
			Var0.f_10[1] = 0;
			gameplay::set_bit(&(Var0.f_10[1]), 30);
			Var0.f_10[2] = 0;
			gameplay::set_bit(&(Var0.f_10[2]), 0);
			gameplay::set_bit(&(Var0.f_10[2]), 2);
			gameplay::set_bit(&(Var0.f_10[2]), 3);
			gameplay::set_bit(&(Var0.f_10[2]), 5);
			gameplay::set_bit(&(Var0.f_10[2]), 7);
			gameplay::set_bit(&(Var0.f_10[2]), 9);
			gameplay::set_bit(&(Var0.f_10[2]), 11);
			gameplay::set_bit(&(Var0.f_10[2]), 12);
			gameplay::set_bit(&(Var0.f_10[2]), 13);
			gameplay::set_bit(&(Var0.f_10[2]), 14);
			gameplay::set_bit(&(Var0.f_10[2]), 15);
			gameplay::set_bit(&(Var0.f_10[2]), 16);
			gameplay::set_bit(&(Var0.f_10[2]), 18);
			gameplay::set_bit(&(Var0.f_10[2]), 20);
			gameplay::set_bit(&(Var0.f_10[2]), 22);
			gameplay::set_bit(&(Var0.f_10[2]), 23);
			Var0.f_10[3] = 0;
			Var0.f_10[4] = 0;
			Var0.f_10[5] = 0;
			Var0.f_10[6] = 0;
			Var0.f_10[7] = 0;
			break;
		
		case 8:
			Var0 = { 300.613f, -759.0207f, 29.3106f };
			Var0.f_3 = 1.41f;
			Var0.f_4 = 2.41f;
			Var0.f_5 = 0.1f;
			Var0.f_6 = 0.8f;
			Var0.f_7 = 252.36f;
			Var0.f_8 = 25;
			Var0.f_9 = 2;
			Var0.f_19 = 0;
			Var0.f_10[0] = 0;
			gameplay::set_bit(&(Var0.f_10[0]), 2);
			gameplay::set_bit(&(Var0.f_10[0]), 4);
			gameplay::set_bit(&(Var0.f_10[0]), 5);
			gameplay::set_bit(&(Var0.f_10[0]), 6);
			gameplay::set_bit(&(Var0.f_10[0]), 7);
			gameplay::set_bit(&(Var0.f_10[0]), 8);
			gameplay::set_bit(&(Var0.f_10[0]), 9);
			gameplay::set_bit(&(Var0.f_10[0]), 10);
			gameplay::set_bit(&(Var0.f_10[0]), 11);
			gameplay::set_bit(&(Var0.f_10[0]), 12);
			gameplay::set_bit(&(Var0.f_10[0]), 13);
			gameplay::set_bit(&(Var0.f_10[0]), 14);
			gameplay::set_bit(&(Var0.f_10[0]), 15);
			gameplay::set_bit(&(Var0.f_10[0]), 17);
			gameplay::set_bit(&(Var0.f_10[0]), 28);
			gameplay::set_bit(&(Var0.f_10[0]), 30);
			Var0.f_10[1] = 0;
			gameplay::set_bit(&(Var0.f_10[1]), 0);
			gameplay::set_bit(&(Var0.f_10[1]), 11);
			gameplay::set_bit(&(Var0.f_10[1]), 13);
			Var0.f_10[2] = 0;
			Var0.f_10[3] = 0;
			Var0.f_10[4] = 0;
			Var0.f_10[5] = 0;
			Var0.f_10[6] = 0;
			Var0.f_10[7] = 0;
			break;
		
		case 10:
			Var0 = { 202.4223f, 2460.433f, 55.7011f };
			Var0.f_3 = 1.41f;
			Var0.f_4 = 1.8f;
			Var0.f_5 = 0.1f;
			Var0.f_6 = 0.8f;
			Var0.f_7 = 200.16f;
			Var0.f_8 = 18;
			Var0.f_9 = 6;
			Var0.f_19 = 0;
			Var0.f_10[0] = 0;
			Var0.f_10[1] = 0;
			gameplay::set_bit(&(Var0.f_10[1]), 3);
			gameplay::set_bit(&(Var0.f_10[1]), 19);
			gameplay::set_bit(&(Var0.f_10[1]), 21);
			gameplay::set_bit(&(Var0.f_10[1]), 29);
			gameplay::set_bit(&(Var0.f_10[1]), 31);
			Var0.f_10[2] = 0;
			gameplay::set_bit(&(Var0.f_10[2]), 1);
			gameplay::set_bit(&(Var0.f_10[2]), 3);
			gameplay::set_bit(&(Var0.f_10[2]), 5);
			gameplay::set_bit(&(Var0.f_10[2]), 7);
			gameplay::set_bit(&(Var0.f_10[2]), 8);
			gameplay::set_bit(&(Var0.f_10[2]), 9);
			gameplay::set_bit(&(Var0.f_10[2]), 10);
			gameplay::set_bit(&(Var0.f_10[2]), 11);
			gameplay::set_bit(&(Var0.f_10[2]), 12);
			gameplay::set_bit(&(Var0.f_10[2]), 13);
			gameplay::set_bit(&(Var0.f_10[2]), 14);
			gameplay::set_bit(&(Var0.f_10[2]), 15);
			gameplay::set_bit(&(Var0.f_10[2]), 16);
			gameplay::set_bit(&(Var0.f_10[2]), 17);
			gameplay::set_bit(&(Var0.f_10[2]), 18);
			gameplay::set_bit(&(Var0.f_10[2]), 19);
			gameplay::set_bit(&(Var0.f_10[2]), 21);
			gameplay::set_bit(&(Var0.f_10[2]), 23);
			gameplay::set_bit(&(Var0.f_10[2]), 25);
			gameplay::set_bit(&(Var0.f_10[2]), 26);
			gameplay::set_bit(&(Var0.f_10[2]), 27);
			gameplay::set_bit(&(Var0.f_10[2]), 28);
			gameplay::set_bit(&(Var0.f_10[2]), 29);
			gameplay::set_bit(&(Var0.f_10[2]), 30);
			gameplay::set_bit(&(Var0.f_10[2]), 31);
			Var0.f_10[3] = 0;
			gameplay::set_bit(&(Var0.f_10[3]), 0);
			gameplay::set_bit(&(Var0.f_10[3]), 1);
			gameplay::set_bit(&(Var0.f_10[3]), 2);
			gameplay::set_bit(&(Var0.f_10[3]), 3);
			gameplay::set_bit(&(Var0.f_10[3]), 4);
			gameplay::set_bit(&(Var0.f_10[3]), 5);
			gameplay::set_bit(&(Var0.f_10[3]), 6);
			gameplay::set_bit(&(Var0.f_10[3]), 7);
			gameplay::set_bit(&(Var0.f_10[3]), 8);
			gameplay::set_bit(&(Var0.f_10[3]), 9);
			gameplay::set_bit(&(Var0.f_10[3]), 11);
			Var0.f_10[4] = 0;
			Var0.f_10[5] = 0;
			Var0.f_10[6] = 0;
			Var0.f_10[7] = 0;
			break;
		
		case 12:
			Var0 = { 2846.742f, 4449.625f, 48.5186f };
			Var0.f_3 = 1.41f;
			Var0.f_4 = 1.56f;
			Var0.f_5 = 0.1f;
			Var0.f_6 = 0.8f;
			Var0.f_7 = 106.92f;
			Var0.f_8 = 19;
			Var0.f_9 = 5;
			Var0.f_19 = 0;
			Var0.f_10[0] = 0;
			Var0.f_10[1] = 0;
			Var0.f_10[2] = 0;
			gameplay::set_bit(&(Var0.f_10[2]), 23);
			gameplay::set_bit(&(Var0.f_10[2]), 25);
			gameplay::set_bit(&(Var0.f_10[2]), 27);
			gameplay::set_bit(&(Var0.f_10[2]), 29);
			Var0.f_10[3] = 0;
			Var0.f_10[4] = 0;
			Var0.f_10[5] = 0;
			Var0.f_10[6] = 0;
			Var0.f_10[7] = 0;
			break;
		
		case 11:
			Var0 = { 387.8527f, 3586.863f, 33.2922f };
			Var0.f_3 = 1.41f;
			Var0.f_4 = 1.56f;
			Var0.f_5 = 0.1f;
			Var0.f_6 = 0.8f;
			Var0.f_7 = 349.91f;
			Var0.f_8 = 19;
			Var0.f_9 = 5;
			Var0.f_19 = 0;
			Var0.f_10[0] = 0;
			gameplay::set_bit(&(Var0.f_10[0]), 17);
			Var0.f_10[1] = 0;
			gameplay::set_bit(&(Var0.f_10[1]), 2);
			gameplay::set_bit(&(Var0.f_10[1]), 4);
			Var0.f_10[2] = 0;
			Var0.f_10[3] = 0;
			Var0.f_10[4] = 0;
			Var0.f_10[5] = 0;
			Var0.f_10[6] = 0;
			Var0.f_10[7] = 0;
			break;
		
		case 14:
			Var0 = { 644.2907f, 2783.898f, 41.9584f };
			Var0.f_3 = 1.41f;
			Var0.f_4 = 1.62f;
			Var0.f_5 = 0.1f;
			Var0.f_6 = 0.8f;
			Var0.f_7 = 183.96f;
			Var0.f_8 = 13;
			Var0.f_9 = 8;
			Var0.f_19 = 9;
			Var0.f_10[0] = 0;
			Var0.f_10[1] = 0;
			Var0.f_10[2] = 0;
			gameplay::set_bit(&(Var0.f_10[2]), 30);
			Var0.f_10[3] = 0;
			gameplay::set_bit(&(Var0.f_10[3]), 0);
			gameplay::set_bit(&(Var0.f_10[3]), 2);
			gameplay::set_bit(&(Var0.f_10[3]), 3);
			gameplay::set_bit(&(Var0.f_10[3]), 4);
			gameplay::set_bit(&(Var0.f_10[3]), 5);
			gameplay::set_bit(&(Var0.f_10[3]), 6);
			Var0.f_10[4] = 0;
			Var0.f_10[5] = 0;
			Var0.f_10[6] = 0;
			Var0.f_10[7] = 0;
			break;
		
		case 13:
			Var0 = { 1658.298f, 4851.931f, 41.9609f };
			Var0.f_3 = 1.41f;
			Var0.f_4 = 2.85f;
			Var0.f_5 = 0.1f;
			Var0.f_6 = 0.8f;
			Var0.f_7 = 277.2f;
			Var0.f_8 = 27;
			Var0.f_9 = 2;
			Var0.f_19 = 0;
			Var0.f_10[0] = 0;
			gameplay::set_bit(&(Var0.f_10[0]), 24);
			gameplay::set_bit(&(Var0.f_10[0]), 26);
			Var0.f_10[1] = 0;
			gameplay::set_bit(&(Var0.f_10[1]), 4);
			gameplay::set_bit(&(Var0.f_10[1]), 6);
			gameplay::set_bit(&(Var0.f_10[1]), 8);
			gameplay::set_bit(&(Var0.f_10[1]), 10);
			gameplay::set_bit(&(Var0.f_10[1]), 12);
			gameplay::set_bit(&(Var0.f_10[1]), 13);
			gameplay::set_bit(&(Var0.f_10[1]), 14);
			gameplay::set_bit(&(Var0.f_10[1]), 15);
			gameplay::set_bit(&(Var0.f_10[1]), 16);
			gameplay::set_bit(&(Var0.f_10[1]), 17);
			gameplay::set_bit(&(Var0.f_10[1]), 18);
			gameplay::set_bit(&(Var0.f_10[1]), 19);
			gameplay::set_bit(&(Var0.f_10[1]), 20);
			gameplay::set_bit(&(Var0.f_10[1]), 21);
			Var0.f_10[2] = 0;
			Var0.f_10[3] = 0;
			Var0.f_10[4] = 0;
			Var0.f_10[5] = 0;
			Var0.f_10[6] = 0;
			Var0.f_10[7] = 0;
			break;
		
		case 15:
			Var0 = { 1180.122f, -3116.589f, 6.028f };
			Var0.f_3 = 1.41f;
			Var0.f_4 = 1.41f;
			Var0.f_5 = 0.1f;
			Var0.f_6 = 0.8f;
			Var0.f_7 = 90f;
			Var0.f_8 = 19;
			Var0.f_9 = 5;
			Var0.f_19 = 3;
			Var0.f_10[0] = 0;
			gameplay::set_bit(&(Var0.f_10[0]), 4);
			gameplay::set_bit(&(Var0.f_10[0]), 6);
			gameplay::set_bit(&(Var0.f_10[0]), 8);
			gameplay::set_bit(&(Var0.f_10[0]), 10);
			gameplay::set_bit(&(Var0.f_10[0]), 12);
			gameplay::set_bit(&(Var0.f_10[0]), 14);
			gameplay::set_bit(&(Var0.f_10[0]), 25);
			gameplay::set_bit(&(Var0.f_10[0]), 27);
			gameplay::set_bit(&(Var0.f_10[0]), 29);
			gameplay::set_bit(&(Var0.f_10[0]), 31);
			Var0.f_10[1] = 0;
			gameplay::set_bit(&(Var0.f_10[1]), 1);
			gameplay::set_bit(&(Var0.f_10[1]), 3);
			gameplay::set_bit(&(Var0.f_10[1]), 12);
			gameplay::set_bit(&(Var0.f_10[1]), 14);
			gameplay::set_bit(&(Var0.f_10[1]), 16);
			gameplay::set_bit(&(Var0.f_10[1]), 18);
			gameplay::set_bit(&(Var0.f_10[1]), 20);
			Var0.f_10[2] = 0;
			gameplay::set_bit(&(Var0.f_10[2]), 11);
			Var0.f_10[3] = 0;
			Var0.f_10[4] = 0;
			Var0.f_10[5] = 0;
			Var0.f_10[6] = 0;
			Var0.f_10[7] = 0;
			break;
		
		case 17:
			Var0 = { 137.9712f, -2473.538f, 6f };
			Var0.f_3 = 1.41f;
			Var0.f_4 = 1.61f;
			Var0.f_5 = 0.1f;
			Var0.f_6 = 0.8f;
			Var0.f_7 = 235.44f;
			Var0.f_8 = 15;
			Var0.f_9 = 9;
			Var0.f_19 = 0;
			Var0.f_10[0] = 0;
			gameplay::set_bit(&(Var0.f_10[0]), 6);
			gameplay::set_bit(&(Var0.f_10[0]), 8);
			gameplay::set_bit(&(Var0.f_10[0]), 10);
			gameplay::set_bit(&(Var0.f_10[0]), 12);
			gameplay::set_bit(&(Var0.f_10[0]), 14);
			gameplay::set_bit(&(Var0.f_10[0]), 21);
			gameplay::set_bit(&(Var0.f_10[0]), 23);
			gameplay::set_bit(&(Var0.f_10[0]), 25);
			gameplay::set_bit(&(Var0.f_10[0]), 27);
			gameplay::set_bit(&(Var0.f_10[0]), 28);
			gameplay::set_bit(&(Var0.f_10[0]), 29);
			Var0.f_10[1] = 0;
			gameplay::set_bit(&(Var0.f_10[1]), 2);
			gameplay::set_bit(&(Var0.f_10[1]), 4);
			gameplay::set_bit(&(Var0.f_10[1]), 6);
			gameplay::set_bit(&(Var0.f_10[1]), 7);
			gameplay::set_bit(&(Var0.f_10[1]), 8);
			gameplay::set_bit(&(Var0.f_10[1]), 9);
			gameplay::set_bit(&(Var0.f_10[1]), 10);
			gameplay::set_bit(&(Var0.f_10[1]), 11);
			gameplay::set_bit(&(Var0.f_10[1]), 12);
			gameplay::set_bit(&(Var0.f_10[1]), 17);
			gameplay::set_bit(&(Var0.f_10[1]), 19);
			gameplay::set_bit(&(Var0.f_10[1]), 21);
			gameplay::set_bit(&(Var0.f_10[1]), 22);
			gameplay::set_bit(&(Var0.f_10[1]), 23);
			gameplay::set_bit(&(Var0.f_10[1]), 24);
			gameplay::set_bit(&(Var0.f_10[1]), 25);
			gameplay::set_bit(&(Var0.f_10[1]), 26);
			gameplay::set_bit(&(Var0.f_10[1]), 27);
			Var0.f_10[2] = 0;
			gameplay::set_bit(&(Var0.f_10[2]), 0);
			gameplay::set_bit(&(Var0.f_10[2]), 2);
			gameplay::set_bit(&(Var0.f_10[2]), 4);
			gameplay::set_bit(&(Var0.f_10[2]), 5);
			gameplay::set_bit(&(Var0.f_10[2]), 6);
			gameplay::set_bit(&(Var0.f_10[2]), 7);
			gameplay::set_bit(&(Var0.f_10[2]), 8);
			gameplay::set_bit(&(Var0.f_10[2]), 9);
			gameplay::set_bit(&(Var0.f_10[2]), 10);
			gameplay::set_bit(&(Var0.f_10[2]), 18);
			gameplay::set_bit(&(Var0.f_10[2]), 19);
			gameplay::set_bit(&(Var0.f_10[2]), 20);
			gameplay::set_bit(&(Var0.f_10[2]), 21);
			gameplay::set_bit(&(Var0.f_10[2]), 22);
			gameplay::set_bit(&(Var0.f_10[2]), 23);
			gameplay::set_bit(&(Var0.f_10[2]), 24);
			gameplay::set_bit(&(Var0.f_10[2]), 25);
			Var0.f_10[3] = 0;
			gameplay::set_bit(&(Var0.f_10[3]), 0);
			gameplay::set_bit(&(Var0.f_10[3]), 2);
			gameplay::set_bit(&(Var0.f_10[3]), 4);
			gameplay::set_bit(&(Var0.f_10[3]), 5);
			gameplay::set_bit(&(Var0.f_10[3]), 6);
			gameplay::set_bit(&(Var0.f_10[3]), 7);
			gameplay::set_bit(&(Var0.f_10[3]), 8);
			gameplay::set_bit(&(Var0.f_10[3]), 9);
			gameplay::set_bit(&(Var0.f_10[3]), 10);
			gameplay::set_bit(&(Var0.f_10[3]), 11);
			gameplay::set_bit(&(Var0.f_10[3]), 13);
			gameplay::set_bit(&(Var0.f_10[3]), 15);
			gameplay::set_bit(&(Var0.f_10[3]), 17);
			gameplay::set_bit(&(Var0.f_10[3]), 19);
			gameplay::set_bit(&(Var0.f_10[3]), 20);
			gameplay::set_bit(&(Var0.f_10[3]), 21);
			gameplay::set_bit(&(Var0.f_10[3]), 22);
			gameplay::set_bit(&(Var0.f_10[3]), 23);
			gameplay::set_bit(&(Var0.f_10[3]), 24);
			gameplay::set_bit(&(Var0.f_10[3]), 26);
			gameplay::set_bit(&(Var0.f_10[3]), 28);
			gameplay::set_bit(&(Var0.f_10[3]), 30);
			Var0.f_10[4] = 0;
			gameplay::set_bit(&(Var0.f_10[4]), 0);
			gameplay::set_bit(&(Var0.f_10[4]), 1);
			gameplay::set_bit(&(Var0.f_10[4]), 2);
			gameplay::set_bit(&(Var0.f_10[4]), 3);
			gameplay::set_bit(&(Var0.f_10[4]), 4);
			gameplay::set_bit(&(Var0.f_10[4]), 5);
			gameplay::set_bit(&(Var0.f_10[4]), 6);
			gameplay::set_bit(&(Var0.f_10[4]), 7);
			gameplay::set_bit(&(Var0.f_10[4]), 9);
			gameplay::set_bit(&(Var0.f_10[4]), 11);
			gameplay::set_bit(&(Var0.f_10[4]), 13);
			gameplay::set_bit(&(Var0.f_10[4]), 14);
			gameplay::set_bit(&(Var0.f_10[4]), 15);
			gameplay::set_bit(&(Var0.f_10[4]), 16);
			gameplay::set_bit(&(Var0.f_10[4]), 17);
			gameplay::set_bit(&(Var0.f_10[4]), 18);
			gameplay::set_bit(&(Var0.f_10[4]), 19);
			gameplay::set_bit(&(Var0.f_10[4]), 20);
			gameplay::set_bit(&(Var0.f_10[4]), 21);
			Var0.f_10[5] = 0;
			Var0.f_10[6] = 0;
			Var0.f_10[7] = 0;
			break;
		
		case 16:
			Var0 = { -254.9883f, -2586.877f, 6.0006f };
			Var0.f_3 = 1.41f;
			Var0.f_4 = 1.61f;
			Var0.f_5 = 0.1f;
			Var0.f_6 = 0.8f;
			Var0.f_7 = 90f;
			Var0.f_8 = 15;
			Var0.f_9 = 9;
			Var0.f_19 = 6;
			Var0.f_10[0] = 0;
			gameplay::set_bit(&(Var0.f_10[0]), 8);
			gameplay::set_bit(&(Var0.f_10[0]), 10);
			gameplay::set_bit(&(Var0.f_10[0]), 12);
			gameplay::set_bit(&(Var0.f_10[0]), 14);
			gameplay::set_bit(&(Var0.f_10[0]), 25);
			gameplay::set_bit(&(Var0.f_10[0]), 27);
			gameplay::set_bit(&(Var0.f_10[0]), 29);
			Var0.f_10[1] = 0;
			gameplay::set_bit(&(Var0.f_10[1]), 6);
			gameplay::set_bit(&(Var0.f_10[1]), 8);
			gameplay::set_bit(&(Var0.f_10[1]), 10);
			gameplay::set_bit(&(Var0.f_10[1]), 12);
			gameplay::set_bit(&(Var0.f_10[1]), 21);
			gameplay::set_bit(&(Var0.f_10[1]), 23);
			gameplay::set_bit(&(Var0.f_10[1]), 25);
			Var0.f_10[2] = 0;
			Var0.f_10[3] = 0;
			Var0.f_10[4] = 0;
			Var0.f_10[5] = 0;
			Var0.f_10[6] = 0;
			Var0.f_10[7] = 0;
			break;
		
		case 19:
			Var0 = { 669.6413f, -2667.506f, 6.0812f };
			Var0.f_3 = 1.41f;
			Var0.f_4 = 1.55f;
			Var0.f_5 = 0.1f;
			Var0.f_6 = 0.8f;
			Var0.f_7 = 90f;
			Var0.f_8 = 15;
			Var0.f_9 = 9;
			Var0.f_19 = 0;
			Var0.f_10[0] = 0;
			gameplay::set_bit(&(Var0.f_10[0]), 5);
			gameplay::set_bit(&(Var0.f_10[0]), 7);
			gameplay::set_bit(&(Var0.f_10[0]), 9);
			gameplay::set_bit(&(Var0.f_10[0]), 11);
			Var0.f_10[1] = 0;
			Var0.f_10[2] = 0;
			Var0.f_10[3] = 0;
			Var0.f_10[4] = 0;
			Var0.f_10[5] = 0;
			Var0.f_10[6] = 0;
			Var0.f_10[7] = 0;
			break;
		
		case 18:
			Var0 = { -334.9665f, -2777.501f, 5.0002f };
			Var0.f_3 = 1.41f;
			Var0.f_4 = 1.55f;
			Var0.f_5 = 0.1f;
			Var0.f_6 = 0.8f;
			Var0.f_7 = 90f;
			Var0.f_8 = 15;
			Var0.f_9 = 9;
			Var0.f_19 = 2;
			Var0.f_10[0] = 0;
			gameplay::set_bit(&(Var0.f_10[0]), 14);
			Var0.f_10[1] = 0;
			gameplay::set_bit(&(Var0.f_10[1]), 12);
			gameplay::set_bit(&(Var0.f_10[1]), 27);
			Var0.f_10[2] = 0;
			gameplay::set_bit(&(Var0.f_10[2]), 10);
			Var0.f_10[3] = 0;
			gameplay::set_bit(&(Var0.f_10[3]), 3);
			gameplay::set_bit(&(Var0.f_10[3]), 5);
			gameplay::set_bit(&(Var0.f_10[3]), 18);
			gameplay::set_bit(&(Var0.f_10[3]), 20);
			gameplay::set_bit(&(Var0.f_10[3]), 22);
			Var0.f_10[4] = 0;
			gameplay::set_bit(&(Var0.f_10[4]), 3);
			gameplay::set_bit(&(Var0.f_10[4]), 5);
			Var0.f_10[5] = 0;
			Var0.f_10[6] = 0;
			Var0.f_10[7] = 0;
			break;
		
		case 20:
			Var0 = { 1088.728f, -3188.18f, -38.9935f };
			Var0.f_3 = 1.35f;
			Var0.f_4 = 1.45f;
			Var0.f_5 = 0.1f;
			Var0.f_6 = 0.64f;
			Var0.f_7 = 180f;
			Var0.f_8 = 7;
			Var0.f_9 = 8;
			Var0.f_19 = 0;
			Var0.f_20 = 1f;
			Var0.f_21 = 1;
			Var0.f_22 = 8.82f;
			Var0.f_23 = 0.58f;
			Var0.f_10[0] = 0;
			gameplay::set_bit(&(Var0.f_10[0]), 2);
			gameplay::set_bit(&(Var0.f_10[0]), 3);
			gameplay::set_bit(&(Var0.f_10[0]), 4);
			gameplay::set_bit(&(Var0.f_10[0]), 5);
			gameplay::set_bit(&(Var0.f_10[0]), 6);
			gameplay::set_bit(&(Var0.f_10[0]), 10);
			gameplay::set_bit(&(Var0.f_10[0]), 12);
			gameplay::set_bit(&(Var0.f_10[0]), 13);
			gameplay::set_bit(&(Var0.f_10[0]), 17);
			gameplay::set_bit(&(Var0.f_10[0]), 18);
			gameplay::set_bit(&(Var0.f_10[0]), 19);
			gameplay::set_bit(&(Var0.f_10[0]), 20);
			gameplay::set_bit(&(Var0.f_10[0]), 25);
			gameplay::set_bit(&(Var0.f_10[0]), 26);
			gameplay::set_bit(&(Var0.f_10[0]), 27);
			gameplay::set_bit(&(Var0.f_10[0]), 31);
			Var0.f_10[1] = 0;
			gameplay::set_bit(&(Var0.f_10[1]), 1);
			gameplay::set_bit(&(Var0.f_10[1]), 4);
			gameplay::set_bit(&(Var0.f_10[1]), 5);
			gameplay::set_bit(&(Var0.f_10[1]), 6);
			gameplay::set_bit(&(Var0.f_10[1]), 7);
			gameplay::set_bit(&(Var0.f_10[1]), 8);
			gameplay::set_bit(&(Var0.f_10[1]), 9);
			gameplay::set_bit(&(Var0.f_10[1]), 12);
			gameplay::set_bit(&(Var0.f_10[1]), 13);
			gameplay::set_bit(&(Var0.f_10[1]), 14);
			gameplay::set_bit(&(Var0.f_10[1]), 15);
			gameplay::set_bit(&(Var0.f_10[1]), 16);
			gameplay::set_bit(&(Var0.f_10[1]), 20);
			gameplay::set_bit(&(Var0.f_10[1]), 22);
			Var0.f_10[2] = 0;
			Var0.f_10[3] = 0;
			Var0.f_10[4] = 0;
			Var0.f_10[5] = 0;
			Var0.f_10[6] = 0;
			Var0.f_10[7] = 0;
			break;
		
		case 21:
			Var0 = { 997.294f, -3197.584f, -36.3937f };
			Var0.f_3 = 2.01f;
			Var0.f_4 = 0.58f;
			Var0.f_5 = 0.1f;
			Var0.f_6 = 0.6f;
			Var0.f_7 = 270f;
			Var0.f_8 = 6;
			Var0.f_9 = 12;
			Var0.f_19 = 7;
			Var0.f_20 = 1f;
			Var0.f_10[0] = 0;
			gameplay::set_bit(&(Var0.f_10[0]), 0);
			gameplay::set_bit(&(Var0.f_10[0]), 4);
			gameplay::set_bit(&(Var0.f_10[0]), 5);
			gameplay::set_bit(&(Var0.f_10[0]), 9);
			gameplay::set_bit(&(Var0.f_10[0]), 10);
			gameplay::set_bit(&(Var0.f_10[0]), 11);
			gameplay::set_bit(&(Var0.f_10[0]), 12);
			gameplay::set_bit(&(Var0.f_10[0]), 16);
			gameplay::set_bit(&(Var0.f_10[0]), 17);
			gameplay::set_bit(&(Var0.f_10[0]), 18);
			gameplay::set_bit(&(Var0.f_10[0]), 19);
			gameplay::set_bit(&(Var0.f_10[0]), 20);
			gameplay::set_bit(&(Var0.f_10[0]), 22);
			gameplay::set_bit(&(Var0.f_10[0]), 23);
			gameplay::set_bit(&(Var0.f_10[0]), 24);
			gameplay::set_bit(&(Var0.f_10[0]), 25);
			gameplay::set_bit(&(Var0.f_10[0]), 26);
			gameplay::set_bit(&(Var0.f_10[0]), 27);
			gameplay::set_bit(&(Var0.f_10[0]), 28);
			gameplay::set_bit(&(Var0.f_10[0]), 29);
			gameplay::set_bit(&(Var0.f_10[0]), 30);
			gameplay::set_bit(&(Var0.f_10[0]), 31);
			Var0.f_10[1] = 0;
			gameplay::set_bit(&(Var0.f_10[1]), 0);
			gameplay::set_bit(&(Var0.f_10[1]), 1);
			gameplay::set_bit(&(Var0.f_10[1]), 2);
			gameplay::set_bit(&(Var0.f_10[1]), 3);
			gameplay::set_bit(&(Var0.f_10[1]), 4);
			gameplay::set_bit(&(Var0.f_10[1]), 5);
			gameplay::set_bit(&(Var0.f_10[1]), 6);
			gameplay::set_bit(&(Var0.f_10[1]), 7);
			gameplay::set_bit(&(Var0.f_10[1]), 8);
			gameplay::set_bit(&(Var0.f_10[1]), 9);
			gameplay::set_bit(&(Var0.f_10[1]), 10);
			gameplay::set_bit(&(Var0.f_10[1]), 12);
			gameplay::set_bit(&(Var0.f_10[1]), 14);
			gameplay::set_bit(&(Var0.f_10[1]), 15);
			gameplay::set_bit(&(Var0.f_10[1]), 20);
			gameplay::set_bit(&(Var0.f_10[1]), 21);
			gameplay::set_bit(&(Var0.f_10[1]), 26);
			gameplay::set_bit(&(Var0.f_10[1]), 27);
			Var0.f_10[2] = 0;
			gameplay::set_bit(&(Var0.f_10[2]), 0);
			gameplay::set_bit(&(Var0.f_10[2]), 1);
			gameplay::set_bit(&(Var0.f_10[2]), 4);
			gameplay::set_bit(&(Var0.f_10[2]), 6);
			Var0.f_10[3] = 0;
			Var0.f_10[4] = 0;
			Var0.f_10[5] = 0;
			Var0.f_10[6] = 0;
			Var0.f_10[7] = 0;
			break;
		
		case 22:
			Var0 = { 1062.991f, -3182.502f, -39.1633f };
			Var0.f_3 = 1.35f;
			Var0.f_4 = 1.35f;
			Var0.f_5 = 0.1f;
			Var0.f_6 = 0.64f;
			Var0.f_7 = 180f;
			Var0.f_8 = 4;
			Var0.f_9 = 8;
			Var0.f_19 = 0;
			Var0.f_20 = 1f;
			Var0.f_21 = 1;
			Var0.f_22 = 10f;
			Var0.f_23 = 0.57f;
			Var0.f_10[0] = 0;
			gameplay::set_bit(&(Var0.f_10[0]), 7);
			gameplay::set_bit(&(Var0.f_10[0]), 14);
			Var0.f_10[1] = 0;
			Var0.f_10[2] = 0;
			Var0.f_10[3] = 0;
			Var0.f_10[4] = 0;
			Var0.f_10[5] = 0;
			Var0.f_10[6] = 0;
			Var0.f_10[7] = 0;
			break;
		
		case 24:
			Var0 = { 1138.451f, -3197.307f, -39.6657f };
			Var0.f_3 = 1.2f;
			Var0.f_4 = 1.2f;
			Var0.f_5 = 0.1f;
			Var0.f_6 = 0.64f;
			Var0.f_7 = 90f;
			Var0.f_8 = 4;
			Var0.f_9 = 10;
			Var0.f_19 = 0;
			Var0.f_20 = 1f;
			Var0.f_10[0] = 0;
			gameplay::set_bit(&(Var0.f_10[0]), 1);
			gameplay::set_bit(&(Var0.f_10[0]), 5);
			gameplay::set_bit(&(Var0.f_10[0]), 7);
			gameplay::set_bit(&(Var0.f_10[0]), 9);
			gameplay::set_bit(&(Var0.f_10[0]), 12);
			gameplay::set_bit(&(Var0.f_10[0]), 17);
			gameplay::set_bit(&(Var0.f_10[0]), 18);
			gameplay::set_bit(&(Var0.f_10[0]), 21);
			gameplay::set_bit(&(Var0.f_10[0]), 22);
			gameplay::set_bit(&(Var0.f_10[0]), 24);
			gameplay::set_bit(&(Var0.f_10[0]), 25);
			gameplay::set_bit(&(Var0.f_10[0]), 26);
			gameplay::set_bit(&(Var0.f_10[0]), 28);
			gameplay::set_bit(&(Var0.f_10[0]), 30);
			Var0.f_10[1] = 0;
			gameplay::set_bit(&(Var0.f_10[1]), 0);
			gameplay::set_bit(&(Var0.f_10[1]), 1);
			gameplay::set_bit(&(Var0.f_10[1]), 2);
			gameplay::set_bit(&(Var0.f_10[1]), 5);
			gameplay::set_bit(&(Var0.f_10[1]), 6);
			Var0.f_10[2] = 0;
			Var0.f_10[3] = 0;
			Var0.f_10[4] = 0;
			Var0.f_10[5] = 0;
			Var0.f_10[6] = 0;
			Var0.f_10[7] = 0;
			break;
		
		case 23:
			Var0 = { 1172.925f, -3196.603f, -39.008f };
			Var0.f_3 = 1.2f;
			Var0.f_4 = 1.2f;
			Var0.f_5 = 0.1f;
			Var0.f_6 = 0.64f;
			Var0.f_7 = 90f;
			Var0.f_8 = 7;
			Var0.f_9 = 10;
			Var0.f_19 = 0;
			Var0.f_20 = 1f;
			Var0.f_21 = 1;
			Var0.f_22 = 10.63f;
			Var0.f_23 = 0.5f;
			Var0.f_10[0] = 0;
			gameplay::set_bit(&(Var0.f_10[0]), 5);
			gameplay::set_bit(&(Var0.f_10[0]), 6);
			gameplay::set_bit(&(Var0.f_10[0]), 12);
			gameplay::set_bit(&(Var0.f_10[0]), 13);
			gameplay::set_bit(&(Var0.f_10[0]), 18);
			gameplay::set_bit(&(Var0.f_10[0]), 19);
			gameplay::set_bit(&(Var0.f_10[0]), 20);
			gameplay::set_bit(&(Var0.f_10[0]), 21);
			gameplay::set_bit(&(Var0.f_10[0]), 22);
			gameplay::set_bit(&(Var0.f_10[0]), 25);
			gameplay::set_bit(&(Var0.f_10[0]), 26);
			gameplay::set_bit(&(Var0.f_10[0]), 27);
			gameplay::set_bit(&(Var0.f_10[0]), 28);
			gameplay::set_bit(&(Var0.f_10[0]), 29);
			gameplay::set_bit(&(Var0.f_10[0]), 30);
			Var0.f_10[1] = 0;
			gameplay::set_bit(&(Var0.f_10[1]), 0);
			gameplay::set_bit(&(Var0.f_10[1]), 1);
			gameplay::set_bit(&(Var0.f_10[1]), 2);
			gameplay::set_bit(&(Var0.f_10[1]), 6);
			gameplay::set_bit(&(Var0.f_10[1]), 8);
			gameplay::set_bit(&(Var0.f_10[1]), 9);
			gameplay::set_bit(&(Var0.f_10[1]), 10);
			gameplay::set_bit(&(Var0.f_10[1]), 12);
			gameplay::set_bit(&(Var0.f_10[1]), 15);
			gameplay::set_bit(&(Var0.f_10[1]), 16);
			gameplay::set_bit(&(Var0.f_10[1]), 17);
			gameplay::set_bit(&(Var0.f_10[1]), 18);
			gameplay::set_bit(&(Var0.f_10[1]), 19);
			gameplay::set_bit(&(Var0.f_10[1]), 21);
			gameplay::set_bit(&(Var0.f_10[1]), 23);
			gameplay::set_bit(&(Var0.f_10[1]), 24);
			gameplay::set_bit(&(Var0.f_10[1]), 26);
			gameplay::set_bit(&(Var0.f_10[1]), 30);
			Var0.f_10[2] = 0;
			gameplay::set_bit(&(Var0.f_10[2]), 5);
			Var0.f_10[3] = 0;
			Var0.f_10[4] = 0;
			Var0.f_10[5] = 0;
			Var0.f_10[6] = 0;
			Var0.f_10[7] = 0;
			break;
		
		case 25:
			Var0 = { 972f, -2989f, -39.6471f };
			Var0.f_3 = 2f;
			Var0.f_4 = 2f;
			Var0.f_5 = 0.1f;
			Var0.f_6 = 1f;
			Var0.f_7 = 178.56f;
			Var0.f_8 = 4;
			Var0.f_9 = 4;
			Var0.f_19 = 0;
			Var0.f_20 = 1.5f;
			Var0.f_10[0] = 0;
			Var0.f_10[1] = 0;
			Var0.f_10[2] = 0;
			Var0.f_10[3] = 0;
			Var0.f_10[4] = 0;
			Var0.f_10[5] = 0;
			Var0.f_10[6] = 0;
			Var0.f_10[7] = 0;
			break;
	}
	return Var0;
}

void func_418()//Position - 0x2256C
{
	if (Global_1761522)
	{
		if (Global_1761522.f_1 != -1)
		{
			if (func_388(&(Global_1761522.f_2), 3000, 0) && Global_2415705.f_2265[Global_1761522.f_1] != player::player_id())
			{
				func_419(player::player_id(), Global_1761522.f_1);
				func_391(&(Global_1761522.f_2), 0, 0);
			}
		}
	}
}

void func_419(int iParam0, var uParam1)//Position - 0x225C9
{
	struct<4> Var0;
	int iVar4;
	
	Var0 = 524;
	Var0.f_2 = iParam0;
	Var0.f_3 = uParam1;
	iVar4 = func_123(1, 1);
	if (!iVar4 == 0)
	{
		script::trigger_script_event(1, &Var0, 4, iVar4);
	}
}

void func_420(int iParam0)//Position - 0x225FF
{
	int iVar0;
	
	if (!Global_1761522)
	{
		func_419(player::player_id(), iParam0);
		Global_1761522.f_1 = iParam0;
		Global_1761522.f_524 = 0;
		Global_1761522 = 1;
		Global_1761522.f_4 = 0;
		Global_1761522.f_5 = 0;
		Global_1761522.f_528 = gameplay::get_game_timer();
		Global_1761522.f_6 = 0;
		if (Global_1761522.f_522)
		{
			func_421(iParam0);
			Global_1761522.f_521 = 0;
			Global_1761522.f_523 = 0;
		}
		func_391(&(Global_1761522.f_2), 0, 0);
		iVar0 = 0;
		while (iVar0 < Global_1761522.f_530)
		{
			Global_1761522.f_530[iVar0] = 0;
			iVar0++;
		}
		if (func_388(&(Global_1761522.f_774[iParam0 /*2*/]), 3000, 0))
		{
			iVar0 = 0;
			while (iVar0 < 8)
			{
				Global_1761522.f_539[Global_1761522.f_1 /*9*/][iVar0] = 0;
				iVar0++;
			}
		}
	}
}

void func_421(int iParam0)//Position - 0x226DB
{
	int iVar0;
	var uVar1;
	var uVar2;
	int iVar3;
	struct<24> Var4;
	int iVar28;
	float fVar29;
	vector3 vVar30;
	int iVar33;
	vector3 vVar34;
	
	Var4.f_10 = 8;
	Var4.f_20 = 1069547520;
	Var4 = { func_417(iParam0) };
	iVar28 = func_416((Var4.f_8 * Var4.f_9), 256);
	iVar33 = Var4.f_19;
	vVar34 = { func_407(&Var4, iVar33) };
	iVar0 = 0;
	while (iVar0 < Global_1761522.f_264)
	{
		Global_1761522.f_264[iVar0] = -1;
		Global_1761522.f_7[iVar0] = 9999.9f;
		iVar0++;
	}
	iVar0 = 0;
	iVar3 = 0;
	while (iVar3 < iVar28)
	{
		func_403(iVar3, &uVar1, &uVar2);
		vVar30 = { func_407(&Var4, iVar3) };
		fVar29 = system::vdist(vVar30, vVar34);
		Global_1761522.f_7[iVar0] = fVar29;
		Global_1761522.f_264[iVar0] = iVar3;
		iVar0++;
		iVar3++;
	}
}

void func_422(int iParam0, int iParam1, var uParam2)//Position - 0x227B2
{
	int iVar0;
	int iVar1;
	int iVar2;
	int iVar3;
	int iVar4;
	int iVar5;
	
	iVar2 = func_90(player::player_id());
	iVar5 = 0;
	while (iVar5 < *uParam2)
	{
		(*uParam2)[iVar5] = func_9();
		iVar5++;
	}
	iVar5 = 0;
	while (iVar5 < *iParam0)
	{
		if (iVar2 != func_9() && (*iParam0)[iVar5] == iVar2)
		{
			(*uParam2)[(iParam1 - 1)] = iVar2;
			iVar1++;
		}
		else
		{
			iVar5++;
		}
	}
	iVar4 = 0;
	while (iVar4 < 5)
	{
		if (iVar4 == 4)
		{
			iVar0 = -1;
		}
		else
		{
			iVar0 = iVar4;
		}
		iVar5 = 0;
		while (iVar5 < iParam1)
		{
			iVar3 = (*iParam0)[iVar5];
			if (iVar3 != iVar2 && func_117(iVar3) == iVar0)
			{
				(*uParam2)[((iParam1 - 1) - iVar1)] = iVar3;
				iVar1++;
				if (iVar1 == (*uParam2 - 1))
				{
				}
				else
				{
					iVar5++;
				}
				if (iVar1 == (*uParam2 - 1))
				{
				}
				else
				{
					iVar4++;
				}
			}

void func_423()//Position - 0x228A1
{
	int iVar0;
	vector3 vVar1;
	int iVar4;
	int iVar5;
	
	if (!entity::is_entity_dead(player::player_ped_id(), 0))
	{
		if (entity::is_entity_visible(player::player_ped_id()))
		{
			entity::set_entity_visible(player::player_ped_id(), false, 0);
		}
	}
	if (func_426())
	{
		return;
	}
	iVar0 = false;
	if (func_384(Local_133.f_1) == 1)
	{
		iVar0 = true;
	}
	if (!Local_133.f_193)
	{
		vVar1 = { Local_133.f_9 - Vector(3f, 0f, 0f) };
		if (func_395(vVar1, 0f, 0, 0, 0, 0, 0, iVar0, 0, 1))
		{
			Local_133.f_193 = 1;
			if (!entity::is_entity_dead(player::player_ped_id(), 0))
			{
				entity::freeze_entity_position(player::player_ped_id(), true);
				entity::set_entity_collision(player::player_ped_id(), false, 0);
			}
		}
	}
	if (Local_133.f_193)
	{
		if (func_12(Local_133.f_1) && func_10(10, Local_133.f_1))
		{
			iVar4 = true;
		}
		else
		{
			iVar5 = func_389(Local_133.f_1);
			if (func_392(iVar5, iVar0))
			{
				iVar4 = true;
			}
		}
	}
	if (iVar4)
	{
		Global_1760739.f_16 = 0;
		func_385(1);
		if (func_12(Local_133.f_1))
		{
			gameplay::set_bit(&(Global_2421621[player::player_id() /*358*/].f_312), 2);
			if (!func_10(10, Local_133.f_1))
			{
				if (!entity::is_entity_dead(player::player_ped_id(), 0))
				{
					ai::clear_ped_tasks_immediately(player::player_ped_id());
					entity::set_entity_collision(player::player_ped_id(), true, 0);
					entity::freeze_entity_position(player::player_ped_id(), false);
					ped::_0x2208438012482A1A(player::player_ped_id(), 0, 0);
				}
			}
			func_424(Local_133.f_1);
		}
		else if (!entity::is_entity_dead(player::player_ped_id(), 0))
		{
			entity::set_entity_collision(player::player_ped_id(), true, 0);
		}
		if (func_22(Local_133.f_1))
		{
			func_21();
		}
		func_4(4);
	}
}

void func_424(int iParam0)//Position - 0x22A1B
{
	if (func_10(2, iParam0))
	{
		func_425(2, iParam0);
	}
}

void func_425(int iParam0, int iParam1)//Position - 0x22A34
{
	var uVar0;
	int iVar1;
	
	func_11(iParam1, &uVar0, &iVar1);
	switch (iParam0)
	{
		case 0:
			gameplay::clear_bit(&(Global_1760739.f_222[uVar0]), iVar1);
			return;
			break;
		
		case 1:
			gameplay::clear_bit(&(Global_1760739.f_226[uVar0]), iVar1);
			return;
			break;
		
		case 2:
			gameplay::clear_bit(&(Global_1760739.f_230[uVar0]), iVar1);
			return;
			break;
		
		case 3:
			gameplay::clear_bit(&(Global_1760739.f_504[uVar0]), iVar1);
			return;
			break;
		
		case 4:
			gameplay::clear_bit(&(Global_1760739.f_508[uVar0]), iVar1);
			return;
			break;
		
		case 5:
			gameplay::clear_bit(&(Global_1760739.f_672[uVar0]), iVar1);
			return;
			break;
		
		case 6:
			gameplay::clear_bit(&(Global_1760739.f_676[uVar0]), iVar1);
			return;
			break;
		
		case 7:
			gameplay::clear_bit(&(Global_1760739.f_680[uVar0]), iVar1);
			return;
			break;
		
		case 8:
			gameplay::clear_bit(&(Global_1760739.f_690[uVar0]), iVar1);
			return;
			break;
		
		case 9:
			gameplay::clear_bit(&(Global_1760739.f_694[uVar0]), iVar1);
			return;
			break;
		
		case 10:
			gameplay::clear_bit(&(Global_1760739.f_512[uVar0]), iVar1);
			return;
			break;
		
		case 11:
			gameplay::clear_bit(&(Global_1760739.f_684[uVar0]), iVar1);
			return;
			break;
	}
}

bool func_426()//Position - 0x22BA6
{
	if (gameplay::is_bit_set(Local_133, 2))
	{
		return false;
	}
	if (streaming::is_new_load_scene_active())
	{
		if (!streaming::is_new_load_scene_loaded())
		{
			if (func_388(&(Local_133.f_197), 8000, 0))
			{
				streaming::new_load_scene_stop();
				gameplay::set_bit(&Local_133, 2);
				func_7(&(Local_133.f_197));
				return false;
			}
			else
			{
				return true;
			}
		}
	}
	if (!gameplay::is_bit_set(Local_133, 2))
	{
		if (streaming::is_new_load_scene_active() && streaming::is_new_load_scene_loaded())
		{
			streaming::new_load_scene_stop();
			gameplay::set_bit(&Local_133, 2);
			func_7(&(Local_133.f_197));
		}
	}
	return false;
}

void func_427()//Position - 0x22C27
{
	func_431();
	if ((cam::is_screen_faded_in() && !gameplay::is_string_null_or_empty(Local_133.f_169)) && !gameplay::is_bit_set(Local_133, 0))
	{
		if (!gameplay::is_string_null_or_empty(&(Local_133.f_170)))
		{
			func_430(Local_133.f_169, &(Local_133.f_170), 10500);
		}
		else
		{
			func_429(Local_133.f_169, 10500);
		}
		gameplay::set_bit(&Local_133, 0);
	}
	if (cam::is_screen_faded_in())
	{
		if (func_217())
		{
			func_428(0, Local_133.f_1, 0);
		}
		if (unk_0x171BAFB3C60389F4(Local_133.f_187))
		{
			gameplay::_0xE6869BECDD8F2403(Local_133.f_187, 1);
		}
		Global_1760739.f_19 = 1;
		if (!gameplay::is_string_null_or_empty(Local_133.f_169))
		{
			func_1244(4);
		}
		else if (!interior::is_valid_interior(Local_133.f_5))
		{
			func_1244(5);
		}
		else if (Local_133.f_165 == 1)
		{
			func_1244(3);
			Local_133.f_165 = 0;
		}
		else
		{
			func_1244(2);
		}
	}
}

void func_428(int iParam0, int iParam1, int iParam2)//Position - 0x22CFA
{
	if (iParam0)
	{
		if (Global_1760739.f_14 == -1)
		{
			Global_1760739.f_14 = iParam1;
			Global_2421621[player::player_id() /*358*/].f_312.f_5 = iParam1;
			Global_1760739.f_12 = 1;
			Global_1760739.f_13 = iParam2;
			gameplay::set_bit(&(Global_2421621[player::player_id() /*358*/].f_312), 3);
			if (iParam2)
			{
				gameplay::set_bit(&(Global_2421621[player::player_id() /*358*/].f_312), 4);
			}
			else
			{
				gameplay::clear_bit(&(Global_2421621[player::player_id() /*358*/].f_312), 4);
			}
			Global_69965 = 1;
		}
	}
	else if (Global_1760739.f_14 == iParam1)
	{
		Global_1760739.f_14 = -1;
		Global_2421621[player::player_id() /*358*/].f_312.f_5 = -1;
		Global_1760739.f_12 = 0;
		Global_1760739.f_13 = 0;
		gameplay::clear_bit(&(Global_2421621[player::player_id() /*358*/].f_312), 3);
		gameplay::clear_bit(&(Global_2421621[player::player_id() /*358*/].f_312), 4);
		Global_69965 = 0;
	}
}

void func_429(char* sParam0, int iParam1)//Position - 0x22DDF
{
	ui::_set_text_component_format(sParam0);
	ui::_display_help_text_from_string_label(0, 0, true, iParam1);
}

void func_430(char* sParam0, char* sParam1, int iParam2)//Position - 0x22DF6
{
	ui::_set_text_component_format(sParam0);
	ui::_add_text_component_item_string(sParam1);
	ui::_display_help_text_from_string_label(0, 0, true, iParam2);
}

void func_431()//Position - 0x22E13
{
	unk1::_0xEB2D525B57F42B40();
	func_432();
}

void func_432()//Position - 0x22E23
{
	Global_17151.f_134 = 1;
}

void func_433()//Position - 0x22E31
{
	if (Global_1760739.f_720 > -1)
	{
		func_4(Global_1760739.f_720);
		Global_1760739.f_720 = -1;
		return;
	}
	if ((!entity::is_entity_dead(player::player_ped_id(), 0) && ped::is_ped_in_any_vehicle(player::player_ped_id(), 0)) && (!func_257(1) && gameplay::is_bit_set(Global_1760739.f_2, 1)))
	{
		func_4(10);
		return;
	}
	if ((!entity::is_entity_dead(player::player_ped_id(), 0) && ped::is_ped_in_any_vehicle(player::player_ped_id(), 0)) && !gameplay::is_bit_set(uLocal_100[network::participant_id_to_int()], 4))
	{
		if (func_262(player::player_ped_id(), 0) != -1)
		{
			if (!func_434())
			{
				return;
			}
		}
	}
	if (!Local_133.f_189 || func_388(&(Local_133.f_123), 400, 0))
	{
		ui::clear_help(1);
		if (ui::is_pause_menu_active())
		{
			ui::set_frontend_active(0);
		}
		cam::do_screen_fade_in(322);
		func_14(player::player_id(), 1, 524288);
		ped::set_ped_can_be_knocked_off_vehicle(player::player_ped_id(), 0);
		func_7(&(Local_133.f_123));
		Local_133.f_189 = 0;
		if (!gameplay::is_string_null_or_empty(Local_133.f_9.f_22.f_59) && !gameplay::is_string_null_or_empty(Local_133.f_9.f_22.f_60))
		{
			audio::play_sound_frontend(-1, Local_133.f_9.f_22.f_59, Local_133.f_9.f_22.f_60, 1);
		}
		func_4(14);
	}
}

bool func_434()//Position - 0x22F72
{
	int iVar0;
	int iVar1;
	
	if (func_257(1))
	{
		iVar0 = func_90(player::player_id());
		if (network::network_is_player_a_participant(iVar0))
		{
			iVar1 = network::network_get_participant_index(iVar0);
			if (iVar1 > -1)
			{
				if (gameplay::is_bit_set(uLocal_100[iVar1], 3))
				{
					return true;
				}
			}
		}
		else
		{
			return true;
		}
	}
	return false;
}

void func_435()//Position - 0x22FBD
{
	vector3 vVar0;
	float fVar3;
	vector3 vVar4;
	vector3 vVar7;
	int iVar10;
	var uVar11;
	var uVar14;
	var uVar17;
	int iVar18;
	
	if (!Local_133.f_192)
	{
		if (!entity::is_entity_dead(player::player_ped_id(), 0))
		{
			vVar0 = { entity::get_entity_coords(player::player_ped_id(), 1) };
			if (gameplay::get_ground_z_for_3d_coord(vVar0, &fVar3, 0))
			{
				vVar0.z = (fVar3 + 1.1f);
			}
			vVar4 = { func_411(entity::get_entity_heading(player::player_ped_id())) };
			vVar7 = { vVar0 + vVar4 * Vector(2f, 2f, 2f) };
			Local_133.f_191 = worldprobe::_cast_3d_ray_point_to_point(vVar0, vVar7, 1f, 4, player::player_ped_id(), 4);
			if (Local_133.f_191 != 0)
			{
				Local_133.f_192 = 1;
			}
		}
		else
		{
			func_436();
			func_4(13);
		}
	}
	else
	{
		iVar18 = worldprobe::_get_raycast_result(Local_133.f_191, &iVar10, &uVar11, &uVar14, &uVar17);
		if (iVar18 == 2)
		{
			if (iVar10 == 0)
			{
				func_436();
				if (!entity::is_entity_dead(player::player_ped_id(), 0))
				{
					player::simulate_player_input_gait(player::player_id(), 1f, 850, 0, 1, 0);
					Local_133.f_189 = 1;
				}
				func_8(&(Local_133.f_123), 0, 0);
				func_4(13);
				Local_133.f_191 = 0;
				Local_133.f_192 = 0;
			}
			else
			{
				func_436();
				func_4(13);
			}
		}
		else if (iVar18 == 0)
		{
			func_436();
			func_4(13);
		}
	}
}

void func_436()//Position - 0x230D2
{
	func_13(0);
	entity::set_entity_visible(player::player_ped_id(), true, 0);
	network::network_fade_in_entity(player::player_ped_id(), 1, 1);
	entity::freeze_entity_position(player::player_ped_id(), false);
	gameplay::clear_area_of_peds(Local_133.f_6, 20f, 0);
	if (Local_133.f_3 > -1)
	{
		func_445(0, -1);
		func_437();
	}
}

void func_437()//Position - 0x2311E
{
	int iVar0;
	
	iVar0 = 0;
	while (iVar0 < 32)
	{
		func_438(player::int_to_playerindex(iVar0));
		iVar0++;
	}
}

void func_438(int iParam0)//Position - 0x23143
{
	int iVar0;
	
	if (iParam0 == player::player_id() || !func_387(iParam0, 0, 1))
	{
		return;
	}
	if ((((func_442(iParam0, 0, 1, 1, 1) || (func_441(iParam0, 0) && !func_440(iParam0))) || func_439(iParam0)) || gameplay::is_bit_set(Global_1589933[iParam0 /*601*/].f_257.f_13, 4)) || gameplay::is_bit_set(Global_1589933[player::player_id() /*601*/].f_257.f_13, 4))
	{
		return;
	}
	if (!Global_1760739.f_706)
	{
		if (func_440(player::player_id()) && Global_2421621[player::player_id() /*358*/].f_312.f_2 > -1)
		{
			if (func_440(iParam0) && Global_2421621[iParam0 /*358*/].f_312.f_2 > -1)
			{
				if (Global_2421621[player::player_id() /*358*/].f_312.f_2 != Global_2421621[iParam0 /*358*/].f_312.f_2)
				{
					iVar0 = true;
				}
			}
			else
			{
				iVar0 = true;
			}
		}
		else if (func_440(iParam0) && Global_2421621[iParam0 /*358*/].f_312.f_2 > -1)
		{
			iVar0 = true;
		}
	}
	if (iVar0)
	{
		if (!network::_0x919B3C98ED8292F9(iParam0))
		{
			network::_0xBBDF066252829606(iParam0, true);
		}
	}
	else if (network::_0x919B3C98ED8292F9(iParam0))
	{
		network::_0xBBDF066252829606(iParam0, false);
	}
}

bool func_439(int iParam0)//Position - 0x23292
{
	if (gameplay::is_bit_set(Global_1589933[iParam0 /*601*/].f_257.f_13, 14))
	{
		return true;
	}
	if (gameplay::is_bit_set(Global_1589933[iParam0 /*601*/].f_257.f_13, 11))
	{
		return true;
	}
	return false;
}

int func_440(int iParam0)//Position - 0x232D1
{
	if (iParam0 != func_9())
	{
		if (func_387(iParam0, 1, 1))
		{
			return Global_2421621[iParam0 /*358*/].f_312.f_1 != -1;
		}
	}
	return false;
}

bool func_441(int iParam0, int iParam1)//Position - 0x23301
{
	if (func_442(iParam0, iParam1, 0, 0, 0))
	{
		if (gameplay::is_bit_set(Global_1589933[iParam0 /*601*/].f_257.f_13, 3))
		{
			return true;
		}
	}
	return false;
}

bool func_442(int iParam0, int iParam1, int iParam2, int iParam3, int iParam4)//Position - 0x23332
{
	if (Global_1589933[iParam0 /*601*/].f_257.f_15 > 0)
	{
		if (iParam1)
		{
			if (gameplay::is_bit_set(Global_1589933[iParam0 /*601*/].f_257.f_13, 0))
			{
				return true;
			}
		}
		else
		{
			return true;
		}
	}
	if (!iParam2)
	{
		if (func_444(iParam0))
		{
			return true;
		}
	}
	if (!iParam3)
	{
		if (func_443(iParam0))
		{
			return true;
		}
	}
	if (!iParam4)
	{
		if (func_218(iParam0))
		{
			return true;
		}
	}
	return false;
}

int func_443(int iParam0)//Position - 0x233AC
{
	if (iParam0 != func_9())
	{
		if (func_387(iParam0, 1, 1))
		{
			if (Global_2421621[iParam0 /*358*/].f_312.f_1 != -1)
			{
				return func_384(Global_2421621[iParam0 /*358*/].f_312.f_1) == 2;
			}
		}
	}
	return false;
}

int func_444(int iParam0)//Position - 0x233F2
{
	if (iParam0 != func_9())
	{
		if (func_387(iParam0, 1, 1))
		{
			if (Global_2421621[iParam0 /*358*/].f_312.f_1 != -1)
			{
				return func_384(Global_2421621[iParam0 /*358*/].f_312.f_1) == 0;
			}
		}
	}
	return false;
}

void func_445(int iParam0, int iParam1)//Position - 0x23438
{
	if (iParam0)
	{
		Global_1760739.f_1 = iParam1;
		Global_2421621[player::player_id() /*358*/].f_312.f_1 = iParam1;
	}
	else
	{
		Global_1760739.f_1 = -1;
		Global_2421621[player::player_id() /*358*/].f_312.f_1 = -1;
		Global_1760739.f_2 = 0;
		Global_2421621[player::player_id() /*358*/].f_312.f_3 = 0;
		gameplay::clear_bit(&(Global_2421621[player::player_id() /*358*/].f_312), 0);
	}
}

void func_446()//Position - 0x234A5
{
	int iVar0;
	int iVar1;
	int iVar2;
	int iVar3;
	int iVar4;
	
	iVar0 = false;
	if (!entity::is_entity_dead(player::player_ped_id(), 0) && ped::is_ped_in_any_vehicle(player::player_ped_id(), 0))
	{
		iVar0 = true;
	}
	iVar2 = func_1087(Local_133.f_1);
	if (iVar2 != -1)
	{
		iVar1 = func_392(iVar2, 0);
	}
	else
	{
		iVar1 = func_459(8, 0, 0, 0, 0, 0, 0, iVar0, 1, 3000, 1, 1, 0, 0, 0, 1);
	}
	if (iVar1)
	{
		if (iVar2 != -1)
		{
			if (!entity::is_entity_dead(player::player_ped_id(), 0))
			{
				player::simulate_player_input_gait(player::player_id(), 1f, 850, 0, 1, 0);
				Local_133.f_189 = 1;
			}
		}
		else if ((func_457(Local_133.f_1) && !Global_2404994.f_499.f_6) && !iVar0)
		{
			if (!entity::is_entity_dead(player::player_ped_id(), 0))
			{
				player::simulate_player_input_gait(player::player_id(), 1f, 850, 0, 1, 0);
				Local_133.f_189 = 1;
			}
		}
		func_436();
		if (iVar2 == -1)
		{
			func_455();
			func_448(0, 1, 0, 1060320051, 1086324736, 1065353216, 1088421888, 1084227584, 0, 1066192077, 0, 0);
		}
		if (iVar0)
		{
			iVar3 = ped::get_vehicle_ped_is_in(player::player_ped_id(), 0);
			if (!entity::is_entity_dead(iVar3, 0))
			{
				if (network::network_has_control_of_entity(iVar3))
				{
					entity::freeze_entity_position(iVar3, false);
				}
				func_447(&iVar4);
				if (iVar4 == player::player_id())
				{
					gameplay::set_bit(&(uLocal_100[network::participant_id_to_int()]), 3);
				}
			}
		}
		func_8(&(Local_133.f_123), 0, 0);
		func_4(13);
	}
}

void func_447(var uParam0)//Position - 0x23603
{
	if (func_384(Local_133.f_1) == 2)
	{
		if (func_82(player::player_id(), 1))
		{
			*uParam0 = func_90(player::player_id());
		}
		else
		{
			*uParam0 = player::player_id();
		}
	}
	if (func_384(Local_133.f_1) == 1)
	{
		if (func_91(player::player_id(), 1))
		{
			*uParam0 = func_90(player::player_id());
		}
		else
		{
			*uParam0 = player::player_id();
		}
	}
}

void func_448(int iParam0, int iParam1, int iParam2, float fParam3, float fParam4, int iParam5, int iParam6, float fParam7, int iParam8, int iParam9, int iParam10, int iParam11)//Position - 0x23665
{
	if (iParam0)
	{
		if (func_454())
		{
			func_453();
		}
		Global_2404994.f_651.f_504 = iParam1;
		Global_2404994.f_651.f_505 = iParam2;
		Global_2404994.f_651.f_506 = iParam10;
		func_455();
		func_452(8, 0, 0);
		Global_2404994.f_651.f_507 = iParam11;
		Global_2404994.f_651.f_510 = fParam3;
		Global_2404994.f_651.f_511 = fParam4;
		Global_2404994.f_651.f_508 = iParam5;
		Global_2404994.f_651.f_509 = iParam6;
		Global_2404994.f_651.f_512 = fParam7;
		Global_2404994.f_651.f_513 = iParam8;
		Global_2404994.f_651.f_514 = iParam9;
		Global_2404994.f_1684 = 1;
	}
	else
	{
		func_449();
	}
}

void func_449()//Position - 0x2371C
{
	if (func_454() && !func_451())
	{
		func_453();
	}
	if (func_451())
	{
		func_450();
	}
	else
	{
		func_455();
		func_452(0, 0, 0);
		Global_2404994.f_1684 = 0;
		Global_2404994.f_1683 = 0;
	}
}

void func_450()//Position - 0x23762
{
	unk_0x213AEB2B90CBA7AC(&(Global_2404994.f_651), &(Global_2404994.f_1167), 516);
	Global_2404994.f_477 = { Global_2404994.f_481 };
	if (script::get_id_of_this_thread() == Global_2404994.f_651.f_515)
	{
		Global_2404994.f_1683 = 0;
	}
}

bool func_451()//Position - 0x237AA
{
	if ((Global_2404994.f_1683 && !script::get_id_of_this_thread() == Global_2404994.f_1167.f_515) && script::is_thread_active(Global_2404994.f_1167.f_515))
	{
		return true;
	}
	return false;
}

void func_452(int iParam0, int iParam1, int iParam2)//Position - 0x237E9
{
	if (iParam0 != 18 && iParam0 != 17)
	{
		Global_2411314 = 0;
	}
	Global_2404994.f_477 = iParam0;
	Global_2404994.f_477.f_1 = script::get_id_of_this_thread();
	Global_2404994.f_477.f_2 = iParam1;
	Global_2404994.f_477.f_3 = iParam2;
}

void func_453()//Position - 0x23834
{
	if (func_451())
	{
		if (Global_2404994.f_651.f_515 == Global_2404994.f_1167.f_515)
		{
			return;
		}
	}
	if (!script::get_id_of_this_thread() == Global_2404994.f_651.f_515)
	{
		unk_0x213AEB2B90CBA7AC(&(Global_2404994.f_1167), &(Global_2404994.f_651), 516);
		Global_2404994.f_481 = { Global_2404994.f_477 };
		Global_2404994.f_1683 = 1;
	}
}

bool func_454()//Position - 0x238A2
{
	if ((Global_2404994.f_1684 && !script::get_id_of_this_thread() == Global_2404994.f_651.f_515) && script::is_thread_active(Global_2404994.f_651.f_515))
	{
		return true;
	}
	return false;
}

void func_455()//Position - 0x238E1
{
	if (func_454() && !func_451())
	{
		func_453();
	}
	func_456();
	Global_2404994.f_651 = 0;
}

void func_456()//Position - 0x2390A
{
	int iVar0;
	struct<5> Var1;
	
	Var1.f_4 = 1065353216;
	iVar0 = 0;
	while (iVar0 < 100)
	{
		Global_2404994.f_651.f_1[iVar0 /*5*/] = { Var1 };
		iVar0++;
	}
}

var func_457(int iParam0)//Position - 0x23945
{
	var uVar0;
	var uVar3;
	
	return func_458(iParam0, 0, &uVar0, &uVar3, ped::is_ped_in_any_vehicle(player::player_ped_id(), 0));
}

var func_458(int iParam0, int iParam1, var uParam2, var uParam3, int iParam4)//Position - 0x23961
{
	struct<19> Var0;
	
	func_23(iParam0, &Var0, 18);
	Stack.Push(iParam0);
	Stack.Push(iParam1);
	Stack.Push(uParam2);
	Stack.Push(uParam3);
	Stack.Push(iParam4);
	Call_Loc(Var0.f_18);
	return StackVal;
}

bool func_459(int iParam0, int iParam1, int iParam2, int iParam3, int iParam4, int iParam5, int iParam6, int iParam7, int iParam8, int iParam9, int iParam10, int iParam11, int iParam12, int iParam13, int iParam14, int iParam15)//Position - 0x23982
{
	float fVar0;
	int iVar1;
	int iVar2;
	int iVar3;
	int iVar4;
	int iVar5;
	
	func_1086();
	if (func_398(player::player_id(), 1, 0))
	{
		if (((iParam4 && func_387(player::player_id(), 1, 0)) && streaming::is_player_switch_in_progress()) && Global_2421621[player::player_id() /*358*/].f_225 == 1)
		{
		}
		else
		{
			return false;
		}
	}
	if (!ped::is_ped_injured(player::player_ped_id()))
	{
		ped::set_ped_reset_flag(player::player_ped_id(), 150, true);
		if (!Global_2404994.f_639 == iParam0)
		{
			if (iParam15 && Global_2404994.f_639 == 37)
			{
			}
			else if (!Global_2421621[player::player_id() /*358*/].f_210 == 0)
			{
				if (network::get_time_difference(network::get_network_time(), Global_2404994.f_640) < func_397(0))
				{
					return false;
				}
				Global_2421621[player::player_id() /*358*/].f_210 = 0;
			}
		}
		if (Global_2421621[player::player_id() /*358*/].f_210 == 0)
		{
			Global_2404994.f_639 = iParam0;
			Global_2421621[player::player_id() /*358*/].f_210 = 2;
			if (iParam2)
			{
				if (!func_1085())
				{
					iParam2 = false;
				}
			}
			Global_2421621[player::player_id() /*358*/].f_210 = 2;
			Global_2404994.f_2031 = 0;
			Global_2404994.f_2032 = 0;
			Global_2404994.f_2030 = 0;
			Global_2404994.f_2338 = 0;
		}
		if (Global_2421621[player::player_id() /*358*/].f_210 == 2)
		{
			if (iParam2 || iParam7)
			{
				iVar3 = true;
			}
			if (Global_2404994.f_639 == 11)
			{
				Global_2404994.f_643 = { Global_2412527 };
				Global_2404994.f_646 = Global_2412527.f_5;
				Global_2421621[player::player_id() /*358*/].f_210 = 3;
			}
			else if (func_918(&(Global_2404994.f_643), &(Global_2404994.f_646), Global_2404994.f_639, iVar3, iParam3, iParam5, iParam6, iParam8, iParam12, 0, iParam13))
			{
				Global_2421621[player::player_id() /*358*/].f_210 = 3;
			}
		}
		if (Global_2421621[player::player_id() /*358*/].f_210 == 3)
		{
			if (iParam11)
			{
				if (iParam2)
				{
					if (ped::is_ped_in_any_vehicle(player::player_ped_id(), 0))
					{
						iVar2 = ped::get_vehicle_ped_is_in(player::player_ped_id(), 0);
						ai::clear_ped_tasks_immediately(player::player_ped_id());
						func_913(&iVar2);
					}
					else
					{
						iVar2 = func_912();
						func_911(&iVar2);
					}
					if (func_1085())
					{
						if (ped::is_ped_in_any_vehicle(player::player_ped_id(), 0))
						{
							if (!entity::get_entity_model(ped::get_vehicle_ped_is_in(player::player_ped_id(), 0)) == Global_2404994.f_43.f_67)
							{
								iVar4 = ped::get_vehicle_ped_is_in(player::player_ped_id(), 0);
								if (iVar4 == Global_2404994.f_43.f_171)
								{
									func_909();
								}
								ai::clear_ped_tasks_immediately(player::player_ped_id());
							}
						}
					}
					if (!ped::is_ped_in_any_vehicle(player::player_ped_id(), 0))
					{
						Global_2421621[player::player_id() /*358*/].f_210 = 4;
					}
					else
					{
						iVar2 = ped::get_vehicle_ped_is_in(player::player_ped_id(), 0);
						if (network::network_has_control_of_entity(iVar2))
						{
							func_903(iVar2);
							func_902(1);
							Global_2421621[player::player_id() /*358*/].f_210 = 6;
						}
						else
						{
							network::network_request_control_of_entity(iVar2);
						}
					}
				}
				else
				{
					func_902(1);
					Global_2421621[player::player_id() /*358*/].f_210 = 6;
				}
			}
		}
		if (Global_2421621[player::player_id() /*358*/].f_210 == 4)
		{
			if (func_899())
			{
				if (func_684(Global_2404994.f_643, Global_2404994.f_643.f_1, func_896(Global_2404994.f_43.f_67), Global_2404994.f_646, 0))
				{
					Global_2404994.f_641 = network::get_network_time();
					Global_2421621[player::player_id() /*358*/].f_210 = 5;
				}
			}
		}
		if (Global_2421621[player::player_id() /*358*/].f_210 == 5)
		{
			ped::set_ped_reset_flag(player::player_ped_id(), 150, true);
			if (ped::is_ped_in_any_vehicle(player::player_ped_id(), 0))
			{
				Global_2421621[player::player_id() /*358*/].f_210 = 6;
				if (Global_2404994.f_43.f_173)
				{
					Global_2421621[player::player_id() /*358*/].f_230 = 1;
				}
				else
				{
					Global_2421621[player::player_id() /*358*/].f_230 = 0;
				}
			}
			else if (network::get_time_difference(network::get_network_time(), Global_2404994.f_641) > 5000)
			{
				ai::clear_ped_tasks_immediately(player::player_ped_id());
				Global_2421621[player::player_id() /*358*/].f_210 = 4;
			}
			else if (ai::get_script_task_status(player::player_ped_id(), -1794415470) == 7)
			{
				if (entity::does_entity_exist(Global_2404994.f_43.f_171) && vehicle::is_vehicle_driveable(Global_2404994.f_43.f_171, 0))
				{
					func_502(player::player_ped_id(), Global_2404994.f_43.f_171, -1);
				}
				else
				{
					ai::clear_ped_tasks_immediately(player::player_ped_id());
					Global_2421621[player::player_id() /*358*/].f_210 = 4;
				}
			}
		}
		if (Global_2421621[player::player_id() /*358*/].f_210 == 6)
		{
			Global_2404994.f_640 = network::get_network_time();
			if (Global_2404994.f_649)
			{
				Global_2404994.f_642 = network::get_network_time();
				Global_2404994.f_649 = 0;
			}
			if (iParam7)
			{
				iVar1 = true;
			}
			else
			{
				iVar1 = iParam2;
			}
			if (gameplay::absi(network::get_time_difference(network::get_network_time(), Global_2404994.f_642)) >= 300)
			{
				iVar5 = true;
			}
			else
			{
				iVar5 = false;
			}
			if (iParam7 && !Global_2433082.f_731)
			{
				if (ped::is_ped_in_any_vehicle(player::player_ped_id(), 0))
				{
					iVar2 = ped::get_vehicle_ped_is_in(player::player_ped_id(), 0);
					if (entity::does_entity_exist(iVar2))
					{
						if ((entity::is_entity_dead(iVar2, 0) || !vehicle::is_vehicle_driveable(iVar2, 0)) || func_501(iVar2))
						{
							ai::clear_ped_tasks_immediately(player::player_ped_id());
						}
					}
				}
			}
			if (iVar5)
			{
				if (func_395(Global_2404994.f_643, Global_2404994.f_646, iVar1, iParam1, 0, 0, 1, iParam4, 1, 1))
				{
					if ((iParam15 && func_494(Global_2404994.f_643)) && !(Global_2404994.f_639 == 8 && Global_2404994.f_651.f_507))
					{
						if (Global_2404994.f_639 == 8 && !Global_2404994.f_2338)
						{
							Global_2404994.f_2338 = 1;
						}
						else
						{
							Global_2404994.f_639 = 37;
						}
						Global_2421621[player::player_id() /*358*/].f_210 = 2;
						Global_2404994.f_2031 = 0;
						Global_2404994.f_2032 = 0;
						Global_2404994.f_2030 = 0;
					}
					else
					{
						if (!Global_2404994.f_649)
						{
							Global_2404994.f_649 = 1;
						}
						func_902(0);
						if (Global_2404994.f_2200)
						{
							func_489();
							Global_2404994.f_2200 = 0;
						}
						Global_2421621[player::player_id() /*358*/].f_210 = 10;
					}
				}
			}
		}
		if (Global_2421621[player::player_id() /*358*/].f_210 == 9)
		{
			if (system::vdist(Global_2412527, Global_2404994.f_643) > 0.1f)
			{
				if (ped::is_ped_in_any_vehicle(player::player_ped_id(), 0))
				{
					iVar2 = ped::get_vehicle_ped_is_in(player::player_ped_id(), 0);
					if (vehicle::is_this_model_a_bike(entity::get_entity_model(iVar2)) || vehicle::is_this_model_a_car(entity::get_entity_model(iVar2)))
					{
						gameplay::get_ground_z_for_3d_coord(Global_2404994.f_643, Global_2404994.f_643.f_1, Global_2404994.f_643.f_2, &fVar0, 0);
						if (fVar0 == 0f || (Global_2404994.f_643.f_2 - fVar0) > 1.5f)
						{
							if (system::vdist(Global_2412527, Global_2404994.f_643) > 15f)
							{
								Global_2404994.f_643 = { Global_2412527 };
								if (network::network_has_control_of_entity(iVar2))
								{
									entity::set_entity_coords(iVar2, Global_2404994.f_643, Global_2404994.f_643.f_1, (fVar0 + func_488(entity::get_entity_model(iVar2))), 1, false, 0, 1);
									vehicle::set_vehicle_on_ground_properly(iVar2, 1084227584);
								}
								Global_2421621[player::player_id() /*358*/].f_210 = 10;
							}
							else
							{
								Global_2404994.f_643.f_2 = (Global_2404994.f_643.f_2 + 1f);
							}
						}
						else
						{
							if (network::network_has_control_of_entity(iVar2))
							{
								entity::set_entity_coords(iVar2, Global_2404994.f_643, Global_2404994.f_643.f_1, (fVar0 + func_488(entity::get_entity_model(iVar2))), 1, false, 0, 1);
								vehicle::set_vehicle_on_ground_properly(iVar2, 1084227584);
							}
							Global_2421621[player::player_id() /*358*/].f_210 = 10;
						}
					}
					else
					{
						Global_2421621[player::player_id() /*358*/].f_210 = 10;
					}
				}
				else
				{
					Global_2421621[player::player_id() /*358*/].f_210 = 10;
				}
			}
			else
			{
				Global_2421621[player::player_id() /*358*/].f_210 = 10;
			}
		}
		if (Global_2421621[player::player_id() /*358*/].f_210 == 10)
		{
			if (!iParam14)
			{
				if (entity::does_entity_exist(Global_2404994.f_43.f_171))
				{
					entity::set_entity_visible(Global_2404994.f_43.f_171, true, 0);
				}
			}
			if (iParam2 || iParam7)
			{
				if (iParam9 > 0)
				{
					func_481(iParam9, 0);
				}
			}
			func_478(func_131(player::player_id()), 0);
			if (entity::does_entity_exist(Global_2404994.f_43.f_171))
			{
				func_909();
			}
			func_477();
			func_475(0, 0);
			if (iParam10)
			{
				func_474();
			}
			func_473();
			func_460();
			func_17();
			return true;
		}
	}
	else if (!Global_2421621[player::player_id() /*358*/].f_210 == 0)
	{
		ai::clear_ped_tasks_immediately(player::player_ped_id());
		func_911(&(Global_2404994.f_43.f_171));
		func_17();
	}
	Global_2404994.f_640 = network::get_network_time();
	return false;
}

void func_460()//Position - 0x241D9
{
	int iVar0;
	
	Global_2421621[player::player_id() /*358*/].f_264.f_20 = -1;
	Global_2404994.f_2336 = -1f;
	iVar0 = 0;
	while (iVar0 < 36)
	{
		func_462(iVar0);
		iVar0++;
	}
	if (func_461(player::player_id(), 0))
	{
		Global_2501629.f_77 = 1;
		Global_2501629.f_78 = network::get_network_time();
	}
}

bool func_461(int iParam0, int iParam1)//Position - 0x24230
{
	if (func_387(iParam0, 0, 1))
	{
		if (!iParam1)
		{
			if (!Global_2421621[iParam0 /*358*/].f_264.f_14 == -1)
			{
				return true;
			}
		}
		else if (!Global_2421621[iParam0 /*358*/].f_264.f_16 == -1)
		{
			return true;
		}
	}
	return false;
}

void func_462(int iParam0)//Position - 0x2427D
{
	int iVar0;
	float fVar1;
	int iVar2;
	
	iVar0 = player::player_id();
	if (Global_2421621[iVar0 /*358*/].f_264.f_14 != -1)
	{
		if (func_472(Global_2421621[iVar0 /*358*/].f_264.f_14))
		{
			if (!func_467(player::player_id(), Global_2421621[iVar0 /*358*/].f_264.f_14, 0, 0))
			{
				Global_2421621[iVar0 /*358*/].f_264.f_14 = -1;
			}
		}
		else
		{
			Global_2421621[iVar0 /*358*/].f_264.f_14 = -1;
		}
	}
	if (Global_2421621[iVar0 /*358*/].f_264.f_16 != -1)
	{
		if (func_472(Global_2421621[iVar0 /*358*/].f_264.f_16))
		{
			if (!func_467(player::player_id(), Global_2421621[iVar0 /*358*/].f_264.f_16, 0, 1))
			{
				Global_2421621[iVar0 /*358*/].f_264.f_16 = -1;
			}
		}
		else
		{
			Global_2421621[iVar0 /*358*/].f_264.f_16 = -1;
		}
	}
	if (Global_2421621[iVar0 /*358*/].f_264.f_15 != -1)
	{
		if (!func_467(player::player_id(), Global_2421621[iVar0 /*358*/].f_264.f_15, 0, 0))
		{
			Global_2421621[iVar0 /*358*/].f_264.f_15 = -1;
		}
	}
	if (func_472(iParam0))
	{
		if (func_467(player::player_id(), iParam0, 0, 0))
		{
			if (!Global_2421621[iVar0 /*358*/].f_264.f_14 == iParam0)
			{
				Global_2421621[iVar0 /*358*/].f_264.f_14 = iParam0;
			}
		}
		if (func_467(player::player_id(), iParam0, 0, 1))
		{
			if (!Global_2421621[iVar0 /*358*/].f_264.f_16 == iParam0)
			{
				Global_2421621[iVar0 /*358*/].f_264.f_16 = iParam0;
			}
		}
		iVar2 = system::floor((system::to_float(iParam0) / 32f));
		if (func_464(player::player_id(), iParam0, 1120403456))
		{
			gameplay::set_bit(&(Global_2421621[iVar0 /*358*/].f_264.f_17[iVar2]), (iParam0 - iVar2 * 32));
		}
		else
		{
			gameplay::clear_bit(&(Global_2421621[iVar0 /*358*/].f_264.f_17[iVar2]), (iParam0 - iVar2 * 32));
		}
		fVar1 = system::vdist(func_463(iParam0), func_131(player::player_id()));
		if (iParam0 == Global_2421621[iVar0 /*358*/].f_264.f_20)
		{
			Global_2404994.f_2336 = fVar1;
		}
		else if (fVar1 < Global_2404994.f_2336 || Global_2404994.f_2336 <= 0f)
		{
			Global_2404994.f_2336 = fVar1;
			Global_2421621[iVar0 /*358*/].f_264.f_20 = iParam0;
		}
	}
	else if (iParam0 == Global_2421621[iVar0 /*358*/].f_264.f_20)
	{
		Global_2421621[iVar0 /*358*/].f_264.f_20 = -1;
		Global_2404994.f_2336 = -1f;
	}
	if (func_467(player::player_id(), iParam0, 0, 0))
	{
		if (!Global_2421621[iVar0 /*358*/].f_264.f_15 == iParam0)
		{
			Global_2421621[iVar0 /*358*/].f_264.f_15 = iParam0;
		}
	}
}

Vector3 func_463(int iParam0)//Position - 0x2452B
{
	return Global_4006218[iParam0 /*45*/].f_4;
}

int func_464(int iParam0, int iParam1, float fParam2)//Position - 0x2453F
{
	if (func_466(iParam1))
	{
		return func_465(func_131(iParam0), iParam1, fParam2);
	}
	return 0;
}

bool func_465(vector3 vParam0, int iParam3, float fParam4)//Position - 0x24562
{
	if (func_466(iParam3))
	{
		if (system::vdist2(vParam0, func_463(iParam3)) < (fParam4 * fParam4))
		{
			return true;
		}
	}
	return false;
}

bool func_466(int iParam0)//Position - 0x2458F
{
	if (iParam0 > -1 && iParam0 < 36)
	{
		return true;
	}
	return false;
}

int func_467(int iParam0, int iParam1, float fParam2, int iParam3)//Position - 0x245AD
{
	int iVar0;
	int iVar1;
	int iVar2;
	
	if (func_466(iParam1))
	{
		if (!iParam3)
		{
			return func_468(func_131(iParam0), iParam1, fParam2);
		}
		else if (func_468(func_131(iParam0), iParam1, fParam2))
		{
			return true;
		}
		else if (func_468(func_131(iParam0), iParam1, 15f))
		{
			if (func_387(iParam0, 1, 1))
			{
				iVar0 = player::get_player_ped(iParam0);
				if (entity::does_entity_exist(iVar0) && !entity::is_entity_dead(iVar0, 0))
				{
					if (ped::is_ped_in_any_vehicle(iVar0, 0))
					{
						iVar1 = ped::get_vehicle_ped_is_using(iVar0);
						if (entity::does_entity_exist(iVar1) && !entity::is_entity_dead(iVar1, 0))
						{
							if (decorator::decor_exist_on(iVar1, "PYV_Yacht"))
							{
								iVar2 = decorator::decor_get_int(iVar1, "PYV_Yacht");
								if (iVar2 == iParam1)
								{
									return true;
								}
							}
						}
					}
				}
			}
		}
	}
	return false;
}

int func_468(vector3 vParam0, int iParam3, float fParam4)//Position - 0x2467A
{
	vector3 vVar0;
	vector3 vVar3;
	float fVar6;
	
	if (func_466(iParam3))
	{
		func_469(iParam3, &vVar0, &vVar3, &fVar6, fParam4);
		return object::is_point_in_angled_area(vParam0, vVar0, vVar3, fVar6, 0, true);
	}
	return false;
}

void func_469(int iParam0, var uParam1, var uParam2, var uParam3, float fParam4)//Position - 0x246B1
{
	vector3 vVar0;
	float fVar3;
	vector3 vVar4;
	
	vVar0 = { func_463(iParam0) };
	fVar3 = func_471(iParam0);
	vVar4 = { 0f, 1f, 0f };
	func_470(&vVar4, 0f, 0f, fVar3);
	vVar4 = { vVar4 / FtoV(system::vmag(vVar4)) };
	*uParam1 = { vVar0 + vVar4 * FtoV((0.5f * (120f + fParam4))) };
	uParam1->f_2 = (uParam1->f_2 - (0.5f * (34f + fParam4)));
	*uParam2 = { vVar0 - vVar4 * FtoV((0.5f * (120f + fParam4))) };
	uParam2->f_2 = (uParam2->f_2 + (0.5f * (34f + fParam4)));
	*uParam3 = (16.17f + fParam4);
}

void func_470(var uParam0, vector3 vParam1)//Position - 0x24761
{
	float fVar0;
	float fVar1;
	vector3 vVar2;
	
	fVar0 = system::cos(vParam1.x);
	fVar1 = system::sin(vParam1.x);
	vVar2.x = *uParam0;
	vVar2.y = ((fVar0 * uParam0->f_1) - (fVar1 * uParam0->f_2));
	vVar2.z = ((fVar1 * uParam0->f_1) + (fVar0 * uParam0->f_2));
	*uParam0 = { vVar2 };
	fVar0 = system::cos(vParam1.y);
	fVar1 = system::sin(vParam1.y);
	vVar2.x = ((fVar0 * *uParam0) + (fVar1 * uParam0->f_2));
	vVar2.y = uParam0->f_1;
	vVar2.z = ((fVar0 * uParam0->f_2) - (fVar1 * *uParam0));
	*uParam0 = { vVar2 };
	fVar0 = system::cos(vParam1.y);
	fVar1 = system::sin(vParam1.y);
	vVar2.x = ((fVar0 * *uParam0) - (fVar1 * uParam0->f_1));
	vVar2.y = ((fVar1 * *uParam0) + (fVar0 * uParam0->f_1));
	vVar2.z = uParam0->f_2;
	*uParam0 = { vVar2 };
}

var func_471(var uParam0)//Position - 0x24838
{
	return Global_4006218[uParam0 /*45*/].f_7;
}

int func_472(int iParam0)//Position - 0x2484A
{
	if (func_466(iParam0))
	{
		return Global_2501629.f_2[iParam0];
	}
	return 0;
}

void func_473()//Position - 0x24869
{
	Global_1616548 = -1;
	Global_1616551 = 0;
}

void func_474()//Position - 0x2487B
{
	Global_2404994.f_5 = 1;
}

void func_475(float fParam0, int iParam1)//Position - 0x2488A
{
	vector3 vVar0;
	
	if (!func_476() || iParam1)
	{
		if (cam::is_screen_faded_out() || streaming::is_player_switch_in_progress())
		{
			if (!cam::_0x4F32C0D5A90A9B40())
			{
				vVar0 = { func_131(player::player_id()) };
				if (vVar0.y > -80f)
				{
					cam::set_gameplay_cam_relative_pitch(0f, 1065353216);
					cam::set_gameplay_cam_relative_heading(fParam0);
				}
			}
		}
	}
}

var func_476()//Position - 0x248F0
{
	return Global_1315229;
}

void func_477()//Position - 0x248FC
{
	vector3 vVar0;
	float fVar3;
	float fVar4;
	
	if (!ped::is_ped_in_any_vehicle(player::player_ped_id(), 0) && !entity::is_entity_attached(player::player_ped_id()))
	{
		vVar0 = { entity::get_entity_coords(player::player_ped_id(), 0) };
		vVar0.z = (vVar0.y + (0.3f * IntToFloat(Global_2404994.f_647)));
		if (gameplay::get_ground_z_for_3d_coord(vVar0, &fVar3, 0))
		{
			fVar4 = (vVar0.y - (fVar3 + 1f));
			if (gameplay::absf(fVar4) > 0f && gameplay::absf(fVar4) < 1f)
			{
				entity::set_entity_coords(player::player_ped_id(), vVar0.x, vVar0.y, fVar3, 0, true, 0, 1);
				Global_2404994.f_647 = 0;
			}
		}
		else if (Global_2404994.f_647 < 3)
		{
			Global_2404994.f_647++;
			func_477();
		}
		else
		{
			Global_2404994.f_647 = 0;
		}
	}
}

void func_478(vector3 vParam0, int iParam3)//Position - 0x249C3
{
	int iVar0;
	float fVar1;
	int iVar2;
	var uVar3;
	var uVar6;
	var uVar9;
	int iVar10;
	
	if (ped::is_ped_in_any_vehicle(player::player_ped_id(), 0))
	{
		iVar0 = ped::get_vehicle_ped_is_in(player::player_ped_id(), 0);
		fVar1 = func_479(entity::get_entity_model(iVar0));
		fVar1 = (fVar1 * 0.5f);
		fVar1 = (fVar1 + 6f);
		gameplay::clear_area(vParam0, fVar1, 1, 0, 0, iParam3);
		gameplay::clear_area_of_vehicles(vParam0, fVar1, 1, 0, 1, 1, iParam3);
		fire::stop_fire_in_range(vParam0, 6f);
	}
	else
	{
		iVar10 = worldprobe::_cast_ray_point_to_point(vParam0.x, vParam0.y, (vParam0.y - 2f), vParam0.x, vParam0.y, (vParam0.y + 1f), 19, 0, 7);
		worldprobe::_get_raycast_result(iVar10, &iVar2, &uVar3, &uVar6, &uVar9);
		gameplay::clear_area(vParam0, 0.7f, 1, 0, 0, iParam3);
		if (!iVar2 == 0)
		{
			gameplay::clear_area_of_vehicles(vParam0, 6f, 1, 0, 1, 1, iParam3);
			if (iParam3)
			{
				gameplay::clear_area_of_objects(vParam0, 6f, 17);
			}
			else
			{
				gameplay::clear_area_of_objects(vParam0, 6f, 16);
			}
		}
		fire::stop_fire_in_range(vParam0, 2.5f);
	}
}

float func_479(int iParam0)//Position - 0x24AAE
{
	struct<2> Var0;
	struct<2> Var3;
	
	func_480(iParam0, &Var0, &Var3, 1086324736, 1080033280, 1077936128);
	return gameplay::absf((Var0.f_1 - Var3.f_1));
}

void func_480(int iParam0, float fParam1, float fParam2, float fParam3, float fParam4, float fParam5)//Position - 0x24ADC
{
	if (streaming::is_model_valid(iParam0))
	{
		gameplay::get_model_dimensions(iParam0, fParam1, fParam2);
	}
	if (system::vmag(*fParam1) <= 0.01f || system::vmag(*fParam2) <= 0.01f)
	{
		*fParam1 = (0f - (fParam4 * 0.5f));
		*fParam2 = (0f + (fParam4 * 0.5f));
		fParam1->f_1 = (0f - (fParam3 * 0.5f));
		fParam2->f_1 = (0f + (fParam3 * 0.5f));
		fParam1->f_2 = (0f - (fParam5 * 0.5f));
		fParam2->f_2 = (0f + (fParam5 * 0.5f));
	}
}

void func_481(int iParam0, int iParam1)//Position - 0x24B6E
{
	int iVar0;
	int iVar1;
	
	iVar0 = false;
	if (ped::is_ped_in_any_vehicle(player::player_ped_id(), 0) && func_487())
	{
		iVar1 = ped::get_vehicle_ped_is_in(player::player_ped_id(), 0);
		if (func_485(iVar1, &iVar0))
		{
			func_482(iVar1, iParam0, iParam1);
			if (iVar0)
			{
				entity::set_vehicle_as_no_longer_needed(&iVar1);
			}
		}
	}
}

void func_482(int iParam0, int iParam1, int iParam2)//Position - 0x24BB9
{
	int iVar0;
	
	iVar0 = network::network_get_network_id_from_entity(iParam0);
	if (network::network_does_network_id_exist(iVar0))
	{
		if (Global_1574249 && vehicle::is_vehicle_model(iParam0, joaat("rhino")))
		{
			iParam1 = 1;
			network::set_network_vehicle_respot_timer(iVar0, 1, 1);
			return;
		}
		else if (func_484())
		{
			func_483(iParam0);
			return;
		}
		if (iParam2 > iParam1)
		{
			network::set_network_vehicle_respot_timer(iVar0, iParam2, 1);
			if (ped::is_ped_in_vehicle(player::player_ped_id(), iParam0, 0))
			{
				network::network_set_local_player_invincible_time(iParam2);
			}
		}
		else
		{
			network::set_network_vehicle_respot_timer(iVar0, iParam1, 1);
			if (ped::is_ped_in_vehicle(player::player_ped_id(), iParam0, 0))
			{
				network::network_set_local_player_invincible_time(iParam1);
			}
		}
	}
}

bool func_483(int iParam0)//Position - 0x24C52
{
	int iVar0;
	int iVar1;
	
	iVar0 = 0;
	while (iVar0 < network::_network_get_num_participants_host())
	{
		if (network::network_is_participant_active(player::int_to_participantindex(iVar0)))
		{
			iVar1 = network::network_get_player_index(player::int_to_participantindex(iVar0));
			network::_0x9DD368BF06983221(iVar1, 1);
		}
		iVar0++;
	}
	if (network::network_has_control_of_entity(iParam0))
	{
		network::_0x6274C4712850841E(iParam0, 1);
		return true;
	}
	else
	{
		network::network_request_control_of_entity(iParam0);
	}
	return false;
}

var func_484()//Position - 0x24CAE
{
	return Global_1574267;
}

bool func_485(int iParam0, int iParam1)//Position - 0x24CBA
{
	if (func_486(iParam0, iParam1))
	{
		return true;
	}
	return false;
}

bool func_486(int iParam0, var uParam1)//Position - 0x24CD2
{
	if (entity::does_entity_exist(iParam0))
	{
		if (!entity::is_entity_a_mission_entity(iParam0))
		{
			if (network::network_get_entity_is_local(iParam0))
			{
				entity::set_entity_as_mission_entity(iParam0, false, 1);
				*uParam1 = 1;
			}
		}
		if (entity::does_entity_belong_to_this_script(iParam0, 0))
		{
			if (network::network_has_control_of_entity(iParam0))
			{
				return true;
			}
		}
	}
	return false;
}

bool func_487()//Position - 0x24D20
{
	int iVar0;
	
	if (ped::is_ped_in_any_vehicle(player::player_ped_id(), 0))
	{
		iVar0 = ped::get_vehicle_ped_is_in(player::player_ped_id(), 0);
		if (entity::does_entity_exist(iVar0))
		{
			if (vehicle::is_vehicle_driveable(iVar0, 0))
			{
				if (vehicle::get_ped_in_vehicle_seat(iVar0, -1, 0) == player::player_ped_id())
				{
					return true;
				}
			}
		}
	}
	return false;
}

float func_488(int iParam0)//Position - 0x24D66
{
	vector3 vVar0;
	vector3 vVar3;
	
	func_480(iParam0, &vVar0, &vVar3, 1086324736, 1080033280, 1077936128);
	return gameplay::absf((vVar0.y - vVar3.y));
}

void func_489()//Position - 0x24D94
{
	int iVar0;
	vector3 vVar1;
	vector3 vVar4;
	int iVar7;
	float fVar8;
	float fVar9;
	vector3 vVar10;
	vector3 vVar13;
	vector3 vVar16;
	vector3 vVar19;
	vector3 vVar22;
	vector3 vVar25;
	vector3 vVar28;
	vector3 vVar31;
	vector3 vVar34;
	vector3 vVar37;
	vector3 vVar40;
	vector3 vVar43;
	int iVar46;
	int iVar47;
	int iVar48;
	int iVar49;
	int iVar50;
	int iVar51;
	int iVar52;
	int iVar53;
	int iVar54;
	int iVar55;
	int iVar56;
	int iVar57;
	var uVar58;
	var uVar61;
	var uVar64;
	int iVar65;
	int iVar66;
	int iVar67;
	int iVar68;
	int iVar69;
	int iVar70;
	int iVar71;
	int iVar72;
	int iVar73;
	vector3 vVar74;
	float fVar77;
	
	if (!ped::is_ped_in_any_vehicle(player::player_ped_id(), 0))
	{
		vVar1 = { entity::get_entity_coords(player::player_ped_id(), 0) };
		if ((!Global_2404994.f_43.f_52 && !Global_2404994.f_43.f_53) && !Global_2404994.f_2201)
		{
			if (pathfind::get_closest_vehicle_node(vVar1, &vVar4, 1, 1077936128, 0))
			{
				vVar4.z = (vVar4.y + 1f);
				iVar7 = true;
				if (!system::vdist(vVar1, vVar4) < 50f || Global_2404994.f_43.f_52)
				{
					iVar7 = false;
				}
			}
		}
		else if (Global_2404994.f_2201)
		{
			Global_2404994.f_2201 = 0;
		}
		if (!entity::is_entity_dead(player::player_ped_id(), 0))
		{
			fVar8 = entity::get_entity_heading(player::player_ped_id());
		}
		fVar9 = 3f;
		vVar10 = { entity::get_entity_forward_vector(player::player_ped_id()) };
		vVar10 = { vVar10 / FtoV(system::vmag(vVar10)) };
		vVar10 = { vVar10 * Vector(fVar9, fVar9, fVar9) };
		vVar13 = { vVar10 };
		func_470(&vVar13, 0f, 0f, -45f);
		vVar16 = { vVar10 };
		func_470(&vVar16, 0f, 0f, -90f);
		vVar19 = { vVar10 };
		func_470(&vVar19, 0f, 0f, 45f);
		vVar22 = { vVar10 };
		func_470(&vVar22, 0f, 0f, 90f);
		if (iVar7)
		{
			vVar25 = { vVar4 - vVar1 };
			vVar28 = { func_493(vVar25, 0f, 0f, 1f) };
			vVar28 = { vVar28 / FtoV(system::vmag(vVar28)) };
			vVar28 = { vVar28 * Vector(0.2f, 0.2f, 0.2f) };
		}
		vVar31 = { vVar1 + vVar10 };
		vVar34 = { vVar1 + vVar13 };
		vVar37 = { vVar1 + vVar16 };
		vVar40 = { vVar1 + vVar19 };
		vVar43 = { vVar1 + vVar22 };
		iVar46 = worldprobe::_cast_3d_ray_point_to_point(vVar1, vVar31, 0.2f, 257, player::player_ped_id(), 7);
		iVar47 = worldprobe::_cast_3d_ray_point_to_point(vVar1, vVar34, 0.2f, 257, player::player_ped_id(), 7);
		iVar48 = worldprobe::_cast_3d_ray_point_to_point(vVar1, vVar37, 0.2f, 257, player::player_ped_id(), 7);
		iVar49 = worldprobe::_cast_3d_ray_point_to_point(vVar1, vVar40, 0.2f, 257, player::player_ped_id(), 7);
		iVar50 = worldprobe::_cast_3d_ray_point_to_point(vVar1, vVar43, 0.2f, 257, player::player_ped_id(), 7);
		if (iVar7)
		{
			iVar51 = worldprobe::_cast_3d_ray_point_to_point(vVar1, vVar4, 0.2f, 257, player::player_ped_id(), 7);
		}
		iVar65 = worldprobe::_get_raycast_result(iVar46, &iVar52, &uVar58, &uVar61, &uVar64);
		iVar65 = worldprobe::_get_raycast_result(iVar47, &iVar53, &uVar58, &uVar61, &uVar64);
		iVar65 = worldprobe::_get_raycast_result(iVar48, &iVar54, &uVar58, &uVar61, &uVar64);
		iVar65 = worldprobe::_get_raycast_result(iVar49, &iVar55, &uVar58, &uVar61, &uVar64);
		iVar65 = worldprobe::_get_raycast_result(iVar50, &iVar56, &uVar58, &uVar61, &uVar64);
		if (iVar7)
		{
			iVar65 = worldprobe::_get_raycast_result(iVar51, &iVar57, &uVar58, &uVar61, &uVar64);
		}
		if (iVar65 == 0)
		{
		}
		iVar66 = (iVar66 + iVar52);
		iVar67 = (iVar67 + iVar53);
		iVar68 = (iVar68 + iVar54);
		iVar69 = (iVar69 + iVar55);
		iVar70 = (iVar70 + iVar56);
		if (iVar7)
		{
			iVar71 = (iVar71 + iVar57);
		}
		iVar72 = 99;
		iVar73 = -1;
		if (iVar66 < iVar72)
		{
			iVar72 = iVar66;
			iVar73 = 0;
		}
		if (iVar67 < iVar72)
		{
			iVar72 = iVar67;
			iVar73 = 1;
		}
		if (iVar69 < iVar72)
		{
			iVar72 = iVar69;
			iVar73 = 2;
		}
		if (iVar68 < iVar72)
		{
			iVar72 = iVar68;
			iVar73 = 3;
		}
		if (iVar70 < iVar72)
		{
			iVar72 = iVar70;
			iVar73 = 4;
		}
		if (iVar7)
		{
			if (iVar71 < iVar72)
			{
				iVar72 = iVar71;
				iVar73 = 5;
			}
		}
		if (iVar7 && iVar71 == 0)
		{
			fVar8 = gameplay::get_heading_from_vector_2d(vVar25.x, vVar25.y);
			func_492(fVar8);
			return;
		}
		else if (iVar66 == 0)
		{
			return;
		}
		else if (Global_2404994.f_43.f_52)
		{
			vVar74 = { Global_2404994.f_43.f_49 - vVar1 };
			fVar77 = func_491(vVar74, vVar37);
			if (fVar77 <= 0f)
			{
				if (iVar67 == 0)
				{
					fVar8 = (fVar8 + -45f);
					func_492(fVar8);
					return;
				}
				else if (iVar68 == 0)
				{
					fVar8 = (fVar8 + -90f);
					func_492(fVar8);
					return;
				}
				else if (iVar69 == 0)
				{
					fVar8 = (fVar8 + 45f);
					func_492(fVar8);
					return;
				}
				else if (iVar70 == 0)
				{
					fVar8 = (fVar8 + 90f);
					func_492(fVar8);
					return;
				}
				else
				{
					func_490(iVar73, fVar8, vVar25);
				}
			}
			else if (iVar69 == 0)
			{
				fVar8 = (fVar8 + 45f);
				func_492(fVar8);
				return;
			}
			else if (iVar70 == 0)
			{
				fVar8 = (fVar8 + 90f);
				func_492(fVar8);
				return;
			}
			else if (iVar67 == 0)
			{
				fVar8 = (fVar8 + -45f);
				func_492(fVar8);
				return;
			}
			else if (iVar68 == 0)
			{
				fVar8 = (fVar8 + -90f);
				func_492(fVar8);
				return;
			}
			else
			{
				func_490(iVar73, fVar8, vVar25);
			}
		}
		else
		{
			iVar0 = gameplay::get_random_int_in_range(0, 2);
			if (iVar0 == 0)
			{
				if (iVar68 == 0)
				{
					fVar8 = (fVar8 + -90f);
					func_492(fVar8);
					return;
				}
				else if (iVar70 == 0)
				{
					fVar8 = (fVar8 + 90f);
					func_492(fVar8);
					return;
				}
				else
				{
					func_490(iVar73, fVar8, vVar25);
				}
			}
			else if (iVar70 == 0)
			{
				fVar8 = (fVar8 + 90f);
				func_492(fVar8);
				return;
			}
			else if (iVar68 == 0)
			{
				fVar8 = (fVar8 + -90f);
				func_492(fVar8);
				return;
			}
			else
			{
				func_490(iVar73, fVar8, vVar25);
			}
		}
	}
}

void func_490(int iParam0, float fParam1, struct<2> Param2, var uParam4)//Position - 0x252F8
{
	switch (iParam0)
	{
		case 0:
			return;
			break;
		
		case 1:
			fParam1 = (fParam1 + -45f);
			func_492(fParam1);
			return;
			break;
		
		case 2:
			fParam1 = (fParam1 + 45f);
			func_492(fParam1);
			return;
			break;
		
		case 3:
			fParam1 = (fParam1 + -90f);
			func_492(fParam1);
			return;
			break;
		
		case 4:
			fParam1 = (fParam1 + 90f);
			func_492(fParam1);
			return;
			break;
		
		case 5:
			fParam1 = gameplay::get_heading_from_vector_2d(Param2, Param2.f_1);
			func_492(fParam1);
			return;
			break;
	}
}

float func_491(vector3 vParam0, vector3 vParam3)//Position - 0x253A1
{
	return (((vParam0.x * vParam3.x) + (vParam0.y * vParam3.y)) + (vParam0.y * vParam3.y));
}

void func_492(float fParam0)//Position - 0x253C2
{
	if (!ped::is_ped_ragdoll(player::player_ped_id()))
	{
		entity::set_entity_heading(player::player_ped_id(), fParam0);
	}
	func_475(0f, 1);
}

Vector3 func_493(vector3 vParam0, vector3 vParam3)//Position - 0x253E6
{
	return ((vParam0.y * vParam3.y) - (vParam0.y * vParam3.y)), ((vParam0.y * vParam3.x) - (vParam0.x * vParam3.y)), ((vParam0.x * vParam3.y) - (vParam0.y * vParam3.x));
}

bool func_494(vector3 vParam0)//Position - 0x2541F
{
	var uVar0[8];
	int iVar9;
	vector3 vVar10;
	float fVar13;
	int iVar14;
	int iVar15;
	
	iVar9 = ped::get_ped_nearby_vehicles(player::player_ped_id(), &uVar0);
	iVar15 = 0;
	while (iVar15 < iVar9)
	{
		if (entity::does_entity_exist(uVar0[iVar15]))
		{
			if (!entity::is_entity_dead(uVar0[iVar15], 0) && ped::is_ped_in_vehicle(player::player_ped_id(), uVar0[iVar15], 0))
			{
			}
			else
			{
				vVar10 = { entity::get_entity_coords(uVar0[iVar15], 0) };
				fVar13 = entity::get_entity_heading(uVar0[iVar15]);
				iVar14 = entity::get_entity_model(uVar0[iVar15]);
				if (func_499(vParam0, vVar10, fVar13, iVar14, 1036831949))
				{
					if (!func_495(uVar0[iVar15]))
					{
						return true;
					}
				}
			}
		}
		iVar15++;
	}
	return false;
}

bool func_495(int iParam0)//Position - 0x254D7
{
	int iVar0;
	int iVar1;
	
	if (!vehicle::is_vehicle_seat_free(iParam0, -1, 0))
	{
		iVar0 = vehicle::get_ped_in_vehicle_seat(iParam0, -1, 0);
		if (entity::does_entity_exist(iVar0) && !entity::is_entity_dead(iVar0, 0))
		{
			if (ped::is_ped_a_player(iVar0))
			{
				iVar1 = network::_network_get_ped_player(iVar0);
				if (func_387(iVar1, 0, 0))
				{
					if (func_496(iVar1))
					{
						return true;
					}
				}
			}
		}
	}
	return false;
}

bool func_496(int iParam0)//Position - 0x25538
{
	if (func_498())
	{
		if (func_497(network::_0xBC1D768F2F5D6C05(iParam0), &(Global_2421621[player::player_id() /*358*/].f_320.f_4)))
		{
			return true;
		}
	}
	return false;
}

bool func_497(int iParam0, var uParam1)//Position - 0x25569
{
	int iVar0;
	
	iVar0 = 0;
	while (iVar0 < *uParam1)
	{
		if (iParam0 == (*uParam1)[iVar0])
		{
			return true;
		}
		iVar0++;
	}
	return false;
}

bool func_498()//Position - 0x25595
{
	if (Global_2404994.f_2339 > -1)
	{
		return true;
	}
	return false;
}

bool func_499(vector3 vParam0, vector3 vParam3, float fParam6, int iParam7, float fParam8)//Position - 0x255AD
{
	vector3 vVar0;
	vector3 vVar3;
	vector3 vVar6;
	float fVar9;
	float fVar10;
	float fVar11;
	vector3 vVar12;
	vector3 vVar15;
	
	if (system::vdist(vParam0, vParam3) < func_500(iParam7, 1008981770))
	{
		vVar0 = { 0f, 1f, 0f };
		func_470(&vVar0, 0f, 0f, fParam6);
		vVar0 = { vVar0 / FtoV(system::vmag(vVar0)) };
		func_480(iParam7, &vVar3, &vVar6, 1086324736, 1080033280, 1077936128);
		fVar9 = gameplay::absf((vVar6.y - vVar3.y));
		fVar10 = gameplay::absf((vVar6.x - vVar3.x));
		fVar11 = gameplay::absf((vVar6.y - vVar3.y));
		vVar12 = { vParam3 + vVar0 * FtoV(((0.5f * fVar9) + fParam8)) };
		vVar12.z = (vVar12.y - ((0.5f * fVar11) + fParam8));
		vVar15 = { vParam3 - vVar0 * FtoV(((0.5f * fVar9) + fParam8)) };
		vVar15.z = (vVar15.y + ((0.5f * fVar11) + fParam8));
		if (object::is_point_in_angled_area(vParam0, vVar12, vVar15, fVar10, 0, true))
		{
			return true;
		}
	}
	return false;
}

float func_500(int iParam0, float fParam1)//Position - 0x256AD
{
	vector3 vVar0;
	vector3 vVar3;
	vector3 vVar6;
	float fVar9;
	
	if (iParam0 == 0)
	{
		return 5f;
	}
	func_480(iParam0, &vVar0, &vVar3, 1086324736, 1080033280, 1077936128);
	vVar6 = { vVar3 - vVar0 };
	fVar9 = (system::sqrt(((((vVar6.x * 0.5f) * (vVar6.x * 0.5f)) + ((vVar6.y * 0.5f) * (vVar6.y * 0.5f))) + ((vVar6.y * 0.5f) * (vVar6.y * 0.5f)))) + fParam1);
	return fVar9;
}

bool func_501(int iParam0)//Position - 0x2572D
{
	if (entity::does_entity_exist(iParam0))
	{
		if (entity::is_entity_dead(iParam0, 0))
		{
			return true;
		}
		else if (!vehicle::is_vehicle_driveable(iParam0, 0))
		{
			return true;
		}
	}
	else
	{
		return true;
	}
	return false;
}

void func_502(int iParam0, int iParam1, int iParam2)//Position - 0x25766
{
	vector3 vVar0;
	vector3 vVar3;
	
	if (!func_683(iParam0, iParam1))
	{
		vVar0 = { entity::get_entity_coords(iParam0, 0) };
		vVar3 = { entity::get_entity_coords(iParam1, 0) };
		if (!system::vdist(vVar0, vVar3) < 5f || !iParam2 == -1)
		{
			vVar3.z = (vVar3.y + -4f);
			entity::set_entity_coords(iParam0, vVar3, 0, false, 0, 1);
		}
		ai::clear_ped_tasks_immediately(iParam0);
		entity::set_entity_collision(iParam0, true, 0);
		entity::freeze_entity_position(iParam0, false);
		ped::set_ped_can_ragdoll(player::player_ped_id(), 0);
		ai::task_enter_vehicle(iParam0, iParam1, -1, iParam2, 2f, 16, 0);
		ped::_0x2208438012482A1A(iParam0, 0, 0);
		ped::set_ped_reset_flag(iParam0, 150, true);
		if (Global_1574255)
		{
			if (func_682(entity::get_entity_model(iParam1)))
			{
				func_503(0);
			}
		}
	}
}

void func_503(int iParam0)//Position - 0x25823
{
	struct<14> Var0;
	int iVar14;
	
	if (!ped::is_ped_wearing_helmet(player::player_ped_id()))
	{
		if (Global_1632166.f_105295 == 0)
		{
			if ((Global_2404994.f_2220 == -99 || Global_2404994.f_2220 == 0) || !func_681(entity::get_entity_model(player::player_ped_id()), 14, Global_2404994.f_2220, -1))
			{
				if (!iParam0)
				{
					iVar14 = func_241(583, -1, 0);
				}
			}
			else
			{
				iVar14 = Global_2404994.f_2220;
			}
			Var0 = { func_638(func_680(), 14, iVar14) };
			func_637(player::player_ped_id(), 14, iVar14);
			func_504(player::player_ped_id(), 14, iVar14, 0, -1, 0, 0, 0, -1, -1, -1, 0, 1, 0);
			func_504(player::player_ped_id(), 1, 0, 0, -1, 0, 0, 0, -1, -1, -1, 0, 1, 0);
		}
		else
		{
			ped::set_ped_config_flag(player::player_ped_id(), 380, true);
		}
	}
}

bool func_504(int iParam0, int iParam1, int iParam2, int iParam3, int iParam4, int iParam5, int iParam6, int iParam7, int iParam8, int iParam9, int iParam10, int iParam11, int iParam12, int iParam13)//Position - 0x258F9
{
	int iVar0;
	int iVar1;
	int iVar2;
	int iVar3;
	var uVar4;
	int iVar5;
	int iVar6;
	int iVar7;
	int iVar8;
	int iVar9;
	int iVar10;
	int iVar11;
	int iVar12;
	var uVar13;
	var uVar14;
	var uVar15;
	var uVar32;
	var uVar42;
	int iVar59;
	var uVar60;
	int iVar70;
	int iVar71;
	int iVar72;
	int iVar73;
	int iVar74;
	int iVar75;
	int iVar76;
	int iVar77;
	int iVar78;
	int iVar79;
	int iVar80;
	int iVar81;
	int iVar82;
	int iVar83;
	int iVar84;
	int iVar85;
	int iVar86;
	int iVar87;
	int iVar88;
	int iVar89;
	int iVar90;
	int iVar91;
	int iVar92;
	float fVar93;
	int iVar94;
	int iVar95;
	int iVar96;
	int iVar97;
	int iVar98;
	int iVar99;
	int iVar100;
	int iVar101;
	int iVar102;
	int iVar103;
	int iVar104;
	var uVar105;
	int iVar106;
	int iVar107;
	int iVar108;
	int iVar109;
	int iVar110;
	int iVar111;
	int iVar112;
	int iVar113;
	int iVar114;
	int iVar115;
	int iVar116;
	var uVar117;
	int iVar118;
	int iVar119;
	int iVar120;
	int iVar121;
	var uVar122;
	int iVar123;
	int iVar124;
	int iVar125;
	int iVar126;
	var uVar127;
	int iVar128;
	int iVar129;
	int iVar130;
	int iVar131;
	var uVar132;
	int iVar133;
	int iVar134;
	int iVar135;
	int iVar136;
	int iVar137;
	
	if (!network::network_is_game_in_progress())
	{
		if ((Global_1315163 != 4 && Global_1315163 != 5) && Global_1315163 != 7)
		{
			return false;
		}
	}
	if (ped::is_ped_injured(iParam0) || iParam2 == -99)
	{
		return false;
	}
	if (iParam0 == player::player_ped_id() && Global_2421621[player::player_id() /*358*/].f_225 == 2)
	{
		if (!iParam12)
		{
			return false;
		}
	}
	if (iParam10 == -1)
	{
		iParam10 = Global_69516;
	}
	Global_69517++;
	iVar5 = entity::get_entity_model(iParam0);
	iVar6 = -99;
	iVar7 = -99;
	iVar8 = -1;
	iVar9 = -99;
	iVar10 = -99;
	iVar11 = -1;
	iVar12 = -1;
	if (iParam5 == 0)
	{
		Global_69518[1 /*14*/] = { func_638(iVar5, iParam1, iParam2) };
		if (!func_636(iParam3))
		{
			Global_69517 = (Global_69517 - 1);
			return false;
		}
		func_631(iVar5, iParam1, iParam2, 1);
	}
	if (iParam1 == 12)
	{
		uVar13 = Global_2621444;
		uVar14 = Global_2621445;
		ped::clear_all_ped_props(iParam0);
		uVar15 = 15;
		if (iParam5 == 1)
		{
			uVar15 = { Global_69561 };
		}
		else
		{
			uVar15 = { func_627(iVar5, iParam2) };
		}
		iVar0 = 0;
		while (iVar0 <= 14)
		{
			if (uVar15[iVar0] != -99)
			{
				if (iVar0 == 10 && uVar15.f_16)
				{
					Global_69518[1 /*14*/] = { func_638(iVar5, 10, 0) };
					if (iParam4 == -1)
					{
						ped::set_ped_component_variation(iParam0, func_626(iVar0), Global_69518[1 /*14*/].f_3, Global_69518[1 /*14*/].f_4, ped::get_ped_palette_variation(iParam0, func_626(iVar0)));
					}
					else
					{
						ped::set_ped_component_variation(iParam0, func_626(iVar0), Global_69518[1 /*14*/].f_3, Global_69518[1 /*14*/].f_4, iParam4);
					}
					if (gameplay::is_bit_set(Global_69518[1 /*14*/].f_6, 1))
					{
						func_631(iVar5, 10, 0, 1);
					}
				}
				else
				{
					Global_69518[1 /*14*/] = { func_638(iVar5, iVar0, uVar15[iVar0]) };
					if (gameplay::is_bit_set(Global_69518[1 /*14*/].f_6, 0) || iVar0 == 13)
					{
						if (iVar0 == 13)
						{
							uVar32 = 9;
							if (iParam5 == 1)
							{
								uVar32 = { Global_69578 };
							}
							else
							{
								uVar32 = { func_623(iVar5, uVar15[iVar0]) };
							}
							iVar1 = 0;
							while (iVar1 <= 8)
							{
								Global_69518[1 /*14*/] = { func_638(iVar5, 14, uVar32[iVar1]) };
								func_622(iParam0, Global_69518[1 /*14*/].f_12, Global_69518[1 /*14*/].f_3, Global_69518[1 /*14*/].f_4);
								if (gameplay::is_bit_set(Global_69518[1 /*14*/].f_6, 1))
								{
									func_631(iVar5, iVar0, uVar15[iVar0], 1);
								}
								iVar1++;
							}
						}
						else if (iVar0 != 14 && iVar0 != 12)
						{
							if (iVar0 != 1)
							{
								if (iParam4 == -1)
								{
									ped::set_ped_component_variation(iParam0, func_626(iVar0), Global_69518[1 /*14*/].f_3, Global_69518[1 /*14*/].f_4, ped::get_ped_palette_variation(iParam0, func_626(iVar0)));
								}
								else
								{
									ped::set_ped_component_variation(iParam0, func_626(iVar0), Global_69518[1 /*14*/].f_3, Global_69518[1 /*14*/].f_4, iParam4);
								}
							}
							else
							{
								func_504(iParam0, iVar0, uVar15[iVar0], 0, -1, 0, 0, 0, -1, -1, -1, 0, 0, 0);
							}
							if (gameplay::is_bit_set(Global_69518[1 /*14*/].f_6, 1))
							{
								func_631(iVar5, iVar0, uVar15[iVar0], 1);
							}
						}
					}
				}
			}
			else if (iVar0 != 12 && iVar0 != 14)
			{
				Global_69518[1 /*14*/] = { func_638(iVar5, iVar0, func_618(iParam0, iVar0, -1)) };
				if (gameplay::is_bit_set(Global_69518[1 /*14*/].f_6, 3))
				{
					uVar42 = { func_627(iVar5, 0) };
					func_504(iParam0, iVar0, uVar42[iVar0], 0, -1, 0, 0, 0, -1, -1, -1, 0, 0, 0);
				}
			}
			iVar0++;
		}
		Global_2621444 = uVar13;
		Global_2621445 = uVar14;
		if (iParam5 == 0)
		{
			iVar59 = func_617();
			if (iVar59 != -1)
			{
				func_615(iVar59, 0, iParam10);
			}
			func_612(iParam0, 11, uVar15[11], iParam6, 0);
		}
	}
	else if (iParam1 == 13)
	{
		uVar60 = { func_623(iVar5, iParam2) };
		iVar1 = 0;
		while (iVar1 <= 8)
		{
			Global_69518[1 /*14*/] = { func_638(iVar5, 14, uVar60[iVar1]) };
			func_622(iParam0, Global_69518[1 /*14*/].f_12, Global_69518[1 /*14*/].f_3, Global_69518[1 /*14*/].f_4);
			if (gameplay::is_bit_set(Global_69518[1 /*14*/].f_6, 1))
			{
				func_631(iVar5, 14, uVar60[iVar1], 1);
			}
			if (iParam5 == 0)
			{
				if (Global_69517 == 1)
				{
					iVar2 = 0;
					while (iVar2 < 15)
					{
						iVar3 = func_610(iParam0, iVar5, 14, uVar60[iVar1], iVar2, 0);
						if (iVar3 != -99)
						{
							func_504(iParam0, iVar2, iVar3, 0, -1, 0, 0, 0, -1, -1, -1, 0, 0, 0);
						}
						iVar2++;
					}
				}
			}
			iVar1++;
		}
	}
	else if (iParam1 == 14)
	{
		func_622(iParam0, Global_69518[1 /*14*/].f_12, Global_69518[1 /*14*/].f_3, Global_69518[1 /*14*/].f_4);
		if (gameplay::is_bit_set(Global_69518[1 /*14*/].f_6, 1))
		{
			func_631(iVar5, iParam1, iParam2, 1);
		}
		if (Global_69518[1 /*14*/].f_12 == 0)
		{
			func_607(iParam0);
		}
		if (iParam5 == 0)
		{
			if (Global_69517 == 1)
			{
				iVar2 = 0;
				while (iVar2 < 15)
				{
					iVar3 = func_610(iParam0, iVar5, iParam1, iParam2, iVar2, 0);
					if (iVar3 != -99)
					{
						func_504(iParam0, iVar2, iVar3, 0, -1, 0, 0, 0, -1, -1, -1, 0, 0, 0);
					}
					iVar2++;
				}
			}
		}
	}
	else
	{
		if (iParam1 == 11)
		{
			if (iParam5 == 0)
			{
				iVar70 = -1;
				if (gameplay::is_bit_set(Global_69518[1 /*14*/].f_6, 6) && dlc1::_0x341DE7ED1D2A1BFD(Global_2621444, -1996375172, 11))
				{
					ped::_0xCC9682B8951C5229(iParam0, Global_1316386, Global_1316387, Global_1316388, 0);
					ped::_0xCC9682B8951C5229(iParam0, Global_1316386, Global_1316387, Global_1316388, 1);
					ped::_0xCC9682B8951C5229(iParam0, Global_1316386, Global_1316387, Global_1316388, 2);
					ped::_0xCC9682B8951C5229(iParam0, Global_1316386, Global_1316387, Global_1316388, 3);
				}
				iVar71 = func_605(iParam0, 11);
				iVar72 = func_605(iParam0, 8);
				iVar73 = func_605(iParam0, 4);
				iVar8 = dlc1::get_hash_name_for_component(iParam0, 8, ped::get_ped_drawable_variation(iParam0, 8), ped::get_ped_texture_variation(iParam0, 8));
				if (dlc1::_0x341DE7ED1D2A1BFD(iVar8, 240476421, 8))
				{
					if (iVar5 == joaat("mp_m_freemode_01"))
					{
						iVar70 = func_604(iVar5, iParam2, 11, 3);
					}
					else if (iVar5 == joaat("mp_f_freemode_01"))
					{
						iVar70 = func_604(iVar5, iParam2, 11, 4);
					}
					if ((((dlc1::_0x341DE7ED1D2A1BFD(iVar70, 320460654, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar70, -2017999390, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar70, -1410897066, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar70, -826135203, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar70, -1855618474, 0))
					{
					}
					else
					{
						iVar9 = func_605(iParam0, 8);
					}
				}
				iVar74 = dlc1::get_hash_name_for_component(iParam0, 3, ped::get_ped_drawable_variation(iParam0, 3), 0);
				if (dlc1::_0x341DE7ED1D2A1BFD(iVar74, -356646862, 0))
				{
					iVar75 = func_603(iVar5, iVar72, iVar71, iVar73);
					if (iVar75 == -99)
					{
						iVar75 = func_610(iParam0, iVar5, 11, iVar71, 3, 0);
					}
					switch (iVar74)
					{
						case 1165919867:
						case 1606204151:
						case 1774276352:
						case 1934254610:
						case 980775017:
						case 399321881:
							iVar75 = 11;
							iVar70 = func_604(iVar5, iParam2, 11, 4);
							if (!dlc1::_0x341DE7ED1D2A1BFD(iVar70, -530089825, 0))
							{
								iVar75 = -99;
							}
							break;
					}
					if (iVar75 != -99)
					{
						iVar76 = 0;
						while (iVar76 < 15)
						{
							if (func_602(iVar5, iVar75, iVar76) == iVar74)
							{
								iVar11 = iVar76;
								iVar12 = ped::get_ped_texture_variation(iParam0, 3);
							}
							iVar76++;
						}
					}
				}
				iVar70 = -1;
				if ((iVar5 == joaat("mp_f_freemode_01") && iParam2 >= 256) && dlc1::_0x341DE7ED1D2A1BFD(func_604(iVar5, iParam2, 11, 4), -1200513218, 0))
				{
					iVar71 = func_605(iParam0, 11);
					if (iVar71 >= 256)
					{
						iVar70 = func_604(iVar5, iVar71, 11, 4);
					}
					if (iVar71 >= 256 && dlc1::_0x341DE7ED1D2A1BFD(iVar70, 1965569012, 0))
					{
						iVar77 = func_600(iVar5, iVar71, iParam2, ped::get_ped_texture_variation(iParam0, 11));
						if (iVar77 != -99)
						{
							func_504(iParam0, 8, iVar77, 0, iParam4, 0, 0, 0, -1, -1, -1, 0, 0, 0);
							Global_69518[1 /*14*/] = { func_638(iVar5, iParam1, iParam2) };
						}
					}
				}
				else if (func_599(iVar5, iParam2))
				{
					if (iVar5 == joaat("mp_m_freemode_01"))
					{
						if (iVar71 >= 237)
						{
							iVar70 = func_604(iVar5, iVar71, 11, 3);
						}
					}
					else if (iVar5 == joaat("mp_f_freemode_01"))
					{
						if (iVar71 >= 256)
						{
							iVar70 = func_604(iVar5, iVar71, 11, 4);
						}
					}
					iVar9 = -99;
					if (!func_599(iVar5, iVar71))
					{
						if ((iVar5 == joaat("mp_f_freemode_01") && iVar71 >= 256) && (dlc1::_0x341DE7ED1D2A1BFD(iVar70, -1200513218, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar70, 1965569012, 0)))
						{
						}
						else if ((iVar5 == joaat("mp_f_freemode_01") && iVar71 >= 256) && ((((((((dlc1::_0x341DE7ED1D2A1BFD(iVar70, 684992453, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar70, 916636514, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar70, -1939378450, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar70, -820724897, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar70, 153792394, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar70, -872449705, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar70, 700658917, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar70, -549843760, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar70, 1830529185, 0)))
						{
						}
						else
						{
							iVar78 = func_600(iVar5, iVar71, iParam2, ped::get_ped_texture_variation(iParam0, 11));
							if (iVar78 != -99)
							{
								func_504(iParam0, 8, iVar78, 0, iParam4, 0, 0, 0, -1, -1, -1, 0, 0, 0);
								Global_69518[1 /*14*/] = { func_638(iVar5, iParam1, iParam2) };
								iVar9 = -99;
							}
							else
							{
								if (iVar5 == joaat("mp_m_freemode_01"))
								{
									iVar79 = func_597(iVar5, 11, -1);
									Global_69518[1 /*14*/] = { func_638(iVar5, 11, iVar79) };
									iVar78 = func_600(iVar5, iVar79, iParam2, Global_69518[1 /*14*/].f_4);
									if (iVar78 == -99 || dlc1::_0x341DE7ED1D2A1BFD(func_604(iVar5, iParam2, 11, 3), -1237899132, 0))
									{
										iVar78 = 240;
									}
								}
								else if (iVar5 == joaat("mp_f_freemode_01"))
								{
									if (dlc1::_0x341DE7ED1D2A1BFD(func_604(iVar5, iParam2, 11, 4), -1237899132, 0))
									{
										iVar78 = 120;
									}
									else
									{
										iVar78 = 48;
									}
								}
								func_504(iParam0, 8, iVar78, 0, iParam4, 0, 0, 0, -1, -1, -1, 0, 0, 0);
								Global_69518[1 /*14*/] = { func_638(iVar5, iParam1, iParam2) };
							}
						}
					}
					else
					{
						Global_69518[1 /*14*/] = { func_638(iVar5, 11, iVar71) };
						iVar80 = Global_69518[1 /*14*/].f_3;
						Global_69518[1 /*14*/] = { func_638(iVar5, 11, iParam2) };
						iVar81 = Global_69518[1 /*14*/].f_3;
						if (iVar80 != iVar81)
						{
							Global_69518[1 /*14*/] = { func_638(iVar5, 8, iVar72) };
							iVar82 = Global_69518[1 /*14*/].f_4;
							iVar83 = func_596(iVar5, iVar72, iVar82);
							if (iVar83 == -99)
							{
								iVar84 = iVar72;
								if (iVar5 == joaat("mp_m_freemode_01"))
								{
									iVar85 = func_604(iVar5, iParam2, 11, 3);
									if (((iParam2 >= 96 && iParam2 <= 107) || func_595(iVar85) == 6) || dlc1::_0x341DE7ED1D2A1BFD(iVar85, -1237899132, 0))
									{
										iVar83 = func_597(iVar5, 11, -1);
										Global_69518[1 /*14*/] = { func_638(iVar5, 11, iVar83) };
										iVar84 = func_600(iVar5, iVar83, iParam2, Global_69518[1 /*14*/].f_4);
									}
								}
								if (iVar5 == joaat("mp_f_freemode_01") && (iVar72 == 32 || iVar72 == 33))
								{
									if (!dlc1::_0x341DE7ED1D2A1BFD(func_604(iVar5, iParam2, 11, 4), -491588875, 0))
									{
										iVar83 = func_597(iVar5, 11, -1);
										Global_69518[1 /*14*/] = { func_638(iVar5, 11, iVar83) };
										iVar84 = func_600(iVar5, iVar83, iParam2, Global_69518[1 /*14*/].f_4);
									}
								}
								iVar86 = -1;
								if (iVar5 == joaat("mp_m_freemode_01"))
								{
									iVar86 = func_604(iVar5, iVar72, 8, 3);
								}
								else if (iVar5 == joaat("mp_f_freemode_01"))
								{
									iVar86 = func_604(iVar5, iVar72, 8, 4);
								}
								if (dlc1::_0x341DE7ED1D2A1BFD(iVar86, -316495692, 0))
								{
									iVar83 = func_597(iVar5, 11, -1);
									Global_69518[1 /*14*/] = { func_638(iVar5, 11, iVar83) };
									iVar84 = func_600(iVar5, iVar83, iParam2, Global_69518[1 /*14*/].f_4);
								}
							}
							else
							{
								iVar84 = func_600(iVar5, iVar83, iParam2, iVar82);
								if (iVar5 == joaat("mp_m_freemode_01"))
								{
									if (dlc1::_0x341DE7ED1D2A1BFD(func_604(iVar5, iParam2, 11, 3), -1719338724, 0))
									{
										if (!func_594(iVar5, func_605(iParam0, 4), iVar83))
										{
											iVar84 = 240;
										}
									}
								}
								else if (iVar5 == joaat("mp_f_freemode_01"))
								{
									if (dlc1::_0x341DE7ED1D2A1BFD(func_604(iVar5, iParam2, 11, 4), -1719338724, 0))
									{
										if (!func_594(iVar5, func_605(iParam0, 4), iVar83))
										{
											iVar84 = 48;
										}
									}
								}
							}
							if (iVar84 != -99)
							{
								func_504(iParam0, 8, iVar84, 0, iParam4, 0, 0, 0, -1, -1, -1, 0, 0, 0);
							}
							else if (iVar5 == joaat("mp_m_freemode_01"))
							{
								iVar83 = func_597(iVar5, 11, -1);
								Global_69518[1 /*14*/] = { func_638(iVar5, 11, iVar83) };
								iVar84 = func_600(iVar5, iVar83, iParam2, Global_69518[1 /*14*/].f_4);
								if (iVar84 == -99)
								{
									iVar84 = 240;
								}
								func_504(iParam0, 8, iVar84, 0, iParam4, 0, 0, 0, -1, -1, -1, 0, 0, 0);
							}
							else if (iVar5 == joaat("mp_f_freemode_01"))
							{
								func_504(iParam0, 8, 48, 0, iParam4, 0, 0, 0, -1, -1, -1, 0, 0, 0);
							}
							Global_69518[1 /*14*/] = { func_638(iVar5, iParam1, iParam2) };
						}
					}
				}
				else
				{
					func_591(iVar5, iParam2);
					if (!iParam13)
					{
						ped::set_ped_component_variation(iParam0, 10, 0, 0, ped::get_ped_palette_variation(iParam0, 10));
					}
				}
			}
			func_612(iParam0, iParam1, iParam2, iParam6, 0);
			if (iParam5 == 0)
			{
				iVar6 = func_603(iVar5, func_618(iParam0, 8, -1), iParam2, func_618(iParam0, 4, -1));
			}
		}
		else if (iParam1 == 2)
		{
			if (iParam5 == 0)
			{
				if (iParam8 == -1)
				{
					iParam8 = func_241(2145, iParam10, 0);
				}
				if (iParam9 == -1)
				{
					iParam9 = func_241(2152, iParam10, 0);
				}
				ped::_set_ped_hair_color(iParam0, iParam8, iParam9);
			}
			if (iParam7 == 0)
			{
				func_558(iParam0, iParam2, iParam10, iParam11);
			}
		}
		else if (iParam1 == 8)
		{
			func_612(iParam0, iParam1, iParam2, iParam6, 0);
			iVar87 = func_605(iParam0, 11);
			if (func_599(iVar5, iVar87))
			{
				iVar88 = func_596(iVar5, iParam2, Global_69518[1 /*14*/].f_4);
				func_591(iVar5, iVar88);
			}
			if (iParam5 == 0)
			{
				iVar6 = func_603(iVar5, iParam2, func_605(iParam0, 11), func_605(iParam0, 4));
			}
		}
		else if (iParam1 == 9)
		{
			if (iParam2 >= 1 && iParam2 <= 41)
			{
				iVar89 = func_605(iParam0, 7);
				if (!func_555(iVar5, iVar89, 9, -99, -99, -99, iParam0, 0, iParam2, -99, -99, -99))
				{
					ped::set_ped_component_variation(iParam0, func_626(7), 0, 0, 0);
				}
			}
		}
		else if (iParam1 == 1)
		{
			if (((iVar5 == joaat("mp_m_freemode_01") && iParam2 >= 26) && dlc1::_0x341DE7ED1D2A1BFD(Global_2621444, -921710083, 0)) || ((iVar5 == joaat("mp_f_freemode_01") && iParam2 >= 26) && dlc1::_0x341DE7ED1D2A1BFD(Global_2621444, -921710083, 0)))
			{
				iVar90 = func_241(2092, iParam10, 0);
				iVar91 = func_241(2093, iParam10, 0);
				iVar92 = func_241(2094, iParam10, 0);
				fVar93 = func_554(135, iParam10);
				if (iVar5 == joaat("mp_m_freemode_01"))
				{
					ped::set_ped_head_blend_data(iParam0, 0, 0, 0, iVar90, iVar91, iVar92, 0f, fVar93, 0f, 0);
				}
				else if (iVar5 == joaat("mp_f_freemode_01"))
				{
					ped::set_ped_head_blend_data(iParam0, 21, 0, 0, iVar90, iVar91, iVar92, 0f, fVar93, 0f, 0);
				}
				iVar94 = 0;
				while (iVar94 < 20)
				{
					ped::_set_ped_face_feature(iParam0, iVar94, 0f);
					iVar94++;
				}
			}
			else
			{
				func_538(iParam0, iParam10);
			}
		}
		else if (iParam1 == 4)
		{
			iVar95 = func_605(iParam0, 11);
			iVar96 = func_605(iParam0, 8);
			if (iVar5 == joaat("mp_m_freemode_01"))
			{
				if (dlc1::_0x341DE7ED1D2A1BFD(func_604(iVar5, iVar95, 11, 3), -1719338724, 0))
				{
					if (!func_594(iVar5, iParam2, func_596(iVar5, iVar96, 0)))
					{
						func_504(iParam0, 8, 240, 0, iParam4, 0, 0, 0, -1, -1, -1, 0, 0, 0);
						Global_69518[1 /*14*/] = { func_638(iVar5, iParam1, iParam2) };
					}
				}
			}
			else if (iVar5 == joaat("mp_f_freemode_01"))
			{
				if (dlc1::_0x341DE7ED1D2A1BFD(func_604(iVar5, iVar95, 11, 4), -1719338724, 0))
				{
					if (!func_594(iVar5, iParam2, func_596(iVar5, iVar96, 0)))
					{
						func_504(iParam0, 8, 78, 0, iParam4, 0, 0, 0, -1, -1, -1, 0, 0, 0);
						Global_69518[1 /*14*/] = { func_638(iVar5, iParam1, iParam2) };
					}
				}
			}
			if (iParam5 == 0)
			{
				iVar6 = func_603(iVar5, func_605(iParam0, 8), func_605(iParam0, 11), iParam2);
			}
			iVar97 = dlc1::get_hash_name_for_component(iParam0, 3, ped::get_ped_drawable_variation(iParam0, 3), 0);
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar97, -356646862, 0))
			{
				iVar98 = func_603(iVar5, iVar96, iVar95, iParam2);
				if (iVar98 == -99)
				{
					iVar98 = func_610(iParam0, iVar5, 11, iVar95, 3, 0);
				}
				switch (iVar97)
				{
					case 1165919867:
					case 1606204151:
					case 1774276352:
					case 1934254610:
					case 980775017:
					case 399321881:
						iVar98 = 11;
						iVar99 = func_604(iVar5, iParam2, 11, 4);
						if (!dlc1::_0x341DE7ED1D2A1BFD(iVar99, -530089825, 0))
						{
							iVar98 = -99;
						}
						break;
				}
				if (iVar98 != -99)
				{
					iVar100 = 0;
					while (iVar100 < 15)
					{
						if (func_602(iVar5, iVar98, iVar100) == iVar97)
						{
							iVar11 = iVar100;
							iVar12 = ped::get_ped_texture_variation(iParam0, 3);
						}
						iVar100++;
					}
				}
			}
		}
		if (iParam4 == -1)
		{
			ped::set_ped_component_variation(iParam0, func_626(iParam1), Global_69518[1 /*14*/].f_3, Global_69518[1 /*14*/].f_4, ped::get_ped_palette_variation(iParam0, func_626(iParam1)));
		}
		else
		{
			ped::set_ped_component_variation(iParam0, func_626(iParam1), Global_69518[1 /*14*/].f_3, Global_69518[1 /*14*/].f_4, iParam4);
		}
		if (iParam5 == 0)
		{
			if (Global_69517 == 1)
			{
				iVar2 = 0;
				while (iVar2 < 15)
				{
					iVar3 = func_610(iParam0, iVar5, iParam1, iParam2, iVar2, 0);
					if (iVar3 != -99)
					{
						func_504(iParam0, iVar2, iVar3, 0, -1, 0, 0, 0, -1, -1, -1, 0, 0, iParam1 == 10);
						if (iVar2 == 3)
						{
							switch (Global_2621444)
							{
								case 1165919867:
								case 1606204151:
								case 1774276352:
								case 1934254610:
								case 980775017:
								case 399321881:
									iVar11 = -1;
									break;
							}
						}
						else if (iVar2 == 8)
						{
							if (iVar6 != -99)
							{
								iVar6 = func_603(iVar5, iVar3, func_605(iParam0, 11), func_605(iParam0, 4));
							}
						}
					}
					iVar2++;
				}
			}
			if (iParam1 == 11 || iParam1 == 8)
			{
				if (func_537(iParam0))
				{
					iVar101 = func_536(iVar5, iParam1, iParam2);
					if (iVar101 > 0)
					{
						iVar101 = (iVar101 + ped::get_ped_texture_variation(iParam0, 9));
						if (!func_530(iParam0, 9, iVar101))
						{
							func_504(iParam0, 9, iVar101, 0, iParam4, 0, 0, 0, -1, -1, -1, 0, 0, 0);
						}
					}
					else
					{
						func_504(iParam0, 9, 0, 0, iParam4, 0, 0, 0, -1, -1, -1, 0, 0, 0);
					}
					iVar8 = dlc1::get_hash_name_for_component(iParam0, 8, ped::get_ped_drawable_variation(iParam0, 8), ped::get_ped_texture_variation(iParam0, 8));
					if (dlc1::_0x341DE7ED1D2A1BFD(iVar8, 240476421, 8))
					{
						func_504(iParam0, 9, 0, 0, iParam4, 0, 0, 0, -1, -1, -1, 0, 0, 0);
					}
				}
				iVar102 = func_241(2034, -1, 0);
				if (ped::get_ped_drawable_variation(iParam0, 5) != 0)
				{
					ped::set_ped_component_variation(iParam0, 5, func_526(iParam0, iVar102), func_525(iParam0, iVar102), func_524(iParam0, iVar102));
				}
				if (iParam0 == player::player_ped_id())
				{
					player::set_player_parachute_variation_override(player::player_id(), 5, func_526(player::player_ped_id(), iVar102), func_525(player::player_ped_id(), iVar102), 0);
					player::set_player_parachute_pack_tint_index(player::player_id(), func_524(player::player_ped_id(), iVar102));
					func_521(player::player_id(), iVar102);
				}
			}
			if (iParam1 == 7)
			{
				if ((iVar5 == joaat("mp_m_freemode_01") && iParam2 >= 92) || (iVar5 == joaat("mp_f_freemode_01") && iParam2 >= 55))
				{
					if (dlc1::_0x341DE7ED1D2A1BFD(Global_2621444, -319568873, 0))
					{
						func_504(iParam0, 9, 0, 0, iParam4, 0, 0, 0, -1, -1, -1, 0, 0, 0);
					}
				}
			}
			if (iVar5 == joaat("mp_f_freemode_01") && (iParam1 == 11 || iParam1 == 4))
			{
				if (iParam1 == 11)
				{
					iVar103 = func_618(iParam0, 4, -1);
					iVar104 = iParam2;
				}
				else
				{
					iVar103 = iParam2;
					iVar104 = func_618(iParam0, 11, -1);
				}
				if (func_520(iVar5, 11, iVar104, -1))
				{
					if (!func_519(iVar5, 4, iVar103, -1))
					{
						if (func_518(iVar5, 4, iVar103, &uVar105))
						{
							func_504(iParam0, 4, uVar105, 0, iParam4, 0, 0, 0, -1, -1, -1, 0, 0, 0);
						}
					}
				}
				else if (func_519(iVar5, 4, iVar103, -1))
				{
					if (func_517(iVar5, 4, iVar103, &uVar105))
					{
						func_504(iParam0, 4, uVar105, 0, iParam4, 0, 0, 0, -1, -1, -1, 0, 0, 0);
					}
				}
			}
			if (iParam1 == 4 || iParam1 == 6)
			{
				iVar106 = ped::get_ped_drawable_variation(iParam0, 6);
				iVar107 = ped::get_ped_texture_variation(iParam0, 6);
				iVar108 = dlc1::get_hash_name_for_component(iParam0, 6, iVar106, iVar107);
				iVar109 = ped::get_ped_drawable_variation(iParam0, 4);
				iVar110 = ped::get_ped_texture_variation(iParam0, 4);
				iVar111 = dlc1::get_hash_name_for_component(iParam0, 4, iVar109, iVar110);
				iVar112 = func_605(iParam0, 4);
				iVar113 = func_605(iParam0, 6);
				if (func_516(iVar5, iVar108))
				{
					if (dlc1::_0x341DE7ED1D2A1BFD(iVar108, 1812005517, 0) != func_515(iVar5, iVar112, iVar108))
					{
						iVar114 = dlc1::_0xC17AD0E5752BECDA(iVar108);
						iVar115 = 0;
						while (iVar115 < iVar114)
						{
							dlc1::get_variant_component(iVar108, iVar115, &iVar116, &uVar117, &iVar118);
							if (iVar118 == 6)
							{
								if (iVar116 != 0 && iVar116 != 1849449579)
								{
									if (iVar5 == joaat("mp_m_freemode_01"))
									{
										iVar113 = func_512(iVar5, iVar116, 6, 3);
										iVar108 = iVar116;
										func_504(iParam0, 6, iVar113, 0, iParam4, 0, 0, 0, -1, -1, -1, 0, 0, 0);
									}
									else if (iVar5 == joaat("mp_f_freemode_01"))
									{
										iVar113 = func_512(iVar5, iVar116, 6, 4);
										iVar108 = iVar116;
										func_504(iParam0, 6, iVar113, 0, iParam4, 0, 0, 0, -1, -1, -1, 0, 0, 0);
									}
									iVar115 = iVar114 + 1;
								}
							}
							iVar115++;
						}
					}
					else if (dlc1::_0x341DE7ED1D2A1BFD(iVar111, -2042643157, 0) != func_511(iVar5, iVar113, iVar111))
					{
						iVar119 = dlc1::_0xC17AD0E5752BECDA(iVar111);
						iVar120 = 0;
						while (iVar120 < iVar119)
						{
							dlc1::get_variant_component(iVar111, iVar120, &iVar121, &uVar122, &iVar123);
							if (iVar123 == 4)
							{
								if (iVar121 != 0 && iVar121 != 1849449579)
								{
									if (iVar5 == joaat("mp_m_freemode_01"))
									{
										iVar112 = func_512(iVar5, iVar121, 4, 3);
										iVar111 = iVar121;
										func_504(iParam0, 4, iVar112, 0, iParam4, 0, 0, 0, -1, -1, -1, 0, 0, 0);
									}
									else if (iVar5 == joaat("mp_f_freemode_01"))
									{
										iVar112 = func_512(iVar5, iVar121, 4, 4);
										iVar111 = iVar121;
										func_504(iParam0, 4, iVar112, 0, iParam4, 0, 0, 0, -1, -1, -1, 0, 0, 0);
									}
									iVar120 = iVar119 + 1;
								}
							}
							iVar120++;
						}
					}
				}
				if (func_516(iVar5, iVar111))
				{
					if (dlc1::_0x341DE7ED1D2A1BFD(iVar111, -2042643157, 0) != func_511(iVar5, iVar113, iVar111))
					{
						iVar124 = dlc1::_0xC17AD0E5752BECDA(iVar111);
						iVar125 = 0;
						while (iVar125 < iVar124)
						{
							dlc1::get_variant_component(iVar111, iVar125, &iVar126, &uVar127, &iVar128);
							if (iVar128 == 4)
							{
								if (iVar126 != 0 && iVar126 != 1849449579)
								{
									if (iVar5 == joaat("mp_m_freemode_01"))
									{
										iVar112 = func_512(iVar5, iVar126, 4, 3);
										iVar111 = iVar126;
										func_504(iParam0, 4, iVar112, 0, iParam4, 0, 0, 0, -1, -1, -1, 0, 0, 0);
									}
									else if (iVar5 == joaat("mp_f_freemode_01"))
									{
										iVar112 = func_512(iVar5, iVar126, 4, 4);
										iVar111 = iVar126;
										func_504(iParam0, 4, iVar112, 0, iParam4, 0, 0, 0, -1, -1, -1, 0, 0, 0);
									}
									iVar125 = iVar124 + 1;
								}
							}
							iVar125++;
						}
					}
					else if (dlc1::_0x341DE7ED1D2A1BFD(iVar108, 1812005517, 0) != func_515(iVar5, iVar112, iVar108))
					{
						iVar129 = dlc1::_0xC17AD0E5752BECDA(iVar108);
						iVar130 = 0;
						while (iVar130 < iVar129)
						{
							dlc1::get_variant_component(iVar108, iVar130, &iVar131, &uVar132, &iVar133);
							if (iVar133 == 6)
							{
								if (iVar131 != 0 && iVar131 != 1849449579)
								{
									if (iVar5 == joaat("mp_m_freemode_01"))
									{
										iVar113 = func_512(iVar5, iVar131, 6, 3);
										iVar108 = iVar131;
										func_504(iParam0, 6, iVar113, 0, iParam4, 0, 0, 0, -1, -1, -1, 0, 0, 0);
									}
									else if (iVar5 == joaat("mp_f_freemode_01"))
									{
										iVar113 = func_512(iVar5, iVar131, 6, 4);
										iVar108 = iVar131;
										func_504(iParam0, 6, iVar113, 0, iParam4, 0, 0, 0, -1, -1, -1, 0, 0, 0);
									}
									iVar130 = iVar129 + 1;
								}
							}
							iVar130++;
						}
					}
				}
			}
			if (iParam1 == 11 || iParam1 == 1)
			{
				func_607(iParam0);
				iVar134 = ped::get_ped_drawable_variation(iParam0, 1);
				iVar135 = ped::get_ped_texture_variation(iParam0, 1);
				iVar136 = dlc1::get_hash_name_for_component(iParam0, 1, iVar134, iVar135);
				if (dlc1::_0x341DE7ED1D2A1BFD(iVar136, 838607662, 0))
				{
					iVar3 = func_610(iParam0, iVar5, iParam1, iParam2, 14, 0);
					if (iVar3 != -99)
					{
						func_504(iParam0, 14, iVar3, 0, -1, 0, 0, 0, -1, -1, -1, 0, 0, 0);
					}
					iVar3 = func_610(iParam0, iVar5, iParam1, iParam2, 14, 1);
					if (iVar3 != -99)
					{
						func_504(iParam0, 14, iVar3, 0, -1, 0, 0, 0, -1, -1, -1, 0, 0, 0);
					}
				}
			}
		}
	}
	if (iParam1 != 2)
	{
		if (func_505(iParam0, &uVar4))
		{
			func_504(iParam0, 2, uVar4, 0, -1, 0, 0, 0, -1, -1, -1, 0, 0, 0);
		}
	}
	if (iVar6 != -99 && !iParam13)
	{
		func_504(iParam0, 3, iVar6, 0, iParam4, 0, 0, 0, -1, -1, -1, 0, 0, 0);
	}
	if (iVar9 != -99)
	{
		func_504(iParam0, 8, iVar9, 0, iParam4, 0, 0, 0, -1, -1, -1, 0, 0, 0);
	}
	if (iVar7 != -99)
	{
		func_504(iParam0, 1, iVar7, 0, -1, 0, 0, 0, -1, -1, -1, 0, 0, 0);
	}
	if (iVar11 != -1)
	{
		iVar137 = func_602(iVar5, func_618(iParam0, 3, -1), iVar11);
		if (iVar137 != -1)
		{
			if (iVar5 == joaat("mp_m_freemode_01"))
			{
				iVar10 = func_512(iVar5, iVar137, 3, 3);
			}
			else if (iVar5 == joaat("mp_f_freemode_01"))
			{
				iVar10 = func_512(iVar5, iVar137, 3, 4);
			}
			if (iVar10 != -99)
			{
				iVar10 = (iVar10 + iVar12);
				func_504(iParam0, 3, iVar10, 0, iParam4, 0, 0, 0, -1, -1, -1, 0, 0, 0);
			}
		}
	}
	Global_69517 = (Global_69517 - 1);
	return true;
}

bool func_505(int iParam0, var uParam1)//Position - 0x27395
{
	int iVar0;
	int iVar1;
	
	*uParam1 = func_618(player::player_ped_id(), 2, -1);
	if (func_241(748, Global_69516, 0) != -99 && func_508())
	{
		if (func_507() == 4)
		{
			return true;
		}
		if (func_241(748, Global_69516, 0) == 0 && func_241(749, Global_69516, 0) == 0)
		{
			if (func_187(161, Global_69516))
			{
				if (func_241(2045, Global_69516, 0) == 0)
				{
					return false;
				}
			}
			else if (func_241(747, Global_69516, 0) == 0)
			{
				return false;
			}
		}
		iVar0 = func_241(748, Global_69516, 0);
		iVar1 = func_241(749, Global_69516, 0);
		if (!func_530(iParam0, iVar1, iVar0))
		{
			if (func_187(161, Global_69516))
			{
				*uParam1 = func_241(2045, Global_69516, 0);
			}
			else
			{
				*uParam1 = func_241(747, Global_69516, 0);
			}
			func_506(748, -99, Global_69516, 1, 0);
			func_506(749, 2, Global_69516, 1, 0);
			return true;
		}
	}
	return false;
}

void func_506(int iParam0, int iParam1, int iParam2, int iParam3, int iParam4)//Position - 0x274A9
{
	int iVar0;
	
	if (iParam4)
	{
	}
	iVar0 = Global_2503773[iParam0 /*3*/][func_180(iParam2)];
	if (iVar0 != 0)
	{
		stats::stat_set_int(iVar0, iParam1, iParam3);
	}
}

var func_507()//Position - 0x274D9
{
	return Global_1315163;
}

bool func_508()//Position - 0x274E5
{
	if (func_510() && func_509(0))
	{
		return true;
	}
	return false;
}

var func_509(int iParam0)//Position - 0x27503
{
	return Global_1312369[iParam0];
}

var func_510()//Position - 0x27513
{
	return func_509(func_126() + 1);
}

bool func_511(int iParam0, int iParam1, int iParam2)//Position - 0x27525
{
	int iVar0;
	
	iVar0 = -1;
	switch (iParam0)
	{
		case joaat("mp_m_freemode_01"):
			if (iParam1 >= 256)
			{
				iVar0 = func_604(iParam0, iParam1, 6, 3);
			}
			if (dlc1::_0x341DE7ED1D2A1BFD(iParam2, -56268180, 0))
			{
				if ((((((((((dlc1::_0x341DE7ED1D2A1BFD(iVar0, -713698407, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, 140732128, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, 2106216756, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, -849839091, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, -1446333198, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, -269266203, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, 201427653, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, 967829025, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, -685039259, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, -1266557933, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, -364248070, 0))
				{
					return true;
				}
			}
			break;
		
		case joaat("mp_f_freemode_01"):
			break;
	}
	return false;
	return false;
}

int func_512(int iParam0, int iParam1, int iParam2, int iParam3)//Position - 0x27638
{
	struct<2> Var0;
	int iVar17;
	int iVar18;
	int iVar19;
	struct<2> Var20;
	int iVar37;
	int iVar38;
	int iVar39;
	
	if (iParam2 == 12)
	{
	}
	else if (iParam2 == 13)
	{
	}
	else if (iParam2 == 14)
	{
		dlc1::init_shop_ped_prop(&Var0);
		iVar18 = 0;
		iVar19 = dlc1::_get_num_props_from_outfit(iParam3, 6, -1, 1, -1, -1);
		iVar17 = 0;
		while (iVar17 < iVar19)
		{
			dlc1::get_shop_ped_query_prop(iVar17, &Var0);
			if (!dlc1::_is_dlc_data_empty(Var0))
			{
				if (iParam1 == Var0.f_1)
				{
					return (func_514(iParam0) + iVar18);
				}
				iVar18++;
			}
			iVar17++;
		}
	}
	else
	{
		dlc1::init_shop_ped_component(&Var20);
		iVar38 = 0;
		iVar39 = dlc1::_get_num_props_from_outfit(iParam3, 6, -1, 0, -1, func_626(iParam2));
		iVar37 = 0;
		while (iVar37 < iVar39)
		{
			dlc1::get_shop_ped_query_component(iVar37, &Var20);
			if (!dlc1::_is_dlc_data_empty(Var20))
			{
				if (iParam1 == Var20.f_1)
				{
					return (func_513(iParam0, func_626(iParam2)) + iVar38);
				}
				iVar38++;
			}
			iVar37++;
		}
	}
	return -99;
}

int func_513(int iParam0, int iParam1)//Position - 0x27718
{
	switch (iParam0)
	{
		case joaat("player_zero"):
			switch (iParam1)
			{
				case 0:
					return 7;
					break;
				
				case 1:
					return 5;
					break;
				
				case 2:
					return 6;
					break;
				
				case 3:
					return 181;
					break;
				
				case 4:
					return 113;
					break;
				
				case 5:
					return 14;
					break;
				
				case 6:
					return 99;
					break;
				
				case 7:
					return 1;
					break;
				
				case 8:
					return 24;
					break;
				
				case 9:
					return 20;
					break;
				
				case 10:
					return 48;
					break;
				
				case 11:
					return 45;
					break;
			}
			break;
		
		case joaat("player_one"):
			switch (iParam1)
			{
				case 0:
					return 10;
					break;
				
				case 1:
					return 5;
					break;
				
				case 2:
					return 21;
					break;
				
				case 3:
					return 318;
					break;
				
				case 4:
					return 117;
					break;
				
				case 5:
					return 7;
					break;
				
				case 6:
					return 134;
					break;
				
				case 7:
					return 1;
					break;
				
				case 8:
					return 77;
					break;
				
				case 9:
					return 12;
					break;
				
				case 10:
					return 53;
					break;
				
				case 11:
					return 63;
					break;
			}
			break;
		
		case joaat("player_two"):
			switch (iParam1)
			{
				case 0:
					return 7;
					break;
				
				case 1:
					return 6;
					break;
				
				case 2:
					return 9;
					break;
				
				case 3:
					return 242;
					break;
				
				case 4:
					return 104;
					break;
				
				case 5:
					return 7;
					break;
				
				case 6:
					return 84;
					break;
				
				case 7:
					return 1;
					break;
				
				case 8:
					return 18;
					break;
				
				case 9:
					return 17;
					break;
				
				case 10:
					return 33;
					break;
				
				case 11:
					return 1;
					break;
			}
			break;
	}
	switch (iParam0)
	{
		case joaat("mp_m_freemode_01"):
			switch (iParam1)
			{
				case 0:
					return 0;
					break;
				
				case 1:
					return 26;
					break;
				
				case 2:
					return 91;
					break;
				
				case 3:
					return 16;
					break;
				
				case 4:
					return 256;
					break;
				
				case 5:
					return 9;
					break;
				
				case 6:
					return 256;
					break;
				
				case 7:
					return 92;
					break;
				
				case 8:
					return 241;
					break;
				
				case 9:
					return 46;
					break;
				
				case 10:
					return 7;
					break;
				
				case 11:
					return 237;
					break;
			}
			break;
		
		case joaat("mp_f_freemode_01"):
			switch (iParam1)
			{
				case 0:
					return 0;
					break;
				
				case 1:
					return 26;
					break;
				
				case 2:
					return 92;
					break;
				
				case 3:
					return 16;
					break;
				
				case 4:
					return 256;
					break;
				
				case 5:
					return 9;
					break;
				
				case 6:
					return 256;
					break;
				
				case 7:
					return 55;
					break;
				
				case 8:
					return 136;
					break;
				
				case 9:
					return 36;
					break;
				
				case 10:
					return 6;
					break;
				
				case 11:
					return 256;
					break;
			}
			break;
	}
	return -99;
}

int func_514(int iParam0)//Position - 0x27ABF
{
	switch (iParam0)
	{
		case joaat("player_zero"):
			return 113;
			break;
		
		case joaat("player_one"):
			return 175;
			break;
		
		case joaat("player_two"):
			return 155;
			break;
	}
	switch (iParam0)
	{
		case joaat("mp_m_freemode_01"):
			return 327;
			break;
		
		case joaat("mp_f_freemode_01"):
			return 327;
			break;
	}
	return -99;
}

int func_515(int iParam0, int iParam1, int iParam2)//Position - 0x27B20
{
	int iVar0;
	int iVar1;
	int iVar2;
	
	iVar0 = -1;
	iVar1 = -1;
	switch (iParam0)
	{
		case joaat("mp_m_freemode_01"):
			if (iParam1 >= 256)
			{
				iVar0 = func_604(iParam0, iParam1, 4, 3);
				iVar1 = func_595(iVar0);
			}
			if (dlc1::_0x341DE7ED1D2A1BFD(iParam2, -364248070, 0) || dlc1::_0x341DE7ED1D2A1BFD(iParam2, -56268180, 0))
			{
				iVar2 = 1;
				if (((((((((((((((((((iParam1 >= 32 && iParam1 <= 47) || (iParam1 >= 64 && iParam1 <= 79)) || (iParam1 >= 96 && iParam1 <= 111)) || (iParam1 >= 176 && iParam1 <= 191)) || (iParam1 >= 192 && iParam1 <= 207)) || (iParam1 >= 224 && iParam1 <= 239)) || (iParam1 >= 240 && iParam1 <= 255)) || iVar1 == 2) || iVar1 == 4) || iVar1 == 6) || iVar1 == 11) || iVar1 == 12) || iVar1 == 14) || iVar1 == 15) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, 320460654, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, -269266203, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, 201427653, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, 967829025, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, -685039259, 0))
				{
					iVar2 = 0;
				}
				switch (iVar0)
				{
					case -439764935:
					case 1858824227:
					case -44268217:
					case 301706885:
					case 1283072893:
					case -1590178565:
					case 1995307108:
					case 1029014836:
					case -365568266:
					case -138446327:
					case -2034722819:
					case -1219513062:
					case 153704652:
					case 356276239:
					case 586511233:
					case 1558996842:
					case 1183988406:
					case 1000678684:
					case 761792674:
					case -145679239:
					case 686423978:
					case -763407658:
					case 74266289:
					case 987390769:
					case 1591372991:
					case 1834027448:
					case 913054691:
					case 1142372153:
					case -1698011990:
					case -1443101939:
					case 2133699953:
					case -1924511318:
					case -475531676:
					case -237137197:
					case 754461254:
					case -1155840382:
					case 629180074:
					case 859251223:
					case 1610316715:
					case 901392169:
					case -92983136:
					case 1346362420:
					case 485782942:
					case 312004063:
					case 6695290:
					case 1724446270:
					case -448105673:
					case -611098679:
					case -1111088081:
					case -1406369540:
					case -1912159043:
					case 2076516410:
					case 1919618438:
					case 45227112:
					case -2129094253:
					case -421370587:
					case -675363106:
						iVar2 = 0;
						break;
				}
				return iVar2;
			}
			break;
		
		case joaat("mp_f_freemode_01"):
			if (iParam1 >= 256)
			{
				iVar0 = func_604(iParam0, iParam1, 4, 4);
				iVar1 = func_595(iVar0);
			}
			if (dlc1::_0x341DE7ED1D2A1BFD(iParam2, -364248070, 0) || dlc1::_0x341DE7ED1D2A1BFD(iParam2, -56268180, 0))
			{
				if ((((((((((((((((((((((((iParam1 >= 16 && iParam1 <= 31) || (iParam1 >= 48 && iParam1 <= 63)) || (iParam1 >= 96 && iParam1 <= 111)) || iVar1 == 1) || iVar1 == 3) || iVar1 == 6) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, 1863955539, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, 2106216756, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, -761463976, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, 684992453, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, 916636514, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, -1939378450, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, 264959411, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, -1127835965, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, -1119232689, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, -1207283343, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, -849839091, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, -2088146832, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, -1446333198, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, -430330349, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, -1103045158, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, 1055526375, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, -2020757158, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, -1325813684, 0))
				{
					return 1;
				}
			}
			break;
	}
	return 0;
}

bool func_516(int iParam0, int iParam1)//Position - 0x28007
{
	switch (iParam0)
	{
		case joaat("mp_m_freemode_01"):
			if (dlc1::_0x341DE7ED1D2A1BFD(iParam1, -364248070, 0) || dlc1::_0x341DE7ED1D2A1BFD(iParam1, -56268180, 0))
			{
				return true;
			}
			break;
		
		case joaat("mp_f_freemode_01"):
			if (dlc1::_0x341DE7ED1D2A1BFD(iParam1, -364248070, 0) || dlc1::_0x341DE7ED1D2A1BFD(iParam1, -56268180, 0))
			{
				return true;
			}
			break;
	}
	return false;
}

bool func_517(int iParam0, int iParam1, int iParam2, var uParam3)//Position - 0x28073
{
	int iVar0;
	int iVar1;
	int iVar2;
	int iVar3;
	var uVar4;
	int iVar5;
	
	switch (iParam0)
	{
		case joaat("mp_f_freemode_01"):
			switch (iParam1)
			{
				case 4:
					if (iParam2 >= 256)
					{
						iVar0 = func_604(iParam0, iParam2, iParam1, 4);
						if (iVar0 != -1)
						{
							iVar1 = dlc1::_0xC17AD0E5752BECDA(iVar0);
							iVar2 = 0;
							while (iVar2 < iVar1)
							{
								dlc1::get_variant_component(iVar0, iVar2, &iVar3, &uVar4, &iVar5);
								if (iVar5 == 4)
								{
									if (iVar3 != 0 && iVar3 != 1849449579)
									{
										if (!dlc1::_0x341DE7ED1D2A1BFD(iVar3, -1100807313, 0))
										{
											*uParam3 = func_512(iParam0, iVar3, iParam1, 4);
											return true;
										}
									}
								}
								iVar2++;
							}
						}
					}
					break;
			}
			break;
	}
	return false;
}

bool func_518(int iParam0, int iParam1, int iParam2, var uParam3)//Position - 0x2811C
{
	int iVar0;
	int iVar1;
	int iVar2;
	int iVar3;
	var uVar4;
	int iVar5;
	
	switch (iParam0)
	{
		case joaat("mp_f_freemode_01"):
			switch (iParam1)
			{
				case 4:
					if (iParam2 >= 256)
					{
						iVar0 = func_604(iParam0, iParam2, iParam1, 4);
						if (iVar0 != -1)
						{
							iVar1 = dlc1::_0xC17AD0E5752BECDA(iVar0);
							iVar2 = 0;
							while (iVar2 < iVar1)
							{
								dlc1::get_variant_component(iVar0, iVar2, &iVar3, &uVar4, &iVar5);
								if (iVar5 == 4)
								{
									if (iVar3 != 0 && iVar3 != 1849449579)
									{
										if (dlc1::_0x341DE7ED1D2A1BFD(iVar3, -1100807313, 0))
										{
											*uParam3 = func_512(iParam0, iVar3, iParam1, 4);
											return true;
										}
									}
								}
								iVar2++;
							}
						}
					}
					break;
			}
			break;
	}
	return false;
}

bool func_519(int iParam0, int iParam1, int iParam2, int iParam3)//Position - 0x281C4
{
	switch (iParam0)
	{
		case joaat("mp_f_freemode_01"):
			switch (iParam1)
			{
				case 4:
					if (iParam2 >= 256)
					{
						if (iParam3 == -1)
						{
							iParam3 = func_604(iParam0, iParam2, 4, 4);
						}
						if (dlc1::_0x341DE7ED1D2A1BFD(iParam3, -1100807313, 0))
						{
							return true;
						}
					}
					break;
			}
			break;
	}
	return false;
}

int func_520(int iParam0, int iParam1, int iParam2, int iParam3)//Position - 0x2821A
{
	switch (iParam0)
	{
		case joaat("mp_f_freemode_01"):
			switch (iParam1)
			{
				case 11:
					if (iParam2 >= 256)
					{
						if (iParam3 == -1)
						{
							iParam3 = func_604(iParam0, iParam2, 11, 4);
						}
						return dlc1::_0x341DE7ED1D2A1BFD(iParam3, -530089825, 0);
					}
					break;
			}
			break;
	}
	return false;
}

void func_521(int iParam0, int iParam1)//Position - 0x2826D
{
	if (func_523())
	{
		if (iParam1 > 46)
		{
			player::set_player_parachute_pack_model_override(iParam0, 1766664132);
		}
		else if (iParam1 > 26)
		{
			player::set_player_parachute_pack_model_override(iParam0, 1277738372);
		}
		else if (iParam1 > 0)
		{
			player::set_player_parachute_pack_model_override(iParam0, 1269440357);
		}
		else
		{
			player::clear_player_parachute_pack_model_override(iParam0);
		}
	}
	else if (func_522())
	{
		if (iParam1 > 0)
		{
			player::set_player_parachute_pack_model_override(iParam0, 1479397204);
		}
		else
		{
			player::clear_player_parachute_pack_model_override(iParam0);
		}
	}
}

int func_522()//Position - 0x282E4
{
	return dlc2::is_dlc_present(1428761799);
}

int func_523()//Position - 0x282F5
{
	return dlc2::is_dlc_present(-1005876368);
}

bool func_524(int iParam0, int iParam1)//Position - 0x28306
{
	return false;
}

int func_525(int iParam0, int iParam1)//Position - 0x2830F
{
	if (iParam1 > 62)
	{
		return (iParam1 - 63);
	}
	if (iParam1 > 51)
	{
		return (iParam1 - 52);
	}
	if (iParam1 > 46)
	{
		return (iParam1 - 47);
	}
	if (iParam1 > 26)
	{
		return (iParam1 - 27);
	}
	if (iParam1 > 0)
	{
		return (iParam1 - 1);
	}
	return iParam1;
}

int func_526(int iParam0, int iParam1)//Position - 0x28371
{
	int iVar0;
	int iVar1;
	int iVar2;
	int iVar3;
	int iVar4;
	int iVar5;
	int iVar6;
	int iVar7;
	
	iVar0 = ped::get_ped_drawable_variation(iParam0, 11);
	if (ped::get_ped_drawable_variation(iParam0, 9) != 0)
	{
		iVar1 = true;
	}
	iVar2 = entity::get_entity_model(iParam0);
	iVar3 = dlc1::get_hash_name_for_component(iParam0, 8, ped::get_ped_drawable_variation(iParam0, 8), ped::get_ped_texture_variation(iParam0, 8));
	if (dlc1::_0x341DE7ED1D2A1BFD(iVar3, 240476421, 8))
	{
		return func_529(iParam0, iParam1);
	}
	iVar4 = 0;
	if (iParam1 > 61)
	{
		iVar4 = 50;
	}
	else if (iParam1 > 51)
	{
		return iParam1;
	}
	else if (iParam1 > 46)
	{
		iVar4 = 30;
	}
	else if (iParam1 > 26)
	{
		iVar4 = 20;
	}
	else if (iParam1 > 0)
	{
		iVar4 = 9;
	}
	else
	{
		iVar4 = 0;
	}
	if (iVar0 > 15)
	{
		iVar5 = dlc1::get_hash_name_for_component(iParam0, 11, iVar0, ped::get_ped_texture_variation(iParam0, 11));
		if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, 655081063, 0))
		{
			if (iVar1)
			{
				return (8 + iVar4);
			}
			else
			{
				return (2 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -530089825, 0))
		{
			if (iVar1)
			{
				return (6 + iVar4);
			}
			else
			{
				return (6 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -713698407, 0))
		{
			if (iParam1 > 46)
			{
				return 39;
			}
			else if (iParam1 > 26)
			{
				return 29;
			}
			else if (iParam1 > 0)
			{
				return 18;
			}
			else
			{
				return 19;
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -1882920022, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				if (iVar1)
				{
					return (8 + iVar4);
				}
				else
				{
					return (2 + iVar4);
				}
			}
			else if (iVar1)
			{
				return (8 + iVar4);
			}
			else
			{
				return (2 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -317649054, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				if (iVar1)
				{
					return (8 + iVar4);
				}
				else
				{
					return (2 + iVar4);
				}
			}
			else if (iVar1)
			{
				return (8 + iVar4);
			}
			else
			{
				return (2 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, 1536649085, 0))
		{
			iVar6 = func_528(iVar5, 0);
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				switch (iVar6)
				{
					case 0:
						return (2 + iVar4);
						break;
					
					case 2:
						if (iParam1 > 46)
						{
							return 39;
						}
						else if (iParam1 > 26)
						{
							return 29;
						}
						else if (iParam1 > 0)
						{
							return 18;
						}
						else
						{
							return 19;
						}
						break;
					
					default:
						iVar0 = func_595(iVar5);
						break;
				}
			}
			else
			{
				switch (iVar6)
				{
					case 2:
						return (7 + iVar4);
						break;
					
					default:
						iVar0 = func_595(iVar5);
						break;
					}
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, 248194463, 0))
		{
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -1347486026, 0))
			{
				return (3 + iVar4);
			}
			else
			{
				return (7 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, 396458410, 0))
		{
			iVar7 = func_527(iVar5, 0);
			switch (iVar7)
			{
				case 4:
					if (iParam1 > 46)
					{
						return 39;
					}
					else if (iParam1 > 26)
					{
						return 28;
					}
					else if (iParam1 > 0)
					{
						return 17;
					}
					else
					{
						return 8;
					}
					break;
				
				case 5:
					if (iVar2 == joaat("mp_m_freemode_01"))
					{
					}
					else
					{
						return (8 + iVar4);
					}
					break;
				
				case 6:
					if (iVar2 == joaat("mp_m_freemode_01"))
					{
					}
					else
					{
						return (8 + iVar4);
					}
					break;
				
				case 7:
					if (iVar2 == joaat("mp_m_freemode_01"))
					{
					}
					else
					{
						return (8 + iVar4);
					}
					break;
				
				case 11:
					if (iVar2 == joaat("mp_m_freemode_01"))
					{
					}
					else
					{
						return (8 + iVar4);
					}
					break;
				
				case 12:
					if (iVar2 == joaat("mp_m_freemode_01"))
					{
					}
					else
					{
						return (8 + iVar4);
					}
					break;
				
				case 14:
					if (iParam1 > 46)
					{
						return 39;
					}
					else if (iParam1 > 26)
					{
						return 29;
					}
					else if (iParam1 > 0)
					{
						return 18;
					}
					else
					{
						return 19;
					}
					break;
				
				default:
					iVar0 = func_595(iVar5);
					break;
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -779835469, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				if (iVar1)
				{
					return (8 + iVar4);
				}
				else
				{
					return (3 + iVar4);
				}
			}
			else if (iVar1)
			{
				return (8 + iVar4);
			}
			else
			{
				return (2 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -1119232689, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return (3 + iVar4);
			}
			else if (iVar1)
			{
				return (8 + iVar4);
			}
			else
			{
				return (1 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -2102859770, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return (2 + iVar4);
			}
			else
			{
				return (2 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, 1784133476, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return (2 + iVar4);
			}
			else if (iVar1)
			{
				return (8 + iVar4);
			}
			else
			{
				return (1 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -1607949555, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return (3 + iVar4);
			}
			else
			{
				return (4 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, 1976716889, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return (3 + iVar4);
			}
			else
			{
				return (8 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, 2099109084, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return (2 + iVar4);
			}
			else
			{
				return (8 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -1488441032, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				if (iParam1 > 46)
				{
					return 39;
				}
				else if (iParam1 > 26)
				{
					return 29;
				}
				else if (iParam1 > 0)
				{
					return 18;
				}
				else
				{
					return 19;
				}
			}
			else
			{
				return (4 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -1719167561, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar5, 1431529976, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return (3 + iVar4);
			}
			else
			{
				return (8 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -1274099003, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar5, 1723403459, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return (3 + iVar4);
			}
			else
			{
				return (8 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, 912543594, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return (2 + iVar4);
			}
		}
		else if ((dlc1::_0x341DE7ED1D2A1BFD(iVar5, -1086258388, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar5, 103539798, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar5, -994703884, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				if (iVar1)
				{
					return (8 + iVar4);
				}
				else
				{
					return (6 + iVar4);
				}
			}
			else if (iVar1)
			{
				return (8 + iVar4);
			}
			else
			{
				return (7 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, 2044466679, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				if (iParam1 > 46)
				{
					return 39;
				}
				else if (iParam1 > 26)
				{
					return 29;
				}
				else if (iParam1 > 0)
				{
					return 18;
				}
				else
				{
					return 19;
				}
			}
			else if (iVar1)
			{
				return (4 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -2020757158, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return (3 + iVar4);
			}
			else if (iVar1)
			{
				return (8 + iVar4);
			}
			else
			{
				return (2 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -1064262817, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				if (iVar1)
				{
					return (8 + iVar4);
				}
				else
				{
					return (2 + iVar4);
				}
			}
			else if (iVar1)
			{
				return func_529(iParam0, iParam1);
			}
			else
			{
				return (8 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -1419806467, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return (7 + iVar4);
			}
			else
			{
				return (8 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -1053842259, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				if (iVar1)
				{
					return (8 + iVar4);
				}
				else
				{
					return (2 + iVar4);
				}
			}
			else
			{
				return (8 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -1358888880, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return (3 + iVar4);
			}
			else
			{
				return (4 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -441291342, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return (3 + iVar4);
			}
			else
			{
				return (8 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -747583185, 0))
		{
			if (iVar2 == joaat("mp_f_freemode_01"))
			{
				if (iVar1)
				{
					return func_529(iParam0, iParam1);
				}
				else
				{
					return (2 + iVar4);
				}
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -1986415230, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
			}
			else
			{
				return (8 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -2088146832, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				if (iVar1)
				{
					return (8 + iVar4);
				}
				else
				{
					return (6 + iVar4);
				}
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -785939537, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				if (iVar1)
				{
					return (8 + iVar4);
				}
				else
				{
					return (3 + iVar4);
				}
			}
			else
			{
				return (8 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -872449705, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				if (iVar1)
				{
					return (8 + iVar4);
				}
				else
				{
					return (2 + iVar4);
				}
			}
			else
			{
				return (8 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, 700658917, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return (8 + iVar4);
			}
			else
			{
				return (8 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, 1714969731, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				if (iVar1)
				{
					return (8 + iVar4);
				}
				else
				{
					return (2 + iVar4);
				}
			}
			else
			{
				return (8 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, 745826556, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return (8 + iVar4);
			}
			else
			{
				return (8 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, 1055526375, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return (8 + iVar4);
			}
			else
			{
				return (8 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, 144417099, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return (8 + iVar4);
			}
			else
			{
				return (8 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, 492620493, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return (8 + iVar4);
			}
			else
			{
				return (8 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -416620954, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				if (iVar1)
				{
					return (8 + iVar4);
				}
				else
				{
					return (3 + iVar4);
				}
			}
			else
			{
				return (4 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -102825006, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				if (iVar1)
				{
					return (8 + iVar4);
				}
				else
				{
					return (2 + iVar4);
				}
			}
			else
			{
				return (7 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -733792105, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				if (iVar1)
				{
					return (8 + iVar4);
				}
				else
				{
					return (7 + iVar4);
				}
			}
			else
			{
				return (4 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, 137011325, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				if (iVar1)
				{
					return (8 + iVar4);
				}
				else
				{
					return (3 + iVar4);
				}
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -641612092, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
			}
			else
			{
				return (6 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -1351486939, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				if (iVar1)
				{
					return (8 + iVar4);
				}
				else
				{
					return (2 + iVar4);
				}
			}
			else if (iVar1)
			{
				return func_529(iParam0, iParam1);
			}
			else
			{
				return (2 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -2119756144, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				if (iVar1)
				{
					return (8 + iVar4);
				}
				else
				{
					return (3 + iVar4);
				}
			}
			else
			{
				return (8 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -1507532917, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return func_529(iParam0, iParam1);
			}
			else
			{
				return (7 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, 947651647, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
			}
			else
			{
				return (8 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -1506370874, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return (8 + iVar4);
			}
			else
			{
				return (8 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -1786447517, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return (8 + iVar4);
			}
			else
			{
				return (8 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -1010805287, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return (8 + iVar4);
			}
			else
			{
				return (8 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -1325813684, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return (8 + iVar4);
			}
			else if (iVar1)
			{
				return func_529(iParam0, iParam1);
			}
			else
			{
				return (8 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -549843760, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return (8 + iVar4);
			}
			else
			{
				return (8 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -828478571, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return func_529(iParam0, iParam1);
			}
			else if (iVar1)
			{
				return (55 + iVar4);
			}
			else
			{
				return (8 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, 1690933245, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return (8 + iVar4);
			}
			else if (iVar1)
			{
				return func_529(iParam0, iParam1);
			}
			else
			{
				return (8 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, 1360588936, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return (8 + iVar4);
			}
			else
			{
				return (8 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, 2136821028, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return (8 + iVar4);
			}
			else
			{
				return (8 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, 1830529185, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return (8 + iVar4);
			}
			else
			{
				return (8 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -269266203, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return (3 + iVar4);
			}
			else
			{
				return (4 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, 201427653, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return (8 + iVar4);
			}
			else
			{
				return (4 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, 967829025, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return (8 + iVar4);
			}
			else
			{
				return (4 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -685039259, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return (3 + iVar4);
			}
			else
			{
				return (4 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -1266557933, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return func_529(iParam0, iParam1);
			}
			else
			{
				return (8 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -979468724, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return func_529(iParam0, iParam1);
			}
			else
			{
				return (8 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -1813210391, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return (3 + iVar4);
			}
			else
			{
				return (8 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, 263623295, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return func_529(iParam0, iParam1);
			}
			else
			{
				return (8 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -309899747, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return (8 + iVar4);
			}
			else
			{
				return (8 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -89003918, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return (8 + iVar4);
			}
			else
			{
				return (8 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -747858475, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return func_529(iParam0, iParam1);
			}
			else
			{
				return func_529(iParam0, iParam1);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, 490219883, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return func_529(iParam0, iParam1);
			}
			else
			{
				return (8 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, 1208450825, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return func_529(iParam0, iParam1);
			}
			else
			{
				return (8 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, 297865853, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return func_529(iParam0, iParam1);
			}
			else
			{
				return (8 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, 602650322, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return func_529(iParam0, iParam1);
			}
			else
			{
				return (8 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, 905042630, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return func_529(iParam0, iParam1);
			}
			else
			{
				return (8 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, 1204125293, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return func_529(iParam0, iParam1);
			}
			else
			{
				return (8 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, 310055897, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return func_529(iParam0, iParam1);
			}
			else
			{
				return (8 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, 606713654, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return func_529(iParam0, iParam1);
			}
			else
			{
				return func_529(iParam0, iParam1);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, 1831422288, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return (8 + iVar4);
			}
			else
			{
				return (8 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -838136846, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return (8 + iVar4);
			}
			else
			{
				return (8 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, 655638019, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return (8 + iVar4);
			}
			else
			{
				return (8 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, 970679185, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return (3 + iVar4);
			}
			else
			{
				return (8 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, 83294665, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return (8 + iVar4);
			}
			else
			{
				return (8 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, 382246252, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return (8 + iVar4);
			}
			else
			{
				return (4 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -99064836, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return func_529(iParam0, iParam1);
			}
			else
			{
				return (8 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -697656159, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return func_529(iParam0, iParam1) + 15;
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -398213037, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return func_529(iParam0, iParam1) + 15;
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, 1380605304, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
			}
			else
			{
				return func_529(iParam0, iParam1);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -306768813, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
			}
			else
			{
				return func_529(iParam0, iParam1) + 15;
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -58412562, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
			}
			else
			{
				return func_529(iParam0, iParam1) + 15;
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, 1711219157, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return func_529(iParam0, iParam1) + 15;
			}
			else
			{
				return func_529(iParam0, iParam1) + 15;
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, 1466664110, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return func_529(iParam0, iParam1) + 15;
			}
			else
			{
				return func_529(iParam0, iParam1) + 15;
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -1968575702, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return func_529(iParam0, iParam1) + 15;
			}
			else
			{
				return func_529(iParam0, iParam1) + 15;
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, 245429010, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return (48 + iVar4);
			}
			else
			{
				return func_529(iParam0, iParam1) + 15;
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, 15161247, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return (48 + iVar4);
			}
			else
			{
				return (48 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, 1965569012, 0) && iVar2 == joaat("mp_f_freemode_01"))
		{
			if (iVar1)
			{
				return (8 + iVar4);
			}
			else
			{
				return (1 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, 2026620439, 0) && iVar2 == joaat("mp_f_freemode_01"))
		{
			if (iVar1)
			{
				return (8 + iVar4);
			}
			else
			{
				return (2 + iVar4);
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, -1410897066, 0))
		{
			if (iVar2 == joaat("mp_m_freemode_01"))
			{
				return (3 + iVar4);
			}
			else
			{
				return (8 + iVar4);
			}
		}
		else if ((dlc1::_0x341DE7ED1D2A1BFD(iVar5, -2017999390, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar5, 320460654, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar5, -826135203, 0))
		{
			return (7 + iVar4);
		}
		else
		{
			iVar0 = func_595(iVar5);
		}
	}
	if (iVar2 == joaat("mp_m_freemode_01"))
	{
		switch (iVar0)
		{
			case 0:
				if (iVar1)
				{
					return (2 + iVar4);
				}
				else
				{
					return (1 + iVar4);
				}
				break;
			
			case 1:
				if (iVar1)
				{
					return (2 + iVar4);
				}
				else
				{
					return (1 + iVar4);
				}
				break;
			
			case 2:
				if (iVar1)
				{
					return (7 + iVar4);
				}
				else
				{
					return (7 + iVar4);
				}
				break;
			
			case 3:
				if (iVar1)
				{
					return (3 + iVar4);
				}
				else
				{
					return (3 + iVar4);
				}
				break;
			
			case 4:
				if (iVar1)
				{
					return (3 + iVar4);
				}
				else
				{
					return (3 + iVar4);
				}
				break;
			
			case 5:
				if (iVar1)
				{
					return (2 + iVar4);
				}
				else
				{
					return (1 + iVar4);
				}
				break;
			
			case 6:
				if (iVar1)
				{
					return (2 + iVar4);
				}
				else
				{
					return (2 + iVar4);
				}
				break;
			
			case 7:
				if (iVar1)
				{
					return (3 + iVar4);
				}
				else
				{
					return (3 + iVar4);
				}
				break;
			
			case 8:
				if (iVar1)
				{
					return (8 + iVar4);
				}
				else
				{
					return (1 + iVar4);
				}
				break;
			
			case 9:
				if (iVar1)
				{
					return (2 + iVar4);
				}
				else
				{
					return (1 + iVar4);
				}
				break;
			
			case 10:
				if (iVar1)
				{
					return (3 + iVar4);
				}
				else
				{
					return (3 + iVar4);
				}
				break;
			
			case 11:
				if (iVar1)
				{
					return (8 + iVar4);
				}
				else
				{
					return (2 + iVar4);
				}
				break;
			
			case 12:
				if (iVar1)
				{
					return (2 + iVar4);
				}
				else
				{
					return (1 + iVar4);
				}
				break;
			
			case 13:
				if (iVar1)
				{
					return (7 + iVar4);
				}
				else
				{
					return (2 + iVar4);
				}
				break;
			
			case 14:
				if (iVar1)
				{
					return (6 + iVar4);
				}
				else
				{
					return (6 + iVar4);
				}
				break;
			
			case 15:
				if (iVar1)
				{
					return (2 + iVar4);
				}
				else
				{
					return (5 + iVar4);
				}
				break;
		}
	}
	else
	{
		switch (iVar0)
		{
			case 0:
				if (iVar1)
				{
					return (2 + iVar4);
				}
				else
				{
					return (1 + iVar4);
				}
				break;
			
			case 1:
				if (iVar1)
				{
					return (7 + iVar4);
				}
				else
				{
					return (7 + iVar4);
				}
				break;
			
			case 2:
				if (iVar1)
				{
					return (4 + iVar4);
				}
				else
				{
					return (3 + iVar4);
				}
				break;
			
			case 3:
				if (iVar1)
				{
					return (6 + iVar4);
				}
				else
				{
					return (5 + iVar4);
				}
				break;
			
			case 4:
				if (iVar1)
				{
					return (2 + iVar4);
				}
				else
				{
					return (1 + iVar4);
				}
				break;
			
			case 5:
				if (iVar1)
				{
					return (2 + iVar4);
				}
				else
				{
					return (1 + iVar4);
				}
				break;
			
			case 6:
				if (iVar1)
				{
					return (7 + iVar4);
				}
				else
				{
					return (7 + iVar4);
				}
				break;
			
			case 7:
				if (iVar1)
				{
					return (7 + iVar4);
				}
				else
				{
					return (7 + iVar4);
				}
				break;
			
			case 8:
				if (iVar1)
				{
					return (7 + iVar4);
				}
				else
				{
					return (7 + iVar4);
				}
				break;
			
			case 9:
				return (2 + iVar4);
				break;
			
			case 10:
				if (iVar1)
				{
					return (7 + iVar4);
				}
				else
				{
					return (7 + iVar4);
				}
				break;
			
			case 11:
				if (iVar1)
				{
					return (2 + iVar4);
				}
				else
				{
					return (1 + iVar4);
				}
				break;
			
			case 12:
				if (iVar1)
				{
					return (2 + iVar4);
				}
				else
				{
					return (1 + iVar4);
				}
				break;
			
			case 13:
				if (iVar1)
				{
					return (2 + iVar4);
				}
				else
				{
					return (1 + iVar4);
				}
				break;
			
			case 14:
				if (iVar1)
				{
					return (8 + iVar4);
				}
				else
				{
					return (4 + iVar4);
				}
				break;
			
			case 15:
				if (iVar1)
				{
					return (2 + iVar4);
				}
				else
				{
					return (1 + iVar4);
				}
				break;
			}
	}
	return (1 + iVar4);
	return 0;
}

int func_527(int iParam0, int iParam1)//Position - 0x29DEA
{
	int iVar0;
	
	iVar0 = -1;
	if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, 140732128, iParam1))
	{
		iVar0 = 0;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, 1863955539, iParam1))
	{
		iVar0 = 1;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, 2106216756, iParam1))
	{
		iVar0 = 2;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, -761463976, iParam1))
	{
		iVar0 = 3;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, 1627756587, iParam1))
	{
		iVar0 = 4;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, 684992453, iParam1))
	{
		iVar0 = 5;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, 916636514, iParam1))
	{
		iVar0 = 6;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, -1939378450, iParam1))
	{
		iVar0 = 7;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, 441715397, iParam1))
	{
		iVar0 = 8;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, 264959411, iParam1))
	{
		iVar0 = 9;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, -1127835965, iParam1))
	{
		iVar0 = 10;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, -820724897, iParam1))
	{
		iVar0 = 11;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, 153792394, iParam1))
	{
		iVar0 = 12;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, -672871169, iParam1))
	{
		iVar0 = 13;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, 572416369, iParam1))
	{
		iVar0 = 14;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, -196114988, iParam1))
	{
		iVar0 = 15;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, 1322269404, iParam1))
	{
		iVar0 = 16;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, 548036233, iParam1))
	{
		iVar0 = 17;
	}
	return iVar0;
}

int func_528(int iParam0, int iParam1)//Position - 0x29F8A
{
	int iVar0;
	
	iVar0 = -1;
	if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, -870074461, iParam1))
	{
		iVar0 = 0;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, -1174924468, iParam1))
	{
		iVar0 = 1;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, -868698159, iParam1))
	{
		iVar0 = 2;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, -1177480446, iParam1))
	{
		iVar0 = 3;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, -1347486026, iParam1))
	{
		iVar0 = 4;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, -1655154167, iParam1))
	{
		iVar0 = 5;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, -2105858993, iParam1))
	{
		iVar0 = 6;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, 1893564692, iParam1))
	{
		iVar0 = 7;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, 1710451520, iParam1))
	{
		iVar0 = 8;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, 1416808511, iParam1))
	{
		iVar0 = 9;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, 1641506460, iParam1))
	{
		iVar0 = 10;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, 699233865, iParam1))
	{
		iVar0 = 11;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, 393400788, iParam1))
	{
		iVar0 = 12;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, 216120498, iParam1))
	{
		iVar0 = 13;
	}
	return iVar0;
}

int func_529(int iParam0, int iParam1)//Position - 0x2A0CE
{
	if (iParam1 > 61)
	{
		return 61;
	}
	if (iParam1 > 51)
	{
		return 51;
	}
	if (iParam1 > 46)
	{
		return 51;
	}
	if (iParam1 > 26)
	{
		return 50;
	}
	if (iParam1 > 0)
	{
		return 49;
	}
	return 48;
}

int func_530(int iParam0, int iParam1, int iParam2)//Position - 0x2A122
{
	int iVar0;
	int iVar1;
	var uVar2;
	var uVar3;
	int iVar4;
	int iVar5;
	int iVar6;
	int iVar7;
	var uVar8;
	var uVar25;
	int iVar35;
	var uVar36;
	int iVar46;
	int iVar47;
	var uVar48;
	var uVar49;
	int iVar50;
	struct<5> Var51;
	var uVar68;
	
	if (ped::is_ped_injured(iParam0))
	{
		return 0;
	}
	iVar0 = entity::get_entity_model(iParam0);
	Global_69518[1 /*14*/] = { func_638(iVar0, iParam1, iParam2) };
	uVar2 = Global_2621444;
	uVar3 = Global_2621445;
	if (!gameplay::is_bit_set(Global_69518[1 /*14*/].f_6, 0))
	{
		return 0;
	}
	if (iParam1 == 12)
	{
		uVar8 = { func_627(iVar0, iParam2) };
		iVar7 = 0;
		while (iVar7 < 7)
		{
			switch (iVar7)
			{
				case 0:
					iVar4 = 1;
					break;
				
				case 1:
					iVar4 = 4;
					break;
				
				case 2:
					iVar4 = 6;
					break;
				
				case 3:
					iVar4 = 7;
					break;
				
				case 4:
					iVar4 = 8;
					break;
				
				case 5:
					iVar4 = 11;
					break;
				
				case 6:
					iVar4 = 13;
					break;
			}
			if (uVar8[iVar4] != -99)
			{
				if (!func_530(iParam0, iVar4, uVar8[iVar4]))
				{
					Global_2621444 = uVar2;
					Global_2621445 = uVar3;
					return 0;
					if (iVar4 == 13)
					{
						uVar25 = { func_623(iVar0, uVar8[iVar4]) };
						iVar5 = 0;
						while (iVar5 <= 8)
						{
							if (!func_530(iParam0, 14, uVar25[iVar5]))
							{
								iVar6 = 0;
								while (iVar6 <= 19)
								{
									Global_69518[2 /*14*/] = { func_638(iVar0, 14, iVar6) };
									if (Global_69518[2 /*14*/].f_12 == iVar5)
									{
										if (func_530(iParam0, 14, iVar6))
										{
											if (!func_531(iVar0, iParam2, 14, iVar6, &uVar8, &(Global_69518[2 /*14*/])))
											{
												Global_2621444 = uVar2;
												Global_2621445 = uVar3;
												return 0;
											}
										}
									}
									iVar6++;
								}
							}
							iVar5++;
						}
					}
					else
					{
						iVar1 = func_605(iParam0, iVar4);
						Global_69518[2 /*14*/] = { func_638(iVar0, iVar4, iVar1) };
						if (!func_531(iVar0, iParam2, iVar4, iVar1, &uVar8, &(Global_69518[2 /*14*/])))
						{
							Global_2621444 = uVar2;
							Global_2621445 = uVar3;
							return 0;
						}
					}
				}
			}
			iVar7++;
		}
		if ((uVar8[10] != 0 && uVar8[10] != 1849449579) && uVar8.f_16)
		{
			if (func_241(1751, Global_69516, 0) != uVar8[10])
			{
				Global_2621444 = uVar2;
				Global_2621445 = uVar3;
				return 0;
			}
		}
		Global_2621444 = uVar2;
		Global_2621445 = uVar3;
		return 1;
	}
	else if (iParam1 == 13)
	{
		uVar36 = { func_623(iVar0, iParam2) };
		iVar35 = 0;
		while (iVar35 <= 8)
		{
			if (!func_530(iParam0, 14, uVar36[iVar35]))
			{
				return 0;
			}
			iVar35++;
		}
		return 1;
	}
	else if (iParam1 == 14)
	{
		if (ped::get_ped_prop_index(iParam0, Global_69518[1 /*14*/].f_12) == Global_69518[1 /*14*/].f_3 && (ped::get_ped_prop_texture_index(iParam0, Global_69518[1 /*14*/].f_12) == Global_69518[1 /*14*/].f_4 || Global_69518[1 /*14*/].f_3 == -1))
		{
			return 1;
		}
		if (((Global_69518[1 /*14*/].f_12 == 0 && gameplay::is_bit_set(Global_69518[1 /*14*/].f_6, 6)) && dlc1::_0x341DE7ED1D2A1BFD(Global_2621444, -1033433901, 1)) && unk_0xD40AAC51E8E4C663(Global_2621444) > 0)
		{
			iVar50 = unk_0xD40AAC51E8E4C663(Global_2621444);
			iVar46 = 0;
			while (iVar46 < iVar50)
			{
				unk_0xD81B7F27BC773E66(Global_2621444, iVar46, &iVar47, &uVar48, &uVar49);
				if (iVar47 != 0 && iVar47 != 1849449579)
				{
					dlc1::init_shop_ped_prop(&Var51);
					dlc1::_0x5D5CAFF661DDF6FC(iVar47, &Var51);
					if (Var51.f_3 == ped::get_ped_prop_index(iParam0, Global_69518[1 /*14*/].f_12) && Var51.f_4 == ped::get_ped_prop_texture_index(iParam0, Global_69518[1 /*14*/].f_12))
					{
						return 1;
					}
				}
				iVar46++;
			}
		}
	}
	else
	{
		if (Global_69518[1 /*14*/].f_3 == ped::get_ped_drawable_variation(iParam0, func_626(iParam1)) && Global_69518[1 /*14*/].f_4 == ped::get_ped_texture_variation(iParam0, func_626(iParam1)))
		{
			return 1;
		}
		if (iParam1 == 4)
		{
			if (func_520(iVar0, 11, func_605(iParam0, 11), -1))
			{
				if (func_518(iVar0, 4, iParam2, &uVar68))
				{
					return func_530(iParam0, 4, uVar68);
				}
			}
			else if (func_517(iVar0, 4, iParam2, &uVar68))
			{
				return func_530(iParam0, 4, uVar68);
			}
		}
	}
	return 0;
}

bool func_531(int iParam0, int iParam1, int iParam2, int iParam3, var uParam4, var uParam5)//Position - 0x2A563
{
	var uVar0;
	int iVar10;
	
	if ((*uParam4)[iParam2] == iParam3)
	{
		return true;
	}
	if (((*uParam4)[iParam2] == -99 && iParam2 != 14) && iParam2 != 13)
	{
		return true;
	}
	if (iParam2 == 13 || (iParam2 == 14 && (*uParam4)[13] == 31))
	{
		if ((((((((iParam3 == 0 || iParam3 == 1) || iParam3 == 2) || iParam3 == 3) || iParam3 == 4) || iParam3 == 5) || iParam3 == 6) || iParam3 == 7) || iParam3 == 8)
		{
			return true;
		}
	}
	if (iParam3 == -99 || uParam5->f_1 == -1)
	{
		return true;
	}
	if (iParam2 == 14)
	{
		uVar0 = { func_623(iParam0, (*uParam4)[13]) };
		iVar10 = 0;
		while (iVar10 <= 8)
		{
			if (uVar0[iVar10] == iParam3)
			{
				return true;
			}
			iVar10++;
		}
	}
	if (func_535(iParam0, iParam2, iParam3))
	{
		return true;
	}
	if (iParam0 == joaat("player_zero"))
	{
		if (func_534(iParam0, iParam2, iParam3, -1))
		{
			if ((((((iParam1 == 1 || iParam1 == 2) || iParam1 == 10) || iParam1 == 11) || iParam1 == 12) || iParam1 == 18) || iParam1 == 50)
			{
				return false;
			}
			return true;
		}
		else if (func_533(iParam0, iParam2, iParam3, -1))
		{
			if (((((((((iParam1 == 1 || iParam1 == 2) || iParam1 == 4) || iParam1 == 5) || iParam1 == 10) || iParam1 == 11) || iParam1 == 12) || iParam1 == 14) || iParam1 == 18) || iParam1 == 50)
			{
				return false;
			}
			if (iParam2 == 8)
			{
				if ((*uParam4)[8] != 0)
				{
					return false;
				}
			}
			else if (iParam2 == 9)
			{
				if ((*uParam4)[9] != 0)
				{
					return false;
				}
			}
			return true;
		}
		else if (func_532(iParam0, iParam2, iParam3, -1))
		{
			if (((((((((iParam1 == 1 || iParam1 == 2) || iParam1 == 4) || iParam1 == 5) || iParam1 == 10) || iParam1 == 11) || iParam1 == 12) || iParam1 == 14) || iParam1 == 18) || iParam1 == 50)
			{
				return false;
			}
			return true;
		}
	}
	else if (iParam0 == joaat("player_one"))
	{
		if (func_534(iParam0, iParam2, iParam3, -1))
		{
			if ((iParam1 == 3 || iParam1 == 5) || iParam1 == 7)
			{
				return false;
			}
			return true;
		}
		else if (func_533(iParam0, iParam2, iParam3, -1))
		{
			if ((((iParam1 == 3 || iParam1 == 5) || iParam1 == 7) || iParam1 == 8) || iParam1 == 21)
			{
				if (iParam2 == 8)
				{
					if (iParam3 == 9)
					{
						if (iParam1 == 8 || iParam1 == 21)
						{
							return true;
						}
					}
					else
					{
						return false;
					}
				}
				else
				{
					return false;
				}
			}
			if (iParam2 == 8)
			{
				if ((*uParam4)[8] != 26)
				{
					return false;
				}
			}
			else if (iParam2 == 9)
			{
				if ((*uParam4)[9] != 0)
				{
					return false;
				}
				if (((iParam1 == 43 || iParam1 == 44) || iParam1 == 45) || iParam1 == 46)
				{
					if (iParam3 >= 5 && iParam3 <= 10)
					{
						return false;
					}
				}
			}
			else if (iParam2 == 14)
			{
				if (((iParam1 == 43 || iParam1 == 44) || iParam1 == 45) || iParam1 == 46)
				{
					if (iParam3 >= 26 && iParam3 <= 39)
					{
						return false;
					}
				}
			}
			return true;
		}
		else if (func_532(iParam0, iParam2, iParam3, -1))
		{
			if (((((iParam1 == 3 || iParam1 == 3) || iParam1 == 5) || iParam1 == 7) || iParam1 == 8) || iParam1 == 21)
			{
				return false;
			}
			return true;
		}
		else if (iParam2 == 14)
		{
			if (iParam3 >= 159 && iParam3 <= 174)
			{
				return true;
			}
		}
	}
	else if (iParam0 == joaat("player_two"))
	{
		if (iParam1 == 2)
		{
			if (iParam2 == 14 && iParam3 == 0)
			{
				return true;
			}
		}
		if (func_534(iParam0, iParam2, iParam3, -1))
		{
			if (((((iParam1 == 1 || iParam1 == 2) || iParam1 == 6) || iParam1 == 8) || iParam1 == 45) || iParam1 == 12)
			{
				return false;
			}
			return true;
		}
		else if (func_533(iParam0, iParam2, iParam3, -1))
		{
			if (((((((iParam1 == 1 || iParam1 == 2) || iParam1 == 3) || iParam1 == 6) || iParam1 == 8) || iParam1 == 11) || iParam1 == 45) || iParam1 == 12)
			{
				return false;
			}
			if (iParam2 == 8)
			{
				if ((*uParam4)[8] != 15)
				{
					return false;
				}
			}
			else if (iParam2 == 9)
			{
				if ((*uParam4)[9] != 0)
				{
					return false;
				}
			}
			return true;
		}
		else if (func_532(iParam0, iParam2, iParam3, -1))
		{
			if ((((((iParam1 == 1 || iParam1 == 2) || iParam1 == 3) || iParam1 == 6) || iParam1 == 8) || iParam1 == 11) || iParam1 == 12)
			{
				return false;
			}
			return true;
		}
	}
	return false;
}

int func_532(int iParam0, int iParam1, int iParam2, int iParam3)//Position - 0x2AB67
{
	switch (iParam0)
	{
		case joaat("player_zero"):
			switch (iParam1)
			{
				case 14:
					if (iParam2 == 16)
					{
						return true;
					}
					break;
			}
			break;
		
		case joaat("player_one"):
			switch (iParam1)
			{
				case 14:
					if ((iParam2 == 40 || (iParam2 >= 41 && iParam2 <= 56)) || (iParam2 >= 64 && iParam2 <= 79))
					{
						return true;
					}
					break;
			}
			break;
		
		case joaat("player_two"):
			switch (iParam1)
			{
				case 14:
					if ((iParam2 >= 17 && iParam2 <= 18) || (iParam2 >= 71 && iParam2 <= 86))
					{
						return true;
					}
					break;
			}
			break;
		
		case joaat("mp_m_freemode_01"):
			switch (iParam1)
			{
				case 14:
					if (iParam2 >= 18 && iParam2 <= 130)
					{
						return true;
					}
					else if (iParam2 >= 10 && iParam2 <= 17)
					{
						return true;
					}
					else if (iParam2 >= 327)
					{
						if (iParam3 == -1)
						{
							iParam3 = func_604(iParam0, iParam2, 14, 3);
						}
						return (dlc1::_0x341DE7ED1D2A1BFD(iParam3, -1757550583, 1) || dlc1::_0x341DE7ED1D2A1BFD(func_604(iParam0, iParam2, 14, 3), -1842686353, 1));
					}
					break;
				
				case 1:
					if (iParam2 >= 26)
					{
						if (iParam3 == -1)
						{
							iParam3 = func_604(iParam0, iParam2, 1, 3);
						}
						return (dlc1::_0x341DE7ED1D2A1BFD(iParam3, -1757550583, 0) || dlc1::_0x341DE7ED1D2A1BFD(func_604(iParam0, iParam2, 1, 3), -1842686353, 0));
					}
					break;
			}
			break;
		
		case joaat("mp_f_freemode_01"):
			switch (iParam1)
			{
				case 14:
					if (iParam2 >= 18 && iParam2 <= 130)
					{
						return true;
					}
					else if (iParam2 >= 10 && iParam2 <= 17)
					{
						return true;
					}
					else if (iParam2 >= 327)
					{
						if (iParam3 == -1)
						{
							iParam3 = func_604(iParam0, iParam2, 14, 4);
						}
						return (dlc1::_0x341DE7ED1D2A1BFD(iParam3, -1757550583, 1) || dlc1::_0x341DE7ED1D2A1BFD(func_604(iParam0, iParam2, 14, 4), -1842686353, 1));
					}
					break;
				
				case 1:
					if (iParam2 >= 26)
					{
						if (iParam3 == -1)
						{
							iParam3 = func_604(iParam0, iParam2, 1, 4);
						}
						return (dlc1::_0x341DE7ED1D2A1BFD(iParam3, -1757550583, 0) || dlc1::_0x341DE7ED1D2A1BFD(func_604(iParam0, iParam2, 1, 4), -1842686353, 0));
					}
					break;
			}
			break;
	}
	return false;
}

bool func_533(int iParam0, int iParam1, int iParam2, int iParam3)//Position - 0x2ADE4
{
	if (iParam0 == joaat("player_zero"))
	{
		if (iParam1 == 6)
		{
			if (iParam2 == 10)
			{
				return true;
			}
		}
		else if (iParam1 == 8)
		{
			if ((iParam2 == 9 || iParam2 == 7) || iParam2 == 23)
			{
				return true;
			}
		}
		else if (iParam1 == 9)
		{
			if (iParam2 >= 9 && iParam2 <= 14)
			{
				return true;
			}
		}
		else if (iParam1 == 14)
		{
			if ((((((((((((((((iParam2 == 12 || iParam2 == 59) || iParam2 == 60) || iParam2 == 31) || iParam2 == 32) || iParam2 == 33) || iParam2 == 34) || iParam2 == 35) || iParam2 == 36) || iParam2 == 37) || iParam2 == 38) || iParam2 == 39) || iParam2 == 40) || iParam2 == 41) || (iParam2 >= 42 && iParam2 <= 44)) || iParam2 == 54) || iParam2 == 55)
			{
				return true;
			}
		}
	}
	else if (iParam0 == joaat("player_one"))
	{
		if (iParam1 == 2)
		{
			if (iParam2 == 20)
			{
				return true;
			}
		}
		else if (iParam1 == 8)
		{
			if ((iParam2 == 3 || iParam2 == 5) || iParam2 == 9)
			{
				return true;
			}
		}
		else if (iParam1 == 9)
		{
			if (iParam2 >= 5 && iParam2 <= 10)
			{
				return true;
			}
		}
		else if (iParam1 == 14)
		{
			if (((((((((((((iParam2 == 82 || iParam2 == 10) || iParam2 == 26) || iParam2 == 27) || iParam2 == 28) || iParam2 == 29) || iParam2 == 30) || iParam2 == 31) || iParam2 == 32) || iParam2 == 33) || iParam2 == 34) || iParam2 == 35) || iParam2 == 36) || (iParam2 >= 37 && iParam2 <= 39))
			{
				return true;
			}
		}
	}
	else if (iParam0 == joaat("player_two"))
	{
		if (iParam1 == 8)
		{
			if (iParam2 == 14 || iParam2 == 7)
			{
				return true;
			}
		}
		else if (iParam1 == 9)
		{
			if (((iParam2 == 8 || (iParam2 >= 9 && iParam2 <= 14)) || iParam2 == 15) || iParam2 == 16)
			{
				return true;
			}
		}
		else if (iParam1 == 14)
		{
			if (((((((((((((iParam2 == 88 || iParam2 == 12) || iParam2 == 47) || iParam2 == 48) || iParam2 == 49) || iParam2 == 50) || iParam2 == 51) || iParam2 == 52) || iParam2 == 53) || iParam2 == 54) || iParam2 == 55) || iParam2 == 56) || iParam2 == 57) || (iParam2 >= 58 && iParam2 <= 60))
			{
				return true;
			}
		}
	}
	else if (iParam0 == joaat("mp_m_freemode_01"))
	{
		if (iParam1 == 1)
		{
			if (iParam2 > 0)
			{
				if (iParam2 >= 26)
				{
					if (iParam3 == -1)
					{
						iParam3 = func_604(iParam0, iParam2, 1, 3);
					}
					if (dlc1::_0x341DE7ED1D2A1BFD(iParam3, -1757550583, 0))
					{
						return false;
					}
				}
				return true;
			}
		}
	}
	else if (iParam0 == joaat("mp_f_freemode_01"))
	{
		if (iParam1 == 1)
		{
			if (iParam2 > 0)
			{
				if (iParam2 >= 26)
				{
					if (iParam3 == -1)
					{
						iParam3 = func_604(iParam0, iParam2, 1, 4);
					}
					if (dlc1::_0x341DE7ED1D2A1BFD(iParam3, -1757550583, 0))
					{
						return false;
					}
				}
				return true;
			}
		}
	}
	return false;
}

int func_534(int iParam0, int iParam1, int iParam2, int iParam3)//Position - 0x2B1E5
{
	switch (iParam0)
	{
		case joaat("player_zero"):
			if (iParam1 == 14)
			{
				if ((((((((iParam2 == 58 || iParam2 == 61) || (iParam2 >= 62 && iParam2 <= 69)) || (iParam2 >= 70 && iParam2 <= 79)) || (iParam2 >= 80 && iParam2 <= 89)) || iParam2 == 90) || (iParam2 >= 91 && iParam2 <= 102)) || (iParam2 >= 103 && iParam2 <= 110)) || iParam2 == 111)
				{
					return true;
				}
			}
			break;
		
		case joaat("player_one"):
			if (iParam1 == 14)
			{
				if (((((((((((iParam2 >= 83 && iParam2 <= 92) || iParam2 == 93) || iParam2 == 94) || (iParam2 >= 95 && iParam2 <= 101)) || (iParam2 >= 102 && iParam2 <= 111)) || (iParam2 >= 112 && iParam2 <= 121)) || (iParam2 >= 122 && iParam2 <= 131)) || (iParam2 >= 132 && iParam2 <= 139)) || (iParam2 >= 140 && iParam2 <= 149)) || (iParam2 >= 150 && iParam2 <= 156)) || iParam2 == 157)
				{
					return true;
				}
			}
			break;
		
		case joaat("player_two"):
			if (iParam1 == 14)
			{
				if (((((((((iParam2 == 89 || (iParam2 >= 90 && iParam2 <= 99)) || (iParam2 >= 100 && iParam2 <= 109)) || iParam2 == 111) || iParam2 == 112) || (iParam2 >= 113 && iParam2 <= 122)) || (iParam2 >= 123 && iParam2 <= 132)) || (iParam2 >= 133 && iParam2 <= 142)) || (iParam2 >= 143 && iParam2 <= 152)) || iParam2 == 153)
				{
					return true;
				}
			}
			break;
		
		case joaat("mp_m_freemode_01"):
			if (iParam1 == 14)
			{
				if (iParam2 >= 155 && iParam2 <= 318)
				{
					return true;
				}
				else if (iParam2 >= 327)
				{
					if (iParam3 == -1)
					{
						iParam3 = func_604(iParam0, iParam2, 14, 3);
					}
					return dlc1::_0x341DE7ED1D2A1BFD(iParam3, 97230661, 1);
				}
			}
			break;
		
		case joaat("mp_f_freemode_01"):
			if (iParam1 == 14)
			{
				if (iParam2 >= 155 && iParam2 <= 318)
				{
					return true;
				}
				else if (iParam2 >= 327)
				{
					if (iParam3 == -1)
					{
						iParam3 = func_604(iParam0, iParam2, 14, 4);
					}
					return dlc1::_0x341DE7ED1D2A1BFD(iParam3, 97230661, 1);
				}
			}
			break;
	}
	return false;
}

bool func_535(int iParam0, int iParam1, int iParam2)//Position - 0x2B4D8
{
	switch (iParam0)
	{
		case joaat("player_zero"):
			switch (iParam1)
			{
				case 8:
					if (iParam2 == 15)
					{
						return true;
					}
					break;
				
				case 9:
					if (iParam2 == 6)
					{
						return true;
					}
					break;
			}
			break;
		
		case joaat("player_one"):
			switch (iParam1)
			{
				case 8:
					if (iParam2 == 1 || iParam2 == 10)
					{
						return true;
					}
					break;
			}
			break;
		
		case joaat("player_two"):
			switch (iParam1)
			{
				case 8:
					if (iParam2 == 4)
					{
						return true;
					}
					break;
			}
			break;
	}
	return false;
}

int func_536(int iParam0, int iParam1, int iParam2)//Position - 0x2B571
{
	int iVar0;
	int iVar1;
	int iVar2;
	int iVar3;
	var uVar4;
	int iVar5;
	int iVar6;
	int iVar7;
	int iVar8;
	int iVar9;
	var uVar10;
	int iVar11;
	
	if (iParam1 == 11)
	{
		if (iParam0 == joaat("mp_m_freemode_01"))
		{
			if (((((iParam2 >= 0 && iParam2 <= 15) || (iParam2 >= 16 && iParam2 <= 31)) || (iParam2 >= 80 && iParam2 <= 95)) || (iParam2 >= 140 && iParam2 <= 155)) || (iParam2 >= 188 && iParam2 <= 203))
			{
				return 1;
			}
			else if (iParam2 >= 32 && iParam2 <= 47)
			{
				return 6;
			}
			else if (((iParam2 >= 48 && iParam2 <= 63) || (iParam2 >= 64 && iParam2 <= 79)) || (iParam2 >= 108 && iParam2 <= 123))
			{
				return 11;
			}
			else if (iParam2 >= 96 && iParam2 <= 107)
			{
				return 41;
			}
			else if (iParam2 >= 156 && iParam2 <= 171)
			{
				return 36;
			}
			else if (iParam2 >= 172 && iParam2 <= 187)
			{
				return 31;
			}
			else if (iParam2 >= 204 && iParam2 <= 219)
			{
				return 16;
			}
			else if ((iParam2 >= 220 && iParam2 <= 235) || (iParam2 >= 124 && iParam2 <= 139))
			{
				return 26;
			}
			else if (iParam2 == 236)
			{
				return 21;
			}
			else if (iParam2 >= 237)
			{
				iVar0 = func_604(iParam0, iParam2, 11, 3);
				if (iVar0 != -1)
				{
					iVar1 = dlc1::_0xC17AD0E5752BECDA(iVar0);
					iVar2 = 0;
					while (iVar2 < iVar1)
					{
						dlc1::get_variant_component(iVar0, iVar2, &iVar3, &uVar4, &iVar5);
						if (iVar5 == 9)
						{
							if (iVar3 != 0 && iVar3 != 1849449579)
							{
								return func_512(iParam0, iVar3, 9, 3);
							}
							else
							{
								return uVar4;
							}
						}
						iVar2++;
					}
				}
				return -99;
			}
		}
		else if (iParam0 == joaat("mp_f_freemode_01"))
		{
			if ((((((iParam2 >= 0 && iParam2 <= 15) || (iParam2 >= 64 && iParam2 <= 79)) || (iParam2 >= 176 && iParam2 <= 191)) || (iParam2 >= 192 && iParam2 <= 207)) || (iParam2 >= 208 && iParam2 <= 223)) || (iParam2 >= 240 && iParam2 <= 255))
			{
				return 1;
			}
			else if (((iParam2 >= 16 && iParam2 <= 31) || (iParam2 >= 112 && iParam2 <= 127)) || (iParam2 >= 128 && iParam2 <= 143))
			{
				return 16;
			}
			else if (iParam2 >= 32 && iParam2 <= 47)
			{
				return 6;
			}
			else if (iParam2 >= 48 && iParam2 <= 63)
			{
				return 11;
			}
			else if ((iParam2 >= 96 && iParam2 <= 111) || (iParam2 >= 160 && iParam2 <= 175))
			{
				return 21;
			}
			else if (iParam2 >= 224 && iParam2 <= 239)
			{
				return 26;
			}
			else if (iParam2 >= 144 && iParam2 <= 159)
			{
				return 0;
			}
			else if (iParam2 >= 80 && iParam2 <= 95)
			{
				return 31;
			}
			else if (iParam2 >= 256)
			{
				iVar6 = func_604(iParam0, iParam2, 11, 4);
				if (iVar6 != -1)
				{
					iVar7 = dlc1::_0xC17AD0E5752BECDA(iVar6);
					iVar8 = 0;
					while (iVar8 < iVar7)
					{
						dlc1::get_variant_component(iVar6, iVar8, &iVar9, &uVar10, &iVar11);
						if (iVar11 == 9)
						{
							if (iVar9 != 0 && iVar9 != 1849449579)
							{
								return func_512(iParam0, iVar9, 9, 4);
							}
							else
							{
								return uVar10;
							}
						}
						iVar8++;
					}
				}
				return -99;
			}
		}
	}
	return -99;
}

bool func_537(int iParam0)//Position - 0x2B972
{
	int iVar0;
	
	if (!ped::is_ped_injured(iParam0))
	{
		iVar0 = entity::get_entity_model(iParam0);
		if (iVar0 == joaat("mp_m_freemode_01"))
		{
			if (func_605(iParam0, 9) != 0)
			{
				return true;
			}
		}
		else if (iVar0 == joaat("mp_f_freemode_01"))
		{
			if (func_605(iParam0, 9) != 0)
			{
				return true;
			}
		}
	}
	return false;
}

void func_538(int iParam0, int iParam1)//Position - 0x2B9C4
{
	struct<10> Var0;
	int iVar10;
	int iVar11;
	int iVar12;
	int iVar13;
	int iVar14;
	int iVar15;
	float fVar16;
	float fVar17;
	float fVar18;
	int iVar19;
	int iVar20;
	
	if (!ped::has_ped_head_blend_finished(iParam0))
	{
	}
	ped::_get_ped_head_blend_data(iParam0, &Var0);
	iVar10 = func_241(2089, iParam1, 0);
	iVar11 = func_241(2090, iParam1, 0);
	iVar12 = func_241(2091, iParam1, 0);
	iVar13 = func_241(2092, iParam1, 0);
	iVar14 = func_241(2093, iParam1, 0);
	iVar15 = func_241(2094, iParam1, 0);
	fVar16 = func_554(134, iParam1);
	fVar17 = func_554(135, iParam1);
	fVar18 = func_554(136, iParam1);
	iVar19 = func_187(160, iParam1);
	if (((((((((Var0 != iVar10 || Var0.f_1 != iVar11) || Var0.f_2 != iVar12) || Var0.f_3 != iVar13) || Var0.f_4 != iVar14) || Var0.f_5 != iVar15) || Var0.f_6 != fVar16) || Var0.f_7 != fVar17) || Var0.f_8 != fVar18) || Var0.f_9 != iVar19)
	{
		ped::set_ped_head_blend_data(iParam0, iVar10, iVar11, iVar12, iVar13, iVar14, iVar15, fVar16, fVar17, fVar18, iVar19);
		iVar20 = func_241(2095, iParam1, 0);
		if (iVar20 > 0)
		{
			func_539(iParam0, iParam1, 0);
		}
	}
}

void func_539(int iParam0, int iParam1, int iParam2)//Position - 0x2BB04
{
	int iVar0;
	int iVar1;
	int iVar2;
	float fVar3;
	int iVar4;
	int iVar5;
	int iVar6;
	int iVar7;
	int iVar8;
	int iVar9;
	int iVar10;
	float fVar11;
	int iVar12;
	int iVar13;
	int iVar14;
	int iVar15;
	
	iVar0 = 0;
	while (iVar0 < 20)
	{
		iVar1 = iVar0;
		iVar2 = func_553(iVar1);
		if (!iParam2)
		{
			fVar3 = func_554(iVar2, iParam1);
		}
		else
		{
			fVar3 = func_552(iVar2, iParam1);
		}
		ped::_set_ped_face_feature(iParam0, iVar1, fVar3);
		iVar0++;
	}
	iVar4 = 0;
	while (iVar4 < 13)
	{
		iVar5 = func_551(iVar4);
		iVar6 = func_550(iVar5);
		iVar7 = func_549(iVar5);
		if (iVar6 != -1 && iVar7 != -1)
		{
			if (!iParam2)
			{
				iVar10 = func_546(iVar6, iParam1, -1);
				fVar11 = func_554(iVar7, iParam1);
			}
			else
			{
				iVar10 = func_545(iVar6, iParam1);
				fVar11 = func_552(iVar7, iParam1);
			}
			ped::set_ped_head_overlay(iParam0, iVar5, iVar10, fVar11);
			iVar8 = func_544(iVar5);
			iVar9 = func_543(iVar5);
			if (iVar8 != -1)
			{
				if (!iParam2)
				{
					iVar13 = func_241(iVar8, iParam1, 0);
					iVar14 = func_241(iVar9, iParam1, 0);
				}
				else
				{
					iVar13 = func_542(iVar8, iParam1);
					iVar14 = func_542(iVar9, iParam1);
				}
				func_541(iVar13, &iVar12, &iVar15);
				ped::_set_ped_head_overlay_color(iParam0, iVar5, iVar15, iVar12, iVar14);
			}
		}
		iVar4++;
	}
	func_540(&iParam0, iParam1, iParam2);
}

void func_540(int iParam0, int iParam1, int iParam2)//Position - 0x2BC36
{
	float fVar0;
	
	if (!iParam2)
	{
		fVar0 = func_554(157, iParam1);
	}
	else
	{
		fVar0 = func_552(157, iParam1);
	}
	if (*iParam0 == player::player_ped_id())
	{
	}
	ped::_set_ped_eye_color(*iParam0, system::round(fVar0));
}

void func_541(int iParam0, var uParam1, var uParam2)//Position - 0x2BC75
{
	int iVar0;
	
	*uParam1 = system::shift_right(iParam0, 16);
	iVar0 = iParam0 & 65535;
	*uParam2 = iVar0;
}

int func_542(int iParam0, int iParam1)//Position - 0x2BC96
{
	int iVar0;
	var uVar1;
	
	iVar0 = Global_2503773[iParam0 /*3*/][func_180(iParam1)];
	if (ui::set_userids_uihidden(iVar0, &uVar1))
	{
		return uVar1;
	}
	return 0;
}

int func_543(int iParam0)//Position - 0x2BCC1
{
	switch (iParam0)
	{
		case 2:
			return 2153;
		
		case 1:
			return 2154;
		
		case 5:
			return 2155;
		
		case 8:
			return 2156;
		
		case 10:
			return 2151;
		
		default:
	}
	return -1;
}

int func_544(int iParam0)//Position - 0x2BD0D
{
	switch (iParam0)
	{
		case 2:
			return 2146;
		
		case 1:
			return 2147;
		
		case 5:
			return 2148;
		
		case 8:
			return 2149;
		
		case 10:
			return 2150;
		
		default:
	}
	return -1;
}

int func_545(int iParam0, int iParam1)//Position - 0x2BD59
{
	int iVar0;
	int iVar1;
	int iVar2;
	
	iVar0 = 0;
	if (iParam1 == -1)
	{
		iParam1 = func_126();
	}
	iVar1 = 0;
	iVar2 = 0;
	if (iParam0 >= 384 && iParam0 < 457)
	{
		iVar1 = stats::_0x61E111E323419E07((iParam0 - 384), 0, 1, iParam1);
		iVar2 = ((iParam0 - 384) - stats::_0x94F12ABF9C79E339((iParam0 - 384)) * 8) * 8;
	}
	else if (iParam0 >= 457 && iParam0 < 513)
	{
		iVar1 = stats::_0x61E111E323419E07((iParam0 - 457), 1, 1, iParam1);
		iVar2 = ((iParam0 - 457) - stats::_0x94F12ABF9C79E339((iParam0 - 457)) * 8) * 8;
	}
	else if (iParam0 >= 1281 && iParam0 < 1305)
	{
		iVar1 = stats::_0x61E111E323419E07((iParam0 - 1281), 0, 0, 0);
		iVar2 = ((iParam0 - 1281) - stats::_0x94F12ABF9C79E339((iParam0 - 1281)) * 8) * 8;
	}
	else if (iParam0 >= 1305 && iParam0 < 1361)
	{
		iVar1 = stats::_0x61E111E323419E07((iParam0 - 1305), 1, 0, 0);
		iVar2 = ((iParam0 - 1305) - stats::_0x94F12ABF9C79E339((iParam0 - 1305)) * 8) * 8;
	}
	else if (iParam0 >= 1393 && iParam0 < 2919)
	{
		iVar1 = stats::_0xD16C2AD6B8E32854((iParam0 - 1393), 0, 1, iParam1);
		iVar2 = ((iParam0 - 1393) - stats::_0x94F12ABF9C79E339((iParam0 - 1393)) * 8) * 8;
	}
	else if (iParam0 >= 1361 && iParam0 < 1393)
	{
		iVar1 = stats::_0xD16C2AD6B8E32854((iParam0 - 1361), 0, 0, 0);
		iVar2 = ((iParam0 - 1361) - stats::_0x94F12ABF9C79E339((iParam0 - 1361)) * 8) * 8;
	}
	else if (iParam0 >= 3879 && iParam0 < 4143)
	{
		iVar1 = stats::_0x2B4CDCA6F07FF3DA((iParam0 - 3879), 0, 1, iParam1, "_NGPSTAT_INT");
		iVar2 = ((iParam0 - 3879) - stats::_0x94F12ABF9C79E339((iParam0 - 3879)) * 8) * 8;
	}
	else if (iParam0 >= 4143 && iParam0 < 4207)
	{
		iVar1 = stats::_0x2B4CDCA6F07FF3DA((iParam0 - 4143), 0, 0, 0, "_MP_NGPSTAT_INT");
		iVar2 = ((iParam0 - 4143) - stats::_0x94F12ABF9C79E339((iParam0 - 4143)) * 8) * 8;
	}
	else if (iParam0 >= 4399 && iParam0 < 6028)
	{
		iVar1 = stats::_0x2B4CDCA6F07FF3DA((iParam0 - 4399), 0, 1, iParam1, "_MP_LRPSTAT_INT");
		iVar2 = ((iParam0 - 4399) - stats::_0x94F12ABF9C79E339((iParam0 - 4399)) * 8) * 8;
	}
	else if (iParam0 >= 6413 && iParam0 < 7262)
	{
		iVar1 = stats::_0x2B4CDCA6F07FF3DA((iParam0 - 6413), 0, 1, iParam1, "_MP_APAPSTAT_INT");
		iVar2 = ((iParam0 - 6413) - stats::_0x94F12ABF9C79E339((iParam0 - 6413)) * 8) * 8;
	}
	else if (iParam0 >= 7262 && iParam0 < 7313)
	{
		iVar1 = stats::_0x2B4CDCA6F07FF3DA((iParam0 - 7262), 0, 1, iParam1, "_MP_LR2PSTAT_INT");
		iVar2 = ((iParam0 - 7262) - stats::_0x94F12ABF9C79E339((iParam0 - 7262)) * 8) * 8;
	}
	else if (iParam0 >= 7681 && iParam0 < 9361)
	{
		iVar1 = stats::_0x2B4CDCA6F07FF3DA((iParam0 - 7681), 0, 1, iParam1, "_MP_BIKEPSTAT_INT");
		iVar2 = ((iParam0 - 7681) - stats::_0x94F12ABF9C79E339((iParam0 - 7681)) * 8) * 8;
	}
	else if (iParam0 >= 9553 && iParam0 < 15265)
	{
		iVar1 = stats::_0x2B4CDCA6F07FF3DA((iParam0 - 9553), 0, 1, iParam1, "_MP_IMPEXPPSTAT_INT");
		iVar2 = ((iParam0 - 9553) - stats::_0x94F12ABF9C79E339((iParam0 - 9553)) * 8) * 8;
	}
	else if (iParam0 >= 7641 && iParam0 < 7681)
	{
		iVar1 = stats::_0x2B4CDCA6F07FF3DA((iParam0 - 7641), 0, 1, iParam1, "_NGDLCPSTAT_INT");
		iVar2 = ((iParam0 - 7641) - stats::_0x94F12ABF9C79E339((iParam0 - 7641)) * 8) * 8;
	}
	else if (iParam0 >= 7313 && iParam0 < 7321)
	{
		iVar1 = stats::_0x2B4CDCA6F07FF3DA((iParam0 - 7313), 0, 0, 0, "_MP_NGDLCPSTAT_INT");
		iVar2 = ((iParam0 - 7313) - stats::_0x94F12ABF9C79E339((iParam0 - 7313)) * 8) * 8;
	}
	if (!ui::_0x90A6526CF0381030(iVar1, &iVar0, iVar2, 8))
	{
		iVar0 = 0;
	}
	if (iParam0 == 384)
	{
	}
	return iVar0;
}

int func_546(int iParam0, int iParam1, int iParam2)//Position - 0x2C152
{
	int iVar0;
	int iVar1;
	int iVar2;
	
	if (iParam1 == -1)
	{
		iParam1 = func_126();
	}
	iVar0 = 0;
	iVar1 = func_548(iParam0, iParam1);
	iVar2 = func_547(iParam0);
	if (0 != iVar1)
	{
		if (!stats::stat_get_masked_int(iVar1, &iVar0, iVar2, 8, iParam2))
		{
			iVar0 = 0;
		}
	}
	return iVar0;
}

int func_547(int iParam0)//Position - 0x2C198
{
	int iVar0;
	
	iVar0 = 0;
	if (iParam0 >= 384 && iParam0 < 457)
	{
		iVar0 = ((iParam0 - 384) - stats::_0x94F12ABF9C79E339((iParam0 - 384)) * 8) * 8;
	}
	else if (iParam0 >= 457 && iParam0 < 513)
	{
		iVar0 = ((iParam0 - 457) - stats::_0x94F12ABF9C79E339((iParam0 - 457)) * 8) * 8;
	}
	else if (iParam0 >= 1281 && iParam0 < 1305)
	{
		iVar0 = ((iParam0 - 1281) - stats::_0x94F12ABF9C79E339((iParam0 - 1281)) * 8) * 8;
	}
	else if (iParam0 >= 1305 && iParam0 < 1361)
	{
		iVar0 = ((iParam0 - 1305) - stats::_0x94F12ABF9C79E339((iParam0 - 1305)) * 8) * 8;
	}
	else if (iParam0 >= 1361 && iParam0 < 1393)
	{
		iVar0 = ((iParam0 - 1361) - stats::_0x94F12ABF9C79E339((iParam0 - 1361)) * 8) * 8;
	}
	else if (iParam0 >= 1393 && iParam0 < 2919)
	{
		iVar0 = ((iParam0 - 1393) - stats::_0x94F12ABF9C79E339((iParam0 - 1393)) * 8) * 8;
	}
	else if (iParam0 >= 4143 && iParam0 < 4207)
	{
		iVar0 = ((iParam0 - 4143) - stats::_0x94F12ABF9C79E339((iParam0 - 4143)) * 8) * 8;
	}
	else if (iParam0 >= 3879 && iParam0 < 4143)
	{
		iVar0 = ((iParam0 - 3879) - stats::_0x94F12ABF9C79E339((iParam0 - 3879)) * 8) * 8;
	}
	else if (iParam0 >= 4399 && iParam0 < 6028)
	{
		iVar0 = ((iParam0 - 4399) - stats::_0x94F12ABF9C79E339((iParam0 - 4399)) * 8) * 8;
	}
	else if (iParam0 >= 6413 && iParam0 < 7262)
	{
		iVar0 = ((iParam0 - 6413) - stats::_0x94F12ABF9C79E339((iParam0 - 6413)) * 8) * 8;
	}
	else if (iParam0 >= 7262 && iParam0 < 7313)
	{
		iVar0 = ((iParam0 - 7262) - stats::_0x94F12ABF9C79E339((iParam0 - 7262)) * 8) * 8;
	}
	else if (iParam0 >= 7681 && iParam0 < 9361)
	{
		iVar0 = ((iParam0 - 7681) - stats::_0x94F12ABF9C79E339((iParam0 - 7681)) * 8) * 8;
	}
	else if (iParam0 >= 9553 && iParam0 < 15265)
	{
		iVar0 = ((iParam0 - 9553) - stats::_0x94F12ABF9C79E339((iParam0 - 9553)) * 8) * 8;
	}
	else if (iParam0 >= 7313 && iParam0 < 7321)
	{
		iVar0 = ((iParam0 - 7313) - stats::_0x94F12ABF9C79E339((iParam0 - 7313)) * 8) * 8;
	}
	else if (iParam0 >= 7641 && iParam0 < 7681)
	{
		iVar0 = ((iParam0 - 7641) - stats::_0x94F12ABF9C79E339((iParam0 - 7641)) * 8) * 8;
	}
	return iVar0;
}

int func_548(int iParam0, int iParam1)//Position - 0x2C454
{
	int iVar0;
	
	if (iParam1 == -1)
	{
		iParam1 = func_126();
	}
	iVar0 = 0;
	if (iParam0 >= 384 && iParam0 < 457)
	{
		iVar0 = stats::_0x61E111E323419E07((iParam0 - 384), 0, 1, iParam1);
	}
	else if (iParam0 >= 457 && iParam0 < 513)
	{
		iVar0 = stats::_0x61E111E323419E07((iParam0 - 457), 1, 1, iParam1);
	}
	else if (iParam0 >= 1281 && iParam0 < 1305)
	{
		iVar0 = stats::_0x61E111E323419E07((iParam0 - 1281), 0, 0, 0);
	}
	else if (iParam0 >= 1305 && iParam0 < 1361)
	{
		iVar0 = stats::_0x61E111E323419E07((iParam0 - 1305), 1, 0, 0);
	}
	else if (iParam0 >= 1361 && iParam0 < 1393)
	{
		iVar0 = stats::_0xD16C2AD6B8E32854((iParam0 - 1361), 0, 0, 0);
	}
	else if (iParam0 >= 1393 && iParam0 < 2919)
	{
		iVar0 = stats::_0xD16C2AD6B8E32854((iParam0 - 1393), 0, 1, iParam1);
	}
	else if (iParam0 >= 4143 && iParam0 < 4207)
	{
		iVar0 = stats::_0x2B4CDCA6F07FF3DA((iParam0 - 4143), 0, 0, 0, "_NGPSTAT_INT");
	}
	else if (iParam0 >= 3879 && iParam0 < 4143)
	{
		iVar0 = stats::_0x2B4CDCA6F07FF3DA((iParam0 - 3879), 0, 1, iParam1, "_NGPSTAT_INT");
	}
	else if (iParam0 >= 4399 && iParam0 < 6028)
	{
		iVar0 = stats::_0x2B4CDCA6F07FF3DA((iParam0 - 4399), 0, 1, iParam1, "_LRPSTAT_INT");
	}
	else if (iParam0 >= 6413 && iParam0 < 7262)
	{
		iVar0 = stats::_0x2B4CDCA6F07FF3DA((iParam0 - 6413), 0, 1, iParam1, "_APAPSTAT_INT");
	}
	else if (iParam0 >= 7262 && iParam0 < 7313)
	{
		iVar0 = stats::_0x2B4CDCA6F07FF3DA((iParam0 - 7262), 0, 1, iParam1, "_LR2PSTAT_INT");
	}
	else if (iParam0 >= 7681 && iParam0 < 9361)
	{
		iVar0 = stats::_0x2B4CDCA6F07FF3DA((iParam0 - 7681), 0, 1, iParam1, "_BIKEPSTAT_INT");
	}
	else if (iParam0 >= 9553 && iParam0 < 15265)
	{
		iVar0 = stats::_0x2B4CDCA6F07FF3DA((iParam0 - 9553), 0, 1, iParam1, "_IMPEXPPSTAT_INT");
	}
	else if (iParam0 >= 7313 && iParam0 < 7321)
	{
		iVar0 = stats::_0x2B4CDCA6F07FF3DA((iParam0 - 7313), 0, 0, 0, "_NGDLCPSTAT_INT");
	}
	else if (iParam0 >= 7641 && iParam0 < 7681)
	{
		iVar0 = stats::_0x2B4CDCA6F07FF3DA((iParam0 - 7641), 0, 1, iParam1, "_NGDLCPSTAT_INT");
	}
	return iVar0;
}

int func_549(int iParam0)//Position - 0x2C6D2
{
	switch (iParam0)
	{
		case 3:
			return 90;
		
		case 7:
			return 93;
		
		case 0:
			return 87;
		
		case 6:
			return 92;
		
		case 2:
			return 89;
		
		case 1:
			return 88;
		
		case 4:
			return 91;
		
		case 8:
			return 158;
		
		case 9:
			return 159;
		
		case 5:
			return 160;
		
		case 10:
			return 163;
		
		case 11:
			return 161;
		
		case 12:
			return 162;
		
		default:
	}
	return -1;
}

int func_550(int iParam0)//Position - 0x2C771
{
	switch (iParam0)
	{
		case 3:
			return 450;
		
		case 7:
			return 453;
		
		case 0:
			return 447;
		
		case 6:
			return 452;
		
		case 2:
			return 449;
		
		case 1:
			return 448;
		
		case 4:
			return 451;
		
		case 8:
			return 3940;
		
		case 9:
			return 3941;
		
		case 5:
			return 3942;
		
		case 10:
			return 3943;
		
		case 11:
			return 3944;
		
		case 12:
			return 3945;
		
		default:
	}
	return -1;
}

int func_551(int iParam0)//Position - 0x2C81D
{
	switch (iParam0)
	{
		case 0:
			return 7;
		
		case 1:
			return 3;
		
		case 2:
			return 9;
		
		case 3:
			return 6;
		
		case 4:
			return 0;
		
		case 5:
			return 4;
		
		case 6:
			return 5;
		
		case 7:
			return 2;
		
		case 8:
			return 1;
		
		case 9:
			return 8;
		
		case 10:
			return 10;
		
		case 11:
			return 11;
		
		case 12:
			return 12;
		
		default:
	}
	return -1;
}

float func_552(int iParam0, int iParam1)//Position - 0x2C8B4
{
	var uVar0;
	var uVar1;
	
	uVar0 = Global_2521840[iParam0 /*3*/][func_180(iParam1)];
	if (ui::_0x5FBD7095FE7AE57F(uVar0, &uVar1))
	{
		return uVar1;
	}
	return 0f;
}

int func_553(int iParam0)//Position - 0x2C8DF
{
	switch (iParam0)
	{
		case 0:
			return 137;
		
		case 1:
			return 138;
		
		case 2:
			return 139;
		
		case 3:
			return 140;
		
		case 4:
			return 141;
		
		case 5:
			return 142;
		
		case 6:
			return 143;
		
		case 7:
			return 144;
		
		case 8:
			return 145;
		
		case 9:
			return 146;
		
		case 10:
			return 147;
		
		case 11:
			return 148;
		
		case 12:
			return 149;
		
		case 13:
			return 150;
		
		case 14:
			return 151;
		
		case 15:
			return 152;
		
		case 16:
			return 153;
		
		case 17:
			return 154;
		
		case 18:
			return 155;
		
		case 19:
			return 156;
		
		default:
	}
	return -1;
}

float func_554(int iParam0, int iParam1)//Position - 0x2C9CB
{
	int iVar0;
	var uVar1;
	
	iVar0 = Global_2521840[iParam0 /*3*/][func_180(iParam1)];
	if (stats::stat_get_float(iVar0, &uVar1, -1))
	{
		return uVar1;
	}
	return 0f;
}

bool func_555(int iParam0, int iParam1, int iParam2, int iParam3, int iParam4, int iParam5, int iParam6, int iParam7, int iParam8, int iParam9, int iParam10, int iParam11)//Position - 0x2C9F7
{
	int iVar0;
	int iVar1;
	int iVar2;
	int iVar3;
	int iVar4;
	int iVar5;
	int iVar6;
	int iVar7;
	int iVar8;
	int iVar9;
	int iVar10;
	int iVar11;
	int iVar12;
	int iVar13;
	int iVar14;
	struct<7> Var15;
	int iVar32;
	
	if (iParam0 == joaat("mp_m_freemode_01"))
	{
		iVar1 = -1;
		iVar2 = -1;
		if (Global_2592857 == iParam1)
		{
			iVar2 = Global_2592856;
			iVar1 = Global_2592855;
		}
		else if (iParam1 >= 92)
		{
			iVar2 = func_604(iParam0, iParam1, 7, 3);
			iVar1 = func_595(iVar2);
			Global_2592857 = iParam1;
			Global_2592856 = iVar2;
			Global_2592855 = iVar1;
		}
		iVar3 = -1;
		iVar4 = -1;
		if (Global_2592860 == iParam3)
		{
			iVar4 = Global_2592859;
			iVar3 = Global_2592858;
		}
		else if (iParam3 >= 237)
		{
			iVar4 = func_604(iParam0, iParam3, 11, 3);
			iVar3 = func_595(iVar4);
			Global_2592860 = iParam3;
			Global_2592859 = iVar4;
			Global_2592858 = iVar3;
		}
		iVar5 = -1;
		iVar6 = -1;
		if (Global_2592863 == iParam4)
		{
			iVar6 = Global_2592862;
			iVar5 = Global_2592861;
		}
		else if (iParam4 >= 241)
		{
			iVar6 = func_604(iParam0, iParam4, 8, 3);
			iVar5 = func_595(iVar6);
			Global_2592863 = iParam4;
			Global_2592862 = iVar6;
			Global_2592861 = iVar5;
		}
		if (iParam3 != -99)
		{
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1855618474, 0))
			{
				if (iParam1 != 0)
				{
					return false;
				}
			}
		}
		if (dlc1::_0x341DE7ED1D2A1BFD(iVar2, -120244486, 0))
		{
			if (iParam9 != -99)
			{
				iVar7 = -1;
				if (iParam9 >= 327)
				{
					iVar7 = func_604(iParam0, iParam9, 14, 3);
				}
				if (((iParam9 >= 27 && iParam9 <= 34) || (iParam9 >= 75 && iParam9 <= 82)) || (iParam9 >= 107 && iParam9 <= 114))
				{
					return false;
				}
				switch (iVar7)
				{
					case 1411612772:
					case 1399488226:
					case 1103092621:
					case 798340921:
					case 495850282:
					case -1972900644:
					case 2016102499:
					case 1719477511:
					case 288210625:
					case -882756821:
					case -1242625979:
					case -1358792084:
					case -1854813796:
					case -1257185072:
					case -75666008:
					case -451657514:
					case -1339992339:
					case -1987638855:
					case 1148780446:
					case 1379309694:
					case 491826867:
					case 1855607109:
					case -1962767847:
					case -1654116636:
					case -1485356286:
					case -1178212449:
					case -766633809:
					case 665568109:
					case -288304716:
					case 1772824957:
					case 1533381874:
					case -2012223930:
					case 2008237453:
					case -1304118613:
					case -1543430620:
					case -854101936:
					case -1061103709:
					case -616035151:
					case 1307111925:
					case 1759289928:
						return false;
						break;
					}
				}
		}
		if (iParam3 != -99)
		{
			if (iVar2 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar2, -1473812293, 0))
			{
				if (dlc1::_0x341DE7ED1D2A1BFD(iVar2, 1396865968, 0))
				{
					if ((((((((((((((((((((((((((((((((((((((((dlc1::_0x341DE7ED1D2A1BFD(iVar4, -63750166, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -870074461, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -868698159, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 1769225721, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1834446747, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1119232689, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -2102859770, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 1784133476, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 2099109084, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1488441032, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1719167561, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1274099003, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1410897066, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 320460654, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -826135203, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 1431529976, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 1723403459, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 2044466679, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -2020757158, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1064262817, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1419806467, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1053842259, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1358888880, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -441291342, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -785939537, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1507532917, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1446333198, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 492620493, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -416620954, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -102825006, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 137011325, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -641612092, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1506370874, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1786447517, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1010805287, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1325813684, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -549843760, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 1690933245, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 1360588936, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 2136821028, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 1830529185, 0))
					{
						return false;
					}
					else if (func_557(iParam0, iParam3))
					{
					}
					else
					{
						return false;
					}
				}
				else if (dlc1::_0x341DE7ED1D2A1BFD(iVar4, -63750166, 0))
				{
					return false;
				}
				else if (func_557(iParam0, iParam3))
				{
					return false;
				}
				else if (dlc1::_0x341DE7ED1D2A1BFD(iVar2, -120244486, 0))
				{
					if ((((((((((((iParam3 >= 188 && iParam3 <= 203) || (iParam3 >= 220 && iParam3 <= 235)) || iVar3 == 12) || iVar3 == 14) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1127835965, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1506370874, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1786447517, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1010805287, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1325813684, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 1690933245, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 1360588936, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 2136821028, 0))
					{
						return false;
					}
				}
			}
			if (iVar2 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar2, -353070590, 0))
			{
				if (((dlc1::_0x341DE7ED1D2A1BFD(iVar4, -870074461, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -868698159, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 1769225721, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1834446747, 0))
				{
				}
				else
				{
					return false;
				}
			}
		}
		if (iParam3 != -99)
		{
			if (iVar2 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar2, 654065530, 0))
			{
				if (dlc1::_0x341DE7ED1D2A1BFD(iVar4, -7109286, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -641612092, 0))
				{
					return true;
				}
				else
				{
					return false;
				}
			}
		}
		if (iVar2 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar2, 596326873, 0))
		{
			if (iParam3 != -99)
			{
				if (dlc1::_0x341DE7ED1D2A1BFD(iVar2, -319568873, 0))
				{
					if ((iParam3 >= 96 && iParam3 <= 107) || iVar3 == 6)
					{
						return false;
					}
				}
				if (iParam3 == 236)
				{
					if (dlc1::_0x341DE7ED1D2A1BFD(iVar2, 525778571, 0))
					{
						return false;
					}
				}
				else if ((((((((((((((((((((((((((((((((((((((((((((((((((((((((iParam3 >= 172 && iParam3 <= 187) || (iParam3 >= 188 && iParam3 <= 203)) || (iParam3 >= 204 && iParam3 <= 219)) || (iParam3 >= 220 && iParam3 <= 235)) || iVar3 == 11) || iVar3 == 12) || iVar3 == 13) || iVar3 == 14) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 974680318, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 1625463492, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -713698407, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 1843965488, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -779835469, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1086258388, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 1627756587, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 1021189127, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1939378450, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 441715397, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 264959411, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1127835965, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 153792394, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -672871169, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 572416369, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -196114988, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 1322269404, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 1769225721, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1655154167, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1607949555, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 2099109084, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1488441032, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1719167561, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 320460654, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -2017999390, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1410897066, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -826135203, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 1431529976, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 1723403459, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 2044466679, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1419806467, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1053842259, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1358888880, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -785939537, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -416620954, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -102825006, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 137011325, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -641612092, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1351486939, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -491588875, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1506370874, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1786447517, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1010805287, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1325813684, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -828478571, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 1690933245, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 2136821028, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 2136821028, 0))
				{
					return false;
				}
				else if (!dlc1::_0x341DE7ED1D2A1BFD(iVar2, 525778571, 0))
				{
					return false;
				}
			}
			else if (iParam4 != -99)
			{
				if (((((((((((((((iParam4 >= 48 && iParam4 <= 63) || (iParam4 >= 64 && iParam4 <= 79)) || (iParam4 >= 96 && iParam4 <= 111)) || (iParam4 >= 112 && iParam4 <= 127)) || (iParam4 >= 192 && iParam4 <= 207)) || (iParam4 >= 208 && iParam4 <= 223)) || iVar5 == 3) || iVar5 == 4) || iVar5 == 6) || iVar5 == 7) || iVar5 == 12) || iVar5 == 13) || dlc1::_0x341DE7ED1D2A1BFD(iVar6, 651155766, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar6, -1786447517, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar6, -1010805287, 0))
				{
					return false;
				}
			}
		}
		if (iVar2 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar2, -319568873, 0))
		{
			if (iParam8 != -99)
			{
				return false;
			}
		}
		if (iVar2 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar2, -713698407, 0))
		{
			if (iParam9 >= 327 && dlc1::_0x341DE7ED1D2A1BFD(func_604(iParam0, iParam9, 14, 3), -713698407, 1))
			{
			}
			else if (iParam2 == 14 || (iParam2 == 1 && iParam10 != 0))
			{
				return false;
			}
		}
		else if ((iParam9 >= 327 && dlc1::_0x341DE7ED1D2A1BFD(func_604(iParam0, iParam9, 14, 3), -713698407, 1)) && iParam1 != 0)
		{
			return false;
		}
		if (iVar2 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar2, -1119006951, 0))
		{
			if (iParam3 != -99)
			{
				if (((((((((((((((((((((((((((((((((((((((iParam3 >= 140 && iParam3 <= 155) || (iParam3 >= 188 && iParam3 <= 203)) || (iParam3 >= 204 && iParam3 <= 219)) || (iParam3 >= 220 && iParam3 <= 235)) || iVar3 == 9) || iVar3 == 12) || iVar3 == 13) || iVar3 == 14) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 248194463, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 572350888, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1817355735, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -713698407, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 1843965488, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 140732128, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 1863955539, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 1627756587, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 441715397, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 153792394, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 572416369, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 2099109084, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1488441032, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 1538937264, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 2044466679, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1064262817, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1053842259, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1358888880, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -441291342, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -785939537, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -641612092, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1506370874, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1786447517, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1010805287, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1325813684, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -828478571, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 1690933245, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 1360588936, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 2136821028, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 602650322, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -99064836, 0))
				{
					return false;
				}
			}
			else if (iParam4 != -99)
			{
				if ((((((((((((((((((((((((iParam4 >= 48 && iParam4 <= 63) || (iParam4 >= 64 && iParam4 <= 79)) || (iParam4 >= 96 && iParam4 <= 111)) || (iParam4 >= 112 && iParam4 <= 127)) || (iParam4 >= 144 && iParam4 <= 159)) || (iParam4 >= 160 && iParam4 <= 175)) || (iParam4 >= 176 && iParam4 <= 191)) || (iParam4 >= 192 && iParam4 <= 207)) || (iParam4 >= 208 && iParam4 <= 223)) || iVar5 == 3) || iVar5 == 4) || iVar5 == 6) || iVar5 == 7) || iVar5 == 9) || iVar5 == 10) || iVar5 == 11) || iVar5 == 12) || iVar5 == 13) || dlc1::_0x341DE7ED1D2A1BFD(iVar6, -1778265882, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar6, 1965569012, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar6, 651155766, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar6, -1914383230, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar6, 1553766533, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar6, 505220913, 0))
				{
					return false;
				}
			}
		}
		if ((iParam1 >= 1 && iParam1 <= 3) || iVar1 == 1)
		{
			if (iParam5 != -99)
			{
				if (iParam5 != 15)
				{
					return false;
				}
			}
			if (iParam3 != -99)
			{
				if (iParam3 != 236)
				{
					return false;
				}
			}
			if (iVar4 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar4, 2066241403, 0))
			{
				return false;
			}
		}
		else if ((iParam1 >= 4 && iParam1 <= 6) || iVar1 == 2)
		{
			if (iParam3 != -99)
			{
				if ((((((((((iParam3 >= 0 && iParam3 <= 15) || (iParam3 >= 16 && iParam3 <= 31)) || (iParam3 >= 32 && iParam3 <= 47)) || (iParam3 >= 80 && iParam3 <= 95)) || (iParam3 >= 124 && iParam3 <= 139)) || iVar3 == 0) || iVar3 == 1) || iVar3 == 2) || iVar3 == 5) || iVar3 == 8)
				{
				}
				else
				{
					return false;
				}
			}
			else if (iParam4 != -99)
			{
				if ((((((((((((iParam4 >= 0 && iParam4 <= 15) || (iParam4 >= 16 && iParam4 <= 31)) || (iParam4 >= 32 && iParam4 <= 47)) || (iParam4 >= 80 && iParam4 <= 95)) || (iParam4 >= 128 && iParam4 <= 143)) || iParam4 == 240) || iVar5 == 0) || iVar5 == 1) || iVar5 == 2) || iVar5 == 5) || iVar5 == 8) || iVar5 == 15)
				{
				}
				else
				{
					return false;
				}
			}
			else if (iParam8 != -99)
			{
				if (!(iParam8 >= 1 && iParam8 <= 41))
				{
				}
				else
				{
					return false;
				}
			}
		}
		else if ((iParam1 >= 10 && iParam1 <= 25) || iVar1 == 4)
		{
			if (iParam3 != -99)
			{
				if ((((((((((((((((((iParam3 >= 0 && iParam3 <= 15) || (iParam3 >= 16 && iParam3 <= 31)) || (iParam3 >= 32 && iParam3 <= 47)) || (iParam3 >= 80 && iParam3 <= 95)) || (iParam3 >= 124 && iParam3 <= 139)) || (iParam3 >= 140 && iParam3 <= 155)) || (iParam3 >= 172 && iParam3 <= 187)) || (iParam3 >= 204 && iParam3 <= 219)) || iParam3 == 236) || iVar3 == 0) || iVar3 == 1) || iVar3 == 2) || iVar3 == 5) || iVar3 == 8) || iVar3 == 9) || iVar3 == 11) || iVar3 == 13) || iVar3 == 15)
				{
				}
				else
				{
					return false;
				}
			}
		}
		else if ((iParam1 >= 32 && iParam1 <= 37) || iVar1 == 6)
		{
			if (iParam3 != -99)
			{
				if ((((iParam3 >= 96 && iParam3 <= 107) || (iParam3 >= 156 && iParam3 <= 171)) || iVar3 == 6) || iVar3 == 10)
				{
				}
				else
				{
					return false;
				}
			}
		}
		else if (((((iParam1 >= 41 && iParam1 <= 56) || (iParam1 >= 73 && iParam1 <= 88)) || iVar1 == 10) || iVar1 == 12) || (iVar2 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar2, -920534092, 0)))
		{
			if (iParam3 != -99)
			{
				if (((iParam3 >= 204 && iParam3 <= 219) || func_599(iParam0, iParam3)) || iVar3 == 13)
				{
					if (((dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1446333198, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 492620493, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1351486939, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -7109286, 0))
					{
						return false;
					}
				}
				else
				{
					return false;
				}
			}
			else if (iParam4 != -99)
			{
				if ((((((iParam4 >= 160 && iParam4 <= 175) || (iParam4 >= 208 && iParam4 <= 223)) || iVar5 == 10) || iVar5 == 13) || (iVar6 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar6, -1778265882, 0))) || (iVar6 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar6, 505220913, 0)))
				{
				}
				else
				{
					iVar0 = func_605(iParam6, 11);
					if ((iVar0 >= 204 && iVar0 <= 219) || (iVar0 >= 237 && func_595(func_604(iParam0, iVar0, 11, 3)) == 13))
					{
						return true;
					}
					if (iParam7 == 1)
					{
						if ((iParam4 >= 176 && iParam4 <= 191) || iVar5 == 11)
						{
							return true;
						}
					}
					return false;
				}
			}
		}
		else if ((iParam1 >= 57 && iParam1 <= 72) || iVar1 == 11)
		{
			if (iParam3 != -99)
			{
				if (((((iParam3 >= 204 && iParam3 <= 219) || (iParam3 >= 172 && iParam3 <= 187)) || func_599(iParam0, iParam3)) || iVar3 == 13) || iVar3 == 11)
				{
					if ((dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1446333198, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 492620493, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -7109286, 0))
					{
						return false;
					}
				}
				else
				{
					return false;
				}
			}
			else if (iParam4 != -99)
			{
				if ((((((((((((((((((iParam4 >= 64 && iParam4 <= 79) || (iParam4 >= 96 && iParam4 <= 111)) || (iParam4 >= 160 && iParam4 <= 175)) || (iParam4 >= 208 && iParam4 <= 223)) || iVar5 == 4) || iVar5 == 6) || iVar5 == 10) || iVar5 == 13) || (iVar6 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar6, -1778265882, 0))) || (iVar6 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar6, 1965569012, 0))) || (iVar6 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar6, 651155766, 0))) || (iVar6 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar6, 505220913, 0))) || dlc1::_0x341DE7ED1D2A1BFD(iVar6, -893126917, 0)) || iVar6 == 2018316953) || iVar6 == 1771468076) || iVar6 == 1529567318) || iVar6 == 1299823859) || iVar6 == 1130047658)
				{
				}
				else
				{
					iVar0 = func_605(iParam6, 11);
					if ((iVar0 >= 204 && iVar0 <= 219) || (iVar0 >= 237 && func_595(func_604(iParam0, iVar0, 11, 3)) == 13))
					{
						return true;
					}
					if (iParam7 == 1)
					{
						if ((((((iParam4 >= 48 && iParam4 <= 63) || (iParam4 >= 112 && iParam4 <= 127)) || (iParam4 >= 176 && iParam4 <= 191)) || iVar5 == 3) || iVar5 == 7) || iVar5 == 11)
						{
							if (!dlc1::_0x341DE7ED1D2A1BFD(iVar6, -7109286, 0))
							{
								return true;
							}
						}
					}
					return false;
				}
			}
		}
		else if (iParam1 >= 92 && dlc1::_0x341DE7ED1D2A1BFD(iVar2, -1950939707, 0))
		{
			if (iParam3 != -99)
			{
				if ((((((((((((((((((((((iParam3 >= 172 && iParam3 <= 187) || iVar3 == 11) || iVar4 == -27166014) || iVar4 == -273228435) || iVar4 == -2118057713) || iVar4 == -1809078812) || iVar4 == -1522415600) || iVar4 == -1212584705) || iVar4 == -886664231) || iVar4 == -646500230) || iVar4 == -290891042) || iVar4 == 15400801) || iVar4 == -485413449) || iVar4 == -254359230) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 1769225721, 0)) || iVar4 == 1343601766) || iVar4 == 567992305) || iVar4 == -192707261) || iVar4 == 1156347903) || iVar4 == 1853344529) || iVar4 == 1597648022) || iVar4 == -1995669446)
				{
					if (!dlc1::_0x341DE7ED1D2A1BFD(iVar4, -7109286, 0))
					{
					}
					else
					{
						return false;
					}
				}
				else
				{
					return false;
				}
			}
			else if (iParam4 != -99)
			{
				if (((((((((((iParam4 >= 64 && iParam4 <= 79) || (iParam4 >= 96 && iParam4 <= 111)) || iVar5 == 4) || iVar5 == 6) || (iVar6 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar6, 1965569012, 0))) || dlc1::_0x341DE7ED1D2A1BFD(iVar6, -893126917, 0)) || iVar6 == 2018316953) || iVar6 == 1771468076) || iVar6 == 1529567318) || iVar6 == 1299823859) || iVar6 == 1130047658)
				{
				}
				else
				{
					if (iParam7 == 1)
					{
						if ((((((iParam4 >= 48 && iParam4 <= 63) || (iParam4 >= 112 && iParam4 <= 127)) || (iParam4 >= 176 && iParam4 <= 191)) || iVar5 == 3) || iVar5 == 7) || iVar5 == 11)
						{
							if (!dlc1::_0x341DE7ED1D2A1BFD(iVar6, -7109286, 0))
							{
								return true;
							}
						}
					}
					return false;
				}
			}
		}
		else if (iParam1 >= 92 && dlc1::_0x341DE7ED1D2A1BFD(iVar2, -1371423804, 0))
		{
			if (iParam3 != -99)
			{
				if (iVar4 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar4, 1625463492, 0))
				{
				}
				else
				{
					return false;
				}
			}
			else if (iParam4 != -99)
			{
				if (((iVar6 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar6, 651155766, 0)) && dlc1::_0x341DE7ED1D2A1BFD(iVar2, -277681306, 0)) || ((iVar6 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar6, 505220913, 0)) && !dlc1::_0x341DE7ED1D2A1BFD(iVar2, -277681306, 0)))
				{
				}
				else
				{
					return false;
				}
			}
		}
		else if (iParam1 >= 92 && dlc1::_0x341DE7ED1D2A1BFD(iVar2, -108328099, 0))
		{
			if (iParam4 != -99)
			{
				if (((((((((((((((((((((((((((((((((((((((((iParam4 >= 48 && iParam4 <= 63) || (iParam4 >= 112 && iParam4 <= 127)) || (iParam4 >= 176 && iParam4 <= 191)) || iVar6 == 2018316953) || iVar6 == 1771468076) || iVar6 == 1529567318) || iVar6 == 1299823859) || iVar6 == 1130047658) || iVar6 == 936913256) || iVar6 == -1891018679) || iVar6 == -1583940380) || iVar6 == -693410036) || iVar6 == -2129413154) || iVar6 == -1280171750) || iVar6 == -971192849) || iVar6 == 389965873) || iVar6 == -1451291468) || iVar6 == -50613332) || iVar6 == 318070129) || iVar6 == -1851794728) || iVar6 == 673515492) || iVar6 == 889168281) || iVar6 == 1270009599) || iVar6 == 1866208765) || iVar6 == 1546649325) || iVar6 == 1180816209) || iVar6 == -1305325922) || iVar6 == 242616108) || iVar6 == 1085565864) || iVar6 == -1968210019) || iVar6 == 2028002304) || iVar6 == 830393657) || iVar6 == -473747009) || iVar6 == 240453350) || iVar6 == 1083927410) || iVar6 == -374729298) || iVar6 == 399897093) || dlc1::_0x341DE7ED1D2A1BFD(iVar6, 684992453, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar6, 1458930564, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar6, 2048281121, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar6, 19149565, 0))
				{
					if (!dlc1::_0x341DE7ED1D2A1BFD(iVar6, -7109286, 0))
					{
					}
					else
					{
						return false;
					}
				}
				else
				{
					if (iParam7 == 1)
					{
						if ((((((iParam4 >= 64 && iParam4 <= 79) || (iParam4 >= 96 && iParam4 <= 111)) || (iParam4 >= 160 && iParam4 <= 175)) || iVar5 == 4) || iVar5 == 6) || iVar5 == 10)
						{
							if (!dlc1::_0x341DE7ED1D2A1BFD(iVar6, -7109286, 0))
							{
								return true;
							}
						}
					}
					return false;
				}
			}
		}
		else if (iParam1 >= 92 && dlc1::_0x341DE7ED1D2A1BFD(iVar2, -378906828, 0))
		{
			if (iParam3 != -99)
			{
				if (((((iParam3 >= 64 && iParam3 <= 79) || (iParam3 >= 156 && iParam3 <= 171)) || iVar3 == 4) || iVar3 == 10) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 470686834, 0))
				{
				}
				else
				{
					return false;
				}
			}
			else if (iParam4 != -99)
			{
				if (((((((((((((((((((((((((((iParam4 >= 176 && iParam4 <= 191) || iVar6 == 2018316953) || iVar6 == 1771468076) || iVar6 == 1529567318) || iVar6 == 1299823859) || iVar6 == 1130047658) || iVar6 == 936913256) || iVar6 == -1891018679) || iVar6 == -1583940380) || iVar6 == -693410036) || iVar6 == -2129413154) || iVar6 == -1280171750) || iVar6 == -971192849) || iVar6 == 389965873) || iVar6 == -1451291468) || iVar6 == -50613332) || iVar6 == 318070129) || iVar6 == -1851794728) || iVar6 == 673515492) || iVar6 == 889168281) || iVar6 == 1270009599) || iVar6 == 1866208765) || iVar6 == 1546649325) || iVar6 == 1180816209) || iVar6 == -374729298) || iVar6 == 399897093) || dlc1::_0x341DE7ED1D2A1BFD(iVar6, 684992453, 0))
				{
					if (!dlc1::_0x341DE7ED1D2A1BFD(iVar6, -7109286, 0))
					{
					}
					else
					{
						return false;
					}
				}
				else
				{
					if (iParam7 == 1)
					{
						if ((iParam4 >= 160 && iParam4 <= 175) || iVar5 == 10)
						{
							if (!dlc1::_0x341DE7ED1D2A1BFD(iVar6, -7109286, 0))
							{
								return true;
							}
						}
					}
					return false;
				}
			}
		}
		else if (iParam1 >= 92 && dlc1::_0x341DE7ED1D2A1BFD(iVar2, -695703461, 0))
		{
			if (iParam3 != -99)
			{
				if (((((iParam3 >= 64 && iParam3 <= 79) || (iParam3 >= 188 && iParam3 <= 203)) || iVar3 == 12) || iVar3 == 4) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 470686834, 0))
				{
				}
				else
				{
					return false;
				}
			}
			else if (iParam4 != -99)
			{
				if (((iParam4 >= 192 && iParam4 <= 207) || func_556(iVar6)) || (iVar6 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar6, 310957510, 0)))
				{
				}
				else
				{
					return false;
				}
			}
		}
		else if (iParam1 >= 92 && dlc1::_0x341DE7ED1D2A1BFD(iVar2, -1473812293, 0))
		{
			if (iParam3 != -99)
			{
				if ((iParam3 >= 172 && iParam3 <= 187) || iVar3 == 11)
				{
					return false;
				}
				else if ((iVar4 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar4, 1627756587, 0)) || (iVar4 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar4, 1322269404, 0)))
				{
					return false;
				}
				else if (iVar4 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar4, -713698407, 0))
				{
					return false;
				}
			}
			if (iParam8 != -99)
			{
				if (!(iParam8 >= 1 && iParam8 <= 41))
				{
				}
				else
				{
					return false;
				}
			}
		}
	}
	else if (iParam0 == joaat("mp_f_freemode_01"))
	{
		iVar8 = -1;
		iVar9 = -1;
		if (iParam1 >= 55)
		{
			iVar9 = func_604(iParam0, iParam1, 7, 4);
			iVar8 = func_595(iVar9);
		}
		iVar10 = -1;
		iVar11 = -1;
		if (iParam3 >= 256)
		{
			iVar11 = func_604(iParam0, iParam3, 11, 4);
			iVar10 = func_595(iVar11);
		}
		iVar12 = -1;
		if (iParam9 >= 327)
		{
			iVar12 = func_604(iParam0, iParam9, 14, 4);
		}
		iVar13 = -1;
		iVar14 = -1;
		if (iParam4 >= 136)
		{
			iVar13 = func_604(iParam0, iParam4, 8, 4);
			iVar14 = func_595(iVar13);
		}
		if (iParam3 != -99)
		{
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1855618474, 0))
			{
				if (iParam1 != 0)
				{
					return false;
				}
			}
		}
		if ((iVar9 == 281786684 || iVar9 == 653911448) || iVar9 == -1519558015)
		{
			if (iParam9 != -99)
			{
				switch (iVar12)
				{
					case 1446628467:
					case -1938048778:
					case 2041418586:
					case -1342898200:
					case 2026483804:
					case -1977527541:
					case -1670449242:
					case -1385031204:
					case -1088111295:
					case -1530918836:
					case -1221415631:
					case -629869643:
					case 530255864:
					case 38181873:
					case 319110510:
					case 482562282:
					case -1178170642:
					case -880726429:
					case -699776011:
					case -401873032:
					case -700496933:
					case -404429018:
					case -2134238990:
					case -2136376254:
					case 1861212367:
					case -789144321:
					case -223092615:
					case 763352592:
					case -549897852:
					case -1976889495:
					case -1410575637:
					case -428980242:
					case -1731482454:
					case -1390357480:
						return false;
						break;
					}
				}
		}
		if (iParam3 != -99)
		{
			if (iVar9 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar9, -1473812293, 0))
			{
				if (dlc1::_0x341DE7ED1D2A1BFD(iVar9, 1396865968, 0))
				{
					if (((((((((((((((dlc1::_0x341DE7ED1D2A1BFD(iVar11, -63750166, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1410897066, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, 320460654, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -826135203, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -747583185, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -416620954, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -733792105, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -641612092, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1507532917, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, 1360588936, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -549843760, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, 1830529185, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1506370874, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1786447517, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1010805287, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, 2136821028, 0))
					{
						return false;
					}
					else if (func_557(iParam0, iParam3))
					{
					}
					else
					{
						return false;
					}
				}
				else if (func_557(iParam0, iParam3))
				{
					return false;
				}
			}
			if (iVar9 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar9, -353070590, 0))
			{
				if ((((dlc1::_0x341DE7ED1D2A1BFD(iVar11, -870074461, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1174924468, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -868698159, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, 1769225721, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1834446747, 0))
				{
				}
				else
				{
					return false;
				}
			}
		}
		if (iVar9 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar9, -713698407, 0))
		{
			if (iParam9 >= 327 && dlc1::_0x341DE7ED1D2A1BFD(func_604(iParam0, iParam9, 14, 4), -713698407, 1))
			{
			}
			else if (iParam2 == 14 || (iParam2 == 1 && iParam10 != 0))
			{
				return false;
			}
		}
		else if ((iParam9 >= 327 && dlc1::_0x341DE7ED1D2A1BFD(func_604(iParam0, iParam9, 14, 4), -713698407, 1)) && iParam1 != 0)
		{
			return false;
		}
		if (iVar9 != -1 && (dlc1::_0x341DE7ED1D2A1BFD(iVar9, -920534092, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar9, 1537081084, 0)))
		{
			if (iParam2 == 11)
			{
				if ((((((((((((dlc1::_0x341DE7ED1D2A1BFD(iVar11, 684992453, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, 916636514, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1939378450, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -820724897, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, 153792394, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -872449705, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, 1714969731, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, 1055526375, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, 947651647, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -549843760, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, 1830529185, 0)) || (iParam3 >= 112 && iParam3 <= 127)) || iVar10 == 7)
				{
				}
				else if ((dlc1::_0x341DE7ED1D2A1BFD(iVar11, 700658917, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, 745826556, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, 144417099, 0))
				{
					if (dlc1::_0x341DE7ED1D2A1BFD(iVar9, 1537081084, 0))
					{
					}
					else
					{
						return false;
					}
				}
				else
				{
					return false;
				}
			}
			else if (iParam2 == 8)
			{
				if (dlc1::_0x341DE7ED1D2A1BFD(iVar13, 1553766533, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, -1914383230, 0))
				{
					if (dlc1::_0x341DE7ED1D2A1BFD(iVar9, -920534092, 0))
					{
						if (dlc1::_0x341DE7ED1D2A1BFD(iVar13, 441715397, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, 264959411, 0))
						{
							if (dlc1::_0x341DE7ED1D2A1BFD(iVar9, 1828206051, 0))
							{
							}
							else
							{
								return false;
							}
						}
						else if (dlc1::_0x341DE7ED1D2A1BFD(iVar9, 1828206051, 0))
						{
							return false;
						}
					}
				}
				else
				{
					return false;
				}
			}
		}
		if (iParam9 != -99)
		{
			if (iVar12 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar12, 1406402954, 1))
			{
				if ((((iParam1 >= 1 && iParam1 <= 12) || iVar8 == 1) || iVar8 == 2) || (iVar9 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar9, 1406402954, 0)))
				{
					return false;
				}
			}
		}
		if (iVar9 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar9, 596326873, 0))
		{
			if (iParam3 != -99)
			{
				if (((((((dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1358888880, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -102825006, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -733792105, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -641612092, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1507532917, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -828478571, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, 1360588936, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, 974680318, 0))
				{
					return false;
				}
				else if (func_599(iParam0, iParam3))
				{
				}
				else if (((((((((((((((((((iParam3 >= 32 && iParam3 <= 47) || (iParam3 >= 176 && iParam3 <= 191)) || iVar10 == 2) || iVar10 == 11) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, 2026620439, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -761463976, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1347486026, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -939525357, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1119232689, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -2102859770, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, 1784133476, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1488441032, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, 2044466679, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -2020757158, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -430330349, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1351486939, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, 2030343924, 0)) || iVar11 == 998321559) || iVar11 == 619380843)
				{
					if (!dlc1::_0x341DE7ED1D2A1BFD(iVar9, 525778571, 0))
					{
						return false;
					}
				}
				else if (((((((((((((((((((((((((((((((((((((((((((((((iParam3 >= 48 && iParam3 <= 63) || (iParam3 >= 144 && iParam3 <= 159)) || (iParam3 >= 224 && iParam3 <= 239)) || iVar10 == 3) || iVar10 == 9) || iVar10 == 14) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -530089825, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, 1965569012, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1200513218, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -713698407, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, 1843965488, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -55104292, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -779835469, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1086258388, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, 140732128, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, 2106216756, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, 1627756587, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, 441715397, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, 264959411, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1127835965, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -672871169, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, 572416369, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -196114988, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1607949555, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, 1976716889, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, 2099109084, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1488441032, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, 320460654, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -2017999390, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1410897066, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -826135203, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1053842259, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1358888880, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -441291342, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -747583185, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, 1407863332, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1986415230, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -785939537, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1103045158, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -102825006, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -641612092, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1507532917, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1506370874, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1786447517, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1010805287, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, 2136821028, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, 1360588936, 0))
				{
					return false;
				}
				else if (dlc1::_0x341DE7ED1D2A1BFD(iVar9, 525778571, 0))
				{
					return false;
				}
			}
			else if (iParam4 != -99)
			{
				if (((((((((((((((((((((((((((((((((((((((((((((((((((((((((((iParam4 >= 71 && iParam4 <= 86) || iVar14 == 11) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, 1455992833, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, 153792394, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, -870074461, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, -1174924468, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, -868698159, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, -1177480446, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, -1347486026, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, -1655154167, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, -2105858993, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, 1893564692, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, 1710451520, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, 1416808511, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, 1641506460, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, 699233865, 0)) || iVar13 == -565297075) || iVar13 == 262349558) || iVar13 == -917804055) || iVar13 == -1156067454) || iVar13 == -2124751863) || iVar13 == 1812836719) || iVar13 == 1582116924) || iVar13 == 877452376) || iVar13 == 1117419763) || iVar13 == 732885188) || iVar13 == -1037820496) || iVar13 == -79097863) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, -1119232689, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, -2102859770, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, 1784133476, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, -1607949555, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, 1976716889, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, 2099109084, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, -1488441032, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, 2044466679, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, -2020757158, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, -1064262817, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, -1419806467, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, -1053842259, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, -1358888880, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, -849839091, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, -2088146832, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, -352447393, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, -642551350, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, -819569488, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, -2020068325, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, -1786447517, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, -1010805287, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, -1325813684, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, -549843760, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, -269266203, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, 201427653, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, 967829025, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, -685039259, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, -1266557933, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, -979468724, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, -58412562, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, 974680318, 0))
				{
					if (!dlc1::_0x341DE7ED1D2A1BFD(iVar9, 525778571, 0))
					{
						return false;
					}
				}
				else if (((((((dlc1::_0x341DE7ED1D2A1BFD(iVar13, 1965569012, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, 684992453, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, 916636514, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, -1939378450, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, 441715397, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, 264959411, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, 1353777856, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, -1207283343, 0))
				{
					return false;
				}
				else if (func_596(iParam0, iParam4, 0) != -99)
				{
					if (dlc1::_0x341DE7ED1D2A1BFD(iVar9, 525778571, 0))
					{
						return false;
					}
				}
			}
			if (iParam8 != -99)
			{
				if (!(iParam8 >= 1 && iParam8 <= 31))
				{
				}
				else
				{
					return false;
				}
			}
		}
		if (iParam3 != -99)
		{
			if (iVar9 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar9, 654065530, 0))
			{
				if (dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1351486939, 0))
				{
					return true;
				}
				else
				{
					return false;
				}
			}
		}
		if (((iParam1 >= 13 && iParam1 <= 18) || iVar8 == 3) || (iVar9 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar9, -1320139576, 0)))
		{
			if (iParam3 != -99)
			{
				if (((((((((iParam3 >= 48 && iParam3 <= 63) || (iParam3 >= 112 && iParam3 <= 127)) || (iParam3 >= 160 && iParam3 <= 175)) || iVar10 == 3) || iVar10 == 7) || iVar10 == 10) || (iParam3 >= 256 && dlc1::_0x341DE7ED1D2A1BFD(iVar11, 2026620439, 0))) || (iParam3 >= 256 && dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1882920022, 0))) || (iParam3 >= 256 && dlc1::_0x341DE7ED1D2A1BFD(iVar11, 1147939952, 0)))
				{
					return false;
				}
			}
			else if (iParam4 != -99)
			{
				if (iParam4 >= 136 && dlc1::_0x341DE7ED1D2A1BFD(func_604(iParam0, iParam4, 8, 4), 1147939952, 0))
				{
					return false;
				}
			}
			else if (iParam9 != -99)
			{
				if (iVar12 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar12, -1320139576, 1))
				{
					return false;
				}
			}
		}
		else if ((iParam1 >= 19 && iParam1 <= 24) || iVar8 == 4)
		{
			if (iParam3 != -99)
			{
				if (((((((((iParam3 >= 48 && iParam3 <= 63) || (iParam3 >= 112 && iParam3 <= 127)) || (iParam3 >= 160 && iParam3 <= 175)) || iVar10 == 3) || iVar10 == 7) || iVar10 == 10) || (iParam3 >= 256 && dlc1::_0x341DE7ED1D2A1BFD(iVar11, 2026620439, 0))) || (iParam3 >= 256 && dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1882920022, 0))) || (iParam3 >= 256 && dlc1::_0x341DE7ED1D2A1BFD(iVar11, 1147939952, 0)))
				{
					return false;
				}
			}
			else if (iParam4 != -99)
			{
				if (iParam4 >= 136 && dlc1::_0x341DE7ED1D2A1BFD(func_604(iParam0, iParam4, 8, 4), 1147939952, 0))
				{
					return false;
				}
			}
			else if (iParam9 != -99)
			{
				if (iVar12 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar12, -1320139576, 1))
				{
					dlc1::_0x5D5CAFF661DDF6FC(iVar12, &Var15);
					if (Var15.f_6 == 7)
					{
						return false;
					}
				}
			}
		}
		else if ((iParam1 >= 25 && iParam1 <= 30) || iVar8 == 5)
		{
			if (iParam3 != -99)
			{
				if (((((((((iParam3 >= 48 && iParam3 <= 63) || (iParam3 >= 112 && iParam3 <= 127)) || (iParam3 >= 160 && iParam3 <= 175)) || iVar10 == 3) || iVar10 == 7) || iVar10 == 10) || (iParam3 >= 256 && dlc1::_0x341DE7ED1D2A1BFD(iVar11, 2026620439, 0))) || (iParam3 >= 256 && dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1882920022, 0))) || (iParam3 >= 256 && dlc1::_0x341DE7ED1D2A1BFD(iVar11, 1147939952, 0)))
				{
					return false;
				}
			}
			else if (iParam4 != -99)
			{
				if (iParam4 >= 136 && dlc1::_0x341DE7ED1D2A1BFD(func_604(iParam0, iParam4, 8, 4), 1147939952, 0))
				{
					return false;
				}
			}
			else if (iParam9 != -99)
			{
				if (iVar12 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar12, -1320139576, 1))
				{
					return false;
				}
			}
		}
		else if ((iParam1 >= 31 && iParam1 <= 36) || iVar8 == 6)
		{
			if (iParam3 != -99)
			{
				if ((((((((((((((((((((((((((((((((((((((((((((iParam3 >= 48 && iParam3 <= 63) || (iParam3 >= 144 && iParam3 <= 159)) || (iParam3 >= 224 && iParam3 <= 239)) || iVar10 == 3) || iVar10 == 9) || iVar10 == 14) || (iParam3 >= 256 && dlc1::_0x341DE7ED1D2A1BFD(iVar11, 1965569012, 0))) || (iParam3 >= 256 && dlc1::_0x341DE7ED1D2A1BFD(iVar11, 2026620439, 0))) || (iParam3 >= 256 && dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1882920022, 0))) || (iParam3 >= 256 && dlc1::_0x341DE7ED1D2A1BFD(iVar11, 396458410, 0))) || (iParam3 >= 256 && dlc1::_0x341DE7ED1D2A1BFD(iVar11, -761463976, 0))) || (iParam3 >= 256 && dlc1::_0x341DE7ED1D2A1BFD(iVar11, 103539798, 0))) || (iParam3 >= 256 && dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1347486026, 0))) || (iParam3 >= 256 && dlc1::_0x341DE7ED1D2A1BFD(iVar11, -994703884, 0))) || (iParam3 >= 256 && dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1119232689, 0))) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, 320460654, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -2017999390, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1410897066, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -826135203, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, 2044466679, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -2020757158, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1064262817, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1053842259, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1358888880, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -441291342, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -747583185, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1986415230, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -430330349, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -102825006, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -733792105, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -641612092, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1351486939, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1507532917, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, 2030343924, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -828478571, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, 1360588936, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1506370874, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1786447517, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1010805287, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, 2136821028, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, 602650322, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, 905042630, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, 1204125293, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1855618474, 0))
				{
					return false;
				}
			}
		}
		else if (((iParam1 >= 37 && iParam1 <= 42) || iVar8 == 7) || (iParam1 >= 55 && dlc1::_0x341DE7ED1D2A1BFD(iVar9, 2083259958, 0)))
		{
			if (iParam3 != -99)
			{
				if ((((((((((((((((((((((((((((((((((((((((((((iParam3 >= 32 && iParam3 <= 47) || (iParam3 >= 48 && iParam3 <= 63)) || (iParam3 >= 144 && iParam3 <= 159)) || (iParam3 >= 224 && iParam3 <= 239)) || iVar10 == 2) || iVar10 == 3) || iVar10 == 9) || iVar10 == 14) || (iParam3 >= 256 && dlc1::_0x341DE7ED1D2A1BFD(iVar11, 2026620439, 0))) || (iParam3 >= 256 && dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1882920022, 0))) || (iParam3 >= 256 && dlc1::_0x341DE7ED1D2A1BFD(iVar11, 396458410, 0))) || (iParam3 >= 256 && dlc1::_0x341DE7ED1D2A1BFD(iVar11, -761463976, 0))) || (iParam3 >= 256 && dlc1::_0x341DE7ED1D2A1BFD(iVar11, 821147517, 0))) || (iParam3 >= 256 && dlc1::_0x341DE7ED1D2A1BFD(iVar11, 103539798, 0))) || (iParam3 >= 256 && dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1347486026, 0))) || (iParam3 >= 256 && dlc1::_0x341DE7ED1D2A1BFD(iVar11, -994703884, 0))) || (iParam3 >= 256 && dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1119232689, 0))) || (iParam3 >= 256 && dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1607949555, 0))) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, 320460654, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -2017999390, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1410897066, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -826135203, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, 1965569012, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1064262817, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1053842259, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1358888880, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -441291342, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -747583185, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1986415230, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -430330349, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -102825006, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -733792105, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -641612092, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1351486939, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1507532917, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, 2030343924, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -828478571, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, 1360588936, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1506370874, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1786447517, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1010805287, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, 2136821028, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, 1831422288, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, 974680318, 0))
				{
					return false;
				}
				else if (((((((((((iParam3 >= 112 && iParam3 <= 127) || (iParam3 >= 160 && iParam3 <= 175)) || (iParam3 >= 192 && iParam3 <= 207)) || iVar10 == 7) || iVar10 == 10) || iVar10 == 12) || (iParam3 >= 256 && dlc1::_0x341DE7ED1D2A1BFD(iVar11, 1147939952, 0))) || (iParam3 >= 256 && dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1200513218, 0))) || (iParam3 >= 256 && dlc1::_0x341DE7ED1D2A1BFD(iVar11, 2026620439, 0))) || (iParam3 >= 256 && dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1882920022, 0))) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, -747583185, 0))
				{
					if (iParam1 >= 55 && dlc1::_0x341DE7ED1D2A1BFD(iVar9, 2083259958, 0))
					{
						return false;
					}
				}
			}
			else if (iParam4 != -99)
			{
				if (dlc1::_0x341DE7ED1D2A1BFD(iVar13, 1965569012, 0))
				{
					if (dlc1::_0x341DE7ED1D2A1BFD(iVar9, 2083259958, 0))
					{
						return false;
					}
				}
				else if (((dlc1::_0x341DE7ED1D2A1BFD(iVar13, -1786447517, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, -1010805287, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, -1325813684, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, -549843760, 0))
				{
					return false;
				}
				else if ((dlc1::_0x341DE7ED1D2A1BFD(iVar13, -1703203608, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, -1415000253, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, -168336417, 0))
				{
					return false;
				}
			}
			else if (iParam9 != -99)
			{
				if (iVar12 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar12, -1320139576, 1))
				{
					return false;
				}
			}
		}
		else if ((iParam1 >= 43 && iParam1 <= 48) || iVar8 == 8)
		{
			if (iParam3 != -99)
			{
				if ((((((((((((((((((((((iParam3 >= 0 && iParam3 <= 15) || (iParam3 >= 32 && iParam3 <= 47)) || (iParam3 >= 64 && iParam3 <= 79)) || (iParam3 >= 80 && iParam3 <= 95)) || (iParam3 >= 144 && iParam3 <= 159)) || (iParam3 >= 176 && iParam3 <= 191)) || (iParam3 >= 192 && iParam3 <= 207)) || (iParam3 >= 208 && iParam3 <= 223)) || (iParam3 >= 240 && iParam3 <= 255)) || iVar10 == 0) || iVar10 == 2) || iVar10 == 4) || iVar10 == 5) || iVar10 == 9) || iVar10 == 11) || iVar10 == 12) || iVar10 == 13) || iVar10 == 15) || (iParam3 >= 256 && dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1200513218, 0))) || (iParam3 >= 256 && dlc1::_0x341DE7ED1D2A1BFD(iVar11, -530089825, 0))) || (iParam3 >= 256 && dlc1::_0x341DE7ED1D2A1BFD(iVar11, 103539798, 0))) || (iParam3 >= 256 && dlc1::_0x341DE7ED1D2A1BFD(iVar11, -994703884, 0)))
				{
				}
				else
				{
					return false;
				}
			}
		}
		else if ((iParam1 >= 49 && iParam1 <= 54) || iVar8 == 9)
		{
			if (iParam3 != -99)
			{
				if ((((((((((((((((iParam3 >= 0 && iParam3 <= 15) || (iParam3 >= 64 && iParam3 <= 79)) || (iParam3 >= 80 && iParam3 <= 95)) || (iParam3 >= 176 && iParam3 <= 191)) || (iParam3 >= 192 && iParam3 <= 207)) || (iParam3 >= 208 && iParam3 <= 223)) || (iParam3 >= 240 && iParam3 <= 255)) || iVar10 == 0) || iVar10 == 4) || iVar10 == 5) || iVar10 == 11) || iVar10 == 12) || iVar10 == 13) || iVar10 == 15) || (iParam3 >= 256 && dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1200513218, 0))) || (iParam3 >= 256 && dlc1::_0x341DE7ED1D2A1BFD(iVar11, -530089825, 0)))
				{
				}
				else
				{
					return false;
				}
			}
			else if (iParam4 != -99)
			{
				if (dlc1::_0x341DE7ED1D2A1BFD(iVar13, -7109286, 0))
				{
					return false;
				}
				else if (((dlc1::_0x341DE7ED1D2A1BFD(iVar13, -1786447517, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, -1010805287, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, -1325813684, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, -549843760, 0))
				{
					return false;
				}
			}
			if (iParam8 != -99)
			{
				if (!(iParam8 >= 1 && iParam8 <= 31))
				{
				}
				else
				{
					return false;
				}
			}
		}
		else if (iParam1 >= 55 && dlc1::_0x341DE7ED1D2A1BFD(iVar9, 1716958480, 0))
		{
			if (iParam3 != -99)
			{
				if (iVar11 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar11, -747583185, 0))
				{
					return true;
				}
				else
				{
					return false;
				}
			}
			if (iParam11 != -99)
			{
				iVar32 = -1;
				if (iParam11 >= 256)
				{
					iVar32 = func_604(iParam0, iParam11, 4, 4);
				}
				if (dlc1::_0x341DE7ED1D2A1BFD(iVar32, -33031567, 0))
				{
					return true;
				}
				else
				{
					return false;
				}
			}
		}
	}
	return true;
}

bool func_556(int iParam0)//Position - 0x31070
{
	if (iParam0 != -1)
	{
		return false;
	}
	switch (iParam0)
	{
		case -783649692:
		case 691352495:
		case 1313566316:
		case 451909412:
		case 1552550633:
		case -206550874:
		case 860928119:
		case -445797343:
		case 1107219923:
		case -173716332:
		case -2017140386:
		case -538304226:
		case -1235599732:
		case -592242000:
		case 1815489089:
		case -831095241:
		case 2062043045:
		case -1092100326:
		case -1065332020:
		case -1465994616:
		case -1516536717:
		case 507503642:
		case -1470397961:
		case -1392082519:
		case 264425668:
		case -88859389:
		case 560755735:
		case 157858412:
		case -593565059:
		case -513152401:
		case -286945526:
		case 2004948615:
			return true;
			break;
	}
	return false;
}

int func_557(int iParam0, int iParam1)//Position - 0x31151
{
	int iVar0;
	int iVar1;
	int iVar2;
	
	if (iParam0 == joaat("mp_m_freemode_01"))
	{
		iVar0 = func_604(iParam0, iParam1, 11, 3);
		if (iVar0 != -1)
		{
			if ((((((((((((((((((((((((((((((dlc1::_0x341DE7ED1D2A1BFD(iVar0, -1119232689, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, -2102859770, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, 1784133476, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, 1976716889, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, 2099109084, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, -1488441032, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, -1719167561, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, -1274099003, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, -1410897066, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, 320460654, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, -826135203, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, 1431529976, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, 1723403459, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, 2044466679, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, -2020757158, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, -1064262817, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, -1419806467, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, -1053842259, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, -1358888880, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, -441291342, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, -785939537, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, -1446333198, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, 492620493, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, -1506370874, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, -1786447517, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, -1010805287, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, -1325813684, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, 1690933245, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, 1360588936, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, 2136821028, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, -1603194928, 0))
			{
				return 1;
			}
		}
		if (iVar0 != -1)
		{
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar0, -2017999390, 0))
			{
				return 1;
			}
		}
		return func_599(iParam0, iParam1);
	}
	else if (iParam0 == joaat("mp_f_freemode_01"))
	{
		iVar1 = func_604(iParam0, iParam1, 11, 4);
		iVar2 = -1;
		if (iVar1 != -1)
		{
			iVar2 = func_595(iVar1);
		}
		if ((((((((((((((((((((((((((((((((((((iParam1 >= 16 && iParam1 < 32) || (iParam1 >= 48 && iParam1 < 64)) || (iParam1 >= 96 && iParam1 < 112)) || (iParam1 >= 112 && iParam1 < 128)) || (iParam1 >= 128 && iParam1 < 144)) || (iParam1 >= 144 && iParam1 < 160)) || (iParam1 >= 160 && iParam1 < 176)) || (iParam1 >= 224 && iParam1 < 240)) || iVar2 == 1) || iVar2 == 3) || iVar2 == 6) || iVar2 == 7) || iVar2 == 8) || iVar2 == 9) || iVar2 == 10) || iVar2 == 14) || dlc1::_0x341DE7ED1D2A1BFD(iVar1, -1393156190, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar1, 1843965488, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar1, 441715397, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar1, 264959411, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar1, -1410897066, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar1, 320460654, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar1, -2017999390, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar1, -826135203, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar1, -747583185, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar1, -102825006, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar1, -733792105, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar1, -641612092, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar1, -1507532917, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar1, -1506370874, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar1, -1786447517, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar1, -1010805287, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar1, -1325813684, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar1, 1690933245, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar1, 1360588936, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar1, 2136821028, 0))
		{
			return 1;
		}
	}
	return 0;
}

void func_558(int iParam0, int iParam1, int iParam2, int iParam3)//Position - 0x3165A
{
	int iVar0;
	int iVar1;
	
	iVar0 = entity::get_entity_model(iParam0);
	func_590(gameplay::get_hash_key("hairOverlay"), iParam0);
	iVar1 = func_589(iVar0, iParam1);
	if (iVar1 != -1)
	{
		if (iParam2 == -1)
		{
			iParam2 = Global_69516;
		}
		func_615(iVar1, 1, iParam2);
	}
	func_559(iParam0, iParam3, 0);
}

void func_559(int iParam0, int iParam1, int iParam2)//Position - 0x316A6
{
	int iVar0;
	struct<9> Var1;
	int iVar14;
	int iVar15;
	int iVar16;
	int iVar17;
	int iVar18;
	int iVar19;
	int iVar20;
	struct<8> Var21;
	int iVar36;
	
	if (!ped::is_ped_injured(iParam0))
	{
		iVar0 = Global_69516;
		ped::_clear_ped_facial_decorations(iParam0);
		iVar14 = func_588(iParam0);
		iVar15 = func_579(iParam0);
		iVar16 = func_577(iParam0);
		iVar17 = func_576(iParam0);
		if (iParam1)
		{
			iVar16 = true;
		}
		if (iParam2)
		{
			iVar16 = false;
		}
		iVar18 = 0;
		while (iVar18 < 127)
		{
			if (func_569(iVar18, iVar0))
			{
				if (func_564(&Var1, iVar18, iVar14, iParam0, -1))
				{
					if (func_561(iParam0, &Var1, Var1.f_4, Var1.f_8, iVar15, iVar16, iParam1, iVar17))
					{
						ped::_set_ped_decoration(iParam0, Var1.f_4, Var1.f_5);
					}
				}
			}
			iVar18++;
		}
		if (func_569(123, iVar0))
		{
			if (ped::_get_tattoo_zone(-1719270477, -1824026490) != 7)
			{
				ped::_set_ped_decoration(iParam0, -1719270477, -1824026490);
			}
		}
		iVar20 = dlc1::_0x278F76C3B0A8F109(iVar14);
		iVar19 = 0;
		while (iVar19 < iVar20)
		{
			if (dlc1::_0xFF56381874F82086(iVar14, iVar19, &Var21))
			{
				if (!dlc1::_is_dlc_data_empty(Var21))
				{
					iVar36 = (129 + iVar19);
					if (func_569(iVar36, iVar0))
					{
						if (func_561(iParam0, &(Var21.f_7), Var21.f_2, Var21.f_6, iVar15, iVar16, iParam1, iVar17))
						{
							ped::_set_ped_decoration(iParam0, Var21.f_2, Var21.f_3);
							func_560(iParam0, Var21.f_2, Var21.f_3);
						}
					}
				}
			}
			iVar19++;
		}
	}
}

void func_560(int iParam0, int iParam1, int iParam2)//Position - 0x317F5
{
	switch (iParam1)
	{
		case -1194930348:
			switch (iParam2)
			{
				case -841238543:
					ped::_set_ped_decoration(iParam0, -1194930348, -441419962);
					break;
				
				case -1405854945:
					ped::_set_ped_decoration(iParam0, -1194930348, 1647997020);
					break;
			}
			break;
		
		case -777275782:
			switch (iParam2)
			{
				case 671171671:
					ped::_set_ped_decoration(iParam0, -777275782, 904519720);
					break;
				
				case 1911627074:
					ped::_set_ped_decoration(iParam0, -777275782, -607391498);
					break;
			}
			break;
		
		case 484754152:
			switch (iParam2)
			{
				case 266230635:
					ped::_set_ped_decoration(iParam0, 484754152, -588549683);
					ped::_set_ped_decoration(iParam0, 484754152, 464027076);
					break;
				
				case -1261787835:
					ped::_set_ped_decoration(iParam0, 484754152, -965491494);
					ped::_set_ped_decoration(iParam0, 484754152, 939374190);
					break;
			}
			break;
	}
}

bool func_561(int iParam0, char* sParam1, int iParam2, int iParam3, int iParam4, int iParam5, int iParam6, int iParam7)//Position - 0x318EA
{
	int iVar0;
	int iVar1;
	
	iVar0 = entity::get_entity_model(iParam0);
	if (iParam3 == 0)
	{
		iVar1 = func_563(iVar0, sParam1, iParam3);
		iParam3 = gameplay::get_hash_key(func_562(iVar1));
	}
	if (iParam2 == 449512698)
	{
		return false;
	}
	switch (iParam3)
	{
		case -793495770:
		case -763917073:
		case -1409061796:
		case -2066166276:
		case 849089063:
		case 1192230427:
		case -454273031:
		case -1459967458:
		case 1548327796:
		case -1238079313:
		case 129912816:
		case -1469750959:
		case 1586504577:
		case 1753976524:
		case 1361645381:
		case -388268096:
			if (iParam4)
			{
				return false;
			}
			if ((((iParam3 == -793495770 || (iParam3 == -1409061796 && iVar0 == joaat("mp_f_freemode_01"))) || iParam3 == -2066166276) || iParam3 == 849089063) || iParam3 == 1192230427)
			{
				if (!iParam5)
				{
					if (Global_2593812 == -1)
					{
						if (!Global_91538.f_1456)
						{
							if (func_569(13, -1))
							{
								return false;
							}
							else if (func_569(14, -1))
							{
								return false;
							}
							else if (func_569(15, -1))
							{
								return false;
							}
							else if (func_569(16, -1))
							{
								return false;
							}
							else if (func_569(71, -1))
							{
								return false;
							}
							else if (func_569(72, -1))
							{
							}
						}
					}
					else if (Global_2593812 == 13)
					{
						return false;
					}
					else if (Global_2593812 == 14)
					{
						return false;
					}
					else if (Global_2593812 == 15)
					{
						return false;
					}
					else if (Global_2593812 == 16)
					{
						return false;
					}
					else if (Global_2593812 == 71)
					{
						return false;
					}
					else if (Global_2593812 == 72)
					{
					}
				}
			}
			else if (iParam3 == -763917073)
			{
				if (!iParam5)
				{
					if (Global_2593812 == -1)
					{
						if (!Global_91538.f_1456)
						{
							if (func_569(13, -1))
							{
								return false;
							}
							else if (func_569(14, -1))
							{
								return false;
							}
							else if (func_569(15, -1))
							{
								return false;
							}
							else if (func_569(16, -1))
							{
								return false;
							}
							else if (func_569(71, -1))
							{
								return false;
							}
							else if (func_569(72, -1))
							{
							}
						}
					}
					else if (Global_2593812 == 13)
					{
						return false;
					}
					else if (Global_2593812 == 14)
					{
						return false;
					}
					else if (Global_2593812 == 15)
					{
						return false;
					}
					else if (Global_2593812 == 16)
					{
						return false;
					}
					else if (Global_2593812 == 71)
					{
						return false;
					}
					else if (Global_2593812 == 72)
					{
					}
				}
			}
			else if ((iParam3 == 129912816 || iParam3 == 1361645381) || iParam3 == -1469750959)
			{
				if (!iParam5)
				{
					if (Global_2593812 == -1)
					{
						if (!Global_91538.f_1456)
						{
							if (func_569(13, -1))
							{
							}
							else if (func_569(14, -1))
							{
								return false;
							}
							else if (func_569(15, -1))
							{
								return false;
							}
							else if (func_569(16, -1))
							{
							}
							else if (func_569(71, -1))
							{
								return false;
							}
							else if (func_569(72, -1))
							{
							}
						}
					}
					else if (Global_2593812 == 13)
					{
					}
					else if (Global_2593812 == 14)
					{
						return false;
					}
					else if (Global_2593812 == 15)
					{
						return false;
					}
					else if (Global_2593812 == 16)
					{
					}
					else if (Global_2593812 == 71)
					{
						return false;
					}
					else if (Global_2593812 == 72)
					{
					}
				}
			}
			break;
		
		case 1484379715:
		case 711089605:
		case 1206993109:
		case 32564956:
		case 1618133209:
		case 314326195:
		case 1928884106:
		case 1565386395:
		case 2107621060:
			if (iParam7)
			{
				return false;
			}
			if (!iParam5)
			{
				if (Global_2593812 == -1)
				{
					if (!Global_91538.f_1456)
					{
						if (func_569(13, -1))
						{
						}
						else if (func_569(14, -1))
						{
						}
						else if (func_569(15, -1))
						{
							return false;
						}
						else if (func_569(16, -1))
						{
						}
						else if (func_569(71, -1))
						{
						}
						else if (func_569(72, -1))
						{
							return false;
						}
					}
				}
				else if (Global_2593812 == 13)
				{
				}
				else if (Global_2593812 == 14)
				{
				}
				else if (Global_2593812 == 15)
				{
					return false;
				}
				else if (Global_2593812 == 16)
				{
				}
				else if (Global_2593812 == 71)
				{
				}
				else if (Global_2593812 == 72)
				{
					return false;
				}
			}
			break;
		
		case 1019352240:
			if (iParam7)
			{
				if (iVar0 == joaat("mp_m_freemode_01"))
				{
					if (Global_2593812 == -1)
					{
						if (!Global_91538.f_1456)
						{
							if (func_569(15, -1))
							{
								return false;
							}
						}
					}
					else if (Global_2593812 == 15)
					{
						return false;
					}
				}
			}
			if (iParam5)
			{
				return false;
			}
			if (iParam4)
			{
				if (Global_2593812 == -1)
				{
					if (!Global_91538.f_1456)
					{
						if (func_569(13, -1))
						{
							return false;
						}
						else if (func_569(14, -1))
						{
							return false;
						}
						else if (func_569(15, -1))
						{
							return false;
						}
						else if (func_569(16, -1))
						{
						}
						else if (func_569(71, -1))
						{
						}
						else if (func_569(72, -1))
						{
						}
					}
				}
				else if (Global_2593812 == 13)
				{
					return false;
				}
				else if (Global_2593812 == 14)
				{
					return false;
				}
				else if (Global_2593812 == 15)
				{
					return false;
				}
				else if (Global_2593812 == 16)
				{
				}
				else if (Global_2593812 == 71)
				{
				}
				else if (Global_2593812 == 72)
				{
				}
			}
			break;
		
		case 0:
		case 2:
		case -518474626:
			if (iParam4)
			{
				if (!gameplay::is_string_null_or_empty(sParam1))
				{
					switch (gameplay::get_hash_key(sParam1))
					{
						case 1774176944:
						case 1363941829:
						case -328314869:
						case -1903783095:
						case -1674924399:
						case -106785870:
						case -344656041:
						case 1480281490:
						case -2097372400:
						case 118598456:
						case -1386676768:
						case 1464947154:
						case -1282504117:
						case -1877294236:
						case 736950162:
							return false;
							break;
						}
					}
			}
			if (iVar0 == joaat("mp_m_freemode_01"))
			{
			}
			else if (iVar0 == joaat("mp_f_freemode_01"))
			{
				if (!iParam5)
				{
					if (Global_2593812 == -1)
					{
						if (!Global_91538.f_1456)
						{
							if (func_569(13, -1))
							{
							}
							else if (func_569(14, -1))
							{
							}
							else if (func_569(15, -1))
							{
							}
							else if (func_569(16, -1))
							{
							}
							else if (func_569(71, -1))
							{
							}
							else if (func_569(72, -1))
							{
							}
						}
					}
					else if (Global_2593812 == 13)
					{
						return false;
					}
					else if (Global_2593812 == 14)
					{
					}
					else if (Global_2593812 == 15)
					{
						return false;
					}
					else if (Global_2593812 == 16)
					{
					}
					else if (Global_2593812 == 71)
					{
					}
					else if (Global_2593812 == 72)
					{
					}
				}
			}
			break;
		
		case 277073536:
			if (iParam6)
			{
				return false;
			}
			break;
	}
	return true;
}

char* func_562(int iParam0)//Position - 0x32031
{
	switch (iParam0)
	{
		case 0:
			return "ARM_LEFT_FULL_SLEEVE";
			break;
		
		case 1:
			return "ARM_LEFT_SHORT_SLEEVE";
			break;
		
		case 2:
			return "ARM_LEFT_LOWER_SLEEVE";
			break;
		
		case 3:
			return "ARM_LEFT_LOWER_INNER";
			break;
		
		case 4:
			return "ARM_LEFT_LOWER_OUTER";
			break;
		
		case 5:
			return "ARM_LEFT_WRIST";
			break;
		
		case 6:
			return "ARM_LEFT_UPPER_SLEEVE";
			break;
		
		case 7:
			return "ARM_LEFT_UPPER_TRICEP";
			break;
		
		case 8:
			return "ARM_LEFT_UPPER_SIDE";
			break;
		
		case 9:
			return "ARM_LEFT_UPPER_BICEP";
			break;
		
		case 10:
			return "ARM_LEFT_SHOULDER";
			break;
		
		case 11:
			return "ARM_LEFT_ELBOW";
			break;
		
		case 12:
			return "ARM_RIGHT_FULL_SLEEVE";
			break;
		
		case 13:
			return "ARM_RIGHT_SHORT_SLEEVE";
			break;
		
		case 14:
			return "ARM_RIGHT_LOWER_SLEEVE";
			break;
		
		case 15:
			return "ARM_RIGHT_LOWER_INNER";
			break;
		
		case 16:
			return "ARM_RIGHT_LOWER_OUTER";
			break;
		
		case 17:
			return "ARM_RIGHT_WRIST";
			break;
		
		case 18:
			return "ARM_RIGHT_UPPER_SLEEVE";
			break;
		
		case 19:
			return "ARM_RIGHT_UPPER_TRICEP";
			break;
		
		case 20:
			return "ARM_RIGHT_UPPER_SIDE";
			break;
		
		case 21:
			return "ARM_RIGHT_UPPER_BICEP";
			break;
		
		case 22:
			return "ARM_RIGHT_SHOULDER";
			break;
		
		case 23:
			return "ARM_RIGHT_ELBOW";
			break;
		
		case 24:
			return "HAND_LEFT";
			break;
		
		case 25:
			return "HAND_RIGHT";
			break;
		
		case 26:
			return "BACK_FULL";
			break;
		
		case 27:
			return "BACK_FULL_ARMS_FULL_BACK";
			break;
		
		case 28:
			return "BACK_FULL_SHORT";
			break;
		
		case 29:
			return "BACK_MID";
			break;
		
		case 30:
			return "BACK_UPPER";
			break;
		
		case 31:
			return "BACK_UPPER_LEFT";
			break;
		
		case 32:
			return "BACK_UPPER_RIGHT";
			break;
		
		case 33:
			return "BACK_LOWER";
			break;
		
		case 34:
			return "BACK_LOWER_LEFT";
			break;
		
		case 35:
			return "BACK_LOWER_MID";
			break;
		
		case 36:
			return "BACK_LOWER_RIGHT";
			break;
		
		case 37:
			return "CHEST_FULL";
			break;
		
		case 38:
			return "CHEST_STOM";
			break;
		
		case 39:
			return "CHEST_STOM_FULL";
			break;
		
		case 40:
			return "CHEST_LEFT";
			break;
		
		case 41:
			return "CHEST_UPPER_LEFT";
			break;
		
		case 42:
			return "CHEST_RIGHT";
			break;
		
		case 43:
			return "CHEST_UPPER_RIGHT";
			break;
		
		case 44:
			return "CHEST_MID";
			break;
		
		case 45:
			return "TORSO_SIDE_RIGHT";
			break;
		
		case 46:
			return "TORSO_SIDE_LEFT";
			break;
		
		case 47:
			return "STOMACH_FULL";
			break;
		
		case 48:
			return "STOMACH_UPPER";
			break;
		
		case 49:
			return "STOMACH_UPPER_LEFT";
			break;
		
		case 50:
			return "STOMACH_UPPER_RIGHT";
			break;
		
		case 51:
			return "STOMACH_LOWER";
			break;
		
		case 52:
			return "STOMACH_LOWER_LEFT";
			break;
		
		case 53:
			return "STOMACH_LOWER_RIGHT";
			break;
		
		case 54:
			return "STOMACH_LEFT";
			break;
		
		case 55:
			return "STOMACH_RIGHT";
			break;
		
		case 56:
			return "FACE";
			break;
		
		case 57:
			return "HEAD_LEFT";
			break;
		
		case 58:
			return "HEAD_RIGHT";
			break;
		
		case 59:
			return "NECK_FRONT";
			break;
		
		case 60:
			return "NECK_BACK";
			break;
		
		case 61:
			return "NECK_LEFT_FULL";
			break;
		
		case 62:
			return "NECK_LEFT_BACK";
			break;
		
		case 63:
			return "NECK_RIGHT_FULL";
			break;
		
		case 64:
			return "NECK_RIGHT_BACK";
			break;
		
		case 65:
			return "LEG_LEFT_FULL_SLEEVE";
			break;
		
		case 66:
			return "LEG_LEFT_FULL_FRONT";
			break;
		
		case 67:
			return "LEG_LEFT_FULL_BACK";
			break;
		
		case 68:
			return "LEG_LEFT_UPPER_SLEEVE";
			break;
		
		case 69:
			return "LEG_LEFT_UPPER_FRONT";
			break;
		
		case 70:
			return "LEG_LEFT_UPPER_BACK";
			break;
		
		case 71:
			return "LEG_LEFT_UPPER_OUTER";
			break;
		
		case 72:
			return "LEG_LEFT_UPPER_INNER";
			break;
		
		case 73:
			return "LEG_LEFT_LOWER_SLEEVE";
			break;
		
		case 74:
			return "LEG_LEFT_LOWER_FRONT";
			break;
		
		case 75:
			return "LEG_LEFT_LOWER_BACK";
			break;
		
		case 76:
			return "LEG_LEFT_LOWER_OUTER";
			break;
		
		case 77:
			return "LEG_LEFT_LOWER_INNER";
			break;
		
		case 78:
			return "LEG_LEFT_KNEE";
			break;
		
		case 79:
			return "LEG_LEFT_ANKLE";
			break;
		
		case 80:
			return "LEG_LEFT_CALF";
			break;
		
		case 81:
			return "LEG_RIGHT_FULL_SLEEVE";
			break;
		
		case 82:
			return "LEG_RIGHT_FULL_FRONT";
			break;
		
		case 83:
			return "LEG_RIGHT_FULL_BACK";
			break;
		
		case 84:
			return "LEG_RIGHT_UPPER_SLEEVE";
			break;
		
		case 85:
			return "LEG_RIGHT_UPPER_FRONT";
			break;
		
		case 86:
			return "LEG_RIGHT_UPPER_BACK";
			break;
		
		case 87:
			return "LEG_RIGHT_UPPER_OUTER";
			break;
		
		case 88:
			return "LEG_RIGHT_UPPER_INNER";
			break;
		
		case 89:
			return "LEG_RIGHT_LOWER_SLEEVE";
			break;
		
		case 90:
			return "LEG_RIGHT_LOWER_FRONT";
			break;
		
		case 91:
			return "LEG_RIGHT_LOWER_BACK";
			break;
		
		case 92:
			return "LEG_RIGHT_LOWER_OUTER";
			break;
		
		case 93:
			return "LEG_RIGHT_LOWER_INNER";
			break;
		
		case 94:
			return "LEG_RIGHT_KNEE";
			break;
		
		case 95:
			return "LEG_RIGHT_ANKLE";
			break;
		
		case 96:
			return "LEG_RIGHT_CALF";
			break;
		
		case 97:
			return "FOOT_LEFT";
			break;
		
		case 98:
			return "FOOT_RIGHT";
			break;
	}
	return "";
}

int func_563(int iParam0, char* sParam1, int iParam2)//Position - 0x32672
{
	switch (iParam2)
	{
		case 1019352240:
		case 2140335355:
		case 277073536:
			return -1;
			break;
	}
	switch (iParam2)
	{
		case -1775023605:
			return 0;
			break;
		
		case 917950949:
			return 1;
			break;
		
		case -1684314297:
			return 2;
			break;
		
		case -1546663824:
			return 3;
			break;
		
		case -2119253768:
			return 4;
			break;
		
		case 1639951086:
			return 5;
			break;
		
		case 1372660034:
			return 6;
			break;
		
		case -1524227787:
			return 7;
			break;
		
		case -311742370:
			return 8;
			break;
		
		case -2057190659:
			return 9;
			break;
		
		case -686545645:
			return 10;
			break;
		
		case -80377674:
			return 11;
			break;
		
		case -1055976551:
			return 12;
			break;
		
		case 1963750528:
			return 13;
			break;
		
		case 796226384:
			return 14;
			break;
		
		case 123428314:
			return 15;
			break;
		
		case 1944550961:
			return 16;
			break;
		
		case 2136911405:
			return 17;
			break;
		
		case -1309595991:
			return 18;
			break;
		
		case 1470319061:
			return 19;
			break;
		
		case -1716562576:
			return 20;
			break;
		
		case -1940582056:
			return 21;
			break;
		
		case 1089807219:
			return 22;
			break;
		
		case -1073830579:
			return 23;
			break;
		
		case 1071134407:
			return 24;
			break;
		
		case 1455567330:
			return 25;
			break;
		
		case 711089605:
			return 26;
			break;
		
		case 1206993109:
			return 27;
			break;
		
		case 32564956:
			return 28;
			break;
		
		case 314326195:
			return 29;
			break;
		
		case 1928884106:
			return 30;
			break;
		
		case 1565386395:
			return 31;
			break;
		
		case 2107621060:
			return 32;
			break;
		
		case 1618133209:
			return 33;
			break;
		
		case -951899470:
			return 34;
			break;
		
		case 2048696626:
			return 35;
			break;
		
		case 74017048:
			return 36;
			break;
		
		case -793495770:
			return 37;
			break;
		
		case 849089063:
			return 38;
			break;
		
		case 1192230427:
			return 39;
			break;
		
		case -763917073:
			return 40;
			break;
		
		case 337552605:
			return 41;
			break;
		
		case -2066166276:
			return 42;
			break;
		
		case 100935796:
			return 43;
			break;
		
		case -1409061796:
			return 44;
			break;
		
		case 1548327796:
			return 45;
			break;
		
		case -1459967458:
			return 46;
			break;
		
		case 129912816:
			return 47;
			break;
		
		case 1387715942:
			return 48;
			break;
		
		case -1871804242:
			return 49;
			break;
		
		case 1603728616:
			return 50;
			break;
		
		case -742053244:
			return 51;
			break;
		
		case 1586504577:
			return 52;
			break;
		
		case 1753976524:
			return 53;
			break;
		
		case -1469750959:
			return 54;
			break;
		
		case -388268096:
			return 55;
			break;
		
		case -1538681432:
			return 56;
			break;
		
		case -737856380:
			return 57;
			break;
		
		case 1261643197:
			return 58;
			break;
		
		case 436139458:
			return 59;
			break;
		
		case 1012782925:
			return 60;
			break;
		
		case -277214012:
			return 61;
			break;
		
		case -484264198:
			return 62;
			break;
		
		case 1708200656:
			return 63;
			break;
		
		case 758827473:
			return 64;
			break;
		
		case 1039283199:
			return 65;
			break;
		
		case 325801797:
			return 66;
			break;
		
		case -1946435033:
			return 67;
			break;
		
		case -1917346117:
			return 68;
			break;
		
		case -382139768:
			return 69;
			break;
		
		case 1725561361:
			return 70;
			break;
		
		case -266913369:
			return 71;
			break;
		
		case 511433871:
			return 72;
			break;
		
		case -1399656601:
			return 73;
			break;
		
		case -1560441083:
			return 74;
			break;
		
		case 1034503747:
			return 75;
			break;
		
		case -1170681301:
			return 76;
			break;
		
		case 660577126:
			return 77;
			break;
		
		case -818089340:
			return 78;
			break;
		
		case 1052642087:
			return 79;
			break;
		
		case 134497037:
			return 80;
			break;
		
		case -624267373:
			return 81;
			break;
		
		case -1178847967:
			return 82;
			break;
		
		case -197292861:
			return 83;
			break;
		
		case 730193962:
			return 84;
			break;
		
		case 1469472731:
			return 85;
			break;
		
		case -1918884694:
			return 86;
			break;
		
		case -1670727628:
			return 87;
			break;
		
		case -1389296468:
			return 88;
			break;
		
		case -405262373:
			return 89;
			break;
		
		case -1619609833:
			return 90;
			break;
		
		case 2060550302:
			return 91;
			break;
		
		case -1202647020:
			return 92;
			break;
		
		case 12584588:
			return 93;
			break;
		
		case -1559605744:
			return 94;
			break;
		
		case -88374898:
			return 95;
			break;
		
		case -292219126:
			return 96;
			break;
		
		case -634232984:
			return 97;
			break;
		
		case -1259754598:
			return 98;
			break;
	}
	switch (gameplay::get_hash_key(sParam1))
	{
		case 1948764112:
			return -1;
			break;
		
		case 1099734529:
			return 12;
			break;
		
		case 1875475066:
			return 12;
			break;
		
		case -2027116220:
			if (iParam0 == joaat("mp_m_freemode_01"))
			{
				return 75;
			}
			else
			{
				return 65;
			}
			break;
		
		case 973279522:
			return 26;
			break;
		
		case -344656041:
			return 47;
			break;
		
		case 437243648:
			return 1;
			break;
		
		case -1636967950:
			return 75;
			break;
		
		case -1759426263:
			return 1;
			break;
		
		case 1702259548:
			return 89;
			break;
		
		case 1471205329:
			return 73;
			break;
		
		case -33154131:
			return 22;
			break;
		
		case -1364624791:
			return 91;
			break;
		
		case 2048169112:
			return 26;
			break;
		
		case -2132107540:
			return 73;
			break;
		
		case -2097372400:
			return 38;
			break;
		
		case -106785870:
			if (iParam0 == joaat("mp_m_freemode_01"))
			{
				return 40;
			}
			else
			{
				return 42;
			}
			break;
		
		case 1116120433:
			return 31;
			break;
		
		case 118598456:
			return 42;
			break;
		
		case 1480281490:
			return 47;
			break;
		
		case -652292269:
			return 75;
			break;
		
		case -1179283327:
			return 20;
			break;
		
		case 860620540:
			return 32;
			break;
		
		case -880004050:
			return 14;
			break;
		
		case -1386676768:
			return 52;
			break;
		
		case 2104696341:
			return 30;
			break;
		
		case -1952728474:
			return 6;
			break;
		
		case 1464947154:
			return 80;
			break;
		
		case -1134718043:
			return 13;
			break;
		
		case -440373586:
			if (iParam0 == joaat("mp_m_freemode_01"))
			{
				return 67;
			}
			else
			{
				return 75;
			}
			break;
		
		case -1282504117:
			if (iParam0 == joaat("mp_m_freemode_01"))
			{
				return 40;
			}
			else
			{
				return 42;
			}
			break;
		
		case -1035884623:
			return 73;
			break;
		
		case -1877294236:
			return 47;
			break;
		
		case 1289632992:
			return 73;
			break;
		
		case 1152623695:
			return 10;
			break;
		
		case 1705208746:
			return 26;
			break;
		
		case 1774176944:
			return 42;
			break;
		
		case -2016202731:
			return 89;
			break;
		
		case 474241973:
			return 16;
			break;
		
		case 1549424756:
			return 91;
			break;
		
		case 1915520024:
			return 82;
			break;
		
		case -654914345:
			return 13;
			break;
		
		case -1745115353:
			return 75;
			break;
		
		case 1466027815:
			return 26;
			break;
		
		case -161772432:
			return 10;
			break;
		
		case 74131599:
			return 90;
			break;
		
		case 363383562:
			return 89;
			break;
		
		case 736950162:
			return 38;
			break;
		
		case 1291882802:
			return 20;
			break;
		
		case -281772534:
			return 26;
			break;
		
		case -837798134:
			return 18;
			break;
		
		case 62456:
			return 56;
			break;
		
		case -800320369:
			return 3;
			break;
		
		case 1363941829:
			return 47;
			break;
		
		case 1586377801:
			if (iParam0 == joaat("mp_m_freemode_01"))
			{
				return 28;
			}
			else
			{
				return 26;
			}
			break;
		
		case -1514257748:
			return 89;
			break;
		
		case -1023836894:
			return 6;
			break;
		
		case -1974105125:
			return 33;
			break;
		
		case -558386018:
			return 16;
			break;
		
		case -328314869:
			return 40;
			break;
		
		case -1903783095:
			return 40;
			break;
		
		case -1674924399:
			return 40;
			break;
		
		case -252323802:
			return 33;
			break;
		
		case 11466648:
			return 6;
			break;
		
		case 927130819:
			if (iParam0 == joaat("mp_m_freemode_01"))
			{
				return 28;
			}
			else
			{
				return 26;
			}
			break;
		
		case -978943608:
			if (iParam0 == joaat("mp_m_freemode_01"))
			{
				return 28;
			}
			else
			{
				return 26;
			}
			break;
		
		case 452144164:
			if (iParam0 == joaat("mp_m_freemode_01"))
			{
				return 28;
			}
			else
			{
				return 26;
			}
			break;
		
		case 691194019:
			if (iParam0 == joaat("mp_m_freemode_01"))
			{
				return 28;
			}
			else
			{
				return 26;
			}
			break;
		
		case -1516865571:
			return 44;
			break;
		
		case 2130586285:
			return 32;
			break;
		
		case 386521802:
			return 3;
			break;
		
		case 579924440:
			return 33;
			break;
		
		case 741770527:
			return 31;
			break;
		
		case 1173403795:
			return 33;
			break;
		
		case -569087776:
			return 45;
			break;
		
		case -1344959389:
			return 89;
			break;
		
		case -211217527:
			return 64;
			break;
		
		case 86488838:
			return 53;
			break;
		
		case 705494964:
			return 52;
			break;
		
		case -137684175:
			return 30;
			break;
		
		case -979388709:
			return 41;
			break;
		
		case 324653646:
			return 43;
			break;
		
		case -518820414:
			return 52;
			break;
		
		case -1361737401:
			return 20;
			break;
		
		case 2010946386:
			return 8;
			break;
		
		case -894811920:
			return 10;
			break;
		
		case 165068612:
			return 28;
			break;
		
		case 1549427782:
			return 40;
			break;
		
		case -927613913:
			return 42;
			break;
		
		case 385144996:
			return 56;
			break;
		
		case -814626401:
			return 57;
			break;
		
		case -1248225809:
			return 52;
			break;
		
		case 1910378101:
			return 8;
			break;
		
		case -2124501642:
			return 91;
			break;
		
		case -1943747838:
			return 20;
			break;
		
		case -1570115700:
			return 75;
			break;
		
		case 931699147:
			return 62;
			break;
		
		case 1019520067:
			return 63;
			break;
		
		case -859358814:
			return 20;
			break;
		
		case -1157818866:
			return 58;
			break;
		
		case -247856505:
			return 47;
			break;
		
		case -1628534963:
			return 37;
			break;
		
		case -1051898870:
			return 33;
			break;
		
		case 1334929540:
			return 80;
			break;
		
		case 1097124907:
			return 64;
			break;
		
		case 747545215:
			return 62;
			break;
		
		case 61892743:
			return 96;
			break;
		
		case 501548332:
			return 15;
			break;
		
		case -244169717:
			return 48;
			break;
		
		case 421886905:
			return 37;
			break;
		
		case -1398791504:
			return 33;
			break;
		
		case -106152761:
			return 3;
			break;
		
		case 125491300:
			return 41;
			break;
		
		case -1576950557:
			return 52;
			break;
		
		case -1815115649:
			return 53;
			break;
		
		case -1043396870:
			return 59;
			break;
		
		case -1388618285:
			return 3;
			break;
		
		case -948484638:
			return 48;
			break;
		
		case 643387405:
			return 33;
			break;
		
		case 979630098:
			return 64;
			break;
		
		case 211688583:
			return 62;
			break;
		
		case 1343791995:
			return 60;
			break;
		
		case 576309246:
			return 20;
			break;
		
		case 949154944:
			return 40;
			break;
		
		case -622511834:
			return 42;
			break;
		
		case -275651969:
			return 11;
			break;
		
		case -1256283855:
			return 15;
			break;
		
		case 955525350:
			return 40;
			break;
		
		case 1252641873:
			return 22;
			break;
		
		case -2034766264:
			return 40;
			break;
		
		case 1748021562:
			return 22;
			break;
		
		case -657146050:
			return 30;
			break;
		
		case -955835485:
			return 19;
			break;
		
		case -1269959119:
			return 40;
			break;
		
		case -1478763187:
			return 4;
			break;
		
		case -1881592504:
			return 15;
			break;
		
		case 2115996117:
			return 62;
			break;
		
		case 1824417551:
			return 45;
			break;
		
		case 1502068898:
			return 24;
			break;
		
		case -2019287742:
			return 22;
			break;
		
		case -1780827729:
			return 80;
			break;
		
		case -1966497207:
			return 25;
			break;
		
		case -2126999769:
			return 30;
			break;
		
		case 2014772448:
			return 30;
			break;
		
		case 1705760778:
			return 44;
			break;
		
		case 497993745:
			return 15;
			break;
		
		case 1142887665:
			return 9;
			break;
		
		case 22777707:
			return 3;
			break;
		
		case 799173624:
			return 16;
			break;
		
		case -410297401:
			return 17;
			break;
		
		case 214410819:
			return 75;
			break;
		
		case -2098342992:
			return 23;
			break;
		
		case -1280920283:
			return 64;
			break;
		
		case -1501455653:
			return 16;
			break;
		
		case 2117454408:
			return 25;
			break;
		
		case -1945704982:
			return 32;
			break;
		
		case -1581870771:
			return 31;
			break;
		
		case -1350521631:
			return 10;
			break;
		
		case -954508266:
			return 5;
			break;
		
		case -716244867:
			return 4;
			break;
		
		case 185361399:
			return 52;
			break;
		
		case -1208107213:
			return 35;
			break;
		
		case -812421538:
			return 30;
			break;
		
		case -566096965:
			return 32;
			break;
		
		case -316757644:
			return 38;
			break;
		
		case -103496992:
			return 24;
			break;
		
		case 391708136:
			return 52;
			break;
		
		case 616667309:
			return 20;
			break;
		
		case 870102755:
			return 10;
			break;
		
		case 1093030262:
			return 92;
			break;
		
		case 1378218869:
			return 0;
			break;
		
		case 332555747:
			return 80;
			break;
		
		case 1077526193:
			return 34;
			break;
		
		case 1332632858:
			return 91;
			break;
		
		case 1556379590:
			return 10;
			break;
		
		case 1780093553:
			return 22;
			break;
		
		case 2001284303:
			return 14;
			break;
		
		case -2059941716:
			return 30;
			break;
		
		case -1759875983:
			return 40;
			break;
		
		case -1521153818:
			return 24;
			break;
	}
	if (iParam2 == 0 && gameplay::is_string_null_or_empty(sParam1))
	{
		return -1;
	}
	switch (iParam2)
	{
		case -518474626:
			return -1;
			break;
	}
	return -1;
}

int func_564(char* sParam0, int iParam1, int iParam2, int iParam3, int iParam4)//Position - 0x336A4
{
	int iVar0;
	int iVar1;
	
	func_568(sParam0, -1, 0, "", "", "", "", iParam2, -1, 0);
	if (entity::does_entity_exist(iParam3) && !ped::is_ped_injured(iParam3))
	{
		iVar0 = entity::get_entity_model(iParam3);
	}
	switch (iParam2)
	{
		case 0:
			switch (iParam1)
			{
				case 0:
					func_568(sParam0, iParam1, iParam3, "TAT_MIC_01", "singleplayer_overlays", "MK_000", "", iParam2, 300, 3);
					break;
				
				case 1:
					func_568(sParam0, iParam1, iParam3, "TAT_MIC_02", "singleplayer_overlays", "MK_001", "", iParam2, 450, 0);
					break;
				
				case 2:
					func_568(sParam0, iParam1, iParam3, "TAT_MIC_03", "singleplayer_overlays", "MK_002", "", iParam2, 250, 4);
					break;
				
				case 3:
					func_568(sParam0, iParam1, iParam3, "TAT_MIC_04", "singleplayer_overlays", "MK_003", "", iParam2, 175, 0);
					break;
				
				case 4:
					func_568(sParam0, iParam1, iParam3, "TAT_MIC_06", "singleplayer_overlays", "MK_005", "", iParam2, 380, 0);
					break;
				
				case 5:
					func_568(sParam0, iParam1, iParam3, "TAT_MIC_07", "singleplayer_overlays", "MK_006", "", iParam2, 180, 0);
					break;
				
				case 6:
					func_568(sParam0, iParam1, iParam3, "TAT_MIC_08", "singleplayer_overlays", "MK_007", "", iParam2, 240, 0);
					break;
				
				case 7:
					func_568(sParam0, iParam1, iParam3, "TAT_MIC_10", "singleplayer_overlays", "MK_009", "", iParam2, 195, 0);
					break;
				
				case 8:
					func_568(sParam0, iParam1, iParam3, "TAT_MIC_11", "singleplayer_overlays", "MK_010", "", iParam2, 280, 6);
					break;
				
				case 9:
					if (func_301() || func_300())
					{
						iVar1 = 400;
						if (func_303() && (func_567() || func_566()))
						{
							iVar1 = 0;
						}
						func_568(sParam0, iParam1, iParam3, "TAT_MIC_12", "singleplayer_overlays", "MK_011", "", iParam2, iVar1, 2);
					}
					break;
				
				case 10:
					func_568(sParam0, iParam1, iParam3, "TAT_MIC_13", "singleplayer_overlays", "MK_012", "", iParam2, 320, 3);
					break;
				
				case 11:
					func_568(sParam0, iParam1, iParam3, "TAT_MIC_14", "singleplayer_overlays", "MK_013", "", iParam2, 500, 2);
					break;
				
				case 12:
					func_568(sParam0, iParam1, iParam3, "TAT_MIC_16", "singleplayer_overlays", "MK_015", "", iParam2, 220, 0);
					break;
				
				case 13:
					func_568(sParam0, iParam1, iParam3, "TAT_MIC_17", "singleplayer_overlays", "MK_016", "", iParam2, 320, 4);
					break;
				
				case 14:
					func_568(sParam0, iParam1, iParam3, "TAT_MIC_18", "singleplayer_overlays", "MK_017", "", iParam2, 140, 2);
					break;
				
				case 15:
					func_568(sParam0, iParam1, iParam3, "TAT_MIC_20", "singleplayer_overlays", "MK_019", "", iParam2, 350, 0);
					break;
				
				case 16:
					func_568(sParam0, iParam1, iParam3, "TAT_MIC_21", "singleplayer_overlays", "MK_020", "", iParam2, 350, 0);
					break;
				
				case 17:
					func_568(sParam0, iParam1, iParam3, "TAT_MIC_05", "singleplayer_overlays", "MK_004", "", iParam2, 120, 1);
					break;
				
				case 18:
					func_568(sParam0, iParam1, iParam3, "TAT_MIC_09", "singleplayer_overlays", "MK_008", "", iParam2, 99, 1);
					break;
				
				case 19:
					func_568(sParam0, iParam1, iParam3, "TAT_MIC_15", "singleplayer_overlays", "MK_014", "", iParam2, 400, 1);
					break;
				
				case 20:
					func_568(sParam0, iParam1, iParam3, "TAT_MIC_19", "singleplayer_overlays", "MK_018", "", iParam2, 420, 1);
					break;
				
				default:
					func_565(sParam0, iParam2, iParam1, 21);
					break;
			}
			break;
		
		case 1:
			switch (iParam1)
			{
				case 0:
					if (func_301() || func_300())
					{
						iVar1 = 450;
						if (func_303() && (func_567() || func_566()))
						{
							iVar1 = 0;
						}
						func_568(sParam0, iParam1, iParam3, "TAT_FRA_01", "singleplayer_overlays", "fr_000", "", iParam2, iVar1, 0);
					}
					break;
				
				case 1:
					func_568(sParam0, iParam1, iParam3, "TAT_FRA_02", "singleplayer_overlays", "fr_001", "", iParam2, 230, 0);
					break;
				
				case 2:
					func_568(sParam0, iParam1, iParam3, "TAT_FRA_03", "singleplayer_overlays", "fr_002", "", iParam2, 310, 0);
					break;
				
				case 3:
					func_568(sParam0, iParam1, iParam3, "TAT_FRA_04", "singleplayer_overlays", "fr_003", "", iParam2, 260, 0);
					break;
				
				case 4:
					func_568(sParam0, iParam1, iParam3, "TAT_FRA_07", "singleplayer_overlays", "fr_006", "", iParam2, 240, 2);
					break;
				
				case 5:
					func_568(sParam0, iParam1, iParam3, "TAT_FRA_08", "singleplayer_overlays", "fr_007", "", iParam2, 190, 3);
					break;
				
				case 6:
					func_568(sParam0, iParam1, iParam3, "TAT_FRA_09", "singleplayer_overlays", "fr_008", "", iParam2, 200, 2);
					break;
				
				case 7:
					func_568(sParam0, iParam1, iParam3, "TAT_FRA_10", "singleplayer_overlays", "fr_009", "", iParam2, 225, 0);
					break;
				
				case 8:
					func_568(sParam0, iParam1, iParam3, "TAT_FRA_12", "singleplayer_overlays", "fr_011", "", iParam2, 195, 0);
					break;
				
				case 9:
					func_568(sParam0, iParam1, iParam3, "TAT_FRA_13", "singleplayer_overlays", "fr_012", "", iParam2, 275, 2);
					break;
				
				case 10:
					func_568(sParam0, iParam1, iParam3, "TAT_FRA_14", "singleplayer_overlays", "fr_013", "", iParam2, 80, 0);
					break;
				
				case 11:
					func_568(sParam0, iParam1, iParam3, "TAT_FRA_15", "singleplayer_overlays", "fr_014", "", iParam2, 95, 0);
					break;
				
				case 12:
					func_568(sParam0, iParam1, iParam3, "TAT_FRA_16", "singleplayer_overlays", "fr_015", "", iParam2, 300, 3);
					break;
				
				case 13:
					func_568(sParam0, iParam1, iParam3, "TAT_FRA_17", "singleplayer_overlays", "fr_016", "", iParam2, 450, 3);
					break;
				
				case 14:
					func_568(sParam0, iParam1, iParam3, "TAT_FRA_18", "singleplayer_overlays", "fr_017", "", iParam2, 345, 3);
					break;
				
				case 15:
					func_568(sParam0, iParam1, iParam3, "TAT_FRA_19", "singleplayer_overlays", "fr_018", "", iParam2, 550, 0);
					break;
				
				case 16:
					func_568(sParam0, iParam1, iParam3, "TAT_FRA_20", "singleplayer_overlays", "fr_019", "", iParam2, 200, 0);
					break;
				
				case 17:
					func_568(sParam0, iParam1, iParam3, "TAT_FRA_21", "singleplayer_overlays", "fr_020", "", iParam2, 180, 0);
					break;
				
				case 18:
					func_568(sParam0, iParam1, iParam3, "TAT_FRA_22", "singleplayer_overlays", "fr_021", "", iParam2, 140, 0);
					break;
				
				case 19:
					func_568(sParam0, iParam1, iParam3, "TAT_FRA_24", "singleplayer_overlays", "fr_023", "", iParam2, 245, 0);
					break;
				
				case 20:
					break;
				
				case 21:
					func_568(sParam0, iParam1, iParam3, "TAT_FRA_26", "singleplayer_overlays", "fr_025", "", iParam2, 370, 0);
					break;
				
				case 22:
					func_568(sParam0, iParam1, iParam3, "TAT_FRA_27", "singleplayer_overlays", "fr_026", "", iParam2, 350, 0);
					break;
				
				case 23:
					func_568(sParam0, iParam1, iParam3, "TAT_FRA_28", "singleplayer_overlays", "fr_027", "", iParam2, 310, 0);
					break;
				
				case 24:
					func_568(sParam0, iParam1, iParam3, "TAT_FRA_29", "singleplayer_overlays", "fr_028", "", iParam2, 210, 0);
					break;
				
				case 25:
					func_568(sParam0, iParam1, iParam3, "TAT_FRA_30", "singleplayer_overlays", "fr_029", "", iParam2, 245, 0);
					break;
				
				case 26:
					func_568(sParam0, iParam1, iParam3, "TAT_FRA_31", "singleplayer_overlays", "fr_030", "", iParam2, 85, 0);
					break;
				
				case 27:
					func_568(sParam0, iParam1, iParam3, "TAT_FRA_32", "singleplayer_overlays", "fr_031", "", iParam2, 210, 0);
					break;
				
				case 28:
					func_568(sParam0, iParam1, iParam3, "TAT_FRA_33", "singleplayer_overlays", "fr_032", "", iParam2, 225, 0);
					break;
				
				case 29:
					func_568(sParam0, iParam1, iParam3, "TAT_FRA_34", "singleplayer_overlays", "fr_033", "", iParam2, 145, 0);
					break;
				
				case 30:
					func_568(sParam0, iParam1, iParam3, "TAT_FRA_35", "singleplayer_overlays", "fr_034", "", iParam2, 230, 0);
					break;
				
				case 31:
					func_568(sParam0, iParam1, iParam3, "TAT_FRA_36", "singleplayer_overlays", "fr_035", "", iParam2, 195, 0);
					break;
				
				case 32:
					func_568(sParam0, iParam1, iParam3, "TAT_FRA_37", "singleplayer_overlays", "fr_036", "", iParam2, 255, 0);
					break;
				
				case 33:
					func_568(sParam0, iParam1, iParam3, "TAT_FRA_38", "singleplayer_overlays", "fr_037", "", iParam2, 300, 0);
					break;
				
				case 34:
					func_568(sParam0, iParam1, iParam3, "TAT_FRA_40", "singleplayer_overlays", "fr_039", "", iParam2, 300, 0);
					break;
				
				case 35:
					func_568(sParam0, iParam1, iParam3, "TAT_FRA_05", "singleplayer_overlays", "fr_004", "", iParam2, 255, 1);
					break;
				
				case 36:
					func_568(sParam0, iParam1, iParam3, "TAT_FRA_06", "singleplayer_overlays", "fr_005", "", iParam2, 175, 1);
					break;
				
				case 37:
					func_568(sParam0, iParam1, iParam3, "TAT_FRA_11", "singleplayer_overlays", "fr_010", "", iParam2, 520, 1);
					break;
				
				case 38:
					func_568(sParam0, iParam1, iParam3, "TAT_FRA_23", "singleplayer_overlays", "fr_022", "", iParam2, 125, 1);
					break;
				
				case 39:
					func_568(sParam0, iParam1, iParam3, "TAT_FRA_39", "singleplayer_overlays", "fr_038", "", iParam2, 365, 1);
					break;
				
				default:
					func_565(sParam0, iParam2, iParam1, 40);
					break;
			}
			break;
		
		case 2:
			switch (iParam1)
			{
				case 0:
					func_568(sParam0, iParam1, iParam3, "TAT_TRV_01", "singleplayer_overlays", "tp_000", "", iParam2, 120, 0);
					break;
				
				case 1:
					func_568(sParam0, iParam1, iParam3, "TAT_TRV_02", "singleplayer_overlays", "tp_001", "", iParam2, 150, 3);
					break;
				
				case 2:
					func_568(sParam0, iParam1, iParam3, "TAT_TRV_03", "singleplayer_overlays", "tp_002", "", iParam2, 100, 0);
					break;
				
				case 3:
					func_568(sParam0, iParam1, iParam3, "TAT_TRV_04", "singleplayer_overlays", "tp_003", "", iParam2, 140, 0);
					break;
				
				case 4:
					func_568(sParam0, iParam1, iParam3, "TAT_TRV_05", "singleplayer_overlays", "tp_004", "", iParam2, 250, 0);
					break;
				
				case 5:
					if (func_301() || func_300())
					{
						iVar1 = 380;
						if (func_303() && (func_567() || func_566()))
						{
							iVar1 = 0;
						}
						func_568(sParam0, iParam1, iParam3, "TAT_TRV_06", "singleplayer_overlays", "tp_005", "", iParam2, iVar1, 3);
					}
					break;
				
				case 6:
					func_568(sParam0, iParam1, iParam3, "TAT_TRV_07", "singleplayer_overlays", "tp_006", "", iParam2, 120, 0);
					break;
				
				case 7:
					func_568(sParam0, iParam1, iParam3, "TAT_TRV_08", "singleplayer_overlays", "tp_007", "", iParam2, 250, 0);
					break;
				
				case 8:
					func_568(sParam0, iParam1, iParam3, "TAT_TRV_09", "singleplayer_overlays", "tp_008", "", iParam2, 50, 3);
					break;
				
				case 9:
					func_568(sParam0, iParam1, iParam3, "TAT_TRV_10", "singleplayer_overlays", "tp_009", "", iParam2, 135, 2);
					break;
				
				case 10:
					func_568(sParam0, iParam1, iParam3, "TAT_TRV_11", "singleplayer_overlays", "tp_010", "", iParam2, 245, 0);
					break;
				
				case 11:
					func_568(sParam0, iParam1, iParam3, "TAT_TRV_12", "singleplayer_overlays", "tp_011", "", iParam2, 280, 0);
					break;
				
				case 12:
					func_568(sParam0, iParam1, iParam3, "TAT_TRV_13", "singleplayer_overlays", "tp_012", "", iParam2, 65, 0);
					break;
				
				case 13:
					func_568(sParam0, iParam1, iParam3, "TAT_TRV_14", "singleplayer_overlays", "tp_013", "", iParam2, 150, 6);
					break;
				
				case 14:
					func_568(sParam0, iParam1, iParam3, "TAT_TRV_15", "singleplayer_overlays", "tp_014", "", iParam2, 200, 0);
					break;
				
				case 15:
					func_568(sParam0, iParam1, iParam3, "TAT_TRV_16", "singleplayer_overlays", "tp_015", "", iParam2, 145, 0);
					break;
				
				case 16:
					func_568(sParam0, iParam1, iParam3, "TAT_TRV_17", "singleplayer_overlays", "tp_016", "", iParam2, 290, 0);
					break;
				
				case 17:
					func_568(sParam0, iParam1, iParam3, "TAT_TRV_18", "singleplayer_overlays", "tp_017", "", iParam2, 350, 3);
					break;
				
				case 18:
					func_568(sParam0, iParam1, iParam3, "TAT_TRV_19", "singleplayer_overlays", "tp_018", "", iParam2, 70, 0);
					break;
				
				case 19:
					func_568(sParam0, iParam1, iParam3, "TAT_TRV_20", "singleplayer_overlays", "tp_019", "", iParam2, 180, 6);
					break;
				
				case 20:
					func_568(sParam0, iParam1, iParam3, "TAT_TRV_21", "singleplayer_overlays", "tp_020", "", iParam2, 230, 0);
					break;
				
				case 21:
					func_568(sParam0, iParam1, iParam3, "TAT_TRV_22", "singleplayer_overlays", "tp_021", "", iParam2, 200, 0);
					break;
				
				case 22:
					func_568(sParam0, iParam1, iParam3, "TAT_TRV_24", "singleplayer_overlays", "tp_023", "", iParam2, 240, 0);
					break;
				
				case 23:
					func_568(sParam0, iParam1, iParam3, "TAT_TRV_25", "singleplayer_overlays", "tp_024", "", iParam2, 195, 0);
					break;
				
				case 24:
					func_568(sParam0, iParam1, iParam3, "TAT_TRV_26", "singleplayer_overlays", "tp_025", "", iParam2, 225, 2);
					break;
				
				case 25:
					func_568(sParam0, iParam1, iParam3, "TAT_TRV_28", "singleplayer_overlays", "tp_027", "", iParam2, 175, 0);
					break;
				
				case 26:
					func_568(sParam0, iParam1, iParam3, "TAT_TRV_29", "singleplayer_overlays", "tp_028", "", iParam2, 65, 0);
					break;
				
				case 27:
					func_568(sParam0, iParam1, iParam3, "TAT_TRV_30", "singleplayer_overlays", "tp_029", "", iParam2, 50, 0);
					break;
				
				case 28:
					func_568(sParam0, iParam1, iParam3, "TAT_TRV_31", "singleplayer_overlays", "tp_030", "", iParam2, 70, 0);
					break;
				
				case 29:
					func_568(sParam0, iParam1, iParam3, "TAT_TRV_34", "singleplayer_overlays", "tp_033", "", iParam2, 70, 0);
					break;
				
				case 30:
					func_568(sParam0, iParam1, iParam3, "TAT_TRV_23", "singleplayer_overlays", "tp_022", "", iParam2, 500, 1);
					break;
				
				case 31:
					func_568(sParam0, iParam1, iParam3, "TAT_TRV_27", "singleplayer_overlays", "tp_026", "", iParam2, 300, 1);
					break;
				
				case 32:
					func_568(sParam0, iParam1, iParam3, "TAT_TRV_32", "singleplayer_overlays", "tp_031", "", iParam2, 190, 1);
					break;
				
				case 33:
					func_568(sParam0, iParam1, iParam3, "TAT_TRV_33", "singleplayer_overlays", "tp_032", "", iParam2, 129, 1);
					break;
				
				default:
					func_565(sParam0, iParam2, iParam1, 34);
					break;
			}
			break;
		
		case 3:
		case 4:
			switch (iParam1)
			{
				case 0:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_008", "multiplayer_overlays", "000", "", iParam2, system::round((system::to_float(20000) * Global_262145.f_2904)), 0);
					break;
				
				case 1:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_009", "multiplayer_overlays", "001", "", iParam2, system::round((system::to_float(1400) * Global_262145.f_2905)), 2);
					break;
				
				case 2:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_010", "multiplayer_overlays", "002", "", iParam2, system::round((system::to_float(9750) * Global_262145.f_2906)), 3);
					break;
				
				case 3:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_011", "multiplayer_overlays", "003", "", iParam2, system::round((system::to_float(2150) * Global_262145.f_2907)), 0);
					break;
				
				case 4:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_012", "multiplayer_overlays", "004", "", iParam2, system::round((system::to_float(10000) * Global_262145.f_2908)), 0);
					break;
				
				case 54:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_013", "multiplayer_overlays", "005", "", iParam2, system::round((system::to_float(12400) * Global_262145.f_2909)), 1);
					break;
				
				case 5:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_014", "multiplayer_overlays", "006", "", iParam2, system::round((system::to_float(3500) * Global_262145.f_2910)), 0);
					break;
				
				case 6:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_015", "multiplayer_overlays", "007", "", iParam2, system::round((system::to_float(4950) * Global_262145.f_2911)), 2);
					break;
				
				case 55:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_016", "multiplayer_overlays", "008", "", iParam2, system::round((system::to_float(1350) * Global_262145.f_2912)), 1);
					break;
				
				case 7:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_017", "multiplayer_overlays", "009", "", iParam2, system::round((system::to_float(1450) * Global_262145.f_2913)), 0);
					break;
				
				case 8:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_018", "multiplayer_overlays", "010", "", iParam2, system::round((system::to_float(2700) * Global_262145.f_2914)), 7);
					break;
				
				case 9:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_019", "multiplayer_overlays", "011", "rank", iParam2, system::round((system::to_float(1200) * Global_262145.f_2915)), 0);
					break;
				
				case 10:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_020", "multiplayer_overlays", "012", "rank", iParam2, system::round((system::to_float(1500) * Global_262145.f_2916)), 0);
					break;
				
				case 11:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_021", "multiplayer_overlays", "013", "rank", iParam2, system::round((system::to_float(2650) * Global_262145.f_2917)), 0);
					break;
				
				case 56:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_022", "multiplayer_overlays", "014", "", iParam2, system::round((system::to_float(1900) * Global_262145.f_2918)), 1);
					break;
				
				case 12:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_023", "multiplayer_overlays", "015", "", iParam2, system::round((system::to_float(4950) * Global_262145.f_2919)), 2);
					break;
				
				case 57:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_024", "multiplayer_overlays", "016", "", iParam2, system::round((system::to_float(2400) * Global_262145.f_2920)), 1);
					break;
				
				case 58:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_025", "multiplayer_overlays", "017", "", iParam2, system::round((system::to_float(5100) * Global_262145.f_2921)), 1);
					break;
				
				case 59:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_026", "multiplayer_overlays", "018", "", iParam2, system::round((system::to_float(7400) * Global_262145.f_2922)), 1);
					break;
				
				case 60:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_027", "multiplayer_overlays", "019", "", iParam2, system::round((system::to_float(10000) * Global_262145.f_2923)), 1);
					break;
				
				case 17:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_201", "multiplayer_overlays", "005", "", iParam2, system::round((system::to_float(2400) * Global_262145.f_2928)), 2);
					break;
				
				case 18:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_202", "multiplayer_overlays", "006", "", iParam2, system::round((system::to_float(5100) * Global_262145.f_2929)), 2);
					break;
				
				case 19:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_203", "multiplayer_overlays", "015", "", iParam2, system::round((system::to_float(3600) * Global_262145.f_2930)), 2);
					break;
				
				case 20:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_204", "multiplayer_overlays", "000", "", iParam2, system::round((system::to_float(10000) * Global_262145.f_2931)), 3);
					break;
				
				case 21:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_205", "multiplayer_overlays", "001", "", iParam2, system::round((system::to_float(12500) * Global_262145.f_2932)), 3);
					break;
				
				case 22:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_206", "multiplayer_overlays", "003", "", iParam2, system::round((system::to_float(10000) * Global_262145.f_2933)), 3);
					break;
				
				case 23:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_207", "multiplayer_overlays", "014", "", iParam2, system::round((system::to_float(5000) * Global_262145.f_2934)), 3);
					break;
				
				case 24:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_208", "multiplayer_overlays", "018", "", iParam2, system::round((system::to_float(7500) * Global_262145.f_2935)), 3);
					break;
				
				case 25:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_209", "multiplayer_overlays", "002", "", iParam2, system::round((system::to_float(3750) * Global_262145.f_2936)), 2);
					break;
				
				case 26:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_210", "multiplayer_overlays", "007", "", iParam2, system::round((system::to_float(3750) * Global_262145.f_2937)), 3);
					break;
				
				case 27:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_211", "multiplayer_overlays", "008", "", iParam2, system::round((system::to_float(4800) * Global_262145.f_2938)), 3);
					break;
				
				case 28:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_212", "multiplayer_overlays", "017", "", iParam2, system::round((system::to_float(3500) * Global_262145.f_2939)), 3);
					break;
				
				case 61:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_213", "multiplayer_overlays", "009", "", iParam2, system::round((system::to_float(12350) * Global_262145.f_2940)), 1);
					break;
				
				case 62:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_214", "multiplayer_overlays", "011", "", iParam2, system::round((system::to_float(1900) * Global_262145.f_2941)), 1);
					break;
				
				case 63:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_215", "multiplayer_overlays", "013", "", iParam2, system::round((system::to_float(4500) * Global_262145.f_2942)), 1);
					break;
				
				case 64:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_216", "multiplayer_overlays", "016", "", iParam2, system::round((system::to_float(12250) * Global_262145.f_2943)), 1);
					break;
				
				case 65:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_217", "multiplayer_overlays", "019", "", iParam2, system::round((system::to_float(12300) * Global_262145.f_2944)), 1);
					break;
				
				case 29:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_218", "multiplayer_overlays", "010", "", iParam2, system::round((system::to_float(2500) * Global_262145.f_2945)), 0);
					break;
				
				case 30:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_219", "multiplayer_overlays", "004", "", iParam2, system::round((system::to_float(10000) * Global_262145.f_2946)), 0);
					break;
				
				case 31:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_220", "multiplayer_overlays", "012", "", iParam2, system::round((system::to_float(10000) * Global_262145.f_2947)), 0);
					break;
				
				case 66:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_221", "multiplayer_overlays", "020", "", iParam2, system::round((system::to_float(7500) * Global_262145.f_2948)), 1);
					break;
				
				case 32:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_222", "multiplayer_overlays", "021", "", iParam2, system::round((system::to_float(5000) * Global_262145.f_2949)), 2);
					break;
				
				case 33:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_223", "multiplayer_overlays", "022", "", iParam2, system::round((system::to_float(7300) * Global_262145.f_2950)), 3);
					break;
				
				case 34:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_224", "multiplayer_overlays", "023", "", iParam2, system::round((system::to_float(7250) * Global_262145.f_2951)), 2);
					break;
				
				case 35:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_225", "multiplayer_overlays", "024", "", iParam2, system::round((system::to_float(11900) * Global_262145.f_2952)), 0);
					break;
				
				case 36:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_226", "multiplayer_overlays", "025", "", iParam2, system::round((system::to_float(2750) * Global_262145.f_2953)), 0);
					break;
				
				case 37:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_227", "multiplayer_overlays", "026", "", iParam2, system::round((system::to_float(1750) * Global_262145.f_2954)), 0);
					break;
				
				case 38:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_228", "multiplayer_overlays", "027", "", iParam2, system::round((system::to_float(7300) * Global_262145.f_2955)), 3);
					break;
				
				case 39:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_229", "multiplayer_overlays", "028", "", iParam2, system::round((system::to_float(3250) * Global_262145.f_2956)), 2);
					break;
				
				case 40:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_230", "multiplayer_overlays", "029", "", iParam2, system::round((system::to_float(1000) * Global_262145.f_2957)), 0);
					break;
				
				case 67:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_231", "multiplayer_overlays", "030", "", iParam2, system::round((system::to_float(5000) * Global_262145.f_2958)), 1);
					break;
				
				case 41:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_232", "multiplayer_overlays", "031", "", iParam2, system::round((system::to_float(7500) * Global_262145.f_2959)), 2);
					break;
				
				case 68:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_233", "multiplayer_overlays", "032", "", iParam2, system::round((system::to_float(5100) * Global_262145.f_2960)), 1);
					break;
				
				case 42:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_234", "multiplayer_overlays", "033", "", iParam2, system::round((system::to_float(5050) * Global_262145.f_2961)), 0);
					break;
				
				case 43:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_235", "multiplayer_overlays", "034", "", iParam2, system::round((system::to_float(2450) * Global_262145.f_2962)), 2);
					break;
				
				case 44:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_236", "multiplayer_overlays", "035", "", iParam2, system::round((system::to_float(4950) * Global_262145.f_2963)), 0);
					break;
				
				case 45:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_237", "multiplayer_overlays", "036", "", iParam2, system::round((system::to_float(5100) * Global_262145.f_2964)), 0);
					break;
				
				case 46:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_238", "multiplayer_overlays", "037", "", iParam2, system::round((system::to_float(12250) * Global_262145.f_2965)), 0);
					break;
				
				case 47:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_239", "multiplayer_overlays", "038", "", iParam2, system::round((system::to_float(1150) * Global_262145.f_2966)), 3);
					break;
				
				case 48:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_240", "multiplayer_overlays", "039", "", iParam2, system::round((system::to_float(7500) * Global_262145.f_2967)), 3);
					break;
				
				case 49:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_241", "multiplayer_overlays", "040", "", iParam2, system::round((system::to_float(7600) * Global_262145.f_2968)), 3);
					break;
				
				case 50:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_242", "multiplayer_overlays", "041", "", iParam2, system::round((system::to_float(2600) * Global_262145.f_2969)), 2);
					break;
				
				case 51:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_243", "multiplayer_overlays", "042", "", iParam2, system::round((system::to_float(2500) * Global_262145.f_2970)), 3);
					break;
				
				case 52:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_244", "multiplayer_overlays", "043", "", iParam2, system::round((system::to_float(7450) * Global_262145.f_2971)), 3);
					break;
				
				case 53:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_245", "multiplayer_overlays", "044", "", iParam2, system::round((system::to_float(7500) * Global_262145.f_2972)), 0);
					break;
				
				case 69:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_246", "multiplayer_overlays", "045", "", iParam2, system::round((system::to_float(10000) * Global_262145.f_2973)), 1);
					break;
				
				case 70:
					func_568(sParam0, iParam1, iParam3, "TAT_FM_247", "multiplayer_overlays", "047", "", iParam2, system::round((system::to_float(2500) * Global_262145.f_2974)), 2);
					break;
			}
			if (iVar0 == joaat("mp_m_freemode_01"))
			{
				switch (iParam1)
				{
					case 73:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "mp_fm_branding_001", "torsoDecal", iParam2, 100, 0);
						break;
					
					case 74:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "mp_fm_branding_002", "torsoDecal", iParam2, 100, 0);
						break;
					
					case 75:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "mp_fm_branding_003", "torsoDecal", iParam2, 100, 0);
						break;
					
					case 76:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "mp_fm_branding_004", "torsoDecal", iParam2, 100, 0);
						break;
					
					case 77:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "mp_fm_branding_005", "torsoDecal", iParam2, 100, 0);
						break;
					
					case 78:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "mp_fm_branding_006", "torsoDecal", iParam2, 100, 0);
						break;
					
					case 79:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "mp_fm_branding_009", "torsoDecal", iParam2, 100, 0);
						break;
					
					case 80:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "mp_fm_branding_013", "torsoDecal", iParam2, 100, 0);
						break;
					
					case 81:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "mp_fm_branding_014", "torsoDecal", iParam2, 100, 0);
						break;
					
					case 82:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "mp_fm_branding_015", "torsoDecal", iParam2, 100, 0);
						break;
					
					case 83:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "mp_fm_branding_016", "torsoDecal", iParam2, 100, 0);
						break;
					
					case 84:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "mp_fm_branding_019", "torsoDecal", iParam2, 100, 0);
						break;
					
					case 85:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "mp_fm_branding_020", "torsoDecal", iParam2, 100, 0);
						break;
					
					case 86:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "mp_fm_branding_036", "torsoDecal", iParam2, 100, 0);
						break;
					
					case 90:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "mp_fm_branding_017", "torsoDecal", iParam2, 100, 0);
						break;
					
					case 91:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "mp_fm_branding_018", "torsoDecal", iParam2, 100, 0);
						break;
					
					case 124:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "mp_fm_branding_046", "torsoDecal", iParam2, 100, 0);
						break;
					
					case 125:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "mp_fm_branding_045", "torsoDecal", iParam2, 100, 0);
						break;
					
					case 87:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "FM_Tshirt_Award_000", "torsoDecal", iParam2, system::round((system::to_float(100) * Global_262145.f_2975)), 0);
						break;
					
					case 88:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "FM_Tshirt_Award_001", "torsoDecal", iParam2, system::round((system::to_float(100) * Global_262145.f_2976)), 0);
						break;
					
					case 89:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "FM_Tshirt_Award_002", "torsoDecal", iParam2, system::round((system::to_float(100) * Global_262145.f_2977)), 0);
						break;
					
					case 93:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "NG_M_Hair_001", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 94:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "NG_M_Hair_002", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 95:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "NG_M_Hair_003", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 96:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "NG_M_Hair_004", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 97:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "NG_M_Hair_005", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 98:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "NG_M_Hair_006", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 99:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "NG_M_Hair_007", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 100:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "NG_M_Hair_008", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 101:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "NG_M_Hair_009", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 102:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "NG_M_Hair_010", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 103:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "NG_M_Hair_011", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 104:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "NG_M_Hair_012", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 105:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "NG_M_Hair_013", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 106:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "NG_M_Hair_014", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 107:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "NG_M_Hair_015", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 108:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "NGBea_M_Hair_000", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 109:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "NGBea_M_Hair_001", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 110:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "NGBus_M_Hair_000", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 111:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "NGBus_M_Hair_001", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 112:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "NGHip_M_Hair_000", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 113:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "NGHip_M_Hair_001", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 114:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "NGInd_M_Hair_000", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 115:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "not_in_use", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 116:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "not_in_use", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 117:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "not_in_use", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 123:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "mpBeach_overlays", "FM_Hair_Fuzz", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 13:
						func_568(sParam0, iParam1, iParam3, "TAT_FM_100", "multiplayer_overlays", "000_A", "crewLogo", iParam2, system::round((system::to_float(5000) * Global_262145.f_2924)), 0);
						break;
					
					case 14:
						func_568(sParam0, iParam1, iParam3, "TAT_FM_101", "multiplayer_overlays", "000_B", "crewLogo", iParam2, system::round((system::to_float(10000) * Global_262145.f_2925)), 0);
						break;
					
					case 15:
						func_568(sParam0, iParam1, iParam3, "TAT_FMM_CLB", "multiplayer_overlays", "000_C", "crewLogo", iParam2, system::round((system::to_float(10000) * Global_262145.f_2926)), 2);
						break;
					
					case 16:
						func_568(sParam0, iParam1, iParam3, "TAT_FM_100", "multiplayer_overlays", "000_D", "crewLogo", iParam2, system::round((system::to_float(5000) * Global_262145.f_2927)), 0);
						break;
					
					case 71:
						func_568(sParam0, iParam1, iParam3, "TAT_FM_101", "multiplayer_overlays", "000_E", "crewLogo", iParam2, system::round((system::to_float(10000) * Global_262145.f_2927)), 0);
						break;
					
					case 72:
						func_568(sParam0, iParam1, iParam3, "TAT_FMM_CLB", "multiplayer_overlays", "000_F", "crewLogo", iParam2, system::round((system::to_float(10000) * Global_262145.f_2927)), 0);
						break;
				}
			}
			else if (iVar0 == joaat("mp_f_freemode_01"))
			{
				switch (iParam1)
				{
					case 73:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "mp_fm_branding_027_f", "torsoDecal", iParam2, 100, 0);
						break;
					
					case 74:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "mp_fm_branding_028_f", "torsoDecal", iParam2, 100, 0);
						break;
					
					case 75:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "mp_fm_branding_034_f", "torsoDecal", iParam2, 100, 0);
						break;
					
					case 76:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "mp_fm_branding_036_f", "torsoDecal", iParam2, 100, 0);
						break;
					
					case 77:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "mp_fm_branding_048", "torsoDecal", iParam2, 100, 0);
						break;
					
					case 78:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "mp_fm_branding_052", "torsoDecal", iParam2, 100, 0);
						break;
					
					case 79:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "mp_fm_branding_053", "torsoDecal", iParam2, 100, 0);
						break;
					
					case 80:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "mp_fm_branding_054", "torsoDecal", iParam2, 100, 0);
						break;
					
					case 81:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "mp_fm_branding_055", "torsoDecal", iParam2, 100, 0);
						break;
					
					case 82:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "mp_fm_branding_056", "torsoDecal", iParam2, 100, 0);
						break;
					
					case 83:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "mp_fm_branding_058", "torsoDecal", iParam2, 100, 0);
						break;
					
					case 84:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "mp_fm_branding_067", "torsoDecal", iParam2, 100, 0);
						break;
					
					case 85:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "mp_fm_branding_068", "torsoDecal", iParam2, 100, 0);
						break;
					
					case 92:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "mp_fm_branding_051", "torsoDecal", iParam2, 100, 0);
						break;
					
					case 87:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "FM_Tshirt_Award_F_000", "torsoDecal", iParam2, system::round((system::to_float(100) * Global_262145.f_2975)), 0);
						break;
					
					case 88:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "FM_Tshirt_Award_F_001", "torsoDecal", iParam2, system::round((system::to_float(100) * Global_262145.f_2976)), 0);
						break;
					
					case 89:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "FM_Tshirt_Award_F_002", "torsoDecal", iParam2, system::round((system::to_float(100) * Global_262145.f_2977)), 0);
						break;
					
					case 93:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "NG_F_Hair_001", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 94:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "NG_F_Hair_002", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 95:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "NG_F_Hair_003", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 96:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "NG_F_Hair_004", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 97:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "NG_F_Hair_005", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 98:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "NG_F_Hair_006", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 99:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "NG_F_Hair_007", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 100:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "NG_F_Hair_008", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 101:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "NG_F_Hair_009", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 102:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "NG_F_Hair_010", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 103:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "NG_F_Hair_011", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 104:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "NG_F_Hair_012", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 105:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "NG_F_Hair_013", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 106:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "NG_F_Hair_014", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 107:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "NG_F_Hair_015", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 108:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "NGBea_F_Hair_000", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 109:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "NGBea_F_Hair_001", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 110:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "NGBus_F_Hair_000", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 111:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "NGBus_F_Hair_001", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 112:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "NGHip_F_Hair_000", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 113:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "NGHip_F_Hair_001", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 114:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "NGInd_F_Hair_000", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 115:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "not_in_use", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 116:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "not_in_use", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 117:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "not_in_use", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 118:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "not_in_use", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 119:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "not_in_use", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 120:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "not_in_use", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 121:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "not_in_use", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 122:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "multiplayer_overlays", "not_in_use", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 123:
						func_568(sParam0, iParam1, iParam3, "NO_LABEL", "mpBeach_overlays", "FM_Hair_Fuzz", "hairOverlay", iParam2, 100, 0);
						break;
					
					case 13:
						func_568(sParam0, iParam1, iParam3, "TAT_FM_100", "multiplayer_overlays", "000_A", "crewLogo", iParam2, system::round((system::to_float(5000) * Global_262145.f_2924)), 0);
						break;
					
					case 14:
						func_568(sParam0, iParam1, iParam3, "TAT_FM_100", "multiplayer_overlays", "000_B", "crewLogo", iParam2, system::round((system::to_float(5000) * Global_262145.f_2925)), 0);
						break;
					
					case 15:
						func_568(sParam0, iParam1, iParam3, "TAT_FM_101", "multiplayer_overlays", "000_C", "crewLogo", iParam2, system::round((system::to_float(10000) * Global_262145.f_2926)), 2);
						break;
					
					case 16:
						func_568(sParam0, iParam1, iParam3, "TAT_FM_101", "multiplayer_overlays", "000_D", "crewLogo", iParam2, system::round((system::to_float(10000) * Global_262145.f_2927)), 0);
						break;
					}
			}
			break;
	}
	if ((iParam2 == 3 || iParam2 == 4) && iParam1 >= 129)
	{
		func_565(sParam0, iParam2, iParam1, 129);
	}
	if (iParam4 == 22)
	{
		sParam0->f_7 *= 2;
	}
	return sParam0->f_11 != -1;
}

void func_565(char* sParam0, int iParam1, int iParam2, int iParam3)//Position - 0x3664C
{
	int iVar0;
	int iVar1;
	struct<8> Var2;
	
	iVar0 = (iParam2 - iParam3);
	iVar1 = dlc1::_0x278F76C3B0A8F109(iParam1);
	if (iVar1 > 0 && iVar0 < iVar1)
	{
		if (dlc1::_0xFF56381874F82086(iParam1, iVar0, &Var2))
		{
			if (!dlc1::_is_dlc_data_empty(Var2))
			{
				sParam0->f_11 = iParam2;
				MemCopy(sParam0, {Var2.f_7}, 4);
				sParam0->f_5 = Var2.f_3;
				sParam0->f_4 = Var2.f_2;
				sParam0->f_8 = Var2.f_6;
				sParam0->f_6 = iParam1;
				sParam0->f_7 = Var2.f_4;
				sParam0->f_9 = (iParam2 / 32);
				sParam0->f_10 = (iParam2 % 32);
				sParam0->f_12 = Var2.f_5;
			}
		}
	}
}

bool func_566()//Position - 0x366DE
{
	int iVar0;
	int iVar1;
	int iVar2;
	int iVar3;
	int iVar4;
	
	if (gameplay::is_bit_set(Global_25, 5))
	{
		if (gameplay::is_bit_set(Global_25, 1) || gameplay::is_bit_set(Global_25, 3))
		{
			return true;
		}
		else
		{
			return false;
		}
	}
	if (stats::stat_get_int(joaat("sp_unlock_exclus_content"), &iVar0, -1))
	{
		if (gameplay::is_bit_set(iVar0, 5))
		{
			if (gameplay::is_bit_set(iVar0, 1) || gameplay::is_bit_set(iVar0, 3))
			{
				return true;
			}
			else
			{
				return false;
			}
		}
	}
	if (stats::stat_slot_is_loaded(0))
	{
		if (Global_139116.f_3)
		{
			iVar2 = joaat("mpply_plat_up_lb_check");
			if (stats::stat_get_int(iVar2, &iVar1, -1))
			{
				if (gameplay::is_bit_set(iVar1, 5))
				{
					return true;
				}
			}
		}
	}
	if (gameplay::_0x5AA3BEFA29F03AD4())
	{
		iVar3 = gameplay::get_profile_setting(866);
		if (gameplay::is_bit_set(iVar3, 1) || gameplay::is_bit_set(iVar3, 3))
		{
			return true;
		}
	}
	if (network::network_is_signed_in())
	{
		if (network::_network_are_ros_available())
		{
			if (network::_0x91B87C55093DE351())
			{
				stats::stat_get_int(joaat("sp_unlock_exclus_content"), &iVar4, -1);
				gameplay::set_bit(&iVar4, 1);
				gameplay::set_bit(&iVar4, 3);
				gameplay::set_bit(&iVar4, 5);
				gameplay::set_bit(&Global_25, 1);
				gameplay::set_bit(&Global_25, 3);
				gameplay::set_bit(&Global_25, 5);
				stats::stat_set_int(joaat("sp_unlock_exclus_content"), iVar4, 1);
				if (gameplay::_0x5AA3BEFA29F03AD4())
				{
					iVar4 = gameplay::get_profile_setting(866);
					gameplay::set_bit(&iVar4, 1);
					gameplay::set_bit(&iVar4, 3);
					stats::_0xDAC073C7901F9E15(iVar4);
				}
				return true;
			}
		}
	}
	return false;
}

bool func_567()//Position - 0x36832
{
	int iVar0;
	int iVar1;
	int iVar2;
	int iVar3;
	
	if (gameplay::is_bit_set(Global_25, 6))
	{
		if (gameplay::is_bit_set(Global_25, 2) || gameplay::is_bit_set(Global_25, 4))
		{
			return true;
		}
		else
		{
			return false;
		}
	}
	if (stats::stat_get_int(joaat("sp_unlock_exclus_content"), &iVar0, -1))
	{
		if (gameplay::is_bit_set(iVar0, 6))
		{
			if (gameplay::is_bit_set(iVar0, 2) || gameplay::is_bit_set(iVar0, 4))
			{
				return true;
			}
			else
			{
				return false;
			}
		}
	}
	if (stats::stat_slot_is_loaded(0))
	{
		if (Global_139116.f_3)
		{
			iVar2 = joaat("mpply_plat_up_lb_check");
			if (stats::stat_get_int(iVar2, &iVar1, -1))
			{
				if (gameplay::is_bit_set(iVar1, 8))
				{
					return true;
				}
			}
		}
	}
	if (gameplay::_0x5AA3BEFA29F03AD4())
	{
		iVar3 = gameplay::get_profile_setting(866);
		if (gameplay::is_bit_set(iVar3, 2) || gameplay::is_bit_set(iVar3, 4))
		{
			return true;
		}
	}
	return false;
}

void func_568(char* sParam0, int iParam1, int iParam2, char* sParam3, char* sParam4, char* sParam5, char* sParam6, int iParam7, int iParam8, int iParam9)//Position - 0x36903
{
	char cVar0[32];
	
	sParam0->f_11 = iParam1;
	StringCopy(sParam0, sParam3, 16);
	sParam0->f_4 = gameplay::get_hash_key(sParam4);
	sParam0->f_5 = gameplay::get_hash_key(sParam5);
	sParam0->f_8 = gameplay::get_hash_key(sParam6);
	sParam0->f_6 = iParam7;
	sParam0->f_7 = iParam8;
	sParam0->f_9 = (iParam1 / 32);
	sParam0->f_10 = (iParam1 % 32);
	sParam0->f_12 = iParam9;
	if (entity::does_entity_exist(iParam2) && !ped::is_ped_injured(iParam2))
	{
		if ((sParam0->f_6 == 0 || sParam0->f_6 == 1) || sParam0->f_6 == 2)
		{
		}
		else if (sParam0->f_6 == 3 || sParam0->f_6 == 4)
		{
			StringCopy(&cVar0, "", 32);
			if (((((sParam0->f_11 == 13 || sParam0->f_11 == 14) || sParam0->f_11 == 15) || sParam0->f_11 == 16) || sParam0->f_11 == 71) || sParam0->f_11 == 72)
			{
				StringConCat(&cVar0, "FM_", 32);
				StringConCat(&cVar0, "CREW_", 32);
				if (entity::get_entity_model(iParam2) == joaat("mp_m_freemode_01"))
				{
					StringConCat(&cVar0, "M_", 32);
				}
				else
				{
					StringConCat(&cVar0, "F_", 32);
				}
				StringConCat(&cVar0, sParam5, 32);
			}
			else if (gameplay::are_strings_equal(sParam6, "torsoDecal") || gameplay::are_strings_equal(sParam6, "hairOverlay"))
			{
				StringCopy(&cVar0, sParam5, 32);
			}
			else
			{
				if (((((((((((((((((((sParam0->f_11 == 0 || sParam0->f_11 == 1) || sParam0->f_11 == 2) || sParam0->f_11 == 4) || sParam0->f_11 == 3) || sParam0->f_11 == 54) || sParam0->f_11 == 5) || sParam0->f_11 == 6) || sParam0->f_11 == 55) || sParam0->f_11 == 7) || sParam0->f_11 == 8) || sParam0->f_11 == 9) || sParam0->f_11 == 10) || sParam0->f_11 == 11) || sParam0->f_11 == 56) || sParam0->f_11 == 12) || sParam0->f_11 == 57) || sParam0->f_11 == 58) || sParam0->f_11 == 59) || sParam0->f_11 == 60)
				{
					StringConCat(&cVar0, "FM_Tat_Award_", 32);
				}
				else
				{
					StringConCat(&cVar0, "FM_Tat_", 32);
				}
				if (entity::get_entity_model(iParam2) == joaat("mp_m_freemode_01") || sParam0->f_11 == 20)
				{
					StringConCat(&cVar0, "M_", 32);
				}
				else
				{
					StringConCat(&cVar0, "F_", 32);
				}
				StringConCat(&cVar0, sParam5, 32);
			}
			sParam0->f_5 = gameplay::get_hash_key(&cVar0);
			if (ped::_get_tattoo_zone(sParam0->f_4, sParam0->f_5) == 7)
			{
				sParam0->f_11 = -1;
			}
		}
	}
}

int func_569(int iParam0, int iParam1)//Position - 0x36BB8
{
	int iVar0;
	int iVar1;
	
	if (iParam0 == -1)
	{
		return false;
	}
	iVar0 = func_571(iParam0, iParam1);
	iVar1 = func_570(iParam0);
	if (iVar1 < 0 || iVar1 >= 32)
	{
		return false;
	}
	return gameplay::is_bit_set(iVar0, iVar1);
}

int func_570(int iParam0)//Position - 0x36BFA
{
	return (iParam0 % 32);
}

var func_571(int iParam0, int iParam1)//Position - 0x36C07
{
	var uVar0;
	
	uVar0 = func_241(func_572(iParam0), iParam1, 0);
	return uVar0;
}

int func_572(int iParam0)//Position - 0x36C20
{
	int iVar0;
	int iVar1;
	
	iVar0 = iParam0;
	iVar1 = func_575(iVar0);
	if ((func_574() == 0 || func_573() == 0) || (func_574() == 999 && func_573() == 999))
	{
		switch (iVar1)
		{
			case 0:
				return 1043;
				break;
			
			case 1:
				return 1044;
				break;
			
			case 2:
				return 1045;
				break;
			
			case 3:
				return 1046;
				break;
			
			case 4:
				return 1047;
				break;
			
			case 5:
				return 1048;
				break;
			
			case 6:
				return 1482;
				break;
			
			case 7:
				return 1483;
				break;
			
			case 8:
				return 1484;
				break;
			
			case 9:
				return 1485;
				break;
			
			case 10:
				return 1941;
				break;
			
			case 11:
				return 1942;
				break;
			
			case 12:
				return 1943;
				break;
			
			case 13:
				return 2405;
				break;
			
			case 14:
				return 2425;
				break;
			
			case 15:
				return 2428;
				break;
			
			case 16:
				return 2431;
				break;
			
			case 17:
				return 2594;
				break;
			
			case 18:
				return 2597;
				break;
			
			case 19:
				return 2600;
				break;
			
			case 20:
				return 3756;
				break;
			
			case 21:
				return 3759;
				break;
			
			case 22:
				return 3834;
				break;
			
			case 23:
				return 3837;
				break;
			
			case 24:
				return 3840;
				break;
			
			case 25:
				return 3843;
				break;
			
			case 26:
				return 5334;
			
			case 27:
				return 5337;
				break;
			}
	}
	return 6022;
}

var func_573()//Position - 0x36E0F
{
	return Global_25186;
}

var func_574()//Position - 0x36E1A
{
	return Global_25185;
}

int func_575(int iParam0)//Position - 0x36E25
{
	return (iParam0 / 32);
}

bool func_576(int iParam0)//Position - 0x36E32
{
	int iVar0;
	int iVar1;
	int iVar2;
	int iVar3;
	int iVar4;
	int iVar5;
	int iVar6;
	
	if (!ped::is_ped_injured(iParam0))
	{
		if (entity::get_entity_model(iParam0) == joaat("mp_m_freemode_01"))
		{
			iVar0 = ped::get_ped_drawable_variation(iParam0, 11);
			iVar2 = func_241(1751, -1, 0);
			if (iVar0 > 15)
			{
				iVar3 = func_618(iParam0, 11, -1);
				if (iVar3 >= 237)
				{
					iVar4 = func_604(joaat("mp_m_freemode_01"), iVar3, 11, 3);
					if ((dlc1::_0x341DE7ED1D2A1BFD(iVar4, 1113995558, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1467682989, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 362493804, 0))
					{
						if (iVar2 == 671171671)
						{
							return true;
						}
					}
					else if (dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1393156190, 0) && !dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1237899132, 0))
					{
						return true;
					}
				}
			}
		}
		else if (entity::get_entity_model(iParam0) == joaat("mp_f_freemode_01"))
		{
			iVar0 = ped::get_ped_drawable_variation(iParam0, 11);
			iVar1 = ped::get_ped_texture_variation(iParam0, 11);
			iVar2 = func_241(1751, -1, 0);
			if (iVar0 == 3)
			{
				if (iVar1 == 14)
				{
					return true;
				}
			}
			else if (iVar0 > 15)
			{
				iVar5 = func_618(iParam0, 11, -1);
				if (iVar5 >= 256)
				{
					iVar6 = func_604(joaat("mp_f_freemode_01"), iVar5, 11, 4);
					if ((dlc1::_0x341DE7ED1D2A1BFD(iVar6, 1113995558, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar6, -1467682989, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar6, 362493804, 0))
					{
						if (iVar2 == 1911627074)
						{
							return true;
						}
					}
					else if (dlc1::_0x341DE7ED1D2A1BFD(iVar6, -1393156190, 0) && !dlc1::_0x341DE7ED1D2A1BFD(iVar6, -1237899132, 0))
					{
						return true;
					}
				}
			}
		}
	}
	return false;
}

bool func_577(int iParam0)//Position - 0x36FD4
{
	int iVar0;
	
	if (network::network_is_activity_session())
	{
		iVar0 = Global_1589933[player::player_id() /*601*/].f_95.f_28;
		if (iVar0 != -1 && iVar0 < 4)
		{
			if (func_578(iVar0) != -1 && func_578(iVar0) != 0)
			{
				return true;
			}
		}
	}
	if (!ped::is_ped_injured(iParam0))
	{
		if (entity::get_entity_model(iParam0) == joaat("mp_m_freemode_01"))
		{
			if (ped::get_ped_drawable_variation(iParam0, 11) == 15)
			{
				return true;
			}
		}
	}
	return false;
}

int func_578(int iParam0)//Position - 0x37050
{
	if (iParam0 <= -1 || iParam0 >= 4)
	{
		return -1;
	}
	return Global_2443860.f_5859[iParam0];
}

bool func_579(int iParam0)//Position - 0x37078
{
	int iVar0;
	int iVar1;
	int iVar2;
	int iVar3;
	int iVar4;
	int iVar5;
	int iVar6;
	int iVar7;
	int iVar8;
	int iVar9;
	int iVar10;
	int iVar11;
	int iVar12;
	int iVar13;
	
	if (!ped::is_ped_injured(iParam0))
	{
		if (entity::get_entity_model(iParam0) == joaat("mp_m_freemode_01"))
		{
			iVar0 = ped::get_ped_drawable_variation(iParam0, 11);
			iVar1 = ped::get_ped_texture_variation(iParam0, 11);
			switch (iVar0)
			{
				case 0:
					switch (iVar1)
					{
						case 1:
						case 3:
						case 5:
						case 7:
						case 4:
						case 8:
						case 11:
							return true;
							break;
					}
					break;
				
				case 1:
					switch (iVar1)
					{
						case 3:
						case 5:
						case 6:
						case 8:
						case 4:
						case 14:
							return true;
							break;
						
						case 1:
						case 7:
						case 12:
							iVar2 = func_581(joaat("mp_m_freemode_01"), 11, func_618(iParam0, 11, -1), 0);
							if (((iVar1 == 1 && iVar2 == 88) || (iVar1 == 7 && iVar2 == 89)) || (iVar1 == 12 && iVar2 == 87))
							{
								return true;
							}
							break;
					}
					break;
				
				case 2:
					switch (iVar1)
					{
						case 9:
							return true;
							break;
					}
					break;
				
				case 5:
					if (func_569(13, -1))
					{
						return true;
					}
					else if (func_569(14, -1))
					{
						return true;
					}
					else if (func_569(15, -1))
					{
						return true;
					}
					else if (func_569(16, -1))
					{
						return true;
					}
					else if (func_569(71, -1))
					{
						return true;
					}
					else if (func_569(72, -1))
					{
					}
					else if (func_82(player::player_id(), 1) && Global_1618089[player::player_id() /*390*/].f_11.f_68.f_21 != 0)
					{
						return true;
					}
					break;
				
				default:
					if (iVar0 > 15)
					{
						iVar3 = func_618(iParam0, 11, -1);
						if (iVar3 >= 237)
						{
							iVar4 = func_604(joaat("mp_m_freemode_01"), iVar3, 11, 3);
							if ((dlc1::_0x341DE7ED1D2A1BFD(iVar4, 1113995558, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1467682989, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 362493804, 0))
							{
								return true;
							}
						}
					}
					break;
			}
			iVar0 = ped::get_ped_drawable_variation(iParam0, 8);
			iVar1 = ped::get_ped_texture_variation(iParam0, 8);
			switch (iVar0)
			{
				case 0:
					switch (iVar1)
					{
						case 1:
						case 3:
						case 5:
						case 7:
						case 4:
						case 8:
						case 11:
							return true;
							break;
					}
					break;
				
				case 1:
					switch (iVar1)
					{
						case 3:
						case 5:
						case 6:
						case 8:
						case 4:
						case 14:
						case 1:
						case 7:
						case 12:
							return true;
							break;
					}
					break;
				
				case 2:
					switch (iVar1)
					{
						case 1:
						case 3:
						case 5:
						case 7:
						case 4:
						case 8:
						case 11:
							return true;
							break;
					}
					break;
				
				case 14:
					switch (iVar1)
					{
						case 3:
						case 5:
						case 6:
						case 8:
						case 4:
						case 14:
						case 1:
						case 7:
						case 12:
							return true;
							break;
					}
					break;
				
				default:
					if (iVar0 > 15)
					{
						iVar5 = func_618(iParam0, 8, -1);
						if (iVar5 >= 241)
						{
							iVar6 = func_604(joaat("mp_m_freemode_01"), iVar5, 8, 3);
							if ((dlc1::_0x341DE7ED1D2A1BFD(iVar6, 1113995558, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar6, -1467682989, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar6, 362493804, 0))
							{
								return true;
							}
						}
					}
					break;
			}
		}
		else if (entity::get_entity_model(iParam0) == joaat("mp_f_freemode_01"))
		{
			iVar0 = ped::get_ped_drawable_variation(iParam0, 11);
			iVar1 = ped::get_ped_texture_variation(iParam0, 11);
			switch (iVar0)
			{
				case 0:
					switch (iVar1)
					{
						case 1:
						case 2:
							return true;
							break;
						
						case 7:
						case 4:
						case 9:
							iVar7 = func_581(joaat("mp_f_freemode_01"), 11, func_618(iParam0, 11, -1), 0);
							if (((iVar1 == 7 && iVar7 == 88) || (iVar1 == 4 && iVar7 == 89)) || (iVar1 == 9 && iVar7 == 87))
							{
								return true;
							}
							break;
					}
					break;
				
				case 2:
					switch (iVar1)
					{
						case 0:
						case 1:
						case 2:
						case 3:
						case 4:
							return true;
							break;
					}
					break;
				
				case 3:
					switch (iVar1)
					{
						case 14:
							return true;
							break;
					}
					break;
				
				case 11:
					switch (iVar1)
					{
						case 10:
						case 11:
						case 15:
							return true;
							break;
					}
					break;
				
				default:
					if (iVar0 > 15)
					{
						iVar8 = func_618(iParam0, 11, -1);
						if (iVar8 >= 256)
						{
							iVar9 = func_604(joaat("mp_f_freemode_01"), iVar8, 11, 4);
							if ((dlc1::_0x341DE7ED1D2A1BFD(iVar9, 1113995558, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar9, -1467682989, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar9, 362493804, 0))
							{
								return true;
							}
						}
					}
					break;
			}
			iVar0 = ped::get_ped_drawable_variation(iParam0, 8);
			iVar1 = ped::get_ped_texture_variation(iParam0, 8);
			switch (iVar0)
			{
				case 0:
					switch (iVar1)
					{
						case 1:
						case 2:
							return true;
							break;
						
						case 7:
						case 4:
						case 9:
							iVar10 = func_581(joaat("mp_f_freemode_01"), 11, func_618(iParam0, 11, -1), 0);
							if (((iVar1 == 7 && iVar10 == 88) || (iVar1 == 4 && iVar10 == 89)) || (iVar1 == 9 && iVar10 == 87))
							{
								return true;
							}
							break;
					}
					break;
				
				case 1:
					switch (iVar1)
					{
						case 1:
						case 2:
							return true;
							break;
						
						case 7:
						case 4:
						case 9:
							iVar11 = func_581(joaat("mp_f_freemode_01"), 11, func_618(iParam0, 11, -1), 0);
							if (((iVar1 == 7 && iVar11 == 88) || (iVar1 == 4 && iVar11 == 89)) || (iVar1 == 9 && iVar11 == 87))
							{
								return true;
							}
							break;
					}
					break;
				
				case 2:
					switch (iVar1)
					{
						case 1:
						case 3:
						case 5:
						case 7:
						case 4:
						case 8:
						case 11:
							return true;
							break;
					}
					break;
				
				case 11:
					switch (iVar1)
					{
						case 10:
						case 11:
						case 15:
							return true;
							break;
					}
					break;
				
				case 14:
					switch (iVar1)
					{
						case 3:
						case 5:
						case 6:
						case 8:
						case 4:
						case 14:
						case 1:
						case 7:
						case 12:
							return true;
							break;
					}
					break;
				
				default:
					if (iVar0 > 15)
					{
						iVar12 = func_618(iParam0, 8, -1);
						if (iVar12 >= 136)
						{
							iVar13 = func_604(joaat("mp_f_freemode_01"), iVar12, 8, 4);
							if ((dlc1::_0x341DE7ED1D2A1BFD(iVar13, 1113995558, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, -1467682989, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar13, 362493804, 0))
							{
								return true;
							}
						}
					}
					break;
				}
		}
		if (func_580(iParam0))
		{
			return true;
		}
	}
	return false;
}

bool func_580(int iParam0)//Position - 0x3784A
{
	struct<5> Var0;
	int iVar17;
	int iVar18;
	int iVar19;
	
	iVar17 = entity::get_entity_model(iParam0) == joaat("mp_m_freemode_01");
	iVar18 = ped::get_ped_drawable_variation(iParam0, 11);
	iVar19 = ped::get_ped_texture_variation(iParam0, 11);
	if (iVar17)
	{
		dlc1::get_shop_ped_component(103980309, &Var0);
	}
	else
	{
		dlc1::get_shop_ped_component(-31075674, &Var0);
	}
	if (iVar18 == Var0.f_3 && iVar19 == Var0.f_4)
	{
		return true;
	}
	return false;
}

int func_581(int iParam0, int iParam1, int iParam2, int iParam3)//Position - 0x378AD
{
	int iVar0;
	int iVar1;
	int iVar2;
	int iVar3;
	var uVar4;
	int iVar5;
	int iVar6;
	int iVar7;
	int iVar8;
	int iVar9;
	var uVar10;
	int iVar11;
	int iVar12;
	int iVar13;
	int iVar14;
	int iVar15;
	var uVar16;
	int iVar17;
	int iVar18;
	int iVar19;
	int iVar20;
	int iVar21;
	var uVar22;
	int iVar23;
	
	if (iParam0 == joaat("mp_m_freemode_01"))
	{
		if (iParam1 == 11)
		{
			if (iParam2 == 1)
			{
				return 73;
			}
			else if (iParam2 == 3)
			{
				return 74;
			}
			else if (iParam2 == 5)
			{
				return 75;
			}
			else if (iParam2 == 7)
			{
				return 76;
			}
			else if (iParam2 == 4)
			{
				return 77;
			}
			else if (iParam2 == 8)
			{
				return 78;
			}
			else if (iParam2 == 11)
			{
				return 79;
			}
			else if (iParam2 == 19)
			{
				return 80;
			}
			else if (iParam2 == 21)
			{
				return 81;
			}
			else if (iParam2 == 22)
			{
				return 82;
			}
			else if (iParam2 == 24)
			{
				return 83;
			}
			else if (iParam2 == 20)
			{
				return 84;
			}
			else if (iParam2 == 30)
			{
				return 85;
			}
			else if (iParam2 == 23)
			{
				if (func_585(89, -1))
				{
					return 89;
				}
			}
			else if (iParam2 == 17)
			{
				if (func_585(88, -1))
				{
					return 88;
				}
			}
			else if (iParam2 == 28)
			{
				if (func_585(87, -1))
				{
					return 87;
				}
			}
			else if (iParam2 == 41)
			{
				return 86;
			}
			else if (iParam2 >= 237)
			{
				iVar0 = func_604(iParam0, iParam2, 11, 3);
				if (iVar0 != -1)
				{
					if (dlc1::_0x341DE7ED1D2A1BFD(iVar0, 1113995558, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, 362493804, 0))
					{
						iVar1 = dlc1::_get_num_forced_components(iVar0);
						iVar2 = 0;
						while (iVar2 < iVar1)
						{
							dlc1::get_forced_component(iVar0, iVar2, &iVar3, &uVar4, &iVar5);
							if (iVar5 == 10)
							{
								if (iVar3 != 0 && iVar3 != 1849449579)
								{
									return func_582(iVar3, 3);
								}
								else
								{
									return uVar4;
								}
							}
							iVar2++;
						}
					}
					else if (dlc1::_0x341DE7ED1D2A1BFD(iVar0, -1467682989, 0))
					{
						if (iParam3 == 0)
						{
							iParam3 = func_241(1751, -1, 0);
						}
						return func_582(iParam3, 3);
					}
				}
			}
		}
		else if (iParam1 == 8)
		{
			if (iParam2 == 1)
			{
				return 73;
			}
			else if (iParam2 == 3)
			{
				return 74;
			}
			else if (iParam2 == 5)
			{
				return 75;
			}
			else if (iParam2 == 7)
			{
				return 76;
			}
			else if (iParam2 == 4)
			{
				return 77;
			}
			else if (iParam2 == 8)
			{
				return 78;
			}
			else if (iParam2 == 11)
			{
				return 79;
			}
			else if (iParam2 == 23)
			{
				if (func_585(89, -1))
				{
					return 89;
				}
			}
			else if (iParam2 == 17)
			{
				if (func_585(88, -1))
				{
					return 88;
				}
			}
			else if (iParam2 == 28)
			{
				if (func_585(87, -1))
				{
					return 87;
				}
			}
			else if (iParam2 == 33)
			{
				return 73;
			}
			else if (iParam2 == 35)
			{
				return 74;
			}
			else if (iParam2 == 37)
			{
				return 75;
			}
			else if (iParam2 == 39)
			{
				return 76;
			}
			else if (iParam2 == 36)
			{
				return 77;
			}
			else if (iParam2 == 40)
			{
				return 78;
			}
			else if (iParam2 == 43)
			{
				return 79;
			}
			else if (iParam2 == 19)
			{
				return 80;
			}
			else if (iParam2 == 21)
			{
				return 81;
			}
			else if (iParam2 == 22)
			{
				return 82;
			}
			else if (iParam2 == 24)
			{
				return 83;
			}
			else if (iParam2 == 20)
			{
				return 84;
			}
			else if (iParam2 == 30)
			{
				return 85;
			}
			else if (iParam2 == 227)
			{
				return 80;
			}
			else if (iParam2 == 229)
			{
				return 81;
			}
			else if (iParam2 == 230)
			{
				return 82;
			}
			else if (iParam2 == 232)
			{
				return 83;
			}
			else if (iParam2 == 228)
			{
				return 84;
			}
			else if (iParam2 == 238)
			{
				return 85;
			}
			else if (iParam2 == 231)
			{
				if (func_585(89, -1))
				{
					return 89;
				}
			}
			else if (iParam2 == 225)
			{
				if (func_585(88, -1))
				{
					return 88;
				}
			}
			else if (iParam2 == 236)
			{
				if (func_585(87, -1))
				{
					return 87;
				}
			}
			else if (iParam2 >= 241)
			{
				iVar6 = func_604(iParam0, iParam2, 8, 3);
				if (iVar6 != -1)
				{
					if (dlc1::_0x341DE7ED1D2A1BFD(iVar6, 1113995558, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar6, 362493804, 0))
					{
						iVar7 = dlc1::_get_num_forced_components(iVar6);
						iVar8 = 0;
						while (iVar8 < iVar7)
						{
							dlc1::get_forced_component(iVar6, iVar8, &iVar9, &uVar10, &iVar11);
							if (iVar11 == 10)
							{
								if (iVar9 != 0 && iVar9 != 1849449579)
								{
									return func_582(iVar9, 3);
								}
								else
								{
									return uVar10;
								}
							}
							iVar8++;
						}
					}
					else if (dlc1::_0x341DE7ED1D2A1BFD(iVar6, -1467682989, 0))
					{
						if (iParam3 == 0)
						{
							iParam3 = func_241(1751, -1, 0);
						}
						return func_582(iParam3, 3);
					}
				}
			}
		}
	}
	else if (iParam0 == joaat("mp_f_freemode_01"))
	{
		if (iParam1 == 11)
		{
			if (iParam2 == 1)
			{
				return 75;
			}
			else if (iParam2 == 2)
			{
				return 77;
			}
			else if (iParam2 == 4)
			{
				if (func_585(89, -1))
				{
					return 89;
				}
			}
			else if (iParam2 == 7)
			{
				if (func_585(88, -1))
				{
					return 88;
				}
			}
			else if (iParam2 == 9)
			{
				if (func_585(87, -1))
				{
					return 87;
				}
			}
			else if (iParam2 == 32)
			{
				return 78;
			}
			else if (iParam2 == 33)
			{
				return 79;
			}
			else if (iParam2 == 34)
			{
				return 80;
			}
			else if (iParam2 == 35)
			{
				return 81;
			}
			else if (iParam2 == 36)
			{
				return 82;
			}
			else if (iParam2 == 62)
			{
				return 76;
			}
			else if (iParam2 == 63)
			{
				return 83;
			}
			else if (iParam2 == 186)
			{
				return 84;
			}
			else if (iParam2 == 187)
			{
				return 85;
			}
			else if (iParam2 == 191)
			{
				return 74;
			}
			else if (iParam2 >= 256)
			{
				iVar12 = func_604(iParam0, iParam2, 11, 4);
				if (iVar12 != -1)
				{
					if (dlc1::_0x341DE7ED1D2A1BFD(iVar12, 1113995558, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar12, 362493804, 0))
					{
						iVar13 = dlc1::_get_num_forced_components(iVar12);
						iVar14 = 0;
						while (iVar14 < iVar13)
						{
							dlc1::get_forced_component(iVar12, iVar14, &iVar15, &uVar16, &iVar17);
							if (iVar17 == 10)
							{
								if (iVar15 != 0 && iVar15 != 1849449579)
								{
									return func_582(iVar15, 4);
								}
								else
								{
									return uVar16;
								}
							}
							iVar14++;
						}
					}
					else if (dlc1::_0x341DE7ED1D2A1BFD(iVar12, -1467682989, 0))
					{
						if (iParam3 == 0)
						{
							iParam3 = func_241(1751, -1, 0);
						}
						return func_582(iParam3, 4);
					}
				}
			}
		}
		else if (iParam1 == 8)
		{
			if (iParam2 == 1)
			{
				return 75;
			}
			else if (iParam2 == 2)
			{
				return 77;
			}
			else if (iParam2 == 4)
			{
				if (func_585(89, -1))
				{
					return 89;
				}
			}
			else if (iParam2 == 7)
			{
				if (func_585(88, -1))
				{
					return 88;
				}
			}
			else if (iParam2 == 9)
			{
				if (func_585(87, -1))
				{
					return 87;
				}
			}
			else if (iParam2 == 17)
			{
				return 75;
			}
			else if (iParam2 == 18)
			{
				return 77;
			}
			else if (iParam2 == 20)
			{
				if (func_585(89, -1))
				{
					return 89;
				}
			}
			else if (iParam2 == 23)
			{
				if (func_585(88, -1))
				{
					return 88;
				}
			}
			else if (iParam2 == 25)
			{
				if (func_585(87, -1))
				{
					return 87;
				}
			}
			else if (iParam2 == 81)
			{
				return 84;
			}
			else if (iParam2 == 82)
			{
				return 85;
			}
			else if (iParam2 == 86)
			{
				return 74;
			}
			else if (iParam2 >= 136)
			{
				iVar18 = func_604(iParam0, iParam2, 8, 4);
				if (iVar18 != -1)
				{
					if (dlc1::_0x341DE7ED1D2A1BFD(iVar18, 1113995558, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar18, 362493804, 0))
					{
						iVar19 = dlc1::_get_num_forced_components(iVar18);
						iVar20 = 0;
						while (iVar20 < iVar19)
						{
							dlc1::get_forced_component(iVar18, iVar20, &iVar21, &uVar22, &iVar23);
							if (iVar23 == 10)
							{
								if (iVar21 != 0 && iVar21 != 1849449579)
								{
									return func_582(iVar21, 4);
								}
								else
								{
									return uVar22;
								}
							}
							iVar20++;
						}
					}
					else if (dlc1::_0x341DE7ED1D2A1BFD(iVar18, -1467682989, 0))
					{
						if (iParam3 == 0)
						{
							iParam3 = func_241(1751, -1, 0);
						}
						return func_582(iParam3, 4);
					}
				}
			}
		}
	}
	return -1;
}

int func_582(int iParam0, int iParam1)//Position - 0x3810E
{
	var uVar0;
	int iVar1;
	int iVar2;
	struct<4> Var3;
	
	if (iParam1 == 3)
	{
		if (func_584(iParam0, &uVar0))
		{
			return uVar0;
		}
	}
	else if (iParam1 == 4)
	{
		if (func_583(iParam0, &uVar0))
		{
			return uVar0;
		}
	}
	iVar2 = dlc1::_0x278F76C3B0A8F109(iParam1);
	iVar1 = 0;
	while (iVar1 < iVar2)
	{
		if (dlc1::_0xFF56381874F82086(iParam1, iVar1, &Var3))
		{
			if (iParam0 == Var3.f_3)
			{
				return (129 + iVar1);
			}
		}
		iVar1++;
	}
	return -1;
}

bool func_583(int iParam0, var uParam1)//Position - 0x3817F
{
	int iVar0;
	
	iVar0 = -1;
	switch (iParam0)
	{
		case 497719213:
			iVar0 = 0;
			break;
		
		case -1575660783:
			iVar0 = 1;
			break;
		
		case -720631087:
			iVar0 = 2;
			break;
		
		case 2143620721:
			iVar0 = 3;
			break;
		
		case 2049754822:
			iVar0 = 4;
			break;
		
		case -1293749076:
			iVar0 = 5;
			break;
		
		case -1571403599:
			iVar0 = 6;
			break;
		
		case -711123906:
			iVar0 = 7;
			break;
		
		case 152801037:
			iVar0 = 8;
			break;
		
		case -1324018585:
			iVar0 = 9;
			break;
		
		case -481068829:
			iVar0 = 10;
			break;
		
		case -1486741196:
			iVar0 = 11;
			break;
		
		case 939412564:
			iVar0 = 12;
			break;
		
		case 1187637739:
			iVar0 = 13;
			break;
		
		case -1092669445:
			iVar0 = 14;
			break;
		
		case 1659530389:
			iVar0 = 15;
			break;
		
		case 996857777:
			iVar0 = 16;
			break;
		
		case 817476859:
			iVar0 = 17;
			break;
		
		case -17051268:
			iVar0 = 18;
			break;
		
		case 1293774274:
			iVar0 = 19;
			break;
		
		case 567121699:
			iVar0 = 20;
			break;
		
		case -1179302160:
			iVar0 = 21;
			break;
		
		case -949165473:
			iVar0 = 22;
			break;
		
		case 354975189:
			iVar0 = 23;
			break;
		
		case -489121482:
			iVar0 = 24;
			break;
		
		case -1636954018:
			iVar0 = 25;
			break;
		
		case -1277740240:
			iVar0 = 26;
			break;
		
		case -1047439708:
			iVar0 = 27;
			break;
		
		case -814026121:
			iVar0 = 28;
			break;
		
		case 1732157956:
			iVar0 = 29;
			break;
		
		case 1024282018:
			iVar0 = 30;
			break;
		
		case -2099685063:
			iVar0 = 31;
			break;
		
		case 1483932781:
			iVar0 = 32;
			break;
		
		case 1406925627:
			iVar0 = 33;
			break;
		
		case 698590923:
			iVar0 = 34;
			break;
		
		case 1869001296:
			iVar0 = 35;
			break;
		
		case 1169907450:
			iVar0 = 36;
			break;
		
		case 717727185:
			iVar0 = 37;
			break;
		
		case 1058197095:
			iVar0 = 38;
			break;
		
		case 434115743:
			iVar0 = 39;
			break;
		
		case 665432114:
			iVar0 = 40;
			break;
		
		case 1198780358:
			iVar0 = 41;
			break;
		
		case -2128873857:
			iVar0 = 42;
			break;
		
		case -148547780:
			iVar0 = 43;
			break;
		
		case 1819096318:
			iVar0 = 44;
			break;
		
		case 1051122042:
			iVar0 = 45;
			break;
		
		case -1350495965:
			iVar0 = 46;
			break;
		
		case -150859291:
			iVar0 = 47;
			break;
		
		case -1186193045:
			iVar0 = 48;
			break;
		
		case -1206837515:
			iVar0 = 49;
			break;
		
		case -1513653662:
			iVar0 = 50;
			break;
		
		case -543948331:
			iVar0 = 51;
			break;
		
		case -175559233:
			iVar0 = 52;
			break;
		
		case -131530830:
			iVar0 = 53;
			break;
		
		case -1816086813:
			iVar0 = 54;
			break;
		
		case -2113006722:
			iVar0 = 55;
			break;
		
		case -1101886458:
			iVar0 = 56;
			break;
		
		case -1398740829:
			iVar0 = 57;
			break;
		
		case 1939258347:
			iVar0 = 58;
			break;
		
		case -1004151544:
			iVar0 = 59;
			break;
		
		case -822873436:
			iVar0 = 60;
			break;
		
		case -1445222284:
			iVar0 = 61;
			break;
		
		case -63910623:
			iVar0 = 62;
			break;
		
		case 101834979:
			iVar0 = 63;
			break;
		
		case -673512330:
			iVar0 = 64;
			break;
		
		case -423845319:
			iVar0 = 65;
			break;
		
		case 963561372:
			iVar0 = 66;
			break;
		
		case 1384839636:
			iVar0 = 67;
			break;
		
		case -1712879828:
			iVar0 = 68;
			break;
		
		case -951688727:
			iVar0 = 69;
			break;
		
		case -1132639145:
			iVar0 = 70;
			break;
		
		case -513632731:
			iVar0 = 71;
			break;
		
		case 263680718:
			iVar0 = 72;
			break;
		
		case 36296627:
			iVar0 = 73;
			break;
		
		case 800240324:
			iVar0 = 74;
			break;
		
		case 614243480:
			iVar0 = 75;
			break;
		
		case 1408138043:
			iVar0 = 76;
			break;
		
		case 957564293:
			iVar0 = 77;
			break;
		
		case -1614279399:
			iVar0 = 78;
			break;
		
		case -1451286393:
			iVar0 = 79;
			break;
		
		case -1758069771:
			iVar0 = 80;
			break;
		
		case -1225475222:
			iVar0 = 81;
			break;
		
		case -1992892433:
			iVar0 = 82;
			break;
		
		case -1838157215:
			iVar0 = 83;
			break;
		
		case 1688803028:
			iVar0 = 84;
			break;
		
		case 1844259164:
			iVar0 = 85;
			break;
		
		case 1070943545:
			iVar0 = 86;
			break;
		
		case 1234460855:
			iVar0 = 87;
			break;
		
		case -753798460:
			iVar0 = 88;
			break;
		
		case -1453351072:
			iVar0 = 89;
			break;
		
		case -1308053326:
			iVar0 = 90;
			break;
		
		case -2083859401:
			iVar0 = 91;
			break;
		
		case 1586137527:
			iVar0 = 92;
			break;
		
		case 1884564810:
			iVar0 = 93;
			break;
		
		case 1092964089:
			iVar0 = 94;
			break;
		
		case 1264280421:
			iVar0 = 95;
			break;
		
		case 496601058:
			iVar0 = 96;
			break;
		
		case 861352797:
			iVar0 = 97;
			break;
		
		case 1418328330:
			iVar0 = 98;
			break;
		
		case 1784554566:
			iVar0 = 99;
			break;
	}
	switch (iParam0)
	{
		case 2081736627:
			iVar0 = 100;
			break;
		
		case -1897271971:
			iVar0 = 101;
			break;
		
		case -1666742056:
			iVar0 = 102;
			break;
		
		case -1282165072:
			iVar0 = 103;
			break;
		
		case -1052880379:
			iVar0 = 104;
			break;
		
		case -745474390:
			iVar0 = 105;
			break;
		
		case -515796465:
			iVar0 = 106;
			break;
		
		case -811206225:
			iVar0 = 107;
			break;
		
		case -1586815686:
			iVar0 = 108;
			break;
		
		case -1423429452:
			iVar0 = 109;
			break;
		
		case -1697869815:
			iVar0 = 110;
			break;
		
		case -1470846183:
			iVar0 = 111;
			break;
		
		case 1093884035:
			iVar0 = 112;
			break;
		
		case 861256904:
			iVar0 = 113;
			break;
		
		case 603201029:
			iVar0 = 114;
			break;
		
		case 1991426949:
			iVar0 = 115;
			break;
		
		case -135838228:
			iVar0 = 116;
			break;
		
		case 121616864:
			iVar0 = 117;
			break;
		
		case -834517002:
			iVar0 = 118;
			break;
		
		case -403932342:
			iVar0 = 119;
			break;
		
		case -1179738417:
			iVar0 = 120;
			break;
		
		case -1022250603:
			iVar0 = 121;
			break;
		
		case 558694786:
			iVar0 = 122;
			break;
		
		case 569279177:
			iVar0 = 123;
			break;
		
		case 544309199:
			iVar0 = 124;
			break;
		
		case 1190448341:
			iVar0 = 125;
			break;
		
		case 885139568:
			iVar0 = 126;
			break;
		
		case -1845683606:
			iVar0 = 127;
			break;
		
		case -1555317497:
			iVar0 = 128;
			break;
		
		case 1704673699:
			iVar0 = 129;
			break;
		
		case 1993401358:
			iVar0 = 130;
			break;
		
		case 1227065524:
			iVar0 = 131;
			break;
		
		case -533227790:
			iVar0 = 132;
			break;
		
		case 309459814:
			iVar0 = 133;
			break;
		
		case 77815753:
			iVar0 = 134;
			break;
		
		case -280939203:
			iVar0 = 135;
			break;
		
		case 1246882601:
			iVar0 = 136;
			break;
		
		case 314833986:
			iVar0 = 137;
			break;
		
		case -25635924:
			iVar0 = 138;
			break;
		
		case 351567983:
			iVar0 = 139;
			break;
		
		case -2027428652:
			iVar0 = 140;
			break;
		
		case 962677064:
			iVar0 = 141;
			break;
		
		case -105475497:
			iVar0 = 142;
			break;
		
		case 766835283:
			iVar0 = 143;
			break;
		
		case 471979821:
			iVar0 = 144;
			break;
		
		case 1122542778:
			iVar0 = 145;
			break;
		
		case 815530017:
			iVar0 = 146;
			break;
		
		case 1157900525:
			iVar0 = 147;
			break;
		
		case 859243859:
			iVar0 = 148;
			break;
		
		case 2032013608:
			iVar0 = 149;
			break;
		
		case 1471663700:
			iVar0 = 150;
			break;
		
		case -1679206722:
			iVar0 = 151;
			break;
		
		case -309397848:
			iVar0 = 152;
			break;
		
		case 534666054:
			iVar0 = 153;
			break;
		
		case -769376301:
			iVar0 = 154;
			break;
		
		case 1531057961:
			iVar0 = 155;
			break;
		
		case 1986678137:
			iVar0 = 156;
			break;
		
		case 2142789653:
			iVar0 = 157;
			break;
		
		case 7463306:
			iVar0 = 158;
			break;
		
		case 308053343:
			iVar0 = 159;
			break;
		
		case 753842819:
			iVar0 = 160;
			break;
		
		case 1052794406:
			iVar0 = 161;
			break;
		
		case -695726661:
			iVar0 = 162;
			break;
		
		case -1001821890:
			iVar0 = 163;
			break;
		
		case -1425459522:
			iVar0 = 164;
			break;
		
		case 1412653072:
			iVar0 = 165;
			break;
		
		case 1163510365:
			iVar0 = 166;
			break;
		
		case 933242602:
			iVar0 = 167;
			break;
		
		case -1347021116:
			iVar0 = 168;
			break;
		
		case 1297354841:
			iVar0 = 169;
			break;
		
		case -839806574:
			iVar0 = 170;
			break;
		
		case -542100209:
			iVar0 = 171;
			break;
		
		case 1472218269:
			iVar0 = 172;
			break;
		
		case 1783196079:
			iVar0 = 173;
			break;
		
		case 1007062314:
			iVar0 = 174;
			break;
		
		case -870732522:
			iVar0 = 175;
			break;
		
		case 547542627:
			iVar0 = 176;
			break;
		
		case 863894553:
			iVar0 = 177;
			break;
		
		case -2099242332:
			iVar0 = 178;
			break;
		
		case -1860028632:
			iVar0 = 179;
			break;
		
		case -560967165:
			iVar0 = 180;
			break;
		
		case -59437904:
			iVar0 = 181;
			break;
		
		case 757067269:
			iVar0 = 182;
			break;
		
		case 455625238:
			iVar0 = 183;
			break;
		
		case -1750514914:
			iVar0 = 184;
			break;
		
		case -983982466:
			iVar0 = 185;
			break;
		
		case -232228837:
			iVar0 = 186;
			break;
		
		case 1558269323:
			iVar0 = 187;
			break;
		
		case 2070579873:
			iVar0 = 188;
			break;
		
		case -1203181916:
			iVar0 = 189;
			break;
		
		case -2112587204:
			iVar0 = 190;
			break;
		
		case 1942412705:
			iVar0 = 191;
			break;
		
		case -1846437386:
			iVar0 = 192;
			break;
		
		case 61799795:
			iVar0 = 193;
			break;
		
		case -1388490611:
			iVar0 = 194;
			break;
		
		case -1627212776:
			iVar0 = 195;
			break;
		
		case 1525246127:
			iVar0 = 196;
			break;
		
		case -11341151:
			iVar0 = 197;
			break;
		
		case 516055815:
			iVar0 = 198;
			break;
		
		case -1034642040:
			iVar0 = 199;
			break;
	}
	switch (iParam0)
	{
		case 1022637316:
			iVar0 = 200;
			break;
		
		case -1677156418:
			iVar0 = 201;
			break;
		
		case -1130213300:
			iVar0 = 202;
			break;
		
		case 104062694:
			iVar0 = 203;
			break;
		
		case 869579299:
			iVar0 = 204;
			break;
		
		case 1201332655:
			iVar0 = 205;
			break;
		
		case 1028967715:
			iVar0 = 206;
			break;
		
		case -1651634800:
			iVar0 = 207;
			break;
		
		case -892278763:
			iVar0 = 208;
			break;
		
		case -1032005779:
			iVar0 = 209;
			break;
		
		case -255675400:
			iVar0 = 210;
			break;
		
		case 1890137027:
			iVar0 = 211;
			break;
		
		case -406805808:
			iVar0 = 212;
			break;
		
		case -592540500:
			iVar0 = 213;
			break;
		
		case 205417419:
			iVar0 = 214;
			break;
		
		case -2127276619:
			iVar0 = 215;
			break;
		
		case -1362677538:
			iVar0 = 216;
			break;
		
		case -1549722990:
			iVar0 = 217;
			break;
		
		case 3495990:
			iVar0 = 218;
			break;
		
		case -285526590:
			iVar0 = 219;
			break;
		
		case 1907377338:
			iVar0 = 220;
			break;
		
		case 2136399879:
			iVar0 = 221;
			break;
		
		case 1568410532:
			iVar0 = 222;
			break;
		
		case 1068879892:
			iVar0 = 223;
			break;
		
		case -1592750929:
			iVar0 = 224;
			break;
		
		case 772896404:
			iVar0 = 225;
			break;
		
		case -1999229916:
			iVar0 = 226;
			break;
		
		case -744701520:
			iVar0 = 227;
			break;
		
		case -425039925:
			iVar0 = 228;
			break;
		
		case -798409911:
			iVar0 = 229;
			break;
		
		case 1379974898:
			iVar0 = 230;
			break;
		
		case -1681436154:
			iVar0 = 231;
			break;
		
		case -1486919370:
			iVar0 = 232;
			break;
		
		case 2014677667:
			iVar0 = 233;
			break;
		
		case 325697857:
			iVar0 = 234;
			break;
		
		case -1188819501:
			iVar0 = 235;
			break;
		
		case -1765193438:
			iVar0 = 236;
			break;
		
		case -1416269126:
			iVar0 = 237;
			break;
		
		case -2111365154:
			iVar0 = 238;
			break;
		
		case -1880573087:
			iVar0 = 239;
			break;
		
		case 1421296887:
			iVar0 = 240;
			break;
		
		case 1655562468:
			iVar0 = 241;
			break;
		
		case 946048080:
			iVar0 = 242;
			break;
		
		case 1188768063:
			iVar0 = 243;
			break;
		
		case 498456313:
			iVar0 = 244;
			break;
		
		case 323007907:
			iVar0 = 245;
			break;
		
		case -1325371100:
			iVar0 = 246;
			break;
		
		case -829313978:
			iVar0 = 247;
			break;
		
		case -530624543:
			iVar0 = 248;
			break;
		
		case -299046020:
			iVar0 = 249;
			break;
		
		case 1812260650:
			iVar0 = 250;
			break;
		
		case 2043511487:
			iVar0 = 251;
			break;
		
		case -1753235933:
			iVar0 = 252;
			break;
		
		case -1525589690:
			iVar0 = 253;
			break;
		
		case 31003408:
			iVar0 = 254;
			break;
		
		case -1864998224:
			iVar0 = 255;
			break;
		
		case -2140814897:
			iVar0 = 256;
			break;
		
		case 223468453:
			iVar0 = 257;
			break;
		
		case -83970305:
			iVar0 = 258;
			break;
		
		case -406843262:
			iVar0 = 259;
			break;
		
		case -954740942:
			iVar0 = 260;
			break;
		
		case -1675526854:
			iVar0 = 261;
			break;
		
		case 2111717556:
			iVar0 = 262;
			break;
		
		case -415395003:
			iVar0 = 263;
			break;
		
		case 427521984:
			iVar0 = 264;
			break;
		
		case 1570178485:
			iVar0 = 265;
			break;
		
		case -1619850916:
			iVar0 = 266;
			break;
		
		case -713067148:
			iVar0 = 267;
			break;
		
		case 946477614:
			iVar0 = 268;
			break;
		
		case -1423343701:
			iVar0 = 269;
			break;
		
		case 445931457:
			iVar0 = 270;
			break;
		
		case 678558588:
			iVar0 = 271;
			break;
		
		case -854631987:
			iVar0 = 272;
			break;
		
		case -1707871209:
			iVar0 = 273;
			break;
		
		case 1675446188:
			iVar0 = 274;
			break;
		
		case 1911627074:
			iVar0 = 275;
			break;
		
		case -607391498:
			iVar0 = 276;
			break;
		
		case -1544625218:
			iVar0 = 277;
			break;
		
		case 1185175875:
			iVar0 = 278;
			break;
		
		case 155591269:
			iVar0 = 279;
			break;
		
		case -1057958846:
			iVar0 = 280;
			break;
		
		case -1853795495:
			iVar0 = 281;
			break;
		
		case -1860485560:
			iVar0 = 282;
			break;
		
		case 499288642:
			iVar0 = 283;
			break;
		
		case -7887054:
			iVar0 = 284;
			break;
		
		case -1553041502:
			iVar0 = 285;
			break;
		
		case -1080591445:
			iVar0 = 286;
			break;
		
		case -741060436:
			iVar0 = 287;
			break;
		
		case 645634644:
			iVar0 = 288;
			break;
		
		case -1096728771:
			iVar0 = 289;
			break;
		
		case 503268386:
			iVar0 = 290;
			break;
		
		case 109804153:
			iVar0 = 291;
			break;
		
		case 1410910279:
			iVar0 = 292;
			break;
		
		case 1501700194:
			iVar0 = 293;
			break;
		
		case -1793199216:
			iVar0 = 294;
			break;
		
		case 1405944575:
			iVar0 = 295;
			break;
		
		case 1731382556:
			iVar0 = 296;
			break;
		
		case 1743809026:
			iVar0 = 297;
			break;
		
		case 1589237530:
			iVar0 = 298;
			break;
		
		case -1558441108:
			iVar0 = 299;
			break;
	}
	switch (iParam0)
	{
		case 793815980:
			iVar0 = 303;
			break;
		
		case 87277824:
			iVar0 = 304;
			break;
		
		case 1305470790:
			iVar0 = 305;
			break;
		
		case 252924758:
			iVar0 = 306;
			break;
		
		case 1043745875:
			iVar0 = 307;
			break;
		
		case 24304530:
			iVar0 = 308;
			break;
		
		case 582246031:
			iVar0 = 309;
			break;
		
		case 1840225396:
			iVar0 = 310;
			break;
		
		case -47863515:
			iVar0 = 311;
			break;
		
		case 26968202:
			iVar0 = 312;
			break;
		
		case 1720638120:
			iVar0 = 313;
			break;
		
		case 1372737856:
			iVar0 = 314;
			break;
		
		case -675719916:
			iVar0 = 315;
			break;
		
		case -610888268:
			iVar0 = 316;
			break;
		
		case -129698248:
			iVar0 = 317;
			break;
		
		case 1060644905:
			iVar0 = 318;
			break;
		
		case 776078819:
			iVar0 = 319;
			break;
		
		case -1069464482:
			iVar0 = 320;
			break;
		
		case -1342875239:
			iVar0 = 321;
			break;
		
		case 1967892405:
			iVar0 = 322;
			break;
		
		case 642864781:
			iVar0 = 323;
			break;
		
		case 1270860039:
			iVar0 = 324;
			break;
		
		case -1290780406:
			iVar0 = 325;
			break;
		
		case 1127641545:
			iVar0 = 326;
			break;
		
		case -1221948530:
			iVar0 = 327;
			break;
		
		case 1954153055:
			iVar0 = 328;
			break;
		
		case 543727307:
			iVar0 = 329;
			break;
		
		case -1806626643:
			iVar0 = 330;
			break;
		
		case 1146362323:
			iVar0 = 331;
			break;
		
		case -1918158051:
			iVar0 = 332;
			break;
		
		case -1835082731:
			iVar0 = 333;
			break;
		
		case 1935907419:
			iVar0 = 334;
			break;
		
		case 961997868:
			iVar0 = 335;
			break;
		
		case -415246024:
			iVar0 = 336;
			break;
		
		case -2003529037:
			iVar0 = 337;
			break;
		
		case -1272951326:
			iVar0 = 338;
			break;
		
		case 837851491:
			iVar0 = 339;
			break;
		
		case -64649653:
			iVar0 = 340;
			break;
		
		case 1997623301:
			iVar0 = 341;
			break;
		
		case 1177835340:
			iVar0 = 342;
			break;
		
		case -1261787835:
			iVar0 = 343;
			break;
		
		case -965491494:
			iVar0 = 344;
			break;
		
		case 939374190:
			iVar0 = 345;
			break;
		
		case 149461503:
			iVar0 = 346;
			break;
		
		case -1117498985:
			iVar0 = 347;
			break;
		
		case 1184468662:
			iVar0 = 348;
			break;
		
		case -772488648:
			iVar0 = 349;
			break;
		
		case -1399171334:
			iVar0 = 350;
			break;
		
		case -963164512:
			iVar0 = 351;
			break;
		
		case -1284517669:
			iVar0 = 352;
			break;
		
		case 1613773443:
			iVar0 = 353;
			break;
		
		case 1963092516:
			iVar0 = 354;
			break;
		
		case -878642668:
			iVar0 = 355;
			break;
		
		case -1618544925:
			iVar0 = 356;
			break;
		
		case 1185417232:
			iVar0 = 357;
			break;
		
		case -1649044153:
			iVar0 = 358;
			break;
		
		case -1293956525:
			iVar0 = 359;
			break;
		
		case -84085370:
			iVar0 = 360;
			break;
		
		case -943861479:
			iVar0 = 361;
			break;
		
		case -1355455834:
			iVar0 = 362;
			break;
		
		case 711764191:
			iVar0 = 363;
			break;
		
		case 41616632:
			iVar0 = 364;
			break;
		
		case -2053984264:
			iVar0 = 365;
			break;
		
		case -522832741:
			iVar0 = 366;
			break;
		
		case 711940316:
			iVar0 = 367;
			break;
		
		case -1512107004:
			iVar0 = 368;
			break;
		
		case -273305505:
			iVar0 = 369;
			break;
		
		case -779122930:
			iVar0 = 370;
			break;
		
		case 565678099:
			iVar0 = 371;
			break;
		
		case 2130135469:
			iVar0 = 372;
			break;
		
		case 2142072717:
			iVar0 = 373;
			break;
		
		case -636638153:
			iVar0 = 374;
			break;
		
		case 289539239:
			iVar0 = 375;
			break;
		
		case -1040822561:
			iVar0 = 376;
			break;
		
		case 217486581:
			iVar0 = 377;
			break;
		
		case -2147244302:
			iVar0 = 378;
			break;
		
		case 830186237:
			iVar0 = 379;
			break;
		
		case -1902384566:
			iVar0 = 380;
			break;
		
		case 1471583453:
			iVar0 = 381;
			break;
		
		case 2007332931:
			iVar0 = 382;
			break;
		
		case 1104156493:
			iVar0 = 383;
			break;
		
		case 616400258:
			iVar0 = 384;
			break;
		
		case 511243162:
			iVar0 = 385;
			break;
		
		case -477451680:
			iVar0 = 386;
			break;
		
		case 743616295:
			iVar0 = 387;
			break;
		
		case 712215816:
			iVar0 = 388;
			break;
		
		case 1475570942:
			iVar0 = 389;
			break;
		
		case -1768978416:
			iVar0 = 390;
			break;
		
		case -2139711822:
			iVar0 = 391;
			break;
		
		case -1509236263:
			iVar0 = 392;
			break;
		
		case -1143383459:
			iVar0 = 393;
			break;
		
		case -1690206781:
			iVar0 = 394;
			break;
		
		case 1947095236:
			iVar0 = 395;
			break;
		
		case 300333876:
			iVar0 = 396;
			break;
		
		case 37732721:
			iVar0 = 397;
			break;
		
		case 959183706:
			iVar0 = 398;
			break;
		
		case -1542393224:
			iVar0 = 399;
			break;
	}
	switch (iParam0)
	{
		case 874488242:
			iVar0 = 400;
			break;
		
		case 1389335000:
			iVar0 = 401;
			break;
		
		case -366075547:
			iVar0 = 402;
			break;
		
		case -1125431584:
			iVar0 = 403;
			break;
		
		case -2000068963:
			iVar0 = 404;
			break;
		
		case 1497445248:
			iVar0 = 405;
			break;
		
		case 1989766704:
			iVar0 = 406;
			break;
		
		case -2086401979:
			iVar0 = 407;
			break;
		
		case -1846467361:
			iVar0 = 408;
			break;
		
		case -1325458477:
			iVar0 = 409;
			break;
		
		case -566725051:
			iVar0 = 410;
			break;
		
		case -787850263:
			iVar0 = 411;
			break;
		
		case -1885021085:
			iVar0 = 412;
			break;
		
		case 979307144:
			iVar0 = 413;
			break;
		
		case -473732439:
			iVar0 = 414;
			break;
		
		case 2062186390:
			iVar0 = 415;
			break;
		
		case -60867780:
			iVar0 = 416;
			break;
		
		case 926967912:
			iVar0 = 417;
			break;
		
		case -1886278590:
			iVar0 = 418;
			break;
		
		case -1314959708:
			iVar0 = 419;
			break;
		
		case -1696774529:
			iVar0 = 420;
			break;
		
		case -356446484:
			iVar0 = 421;
			break;
		
		case 857810380:
			iVar0 = 422;
			break;
		
		case -629676646:
			iVar0 = 423;
			break;
		
		case -1879530481:
			iVar0 = 424;
			break;
		
		case -1265847311:
			iVar0 = 425;
			break;
		
		case 32094424:
			iVar0 = 426;
			break;
		
		case 1969286744:
			iVar0 = 427;
			break;
		
		case 560620683:
			iVar0 = 428;
			break;
		
		case -148312642:
			iVar0 = 429;
			break;
		
		case -578277428:
			iVar0 = 430;
			break;
		
		case -718909970:
			iVar0 = 431;
			break;
		
		case -859026859:
			iVar0 = 432;
			break;
		
		case -839897805:
			iVar0 = 433;
			break;
		
		case 1676439910:
			iVar0 = 434;
			break;
		
		case -294157184:
			iVar0 = 435;
			break;
		
		case -1222200221:
			iVar0 = 436;
			break;
		
		case 874532672:
			iVar0 = 437;
			break;
		
		case -135929055:
			iVar0 = 438;
			break;
		
		case 1654917353:
			iVar0 = 439;
			break;
		
		case -13131391:
			iVar0 = 440;
			break;
		
		case 154845196:
			iVar0 = 441;
			break;
		
		case -1147884322:
			iVar0 = 442;
			break;
		
		case 291693311:
			iVar0 = 443;
			break;
		
		case -1401933531:
			iVar0 = 444;
			break;
		
		case 1820267020:
			iVar0 = 445;
			break;
		
		case 2134488961:
			iVar0 = 446;
			break;
		
		case -1861952745:
			iVar0 = 447;
			break;
		
		case 994458405:
			iVar0 = 448;
			break;
		
		case -1931715008:
			iVar0 = 449;
			break;
		
		case 1308745884:
			iVar0 = 450;
			break;
		
		case -1322955084:
			iVar0 = 451;
			break;
		
		case -816658183:
			iVar0 = 452;
			break;
		
		case -988307698:
			iVar0 = 453;
			break;
		
		case -1341411308:
			iVar0 = 454;
			break;
		
		case 1865570599:
			iVar0 = 455;
			break;
		
		case -549458010:
			iVar0 = 456;
			break;
		
		case -1328545177:
			iVar0 = 457;
			break;
		
		case -1361353619:
			iVar0 = 458;
			break;
		
		case 1103253806:
			iVar0 = 459;
			break;
		
		case -24183456:
			iVar0 = 460;
			break;
		
		case 436214104:
			iVar0 = 461;
			break;
		
		case 2072615278:
			iVar0 = 462;
			break;
		
		case -1131891426:
			iVar0 = 463;
			break;
		
		case 1392085456:
			iVar0 = 464;
			break;
		
		case 2035895234:
			iVar0 = 465;
			break;
		
		case 368784798:
			iVar0 = 466;
			break;
		
		case 1398938833:
			iVar0 = 467;
			break;
		
		case 1250040566:
			iVar0 = 468;
			break;
		
		case 2133228190:
			iVar0 = 469;
			break;
		
		case 675551540:
			iVar0 = 470;
			break;
		
		case -1826137848:
			iVar0 = 471;
			break;
		
		case -144105601:
			iVar0 = 472;
			break;
		
		case -748983650:
			iVar0 = 473;
			break;
		
		case 630291027:
			iVar0 = 474;
			break;
		
		case 293950434:
			iVar0 = 475;
			break;
		
		case 1857352111:
			iVar0 = 476;
			break;
		
		case -777671131:
			iVar0 = 477;
			break;
		
		case 221602924:
			iVar0 = 478;
			break;
		
		case 2039295216:
			iVar0 = 479;
			break;
		
		case 1800147054:
			iVar0 = 480;
			break;
		
		case -2019505897:
			iVar0 = 481;
			break;
		
		case 1647997020:
			iVar0 = 482;
			break;
		
		case -1405854945:
			iVar0 = 483;
			break;
		
		case -1171294997:
			iVar0 = 484;
			break;
		
		case -77076350:
			iVar0 = 485;
			break;
		
		case 775569873:
			iVar0 = 486;
			break;
		
		case 330569485:
			iVar0 = 487;
			break;
		
		case -1549217620:
			iVar0 = 488;
			break;
		
		case 1674429052:
			iVar0 = 489;
			break;
		
		case -254669596:
			iVar0 = 490;
			break;
		
		case 1802602254:
			iVar0 = 491;
			break;
		
		case -941072260:
			iVar0 = 492;
			break;
		
		case -1844749517:
			iVar0 = 493;
			break;
		
		case 82745424:
			iVar0 = 494;
			break;
		
		case -673460083:
			iVar0 = 495;
			break;
		
		case -99954496:
			iVar0 = 496;
			break;
		
		case 2078163456:
			iVar0 = 497;
			break;
		
		case 1362343227:
			iVar0 = 498;
			break;
		
		case 1176005743:
			iVar0 = 499;
			break;
	}
	switch (iParam0)
	{
		case -1504557219:
			iVar0 = 500;
			break;
		
		case 367912881:
			iVar0 = 501;
			break;
		
		case -836343280:
			iVar0 = 502;
			break;
		
		case -46521805:
			iVar0 = 503;
			break;
		
		case -743048780:
			iVar0 = 504;
			break;
		
		case 1294865118:
			iVar0 = 505;
			break;
		
		case -1479686374:
			iVar0 = 506;
			break;
		
		case 256017193:
			iVar0 = 507;
			break;
		
		case 1232443120:
			iVar0 = 508;
			break;
		
		case -803282271:
			iVar0 = 509;
			break;
		
		case 1788600442:
			iVar0 = 510;
			break;
		
		case 1439605343:
			iVar0 = 511;
			break;
		
		case -1094679264:
			iVar0 = 512;
			break;
		
		case 1230482241:
			iVar0 = 513;
			break;
		
		case 2054714291:
			iVar0 = 514;
			break;
		
		case 192117676:
			iVar0 = 515;
			break;
		
		case -2071204405:
			iVar0 = 516;
			break;
		
		case -1618181476:
			iVar0 = 517;
			break;
		
		case -1408253665:
			iVar0 = 518;
			break;
		
		case -134185391:
			iVar0 = 519;
			break;
		
		case -785783411:
			iVar0 = 520;
			break;
		
		case -633466710:
			iVar0 = 521;
			break;
		
		case -2072487372:
			iVar0 = 522;
			break;
		
		case 1211025296:
			iVar0 = 523;
			break;
		
		case 742659337:
			iVar0 = 524;
			break;
		
		case 1365533160:
			iVar0 = 525;
			break;
		
		case 1213205618:
			iVar0 = 526;
			break;
		
		case -164052103:
			iVar0 = 527;
			break;
		
		case -1306490297:
			iVar0 = 528;
			break;
		
		case -994802645:
			iVar0 = 529;
			break;
		
		case 637406209:
			iVar0 = 530;
			break;
		
		case -170855031:
			iVar0 = 531;
			break;
		
		case 1333098305:
			iVar0 = 532;
			break;
		
		case 119103934:
			iVar0 = 533;
			break;
		
		case -141369051:
			iVar0 = 534;
			break;
		
		case -593355218:
			iVar0 = 535;
			break;
		
		case 316832763:
			iVar0 = 536;
			break;
		
		case -393713544:
			iVar0 = 537;
			break;
		
		case -1876234625:
			iVar0 = 538;
			break;
		
		case -1453082334:
			iVar0 = 539;
			break;
		
		case -1397705983:
			iVar0 = 540;
			break;
		
		case -1278086171:
			iVar0 = 541;
			break;
		
		case -1510892268:
			iVar0 = 542;
			break;
		
		case 204876084:
			iVar0 = 543;
			break;
		
		case -988359492:
			iVar0 = 544;
			break;
		
		case 975745281:
			iVar0 = 545;
			break;
		
		case 591099372:
			iVar0 = 546;
			break;
		
		case -1014948306:
			iVar0 = 547;
			break;
		
		case -1866439788:
			iVar0 = 548;
			break;
		
		case -1265767186:
			iVar0 = 549;
			break;
		
		case 2070931859:
			iVar0 = 550;
			break;
		
		case 413611416:
			iVar0 = 551;
			break;
		
		case 765001063:
			iVar0 = 552;
			break;
		
		case -686624622:
			iVar0 = 553;
			break;
		
		case -937548349:
			iVar0 = 554;
			break;
		
		case 212584159:
			iVar0 = 555;
			break;
		
		case -328340062:
			iVar0 = 556;
			break;
		
		case 1657725123:
			iVar0 = 557;
			break;
		
		case -1517964336:
			iVar0 = 558;
			break;
		
		case -785490239:
			iVar0 = 559;
			break;
		
		case -11769229:
			iVar0 = 560;
			break;
		
		case 745912106:
			iVar0 = 561;
			break;
		
		case -2064265098:
			iVar0 = 562;
			break;
		
		case -1515892875:
			iVar0 = 563;
			break;
		
		case 1368234729:
			iVar0 = 564;
			break;
		
		case 1960230923:
			iVar0 = 565;
			break;
		
		case -860169810:
			iVar0 = 566;
			break;
		
		case -177882114:
			iVar0 = 567;
			break;
		
		case 661384509:
			iVar0 = 568;
			break;
		
		case 1221860095:
			iVar0 = 569;
			break;
		
		case 698192473:
			iVar0 = 570;
			break;
		
		case -817251083:
			iVar0 = 571;
			break;
		
		case -1108876323:
			iVar0 = 572;
			break;
		
		case 1274482696:
			iVar0 = 573;
			break;
		
		case 468009056:
			iVar0 = 574;
			break;
		
		case 2063732427:
			iVar0 = 575;
			break;
		
		case -764016411:
			iVar0 = 576;
			break;
		
		case -1530816149:
			iVar0 = 577;
			break;
		
		case 1189996018:
			iVar0 = 578;
			break;
		
		case -210110115:
			iVar0 = 579;
			break;
		
		case -207110256:
			iVar0 = 580;
			break;
		
		case 1801308144:
			iVar0 = 581;
			break;
		
		case 320631086:
			iVar0 = 582;
			break;
		
		case 1022560466:
			iVar0 = 583;
			break;
		
		case -952946041:
			iVar0 = 584;
			break;
		
		case 1321460664:
			iVar0 = 585;
			break;
		
		case -781625914:
			iVar0 = 586;
			break;
		
		case -1522247835:
			iVar0 = 587;
			break;
		
		case -1531245231:
			iVar0 = 588;
			break;
		
		case -1070472994:
			iVar0 = 589;
			break;
		
		case -2113341060:
			iVar0 = 590;
			break;
		
		case 965047293:
			iVar0 = 591;
			break;
		
		case 2114285045:
			iVar0 = 592;
			break;
		
		case -1635032213:
			iVar0 = 593;
			break;
		
		case 1310864345:
			iVar0 = 594;
			break;
		
		case -973977633:
			iVar0 = 595;
			break;
		
		case -1439643329:
			iVar0 = 596;
			break;
		
		case 434150104:
			iVar0 = 597;
			break;
		
		case 1243301688:
			iVar0 = 598;
			break;
		
		case -1233567982:
			iVar0 = 599;
			break;
	}
	switch (iParam0)
	{
		case 1262886680:
			iVar0 = 600;
			break;
		
		case 283135569:
			iVar0 = 601;
			break;
		
		case -548917969:
			iVar0 = 602;
			break;
		
		case 153465812:
			iVar0 = 603;
			break;
		
		case 1916093085:
			iVar0 = 604;
			break;
		
		case -701486200:
			iVar0 = 605;
			break;
		
		case 1951718630:
			iVar0 = 606;
			break;
		
		case -1981978861:
			iVar0 = 607;
			break;
		
		case -1998094267:
			iVar0 = 608;
			break;
		
		case -718445629:
			iVar0 = 609;
			break;
		
		case -35697399:
			iVar0 = 610;
			break;
		
		case -899081349:
			iVar0 = 611;
			break;
		
		case 1123547916:
			iVar0 = 612;
			break;
		
		case -1139893782:
			iVar0 = 613;
			break;
		
		case 1446511785:
			iVar0 = 614;
			break;
		
		case 1234256191:
			iVar0 = 615;
			break;
		
		case 413901048:
			iVar0 = 616;
			break;
		
		case 1527450164:
			iVar0 = 617;
			break;
		
		case -1786525476:
			iVar0 = 618;
			break;
		
		case 1439516635:
			iVar0 = 619;
			break;
		
		case 733800794:
			iVar0 = 620;
			break;
		
		case -399223540:
			iVar0 = 621;
			break;
		
		case -1894392230:
			iVar0 = 622;
			break;
		
		case 229993415:
			iVar0 = 623;
			break;
		
		case -620189683:
			iVar0 = 624;
			break;
		
		case 1846617794:
			iVar0 = 625;
			break;
		
		case -1142479347:
			iVar0 = 626;
			break;
		
		case -512960025:
			iVar0 = 627;
			break;
		
		case -759812557:
			iVar0 = 628;
			break;
		
		case 468661890:
			iVar0 = 629;
			break;
		
		case 1907925586:
			iVar0 = 630;
			break;
		
		case 646243571:
			iVar0 = 631;
			break;
		
		case 1953935161:
			iVar0 = 632;
			break;
		
		case 874867224:
			iVar0 = 633;
			break;
		
		case 1344008898:
			iVar0 = 634;
			break;
		
		case 1297781304:
			iVar0 = 635;
			break;
		
		case 1977233252:
			iVar0 = 636;
			break;
		
		case -194410344:
			iVar0 = 637;
			break;
		
		case 392012609:
			iVar0 = 638;
			break;
		
		case 705148450:
			iVar0 = 639;
			break;
		
		case 1677522529:
			iVar0 = 640;
			break;
		
		case -1362677538:
			iVar0 = 641;
			break;
		
		case 863458948:
			iVar0 = 642;
			break;
		
		case 9874621:
			iVar0 = 643;
			break;
		
		case 1809338990:
			iVar0 = 644;
			break;
		
		case -346939959:
			iVar0 = 645;
			break;
		
		case -934753544:
			iVar0 = 646;
			break;
		
		case 1604986209:
			iVar0 = 647;
			break;
		
		case -1514700421:
			iVar0 = 648;
			break;
		
		case 1177361060:
			iVar0 = 649;
			break;
		
		case -937529288:
			iVar0 = 650;
			break;
		
		case 547723644:
			iVar0 = 651;
			break;
		
		case 1750314531:
			iVar0 = 652;
			break;
		
		case -988332613:
			iVar0 = 653;
			break;
		
		case 80720443:
			iVar0 = 654;
			break;
		
		case -1220194634:
			iVar0 = 655;
			break;
		
		case -925735153:
			iVar0 = 656;
			break;
		
		case -1403745446:
			iVar0 = 657;
			break;
		
		case -1084626028:
			iVar0 = 658;
			break;
		
		case 2060572320:
			iVar0 = 659;
			break;
		
		case 1064377095:
			iVar0 = 660;
			break;
		
		case -1985597576:
			iVar0 = 661;
			break;
		
		case -2003189104:
			iVar0 = 662;
			break;
		
		case 1452329956:
			iVar0 = 663;
			break;
		
		case 1928573506:
			iVar0 = 664;
			break;
		
		case -185753722:
			iVar0 = 665;
			break;
		
		case -1580916109:
			iVar0 = 666;
			break;
		
		case -1077059973:
			iVar0 = 667;
			break;
		
		case 131755133:
			iVar0 = 668;
			break;
		
		case -253351038:
			iVar0 = 669;
			break;
		
		case 1332845224:
			iVar0 = 670;
			break;
		
		case -685051870:
			iVar0 = 671;
			break;
		
		case 2122847199:
			iVar0 = 672;
			break;
		
		case -149940744:
			iVar0 = 673;
			break;
		
		case -147741130:
			iVar0 = 674;
			break;
		
		case 302211868:
			iVar0 = 675;
			break;
		
		case -1361568592:
			iVar0 = 676;
			break;
		
		case -156600218:
			iVar0 = 677;
			break;
		
		case 1592739450:
			iVar0 = 678;
			break;
		
		case -633744004:
			iVar0 = 679;
			break;
		
		case -1467745952:
			iVar0 = 680;
			break;
		
		case 1129961041:
			iVar0 = 681;
			break;
		
		case -1221180772:
			iVar0 = 682;
			break;
		
		case 1957517559:
			iVar0 = 683;
			break;
		
		case -335233377:
			iVar0 = 684;
			break;
		
		case 2146762380:
			iVar0 = 685;
			break;
		
		case 427236107:
			iVar0 = 686;
			break;
		
		case -49636427:
			iVar0 = 687;
			break;
		
		case 1988133312:
			iVar0 = 688;
			break;
		
		case 40044091:
			iVar0 = 689;
			break;
		
		case -1189893809:
			iVar0 = 690;
			break;
		
		case 1182549017:
			iVar0 = 691;
			break;
		
		case 1403255481:
			iVar0 = 692;
			break;
		
		case 821579887:
			iVar0 = 693;
			break;
		
		case 1975948161:
			iVar0 = 694;
			break;
		
		case -953362234:
			iVar0 = 695;
			break;
		
		case 1521494915:
			iVar0 = 696;
			break;
		
		case 84635211:
			iVar0 = 697;
			break;
		
		case 2074655231:
			iVar0 = 698;
			break;
		
		case 1742494019:
			iVar0 = 699;
			break;
	}
	switch (iParam0)
	{
		case 1841934566:
			iVar0 = 700;
			break;
		
		case 1648222412:
			iVar0 = 701;
			break;
		
		case 1019312748:
			iVar0 = 702;
			break;
		
		case -1218730541:
			iVar0 = 703;
			break;
		
		case -88186884:
			iVar0 = 704;
			break;
		
		case 1428588096:
			iVar0 = 705;
			break;
		
		case -1788493673:
			iVar0 = 706;
			break;
		
		case -241894528:
			iVar0 = 707;
			break;
		
		case -1425414573:
			iVar0 = 708;
			break;
		
		case 1797163947:
			iVar0 = 709;
			break;
		
		case 823191231:
			iVar0 = 710;
			break;
		
		case 894133321:
			iVar0 = 711;
			break;
		
		case 1889485313:
			iVar0 = 712;
			break;
	}
	if (iVar0 != -1)
	{
		*uParam1 = (129 + iVar0);
		return true;
	}
	return false;
}

bool func_584(int iParam0, var uParam1)//Position - 0x3A7A1
{
	int iVar0;
	
	iVar0 = -1;
	switch (iParam0)
	{
		case -1917324065:
			iVar0 = 0;
			break;
		
		case 1056297333:
			iVar0 = 1;
			break;
		
		case 494620709:
			iVar0 = 2;
			break;
		
		case 800453786:
			iVar0 = 3;
			break;
		
		case -1082736975:
			iVar0 = 4;
			break;
		
		case -754981437:
			iVar0 = 5;
			break;
		
		case -1801855538:
			iVar0 = 6;
			break;
		
		case 459313194:
			iVar0 = 7;
			break;
		
		case 2007087579:
			iVar0 = 8;
			break;
		
		case 1987172386:
			iVar0 = 9;
			break;
		
		case 1801787829:
			iVar0 = 10;
			break;
		
		case -221624488:
			iVar0 = 11;
			break;
		
		case 25158851:
			iVar0 = 12;
			break;
		
		case 472458130:
			iVar0 = 13;
			break;
		
		case 164352862:
			iVar0 = 14;
			break;
		
		case -904148779:
			iVar0 = 15;
			break;
		
		case -694439771:
			iVar0 = 16;
			break;
		
		case -1469590466:
			iVar0 = 17;
			break;
		
		case -1511207100:
			iVar0 = 18;
			break;
		
		case -1352670678:
			iVar0 = 19;
			break;
		
		case -1960273476:
			iVar0 = 20;
			break;
		
		case -1657389609:
			iVar0 = 21;
			break;
		
		case 1826839858:
			iVar0 = 22;
			break;
		
		case 1989701788:
			iVar0 = 23;
			break;
		
		case 1213109257:
			iVar0 = 24;
			break;
		
		case 607407061:
			iVar0 = 25;
			break;
		
		case 875031480:
			iVar0 = 26;
			break;
		
		case 1487418552:
			iVar0 = 27;
			break;
		
		case 264053475:
			iVar0 = 28;
			break;
		
		case 99094329:
			iVar0 = 29;
			break;
		
		case -244193715:
			iVar0 = 30;
			break;
		
		case -540785934:
			iVar0 = 31;
			break;
		
		case -694833003:
			iVar0 = 32;
			break;
		
		case -852058665:
			iVar0 = 33;
			break;
		
		case -1512648940:
			iVar0 = 34;
			break;
		
		case -761354077:
			iVar0 = 35;
			break;
		
		case 1560551467:
			iVar0 = 36;
			break;
		
		case 827974775:
			iVar0 = 37;
			break;
		
		case 1595162603:
			iVar0 = 38;
			break;
		
		case 709663738:
			iVar0 = 39;
			break;
		
		case 990002533:
			iVar0 = 40;
			break;
		
		case 1860213958:
			iVar0 = 41;
			break;
		
		case 2119318441:
			iVar0 = 42;
			break;
		
		case -1953737187:
			iVar0 = 43;
			break;
		
		case 193320466:
			iVar0 = 44;
			break;
		
		case 1936646403:
			iVar0 = 45;
			break;
		
		case -1126042648:
			iVar0 = 46;
			break;
		
		case -1125022512:
			iVar0 = 47;
			break;
		
		case -1304369017:
			iVar0 = 48;
			break;
		
		case -2018143375:
			iVar0 = 49;
			break;
		
		case 224730392:
			iVar0 = 50;
			break;
		
		case 439629494:
			iVar0 = 51;
			break;
		
		case 736778786:
			iVar0 = 52;
			break;
		
		case 1048444745:
			iVar0 = 53;
			break;
		
		case 1988816738:
			iVar0 = 54;
			break;
		
		case 2140603469:
			iVar0 = 55;
			break;
		
		case 214245031:
			iVar0 = 56;
			break;
		
		case 1006238992:
			iVar0 = 57;
			break;
		
		case 689952604:
			iVar0 = 58;
			break;
		
		case -681528353:
			iVar0 = 59;
			break;
		
		case 1157448359:
			iVar0 = 60;
			break;
		
		case 43105745:
			iVar0 = 61;
			break;
		
		case -270395278:
			iVar0 = 62;
			break;
		
		case 505181414:
			iVar0 = 63;
			break;
		
		case 254662409:
			iVar0 = 64;
			break;
		
		case -982924414:
			iVar0 = 65;
			break;
		
		case -1156010272:
			iVar0 = 66;
			break;
		
		case 1885313391:
			iVar0 = 67;
			break;
		
		case -694786597:
			iVar0 = 68;
			break;
		
		case -1950199756:
			iVar0 = 69;
			break;
		
		case 384168721:
			iVar0 = 70;
			break;
		
		case -369452741:
			iVar0 = 71;
			break;
		
		case -89113946:
			iVar0 = 72;
			break;
		
		case 1836261422:
			iVar0 = 73;
			break;
		
		case -1004417654:
			iVar0 = 74;
			break;
		
		case -754095263:
			iVar0 = 75;
			break;
		
		case -1210698509:
			iVar0 = 76;
			break;
		
		case 1332405298:
			iVar0 = 77;
			break;
		
		case 552929095:
			iVar0 = 78;
			break;
		
		case 861154309:
			iVar0 = 79;
			break;
		
		case -1653801207:
			iVar0 = 80;
			break;
		
		case -87213624:
			iVar0 = 81;
			break;
		
		case 1285643631:
			iVar0 = 82;
			break;
		
		case 523240077:
			iVar0 = 83;
			break;
		
		case 823174734:
			iVar0 = 84;
			break;
		
		case -1248612522:
			iVar0 = 85;
			break;
		
		case 123359970:
			iVar0 = 86;
			break;
		
		case 369684543:
			iVar0 = 87;
			break;
		
		case -337142787:
			iVar0 = 88;
			break;
		
		case 1395583642:
			iVar0 = 89;
			break;
		
		case 1782520810:
			iVar0 = 90;
			break;
		
		case -660506451:
			iVar0 = 91;
			break;
		
		case -1092860637:
			iVar0 = 92;
			break;
		
		case 524387820:
			iVar0 = 93;
			break;
		
		case -1829180023:
			iVar0 = 94;
			break;
		
		case 2091368679:
			iVar0 = 95;
			break;
		
		case 1851597906:
			iVar0 = 96;
			break;
		
		case -434629734:
			iVar0 = 97;
			break;
		
		case 1415278623:
			iVar0 = 98;
			break;
		
		case 1252285617:
			iVar0 = 99;
			break;
	}
	switch (iParam0)
	{
		case 893595891:
			iVar0 = 100;
			break;
		
		case 423819507:
			iVar0 = 101;
			break;
		
		case -1433887872:
			iVar0 = 102;
			break;
		
		case -464613621:
			iVar0 = 103;
			break;
		
		case -301227387:
			iVar0 = 104;
			break;
		
		case -701762906:
			iVar0 = 105;
			break;
		
		case -890282963:
			iVar0 = 106;
			break;
		
		case -1188251480:
			iVar0 = 107;
			break;
		
		case 258827560:
			iVar0 = 108;
			break;
		
		case 965649655:
			iVar0 = 109;
			break;
		
		case 718800778:
			iVar0 = 110;
			break;
		
		case 1959959422:
			iVar0 = 111;
			break;
		
		case 1200177388:
			iVar0 = 112;
			break;
		
		case -1874439579:
			iVar0 = 113;
			break;
		
		case -1679505893:
			iVar0 = 114;
			break;
		
		case -1976229188:
			iVar0 = 115;
			break;
		
		case 2037875009:
			iVar0 = 116;
			break;
		
		case -235146664:
			iVar0 = 117;
			break;
		
		case -441853516:
			iVar0 = 118;
			break;
		
		case -664221443:
			iVar0 = 119;
			break;
		
		case -371627042:
			iVar0 = 120;
			break;
		
		case -1266220742:
			iVar0 = 121;
			break;
		
		case -968055611:
			iVar0 = 122;
			break;
		
		case 248100286:
			iVar0 = 123;
			break;
		
		case 551606764:
			iVar0 = 124;
			break;
		
		case 1805971315:
			iVar0 = 125;
			break;
		
		case -43642121:
			iVar0 = 126;
			break;
		
		case 1172251624:
			iVar0 = 127;
			break;
		
		case 1471989667:
			iVar0 = 128;
			break;
		
		case -2124702788:
			iVar0 = 129;
			break;
		
		case -1826734271:
			iVar0 = 130;
			break;
		
		case -900452940:
			iVar0 = 131;
			break;
		
		case -292194762:
			iVar0 = 132;
			break;
		
		case 637166847:
			iVar0 = 133;
			break;
		
		case -1204844181:
			iVar0 = 134;
			break;
		
		case 324779970:
			iVar0 = 135;
			break;
		
		case 329039940:
			iVar0 = 136;
			break;
		
		case 1854928425:
			iVar0 = 137;
			break;
		
		case 13179549:
			iVar0 = 138;
			break;
		
		case 1899823455:
			iVar0 = 139;
			break;
		
		case -2090490448:
			iVar0 = 140;
			break;
		
		case -1801467868:
			iVar0 = 141;
			break;
		
		case 953986562:
			iVar0 = 142;
			break;
		
		case 585335312:
			iVar0 = 143;
			break;
		
		case 489617063:
			iVar0 = 144;
			break;
		
		case 210195800:
			iVar0 = 145;
			break;
		
		case 1843402776:
			iVar0 = 146;
			break;
		
		case -1600520821:
			iVar0 = 147;
			break;
		
		case 1399087889:
			iVar0 = 148;
			break;
		
		case 1169344430:
			iVar0 = 149;
			break;
		
		case -2028647818:
			iVar0 = 150;
			break;
		
		case -1335845620:
			iVar0 = 151;
			break;
		
		case -1450406320:
			iVar0 = 152;
			break;
		
		case -1209849091:
			iVar0 = 153;
			break;
		
		case 2065609077:
			iVar0 = 154;
			break;
		
		case -664245241:
			iVar0 = 155;
			break;
		
		case 1676130538:
			iVar0 = 156;
			break;
		
		case -1730534702:
			iVar0 = 157;
			break;
		
		case -1767432596:
			iVar0 = 158;
			break;
		
		case -2016105604:
			iVar0 = 159;
			break;
		
		case 1971947238:
			iVar0 = 160;
			break;
		
		case -362811247:
			iVar0 = 161;
			break;
		
		case -668087251:
			iVar0 = 162;
			break;
		
		case -821282326:
			iVar0 = 163;
			break;
		
		case -1083467095:
			iVar0 = 164;
			break;
		
		case 550067555:
			iVar0 = 165;
			break;
		
		case 1439221609:
			iVar0 = 166;
			break;
		
		case 67412954:
			iVar0 = 167;
			break;
		
		case -1999360357:
			iVar0 = 168;
			break;
		
		case 1461537582:
			iVar0 = 169;
			break;
		
		case -1828273408:
			iVar0 = 170;
			break;
		
		case -1319239762:
			iVar0 = 171;
			break;
		
		case -1234400821:
			iVar0 = 172;
			break;
		
		case -992303449:
			iVar0 = 173;
			break;
		
		case -638398249:
			iVar0 = 174;
			break;
		
		case -41543683:
			iVar0 = 175;
			break;
		
		case -1934903018:
			iVar0 = 176;
			break;
		
		case 2132090345:
			iVar0 = 177;
			break;
		
		case 1751052413:
			iVar0 = 178;
			break;
		
		case 1519604966:
			iVar0 = 179;
			break;
		
		case -1964624525:
			iVar0 = 180;
			break;
		
		case 2006191823:
			iVar0 = 181;
			break;
		
		case 1633280603:
			iVar0 = 182;
			break;
		
		case 632918673:
			iVar0 = 183;
			break;
		
		case -190040148:
			iVar0 = 184;
			break;
		
		case 42936837:
			iVar0 = 185;
			break;
		
		case -1458541976:
			iVar0 = 186;
			break;
		
		case -606014753:
			iVar0 = 187;
			break;
		
		case -613376371:
			iVar0 = 188;
			break;
		
		case -446291501:
			iVar0 = 189;
			break;
		
		case 739308497:
			iVar0 = 190;
			break;
		
		case 495343292:
			iVar0 = 191;
			break;
		
		case -1686711653:
			iVar0 = 192;
			break;
		
		case 1187457341:
			iVar0 = 193;
			break;
		
		case 956403122:
			iVar0 = 194;
			break;
		
		case 1647042566:
			iVar0 = 195;
			break;
		
		case -461478743:
			iVar0 = 196;
			break;
		
		case -1883325653:
			iVar0 = 197;
			break;
		
		case -2114248796:
			iVar0 = 198;
			break;
		
		case 314228205:
			iVar0 = 199;
			break;
	}
	switch (iParam0)
	{
		case 1503775674:
			iVar0 = 200;
			break;
		
		case 1862399610:
			iVar0 = 201;
			break;
		
		case 708472048:
			iVar0 = 202;
			break;
		
		case -1207367545:
			iVar0 = 203;
			break;
		
		case 111650251:
			iVar0 = 204;
			break;
		
		case -28941494:
			iVar0 = 205;
			break;
		
		case -1827173138:
			iVar0 = 206;
			break;
		
		case -520681423:
			iVar0 = 207;
			break;
		
		case -209343154:
			iVar0 = 208;
			break;
		
		case -293579471:
			iVar0 = 209;
			break;
		
		case 20871853:
			iVar0 = 210;
			break;
		
		case -89823344:
			iVar0 = 211;
			break;
		
		case -1820191335:
			iVar0 = 212;
			break;
		
		case -1588547274:
			iVar0 = 213;
			break;
		
		case -1224287070:
			iVar0 = 214;
			break;
		
		case -994150383:
			iVar0 = 215;
			break;
		
		case -869824793:
			iVar0 = 216;
			break;
		
		case -633330920:
			iVar0 = 217;
			break;
		
		case -308131364:
			iVar0 = 218;
			break;
		
		case -38278649:
			iVar0 = 219;
			break;
		
		case 555692245:
			iVar0 = 220;
			break;
		
		case 929455459:
			iVar0 = 221;
			break;
		
		case -2092436411:
			iVar0 = 222;
			break;
		
		case 1904300216:
			iVar0 = 223;
			break;
		
		case -1599361268:
			iVar0 = 224;
			break;
		
		case -1897002095:
			iVar0 = 225;
			break;
		
		case -1011813098:
			iVar0 = 226;
			break;
		
		case -1316794181:
			iVar0 = 227;
			break;
		
		case -416105443:
			iVar0 = 228;
			break;
		
		case -47978497:
			iVar0 = 229;
			break;
		
		case -358202620:
			iVar0 = 230;
			break;
		
		case 547139312:
			iVar0 = 231;
			break;
		
		case 1124688073:
			iVar0 = 232;
			break;
		
		case 888521890:
			iVar0 = 233;
			break;
		
		case 665823766:
			iVar0 = 234;
			break;
		
		case 427888057:
			iVar0 = 235;
			break;
		
		case 1121411181:
			iVar0 = 236;
			break;
		
		case 890225886:
			iVar0 = 237;
			break;
		
		case 651012186:
			iVar0 = 238;
			break;
		
		case 422776101:
			iVar0 = 239;
			break;
		
		case 1630543134:
			iVar0 = 240;
			break;
		
		case -1945668916:
			iVar0 = 241;
			break;
		
		case -627999265:
			iVar0 = 242;
			break;
		
		case 1682346315:
			iVar0 = 243;
			break;
		
		case 1021952654:
			iVar0 = 244;
			break;
		
		case 1319396867:
			iVar0 = 245;
			break;
		
		case 560794517:
			iVar0 = 246;
			break;
		
		case 858697496:
			iVar0 = 247;
			break;
		
		case -30981230:
			iVar0 = 248;
			break;
		
		case -328032215:
			iVar0 = 249;
			break;
		
		case -1451681225:
			iVar0 = 250;
			break;
		
		case 267904819:
			iVar0 = 251;
			break;
		
		case 1570178485:
			iVar0 = 252;
			break;
		
		case -1619850916:
			iVar0 = 253;
			break;
		
		case -713067148:
			iVar0 = 254;
			break;
		
		case 946477614:
			iVar0 = 255;
			break;
		
		case -1423343701:
			iVar0 = 256;
			break;
		
		case 445931457:
			iVar0 = 257;
			break;
		
		case 678558588:
			iVar0 = 258;
			break;
		
		case -854631987:
			iVar0 = 259;
			break;
		
		case -1707871209:
			iVar0 = 260;
			break;
		
		case -863391184:
			iVar0 = 261;
			break;
		
		case 671171671:
			iVar0 = 262;
			break;
		
		case 904519720:
			iVar0 = 263;
			break;
		
		case 670952414:
			iVar0 = 264;
			break;
		
		case -282875325:
			iVar0 = 265;
			break;
		
		case 2079623104:
			iVar0 = 266;
			break;
		
		case 1088443427:
			iVar0 = 267;
			break;
		
		case 200001600:
			iVar0 = 268;
			break;
		
		case 1620729159:
			iVar0 = 269;
			break;
		
		case -1713274238:
			iVar0 = 270;
			break;
		
		case -1571590969:
			iVar0 = 271;
			break;
		
		case -457639374:
			iVar0 = 272;
			break;
		
		case 64160805:
			iVar0 = 273;
			break;
		
		case 1015325203:
			iVar0 = 274;
			break;
		
		case -1951778967:
			iVar0 = 275;
			break;
		
		case 1836042304:
			iVar0 = 276;
			break;
		
		case -421094621:
			iVar0 = 277;
			break;
		
		case 641062099:
			iVar0 = 278;
			break;
		
		case 597454468:
			iVar0 = 279;
			break;
		
		case 713758205:
			iVar0 = 280;
			break;
		
		case 1042267708:
			iVar0 = 281;
			break;
		
		case -637951661:
			iVar0 = 282;
			break;
		
		case 195911857:
			iVar0 = 283;
			break;
		
		case 903988957:
			iVar0 = 284;
			break;
		
		case 1068170761:
			iVar0 = 285;
			break;
		
		case -619065384:
			iVar0 = 286;
			break;
		
		case -497085955:
			iVar0 = 287;
			break;
		
		case 1138369002:
			iVar0 = 288;
			break;
		
		case -1957731308:
			iVar0 = 289;
			break;
		
		case -2063712125:
			iVar0 = 290;
			break;
		
		case 1773674262:
			iVar0 = 291;
			break;
		
		case 1027059614:
			iVar0 = 292;
			break;
		
		case 1366782677:
			iVar0 = 293;
			break;
		
		case 216134256:
			iVar0 = 294;
			break;
		
		case 810154442:
			iVar0 = 295;
			break;
		
		case 77285961:
			iVar0 = 296;
			break;
		
		case 1617489838:
			iVar0 = 297;
			break;
		
		case 1697138602:
			iVar0 = 298;
			break;
		
		case 711811694:
			iVar0 = 299;
			break;
	}
	switch (iParam0)
	{
		case -895106351:
			iVar0 = 300;
			break;
		
		case 875367934:
			iVar0 = 301;
			break;
		
		case -979867160:
			iVar0 = 302;
			break;
		
		case -1233816942:
			iVar0 = 303;
			break;
		
		case -866958715:
			iVar0 = 304;
			break;
		
		case -1303573005:
			iVar0 = 305;
			break;
		
		case 2085207152:
			iVar0 = 306;
			break;
		
		case 857137150:
			iVar0 = 307;
			break;
		
		case 535952639:
			iVar0 = 308;
			break;
		
		case -1974657401:
			iVar0 = 309;
			break;
		
		case 129909013:
			iVar0 = 310;
			break;
		
		case -1499060170:
			iVar0 = 311;
			break;
		
		case 412032123:
			iVar0 = 312;
			break;
		
		case 915049044:
			iVar0 = 313;
			break;
		
		case 456478679:
			iVar0 = 314;
			break;
		
		case 907364848:
			iVar0 = 315;
			break;
		
		case -1783721060:
			iVar0 = 316;
			break;
		
		case -1008363280:
			iVar0 = 317;
			break;
		
		case 1429817922:
			iVar0 = 318;
			break;
		
		case -938326281:
			iVar0 = 319;
			break;
		
		case -1073925235:
			iVar0 = 320;
			break;
		
		case 1498524677:
			iVar0 = 321;
			break;
		
		case 1525596308:
			iVar0 = 322;
			break;
		
		case 1232639216:
			iVar0 = 323;
			break;
		
		case 956061600:
			iVar0 = 324;
			break;
		
		case 816551665:
			iVar0 = 325;
			break;
		
		case 2049704410:
			iVar0 = 326;
			break;
		
		case -796818724:
			iVar0 = 327;
			break;
		
		case 1775476370:
			iVar0 = 328;
			break;
		
		case 266230635:
			iVar0 = 329;
			break;
		
		case -588549683:
			iVar0 = 330;
			break;
		
		case 464027076:
			iVar0 = 331;
			break;
		
		case 2122049260:
			iVar0 = 332;
			break;
		
		case 1049130700:
			iVar0 = 333;
			break;
		
		case -116952560:
			iVar0 = 334;
			break;
		
		case 1424723115:
			iVar0 = 335;
			break;
		
		case -1007272003:
			iVar0 = 336;
			break;
		
		case -644829701:
			iVar0 = 337;
			break;
		
		case -2103222497:
			iVar0 = 338;
			break;
		
		case -1589795073:
			iVar0 = 339;
			break;
		
		case -1689668067:
			iVar0 = 340;
			break;
		
		case -189814108:
			iVar0 = 341;
			break;
		
		case -1595292141:
			iVar0 = 342;
			break;
		
		case -1540940714:
			iVar0 = 343;
			break;
		
		case -2136471172:
			iVar0 = 344;
			break;
		
		case -666892434:
			iVar0 = 345;
			break;
		
		case -1001125323:
			iVar0 = 346;
			break;
		
		case 904104464:
			iVar0 = 347;
			break;
		
		case 690016265:
			iVar0 = 348;
			break;
		
		case 38190590:
			iVar0 = 349;
			break;
		
		case 2119761078:
			iVar0 = 350;
			break;
		
		case -1213131712:
			iVar0 = 351;
			break;
		
		case 990079224:
			iVar0 = 352;
			break;
		
		case -905045993:
			iVar0 = 353;
			break;
		
		case 2104378143:
			iVar0 = 354;
			break;
		
		case -666631800:
			iVar0 = 355;
			break;
		
		case 549954933:
			iVar0 = 356;
			break;
		
		case 1830069972:
			iVar0 = 357;
			break;
		
		case 859320876:
			iVar0 = 358;
			break;
		
		case -552358316:
			iVar0 = 359;
			break;
		
		case 1522216340:
			iVar0 = 360;
			break;
		
		case -1783296601:
			iVar0 = 361;
			break;
		
		case 283995288:
			iVar0 = 362;
			break;
		
		case -975534410:
			iVar0 = 363;
			break;
		
		case -2088194624:
			iVar0 = 364;
			break;
		
		case 1744801848:
			iVar0 = 365;
			break;
		
		case -481389646:
			iVar0 = 366;
			break;
		
		case -1781363036:
			iVar0 = 367;
			break;
		
		case 496009839:
			iVar0 = 368;
			break;
		
		case -667608820:
			iVar0 = 369;
			break;
		
		case 460475899:
			iVar0 = 370;
			break;
		
		case 1491168919:
			iVar0 = 371;
			break;
		
		case -1611478806:
			iVar0 = 372;
			break;
		
		case 523495612:
			iVar0 = 373;
			break;
		
		case -78008273:
			iVar0 = 374;
			break;
		
		case -762375847:
			iVar0 = 375;
			break;
		
		case 331482129:
			iVar0 = 376;
			break;
		
		case -2083628050:
			iVar0 = 377;
			break;
		
		case -468800117:
			iVar0 = 378;
			break;
		
		case 724819757:
			iVar0 = 379;
			break;
		
		case -1058761348:
			iVar0 = 380;
			break;
		
		case -546178212:
			iVar0 = 381;
			break;
		
		case -118052734:
			iVar0 = 382;
			break;
		
		case 1654466691:
			iVar0 = 383;
			break;
		
		case -1077553649:
			iVar0 = 384;
			break;
		
		case -886092159:
			iVar0 = 385;
			break;
		
		case -1406331536:
			iVar0 = 386;
			break;
		
		case -1968934850:
			iVar0 = 387;
			break;
		
		case 3741245:
			iVar0 = 388;
			break;
		
		case 1387838298:
			iVar0 = 389;
			break;
		
		case -1941058219:
			iVar0 = 390;
			break;
		
		case 955033120:
			iVar0 = 391;
			break;
		
		case 677119231:
			iVar0 = 392;
			break;
		
		case -1616214916:
			iVar0 = 393;
			break;
		
		case -841195297:
			iVar0 = 394;
			break;
		
		case -909289279:
			iVar0 = 395;
			break;
		
		case -239567341:
			iVar0 = 396;
			break;
		
		case -613592707:
			iVar0 = 397;
			break;
		
		case -988568374:
			iVar0 = 398;
			break;
		
		case -1090807654:
			iVar0 = 399;
			break;
	}
	switch (iParam0)
	{
		case 534771589:
			iVar0 = 400;
			break;
		
		case -1340139519:
			iVar0 = 401;
			break;
		
		case -849980761:
			iVar0 = 402;
			break;
		
		case -551553478:
			iVar0 = 403;
			break;
		
		case 386581472:
			iVar0 = 404;
			break;
		
		case 1466454525:
			iVar0 = 405;
			break;
		
		case 283190173:
			iVar0 = 406;
			break;
		
		case 1528527015:
			iVar0 = 407;
			break;
		
		case -1690029966:
			iVar0 = 408;
			break;
		
		case -1685994466:
			iVar0 = 409;
			break;
		
		case 255166927:
			iVar0 = 410;
			break;
		
		case -271257487:
			iVar0 = 411;
			break;
		
		case 1885215284:
			iVar0 = 412;
			break;
		
		case -1935156988:
			iVar0 = 413;
			break;
		
		case 1061465906:
			iVar0 = 414;
			break;
		
		case -871031729:
			iVar0 = 415;
			break;
		
		case -101171485:
			iVar0 = 416;
			break;
		
		case -1590298770:
			iVar0 = 417;
			break;
		
		case 303441856:
			iVar0 = 418;
			break;
		
		case -2049689650:
			iVar0 = 419;
			break;
		
		case 788520303:
			iVar0 = 420;
			break;
		
		case -859861445:
			iVar0 = 421;
			break;
		
		case 1045897298:
			iVar0 = 422;
			break;
		
		case 116964921:
			iVar0 = 423;
			break;
		
		case -1502257606:
			iVar0 = 424;
			break;
		
		case -546150284:
			iVar0 = 425;
			break;
		
		case -357466888:
			iVar0 = 426;
			break;
		
		case 718674880:
			iVar0 = 427;
			break;
		
		case -1529401172:
			iVar0 = 428;
			break;
		
		case 2088037441:
			iVar0 = 429;
			break;
		
		case 2048866271:
			iVar0 = 430;
			break;
		
		case -1565431690:
			iVar0 = 431;
			break;
		
		case -1528465573:
			iVar0 = 432;
			break;
		
		case 401532197:
			iVar0 = 433;
			break;
		
		case 826974918:
			iVar0 = 434;
			break;
		
		case -676067408:
			iVar0 = 435;
			break;
		
		case 1877289089:
			iVar0 = 436;
			break;
		
		case 859380017:
			iVar0 = 437;
			break;
		
		case 233098354:
			iVar0 = 438;
			break;
		
		case 566101858:
			iVar0 = 439;
			break;
		
		case 529460830:
			iVar0 = 440;
			break;
		
		case -1833118141:
			iVar0 = 441;
			break;
		
		case 422823598:
			iVar0 = 442;
			break;
		
		case 1450358661:
			iVar0 = 443;
			break;
		
		case 741089893:
			iVar0 = 444;
			break;
		
		case 1289848370:
			iVar0 = 445;
			break;
		
		case 616166430:
			iVar0 = 446;
			break;
		
		case 1489225316:
			iVar0 = 447;
			break;
		
		case 753969632:
			iVar0 = 448;
			break;
		
		case -1182831168:
			iVar0 = 449;
			break;
		
		case 1545103753:
			iVar0 = 450;
			break;
		
		case 2090080808:
			iVar0 = 451;
			break;
		
		case 903606896:
			iVar0 = 452;
			break;
		
		case 26759391:
			iVar0 = 453;
			break;
		
		case 1651885364:
			iVar0 = 454;
			break;
		
		case 729529407:
			iVar0 = 455;
			break;
		
		case 528802126:
			iVar0 = 456;
			break;
		
		case -1468003071:
			iVar0 = 457;
			break;
		
		case 1683696787:
			iVar0 = 458;
			break;
		
		case -726859160:
			iVar0 = 459;
			break;
		
		case 1209899578:
			iVar0 = 460;
			break;
		
		case 930604285:
			iVar0 = 461;
			break;
		
		case -308584186:
			iVar0 = 462;
			break;
		
		case -64129874:
			iVar0 = 463;
			break;
		
		case -1431204514:
			iVar0 = 464;
			break;
		
		case -1133334304:
			iVar0 = 465;
			break;
		
		case -1809784771:
			iVar0 = 466;
			break;
		
		case -1576934998:
			iVar0 = 467;
			break;
		
		case -1570929684:
			iVar0 = 468;
			break;
		
		case 1976578151:
			iVar0 = 469;
			break;
		
		case -441419962:
			iVar0 = 470;
			break;
		
		case -841238543:
			iVar0 = 471;
			break;
		
		case 1644315794:
			iVar0 = 472;
			break;
		
		case 1964334039:
			iVar0 = 473;
			break;
		
		case -1168614925:
			iVar0 = 474;
			break;
		
		case -56760095:
			iVar0 = 475;
			break;
		
		case -1006202521:
			iVar0 = 476;
			break;
		
		case -1834049539:
			iVar0 = 477;
			break;
		
		case -2060372580:
			iVar0 = 478;
			break;
		
		case 1057304170:
			iVar0 = 479;
			break;
		
		case 1421572640:
			iVar0 = 480;
			break;
		
		case 481259621:
			iVar0 = 481;
			break;
		
		case 1227497670:
			iVar0 = 482;
			break;
		
		case 319276780:
			iVar0 = 483;
			break;
		
		case 2070827921:
			iVar0 = 484;
			break;
		
		case 1433629991:
			iVar0 = 485;
			break;
		
		case -1712994650:
			iVar0 = 486;
			break;
		
		case 2125094286:
			iVar0 = 487;
			break;
		
		case 712298404:
			iVar0 = 488;
			break;
		
		case 1998072324:
			iVar0 = 489;
			break;
		
		case 1249206960:
			iVar0 = 490;
			break;
		
		case -621355603:
			iVar0 = 491;
			break;
		
		case 1570835960:
			iVar0 = 492;
			break;
		
		case -1254202543:
			iVar0 = 493;
			break;
		
		case -956136061:
			iVar0 = 494;
			break;
		
		case -1925480683:
			iVar0 = 495;
			break;
		
		case 220143168:
			iVar0 = 496;
			break;
		
		case -1021851577:
			iVar0 = 497;
			break;
		
		case -773345516:
			iVar0 = 498;
			break;
		
		case 1091795205:
			iVar0 = 499;
			break;
	}
	switch (iParam0)
	{
		case -1159824040:
			iVar0 = 500;
			break;
		
		case 1448723789:
			iVar0 = 501;
			break;
		
		case -488127340:
			iVar0 = 502;
			break;
		
		case -1964967283:
			iVar0 = 503;
			break;
		
		case -1635180127:
			iVar0 = 504;
			break;
		
		case -10501563:
			iVar0 = 505;
			break;
		
		case 933419071:
			iVar0 = 506;
			break;
		
		case 1362374839:
			iVar0 = 507;
			break;
		
		case 488078687:
			iVar0 = 508;
			break;
		
		case -1869054624:
			iVar0 = 509;
			break;
		
		case -1817642831:
			iVar0 = 510;
			break;
		
		case 482472119:
			iVar0 = 511;
			break;
		
		case -1736839817:
			iVar0 = 512;
			break;
		
		case 415527077:
			iVar0 = 513;
			break;
		
		case -907440189:
			iVar0 = 514;
			break;
		
		case -2099454789:
			iVar0 = 515;
			break;
		
		case -1719543542:
			iVar0 = 516;
			break;
		
		case 1848661824:
			iVar0 = 517;
			break;
		
		case -2018029706:
			iVar0 = 518;
			break;
		
		case -717212544:
			iVar0 = 519;
			break;
		
		case -594210450:
			iVar0 = 520;
			break;
		
		case 1520437442:
			iVar0 = 521;
			break;
		
		case 374349467:
			iVar0 = 522;
			break;
		
		case 1533123503:
			iVar0 = 523;
			break;
		
		case -1832780872:
			iVar0 = 524;
			break;
		
		case 130721536:
			iVar0 = 525;
			break;
		
		case 195356001:
			iVar0 = 526;
			break;
		
		case -556915722:
			iVar0 = 527;
			break;
		
		case -1930562696:
			iVar0 = 528;
			break;
		
		case 941227127:
			iVar0 = 529;
			break;
		
		case -842699589:
			iVar0 = 530;
			break;
		
		case 1654019571:
			iVar0 = 531;
			break;
		
		case 224191803:
			iVar0 = 532;
			break;
		
		case -1996796255:
			iVar0 = 533;
			break;
		
		case -1850715440:
			iVar0 = 534;
			break;
		
		case 1603163718:
			iVar0 = 535;
			break;
		
		case 1567227108:
			iVar0 = 536;
			break;
		
		case -1630649997:
			iVar0 = 537;
			break;
		
		case -25727072:
			iVar0 = 538;
			break;
		
		case -1363418653:
			iVar0 = 539;
			break;
		
		case 1878229535:
			iVar0 = 540;
			break;
		
		case 1531050226:
			iVar0 = 541;
			break;
		
		case 1246243345:
			iVar0 = 542;
			break;
		
		case 463561930:
			iVar0 = 543;
			break;
		
		case 1431846777:
			iVar0 = 544;
			break;
		
		case -460168116:
			iVar0 = 545;
			break;
		
		case -2015343582:
			iVar0 = 546;
			break;
		
		case 2051301469:
			iVar0 = 547;
			break;
		
		case 1887452986:
			iVar0 = 548;
			break;
		
		case -1551331969:
			iVar0 = 549;
			break;
		
		case 682382693:
			iVar0 = 550;
			break;
		
		case 765481743:
			iVar0 = 551;
			break;
		
		case 1094179010:
			iVar0 = 552;
			break;
		
		case 1906582382:
			iVar0 = 553;
			break;
		
		case 1923135102:
			iVar0 = 554;
			break;
		
		case -964908188:
			iVar0 = 555;
			break;
		
		case -1145896773:
			iVar0 = 556;
			break;
		
		case -776248682:
			iVar0 = 557;
			break;
		
		case 872613482:
			iVar0 = 558;
			break;
		
		case 1049060638:
			iVar0 = 559;
			break;
		
		case -927135334:
			iVar0 = 560;
			break;
		
		case -445820043:
			iVar0 = 561;
			break;
		
		case 1610045630:
			iVar0 = 562;
			break;
		
		case -1070800165:
			iVar0 = 563;
			break;
		
		case -589592162:
			iVar0 = 564;
			break;
		
		case 1723966869:
			iVar0 = 565;
			break;
		
		case 402539085:
			iVar0 = 566;
			break;
		
		case 873283678:
			iVar0 = 567;
			break;
		
		case -883161109:
			iVar0 = 568;
			break;
		
		case -1764919154:
			iVar0 = 569;
			break;
		
		case -2050352513:
			iVar0 = 570;
			break;
		
		case 1114188021:
			iVar0 = 571;
			break;
		
		case 1798282399:
			iVar0 = 572;
			break;
		
		case 1944820428:
			iVar0 = 573;
			break;
		
		case 100210893:
			iVar0 = 574;
			break;
		
		case -1699022511:
			iVar0 = 575;
			break;
		
		case 466917406:
			iVar0 = 576;
			break;
		
		case -349746245:
			iVar0 = 577;
			break;
		
		case 715904570:
			iVar0 = 578;
			break;
		
		case 281777035:
			iVar0 = 579;
			break;
		
		case 1511283406:
			iVar0 = 580;
			break;
		
		case -241337647:
			iVar0 = 581;
			break;
		
		case 748393780:
			iVar0 = 582;
			break;
		
		case 709511536:
			iVar0 = 583;
			break;
		
		case -652535466:
			iVar0 = 584;
			break;
		
		case -1148900842:
			iVar0 = 585;
			break;
		
		case -271863310:
			iVar0 = 586;
			break;
		
		case 35654857:
			iVar0 = 587;
			break;
		
		case 1894813304:
			iVar0 = 588;
			break;
		
		case 1184660438:
			iVar0 = 589;
			break;
		
		case -1461750963:
			iVar0 = 590;
			break;
		
		case 769964545:
			iVar0 = 591;
			break;
		
		case 1424500982:
			iVar0 = 592;
			break;
		
		case -1810785185:
			iVar0 = 593;
			break;
		
		case 837990279:
			iVar0 = 594;
			break;
		
		case -1357788003:
			iVar0 = 595;
			break;
		
		case -8210327:
			iVar0 = 596;
			break;
		
		case 1186553524:
			iVar0 = 597;
			break;
		
		case 1174934203:
			iVar0 = 598;
			break;
		
		case -984449089:
			iVar0 = 599;
			break;
	}
	switch (iParam0)
	{
		case -49570837:
			iVar0 = 600;
			break;
		
		case -1680371785:
			iVar0 = 601;
			break;
		
		case -1850912390:
			iVar0 = 602;
			break;
		
		case -1740038087:
			iVar0 = 603;
			break;
		
		case -619541947:
			iVar0 = 604;
			break;
		
		case 294240494:
			iVar0 = 605;
			break;
		
		case -765542196:
			iVar0 = 606;
			break;
		
		case -1420662645:
			iVar0 = 607;
			break;
		
		case 331918356:
			iVar0 = 608;
			break;
		
		case 204953755:
			iVar0 = 609;
			break;
		
		case 1764172461:
			iVar0 = 610;
			break;
		
		case 1462870109:
			iVar0 = 611;
			break;
		
		case -2071014467:
			iVar0 = 612;
			break;
		
		case 478439238:
			iVar0 = 613;
			break;
		
		case 796489219:
			iVar0 = 614;
			break;
		
		case 843279688:
			iVar0 = 615;
			break;
		
		case 1752551314:
			iVar0 = 616;
			break;
		
		case 735155845:
			iVar0 = 617;
			break;
		
		case 1863251462:
			iVar0 = 618;
			break;
		
		case -2142058763:
			iVar0 = 619;
			break;
		
		case -207591105:
			iVar0 = 620;
			break;
		
		case -932813887:
			iVar0 = 621;
			break;
		
		case -313503199:
			iVar0 = 622;
			break;
		
		case 718936417:
			iVar0 = 623;
			break;
		
		case -1107649605:
			iVar0 = 624;
			break;
		
		case 39090475:
			iVar0 = 625;
			break;
		
		case 1628251208:
			iVar0 = 626;
			break;
		
		case -311245907:
			iVar0 = 627;
			break;
		
		case -942031335:
			iVar0 = 628;
			break;
		
		case -1285040537:
			iVar0 = 629;
			break;
		
		case -606706891:
			iVar0 = 630;
			break;
		
		case -1719095858:
			iVar0 = 631;
			break;
		
		case 1725502681:
			iVar0 = 632;
			break;
		
		case 609583888:
			iVar0 = 633;
			break;
		
		case -1172383155:
			iVar0 = 634;
			break;
		
		case -3492404:
			iVar0 = 635;
			break;
		
		case -1006004645:
			iVar0 = 636;
			break;
		
		case -1937311482:
			iVar0 = 637;
			break;
		
		case -2065604094:
			iVar0 = 638;
			break;
		
		case 2028818254:
			iVar0 = 639;
			break;
		
		case 1624012067:
			iVar0 = 640;
			break;
		
		case -1877817141:
			iVar0 = 641;
			break;
		
		case -911576192:
			iVar0 = 642;
			break;
		
		case -2038013276:
			iVar0 = 643;
			break;
		
		case -901986542:
			iVar0 = 644;
			break;
		
		case 1792492176:
			iVar0 = 645;
			break;
		
		case -86485329:
			iVar0 = 646;
			break;
		
		case -1083434268:
			iVar0 = 647;
			break;
		
		case 613606704:
			iVar0 = 648;
			break;
		
		case -394853815:
			iVar0 = 649;
			break;
		
		case -1103127620:
			iVar0 = 650;
			break;
		
		case -1565650506:
			iVar0 = 651;
			break;
		
		case 1845793118:
			iVar0 = 652;
			break;
		
		case 105835401:
			iVar0 = 653;
			break;
		
		case 874268443:
			iVar0 = 654;
			break;
		
		case 2088424900:
			iVar0 = 655;
			break;
		
		case -786732051:
			iVar0 = 656;
			break;
		
		case 2054090970:
			iVar0 = 657;
			break;
		
		case 1878368697:
			iVar0 = 658;
			break;
		
		case 569662133:
			iVar0 = 659;
			break;
		
		case -792802958:
			iVar0 = 660;
			break;
		
		case 2006001399:
			iVar0 = 661;
			break;
		
		case 1785762805:
			iVar0 = 662;
			break;
		
		case 737220320:
			iVar0 = 663;
			break;
		
		case 1396060544:
			iVar0 = 664;
			break;
		
		case -1964728736:
			iVar0 = 665;
			break;
		
		case 1593302778:
			iVar0 = 666;
			break;
		
		case 84849272:
			iVar0 = 667;
			break;
		
		case -402776165:
			iVar0 = 668;
			break;
		
		case -221660734:
			iVar0 = 669;
			break;
		
		case 1648112645:
			iVar0 = 670;
			break;
		
		case 2066668749:
			iVar0 = 671;
			break;
		
		case -4424163:
			iVar0 = 672;
			break;
		
		case -173288591:
			iVar0 = 673;
			break;
		
		case 253771760:
			iVar0 = 674;
			break;
		
		case -1431574022:
			iVar0 = 675;
			break;
		
		case 959314664:
			iVar0 = 676;
			break;
		
		case 1670479428:
			iVar0 = 677;
			break;
		
		case 1779534675:
			iVar0 = 678;
			break;
		
		case -1268204471:
			iVar0 = 679;
			break;
		
		case -1937668252:
			iVar0 = 680;
			break;
		
		case -192802570:
			iVar0 = 681;
			break;
		
		case 1200380295:
			iVar0 = 682;
			break;
		
		case -644503216:
			iVar0 = 683;
			break;
		
		case 496410473:
			iVar0 = 684;
			break;
		
		case 462780886:
			iVar0 = 685;
			break;
		
		case 211198653:
			iVar0 = 686;
			break;
		
		case -504012739:
			iVar0 = 687;
			break;
		
		case 34276608:
			iVar0 = 688;
			break;
		
		case -2088223199:
			iVar0 = 689;
			break;
		
		case 2056773549:
			iVar0 = 690;
			break;
		
		case 962023066:
			iVar0 = 691;
			break;
		
		case 893288510:
			iVar0 = 692;
			break;
		
		case 1963590204:
			iVar0 = 693;
			break;
		
		case 919272855:
			iVar0 = 694;
			break;
		
		case 413754974:
			iVar0 = 695;
			break;
		
		case -1862916472:
			iVar0 = 696;
			break;
		
		case -1184732039:
			iVar0 = 697;
			break;
		
		case -143503455:
			iVar0 = 698;
			break;
	}
	if (iVar0 != -1)
	{
		*uParam1 = (129 + iVar0);
		return true;
	}
	return false;
}

int func_585(int iParam0, int iParam1)//Position - 0x3CD23
{
	int iVar0;
	int iVar1;
	
	if (func_587(iParam0) == 6022)
	{
		return false;
	}
	iVar0 = func_586(iParam0, iParam1);
	iVar1 = iParam0;
	return gameplay::is_bit_set(iVar0, func_570(iVar1));
}

var func_586(var uParam0, int iParam1)//Position - 0x3CD55
{
	var uVar0;
	
	uVar0 = func_241(func_587(uParam0), iParam1, 0);
	return uVar0;
}

int func_587(var uParam0)//Position - 0x3CD6E
{
	int iVar0;
	int iVar1;
	
	iVar0 = uParam0;
	iVar1 = func_575(iVar0);
	if ((func_574() == 0 || func_573() == 0) || (func_574() == 999 && func_573() == 999))
	{
		switch (iVar1)
		{
			case 0:
				return 1033;
				break;
			
			case 1:
				return 1034;
				break;
			
			case 2:
				return 1035;
				break;
			
			case 3:
				return 1036;
				break;
			
			case 4:
				return 1037;
				break;
			
			case 5:
				return 1497;
				break;
			
			case 6:
				return 1750;
				break;
			
			case 7:
				return 1944;
				break;
			
			case 8:
				return 1945;
				break;
			
			case 9:
				return 1946;
				break;
			
			case 10:
				return 1947;
				break;
			
			case 11:
				return 1948;
				break;
			
			case 12:
				return 1949;
				break;
			
			case 13:
				return 2404;
				break;
			
			case 14:
				return 2424;
				break;
			
			case 15:
				return 2427;
				break;
			
			case 16:
				return 2430;
				break;
			
			case 17:
				return 2593;
				break;
			
			case 18:
				return 2596;
				break;
			
			case 19:
				return 2599;
				break;
			
			case 20:
				return 3755;
				break;
			
			case 21:
				return 3758;
				break;
			
			case 22:
				return 3833;
				break;
			
			case 23:
				return 3836;
				break;
			
			case 24:
				return 3839;
				break;
			
			case 25:
				return 3842;
				break;
			
			case 26:
				return 5333;
				break;
			
			case 27:
				return 5336;
				break;
			}
	}
	return 6022;
}

int func_588(int iParam0)//Position - 0x3CF60
{
	switch (entity::get_entity_model(iParam0))
	{
		case joaat("player_zero"):
			return 0;
			break;
		
		case joaat("player_one"):
			return 1;
			break;
		
		case joaat("player_two"):
			return 2;
			break;
		
		case joaat("mp_m_freemode_01"):
			return 3;
			break;
		
		case joaat("mp_f_freemode_01"):
			return 4;
			break;
	}
	return 0;
}

int func_589(int iParam0, int iParam1)//Position - 0x3CFB5
{
	int iVar0;
	int iVar1;
	int iVar2;
	int iVar3;
	var uVar4;
	int iVar5;
	int iVar6;
	int iVar7;
	int iVar8;
	int iVar9;
	var uVar10;
	int iVar11;
	
	if (iParam0 == joaat("mp_m_freemode_01"))
	{
		if (iParam1 == 0)
		{
			return 123;
			return -1;
		}
		else if (iParam1 == 1)
		{
			return 93;
		}
		else if (iParam1 == 2)
		{
			return 93;
		}
		else if (iParam1 == 3)
		{
			return 93;
		}
		else if (iParam1 == 4)
		{
			return 93;
		}
		else if (iParam1 == 5)
		{
			return 93;
		}
		else if (iParam1 == 6)
		{
			return 93;
		}
		else if (iParam1 == 7)
		{
			return 94;
		}
		else if (iParam1 == 8)
		{
			return 94;
		}
		else if (iParam1 == 9)
		{
			return 94;
		}
		else if (iParam1 == 10)
		{
			return 94;
		}
		else if (iParam1 == 11)
		{
			return 94;
		}
		else if (iParam1 == 12)
		{
			return 94;
		}
		else if (iParam1 == 13)
		{
			return 95;
		}
		else if (iParam1 == 14)
		{
			return 95;
		}
		else if (iParam1 == 15)
		{
			return 95;
		}
		else if (iParam1 == 16)
		{
			return 95;
		}
		else if (iParam1 == 17)
		{
			return 95;
		}
		else if (iParam1 == 18)
		{
			return 95;
		}
		else if (iParam1 == 19)
		{
			return 96;
		}
		else if (iParam1 == 20)
		{
			return 96;
		}
		else if (iParam1 == 21)
		{
			return 96;
		}
		else if (iParam1 == 22)
		{
			return 96;
		}
		else if (iParam1 == 23)
		{
			return 96;
		}
		else if (iParam1 == 24)
		{
			return 96;
		}
		else if (iParam1 == 25)
		{
			return 96;
		}
		else if (iParam1 == 26)
		{
			return 97;
		}
		else if (iParam1 == 27)
		{
			return 97;
		}
		else if (iParam1 == 28)
		{
			return 97;
		}
		else if (iParam1 == 29)
		{
			return 97;
		}
		else if (iParam1 == 30)
		{
			return 97;
		}
		else if (iParam1 == 31)
		{
			return 97;
		}
		else if (iParam1 == 32)
		{
			return 98;
		}
		else if (iParam1 == 33)
		{
			return 98;
		}
		else if (iParam1 == 34)
		{
			return 98;
		}
		else if (iParam1 == 35)
		{
			return 98;
		}
		else if (iParam1 == 36)
		{
			return 98;
		}
		else if (iParam1 == 37)
		{
			return 98;
		}
		else if (iParam1 == 38)
		{
			return 99;
		}
		else if (iParam1 == 39)
		{
			return 99;
		}
		else if (iParam1 == 40)
		{
			return 99;
		}
		else if (iParam1 == 41)
		{
			return 99;
		}
		else if (iParam1 == 42)
		{
			return 99;
		}
		else if (iParam1 == 43)
		{
			return 99;
		}
		else if (iParam1 == 44)
		{
			return 99;
		}
		else if (iParam1 == 45)
		{
			return 100;
		}
		else if (iParam1 == 46)
		{
			return 100;
		}
		else if (iParam1 == 47)
		{
			return 100;
		}
		else if (iParam1 == 48)
		{
			return 100;
		}
		else if (iParam1 == 49)
		{
			return 100;
		}
		else if (iParam1 == 50)
		{
			return 101;
		}
		else if (iParam1 == 51)
		{
			return 101;
		}
		else if (iParam1 == 52)
		{
			return 101;
		}
		else if (iParam1 == 53)
		{
			return 101;
		}
		else if (iParam1 == 54)
		{
			return 101;
		}
		else if (iParam1 == 55)
		{
			return 101;
		}
		else if (iParam1 == 56)
		{
			return 101;
		}
		else if (iParam1 == 57)
		{
			return 102;
		}
		else if (iParam1 == 58)
		{
			return 102;
		}
		else if (iParam1 == 59)
		{
			return 102;
		}
		else if (iParam1 == 60)
		{
			return 102;
		}
		else if (iParam1 == 61)
		{
			return 102;
		}
		else if (iParam1 == 62)
		{
			return 102;
		}
		else if (iParam1 == 63)
		{
			return 103;
		}
		else if (iParam1 == 64)
		{
			return 103;
		}
		else if (iParam1 == 65)
		{
			return 103;
		}
		else if (iParam1 == 66)
		{
			return 103;
		}
		else if (iParam1 == 67)
		{
			return 103;
		}
		else if (iParam1 == 68)
		{
			return 103;
		}
		else if (iParam1 == 69)
		{
			return 104;
		}
		else if (iParam1 == 70)
		{
			return 104;
		}
		else if (iParam1 == 71)
		{
			return 104;
		}
		else if (iParam1 == 72)
		{
			return 104;
		}
		else if (iParam1 == 73)
		{
			return 104;
		}
		else if (iParam1 == 74)
		{
			return 105;
		}
		else if (iParam1 == 75)
		{
			return 105;
		}
		else if (iParam1 == 76)
		{
			return 105;
		}
		else if (iParam1 == 77)
		{
			return 105;
		}
		else if (iParam1 == 78)
		{
			return 105;
		}
		else if (iParam1 == 79)
		{
			return 105;
		}
		else if (iParam1 == 80)
		{
			return 106;
		}
		else if (iParam1 == 81)
		{
			return 106;
		}
		else if (iParam1 == 82)
		{
			return 106;
		}
		else if (iParam1 == 83)
		{
			return 106;
		}
		else if (iParam1 == 84)
		{
			return 106;
		}
		else if (iParam1 == 85)
		{
			return 107;
		}
		else if (iParam1 == 86)
		{
			return 107;
		}
		else if (iParam1 == 87)
		{
			return 107;
		}
		else if (iParam1 == 88)
		{
			return 107;
		}
		else if (iParam1 == 89)
		{
			return 107;
		}
		else if (iParam1 == 90)
		{
			return 107;
		}
		else if (iParam1 >= 91)
		{
			iVar0 = func_604(iParam0, iParam1, 2, 3);
			if (iVar0 != -1)
			{
				switch (iVar0)
				{
					case -1983429828:
					case 228608740:
					case 600995656:
					case 850728205:
					case 1093513726:
						return 108;
						break;
					
					case -457639650:
					case -94952354:
					case 144031963:
					case 533262145:
					case -1545668757:
						return 109;
						break;
					
					case -1625493211:
					case -1112723899:
					case -1432451032:
					case -647502406:
					case -925481833:
						return 110;
						break;
					
					case -1168328595:
					case -1421993424:
					case -576454917:
					case -438399124:
					case 271967258:
						return 111;
						break;
					
					case -1903246936:
					case 1155542604:
					case 2048071857:
					case -1605475033:
					case 100085859:
						return 112;
						break;
					
					case 745771948:
					case -1619297862:
					case -1878926649:
					case -485850917:
					case 558628189:
						return 113;
						break;
					
					case 1577121865:
					case 884057515:
					case 2055188806:
					case 1362452146:
					case -1761842625:
						return 114;
						break;
				}
				iVar1 = dlc1::_get_num_forced_components(iVar0);
				iVar2 = 0;
				while (iVar2 < iVar1)
				{
					dlc1::get_forced_component(iVar0, iVar2, &iVar3, &uVar4, &iVar5);
					if (iVar5 == 10)
					{
						if (iVar3 != 0 && iVar3 != 1849449579)
						{
							return func_582(iVar3, 3);
						}
						else
						{
							return uVar4;
						}
					}
					iVar2++;
				}
			}
		}
	}
	else if (iParam0 == joaat("mp_f_freemode_01"))
	{
		if (iParam1 == 0)
		{
			return 123;
			return -1;
		}
		else if (iParam1 == 1)
		{
			return 93;
		}
		else if (iParam1 == 2)
		{
			return 93;
		}
		else if (iParam1 == 3)
		{
			return 93;
		}
		else if (iParam1 == 4)
		{
			return 93;
		}
		else if (iParam1 == 5)
		{
			return 93;
		}
		else if (iParam1 == 6)
		{
			return 93;
		}
		else if (iParam1 == 7)
		{
			return 94;
		}
		else if (iParam1 == 8)
		{
			return 94;
		}
		else if (iParam1 == 9)
		{
			return 94;
		}
		else if (iParam1 == 10)
		{
			return 94;
		}
		else if (iParam1 == 11)
		{
			return 94;
		}
		else if (iParam1 == 12)
		{
			return 94;
		}
		else if (iParam1 == 13)
		{
			return 95;
		}
		else if (iParam1 == 14)
		{
			return 95;
		}
		else if (iParam1 == 15)
		{
			return 95;
		}
		else if (iParam1 == 16)
		{
			return 95;
		}
		else if (iParam1 == 17)
		{
			return 95;
		}
		else if (iParam1 == 18)
		{
			return 96;
		}
		else if (iParam1 == 19)
		{
			return 96;
		}
		else if (iParam1 == 20)
		{
			return 96;
		}
		else if (iParam1 == 21)
		{
			return 96;
		}
		else if (iParam1 == 22)
		{
			return 96;
		}
		else if (iParam1 == 23)
		{
			return 96;
		}
		else if (iParam1 == 24)
		{
			return 97;
		}
		else if (iParam1 == 25)
		{
			return 97;
		}
		else if (iParam1 == 26)
		{
			return 97;
		}
		else if (iParam1 == 27)
		{
			return 97;
		}
		else if (iParam1 == 28)
		{
			return 97;
		}
		else if (iParam1 == 29)
		{
			return 97;
		}
		else if (iParam1 == 30)
		{
			return 98;
		}
		else if (iParam1 == 31)
		{
			return 98;
		}
		else if (iParam1 == 32)
		{
			return 98;
		}
		else if (iParam1 == 33)
		{
			return 98;
		}
		else if (iParam1 == 34)
		{
			return 98;
		}
		else if (iParam1 == 35)
		{
			return 99;
		}
		else if (iParam1 == 36)
		{
			return 99;
		}
		else if (iParam1 == 37)
		{
			return 99;
		}
		else if (iParam1 == 38)
		{
			return 99;
		}
		else if (iParam1 == 39)
		{
			return 99;
		}
		else if (iParam1 == 40)
		{
			return 99;
		}
		else if (iParam1 == 41)
		{
			return 100;
		}
		else if (iParam1 == 42)
		{
			return 100;
		}
		else if (iParam1 == 43)
		{
			return 100;
		}
		else if (iParam1 == 44)
		{
			return 100;
		}
		else if (iParam1 == 45)
		{
			return 100;
		}
		else if (iParam1 == 46)
		{
			return 100;
		}
		else if (iParam1 == 47)
		{
			return 101;
		}
		else if (iParam1 == 48)
		{
			return 101;
		}
		else if (iParam1 == 49)
		{
			return 101;
		}
		else if (iParam1 == 50)
		{
			return 101;
		}
		else if (iParam1 == 51)
		{
			return 101;
		}
		else if (iParam1 == 52)
		{
			return 101;
		}
		else if (iParam1 == 53)
		{
			return 102;
		}
		else if (iParam1 == 54)
		{
			return 102;
		}
		else if (iParam1 == 55)
		{
			return 102;
		}
		else if (iParam1 == 56)
		{
			return 102;
		}
		else if (iParam1 == 57)
		{
			return 102;
		}
		else if (iParam1 == 58)
		{
			return 102;
		}
		else if (iParam1 == 59)
		{
			return 102;
		}
		else if (iParam1 == 60)
		{
			return 103;
		}
		else if (iParam1 == 61)
		{
			return 103;
		}
		else if (iParam1 == 62)
		{
			return 103;
		}
		else if (iParam1 == 63)
		{
			return 103;
		}
		else if (iParam1 == 64)
		{
			return 103;
		}
		else if (iParam1 == 65)
		{
			return 103;
		}
		else if (iParam1 == 66)
		{
			return 103;
		}
		else if (iParam1 == 67)
		{
			return 104;
		}
		else if (iParam1 == 68)
		{
			return 104;
		}
		else if (iParam1 == 69)
		{
			return 104;
		}
		else if (iParam1 == 70)
		{
			return 104;
		}
		else if (iParam1 == 71)
		{
			return 104;
		}
		else if (iParam1 == 72)
		{
			return 104;
		}
		else if (iParam1 == 73)
		{
			return 105;
		}
		else if (iParam1 == 74)
		{
			return 105;
		}
		else if (iParam1 == 75)
		{
			return 105;
		}
		else if (iParam1 == 76)
		{
			return 105;
		}
		else if (iParam1 == 77)
		{
			return 105;
		}
		else if (iParam1 == 78)
		{
			return 105;
		}
		else if (iParam1 == 79)
		{
			return func_582(-1261720761, 4);
		}
		else if (iParam1 == 80)
		{
			return func_582(-1261720761, 4);
		}
		else if (iParam1 == 81)
		{
			return func_582(-1261720761, 4);
		}
		else if (iParam1 == 82)
		{
			return func_582(-1261720761, 4);
		}
		else if (iParam1 == 83)
		{
			return func_582(-1261720761, 4);
		}
		else if (iParam1 == 84)
		{
			return func_582(-1261720761, 4);
		}
		else if (iParam1 == 85)
		{
			return 107;
		}
		else if (iParam1 == 86)
		{
			return 107;
		}
		else if (iParam1 == 87)
		{
			return 107;
		}
		else if (iParam1 == 88)
		{
			return 107;
		}
		else if (iParam1 == 89)
		{
			return 107;
		}
		else if (iParam1 == 90)
		{
			return 107;
		}
		else if (iParam1 == 91)
		{
			return 107;
		}
		else if (iParam1 >= 92)
		{
			iVar6 = func_604(iParam0, iParam1, 2, 4);
			if (iVar6 != -1)
			{
				switch (iVar6)
				{
					case -1238992735:
					case -1947261901:
					case -771018642:
					case -1486169302:
					case 1159796376:
						return 108;
						break;
					
					case 1389867525:
					case 1622396349:
					case 1851615504:
					case -2052614252:
					case -1818610823:
						return 109;
						break;
					
					case 1855226196:
					case 271139943:
					case -1099030254:
					case -307724442:
					case -637872117:
						return 110;
						break;
					
					case -663797501:
					case 2088667427:
					case 1779786837:
					case -1609936838:
					case -1880477702:
						return 111;
						break;
					
					case 1052499595:
					case 142438919:
					case 458495932:
					case -701723290:
					case -119221546:
						return 112;
						break;
					
					case 1245050198:
					case 1481937299:
					case 1754870300:
					case -2033029490:
					case 62318681:
						return 112;
						break;
					
					case 665775322:
					case 618391324:
					case 497473714:
					case 123808807:
					case -231538229:
						return 114;
						break;
				}
				iVar7 = dlc1::_get_num_forced_components(iVar6);
				iVar8 = 0;
				while (iVar8 < iVar7)
				{
					dlc1::get_forced_component(iVar6, iVar8, &iVar9, &uVar10, &iVar11);
					if (iVar11 == 10)
					{
						if (iVar9 != 0 && iVar9 != 1849449579)
						{
							return func_582(iVar9, 4);
						}
						else
						{
							return uVar10;
						}
					}
					iVar8++;
				}
			}
		}
	}
	return -1;
}

void func_590(int iParam0, int iParam1)//Position - 0x3DDB6
{
	struct<12> Var0;
	int iVar13;
	int iVar14;
	int iVar15;
	struct<7> Var16;
	int iVar31;
	int iVar32;
	struct<7> Var33;
	int iVar48;
	int iVar49;
	struct<7> Var50;
	int iVar65;
	int iVar66;
	struct<7> Var67;
	int iVar82;
	
	if (!ped::is_ped_injured(iParam1))
	{
		iVar13 = func_588(iParam1);
		if (iParam0 != 0)
		{
			if (iVar13 == 3 || iVar13 == 4)
			{
				if (iParam0 == 1019352240)
				{
					func_615(13, 0, Global_69516);
					func_615(14, 0, Global_69516);
					func_615(15, 0, Global_69516);
					func_615(16, 0, Global_69516);
					func_615(71, 0, Global_69516);
					func_615(72, 0, Global_69516);
					return;
				}
				else if (iParam0 == 277073536)
				{
					if (iVar13 == 3)
					{
						func_615(73, 0, Global_69516);
						func_615(74, 0, Global_69516);
						func_615(75, 0, Global_69516);
						func_615(76, 0, Global_69516);
						func_615(77, 0, Global_69516);
						func_615(78, 0, Global_69516);
						func_615(79, 0, Global_69516);
						func_615(80, 0, Global_69516);
						func_615(81, 0, Global_69516);
						func_615(82, 0, Global_69516);
						func_615(83, 0, Global_69516);
						func_615(84, 0, Global_69516);
						func_615(85, 0, Global_69516);
						func_615(86, 0, Global_69516);
						func_615(90, 0, Global_69516);
						func_615(91, 0, Global_69516);
						func_615(124, 0, Global_69516);
						func_615(125, 0, Global_69516);
						func_615(87, 0, Global_69516);
						func_615(88, 0, Global_69516);
						func_615(89, 0, Global_69516);
						iVar15 = dlc1::_0x278F76C3B0A8F109(3);
						iVar14 = 0;
						while (iVar14 < iVar15)
						{
							if (dlc1::_0xFF56381874F82086(3, iVar14, &Var16))
							{
								if (Var16.f_6 == 277073536)
								{
									func_615((129 + iVar14), 0, Global_69516);
								}
							}
							iVar14++;
						}
					}
					else
					{
						func_615(73, 0, Global_69516);
						func_615(74, 0, Global_69516);
						func_615(75, 0, Global_69516);
						func_615(76, 0, Global_69516);
						func_615(77, 0, Global_69516);
						func_615(78, 0, Global_69516);
						func_615(79, 0, Global_69516);
						func_615(80, 0, Global_69516);
						func_615(81, 0, Global_69516);
						func_615(82, 0, Global_69516);
						func_615(83, 0, Global_69516);
						func_615(84, 0, Global_69516);
						func_615(85, 0, Global_69516);
						func_615(92, 0, Global_69516);
						func_615(87, 0, Global_69516);
						func_615(88, 0, Global_69516);
						func_615(89, 0, Global_69516);
						iVar32 = dlc1::_0x278F76C3B0A8F109(4);
						iVar31 = 0;
						while (iVar31 < iVar32)
						{
							if (dlc1::_0xFF56381874F82086(4, iVar31, &Var33))
							{
								if (Var33.f_6 == 277073536)
								{
									func_615((129 + iVar31), 0, Global_69516);
								}
							}
							iVar31++;
						}
					}
				}
				else if (iParam0 == 2140335355)
				{
					if (iVar13 == 3)
					{
						func_615(93, 0, Global_69516);
						func_615(94, 0, Global_69516);
						func_615(95, 0, Global_69516);
						func_615(96, 0, Global_69516);
						func_615(97, 0, Global_69516);
						func_615(98, 0, Global_69516);
						func_615(99, 0, Global_69516);
						func_615(100, 0, Global_69516);
						func_615(101, 0, Global_69516);
						func_615(102, 0, Global_69516);
						func_615(103, 0, Global_69516);
						func_615(104, 0, Global_69516);
						func_615(105, 0, Global_69516);
						func_615(106, 0, Global_69516);
						func_615(107, 0, Global_69516);
						func_615(108, 0, Global_69516);
						func_615(109, 0, Global_69516);
						func_615(110, 0, Global_69516);
						func_615(111, 0, Global_69516);
						func_615(112, 0, Global_69516);
						func_615(113, 0, Global_69516);
						func_615(114, 0, Global_69516);
						func_615(115, 0, Global_69516);
						func_615(116, 0, Global_69516);
						func_615(117, 0, Global_69516);
						func_615(123, 0, Global_69516);
						iVar49 = dlc1::_0x278F76C3B0A8F109(3);
						iVar48 = 0;
						while (iVar48 < iVar49)
						{
							if (dlc1::_0xFF56381874F82086(3, iVar48, &Var50))
							{
								if (Var50.f_6 == 2140335355)
								{
									func_615((129 + iVar48), 0, Global_69516);
								}
							}
							iVar48++;
						}
					}
					else
					{
						func_615(93, 0, Global_69516);
						func_615(94, 0, Global_69516);
						func_615(95, 0, Global_69516);
						func_615(96, 0, Global_69516);
						func_615(97, 0, Global_69516);
						func_615(98, 0, Global_69516);
						func_615(99, 0, Global_69516);
						func_615(100, 0, Global_69516);
						func_615(101, 0, Global_69516);
						func_615(102, 0, Global_69516);
						func_615(103, 0, Global_69516);
						func_615(104, 0, Global_69516);
						func_615(105, 0, Global_69516);
						func_615(106, 0, Global_69516);
						func_615(107, 0, Global_69516);
						func_615(108, 0, Global_69516);
						func_615(109, 0, Global_69516);
						func_615(110, 0, Global_69516);
						func_615(111, 0, Global_69516);
						func_615(112, 0, Global_69516);
						func_615(113, 0, Global_69516);
						func_615(114, 0, Global_69516);
						func_615(115, 0, Global_69516);
						func_615(116, 0, Global_69516);
						func_615(117, 0, Global_69516);
						func_615(118, 0, Global_69516);
						func_615(119, 0, Global_69516);
						func_615(120, 0, Global_69516);
						func_615(121, 0, Global_69516);
						func_615(122, 0, Global_69516);
						func_615(123, 0, Global_69516);
						iVar66 = dlc1::_0x278F76C3B0A8F109(4);
						iVar65 = 0;
						while (iVar65 < iVar66)
						{
							if (dlc1::_0xFF56381874F82086(4, iVar65, &Var67))
							{
								if (Var67.f_6 == 2140335355)
								{
									func_615((129 + iVar65), 0, Global_69516);
								}
							}
							iVar65++;
						}
					}
					return;
				}
			}
			iVar82 = 0;
			while (iVar82 < 127)
			{
				if (func_564(&Var0, iVar82, iVar13, iParam1, -1))
				{
					if (Var0.f_8 == iParam0)
					{
						func_615(Var0.f_11, 0, Global_69516);
					}
				}
				iVar82++;
			}
		}
	}
}

bool func_591(int iParam0, int iParam1)//Position - 0x3E3B3
{
	int iVar0;
	
	iVar0 = func_617();
	if (iVar0 != -1)
	{
		if (!func_592(iParam0, iParam1, iVar0))
		{
			func_615(iVar0, 0, Global_69516);
			return true;
		}
	}
	return false;
}

bool func_592(int iParam0, int iParam1, int iParam2)//Position - 0x3E3E5
{
	int iVar0;
	int iVar1;
	int iVar2;
	int iVar3;
	
	if (!func_599(iParam0, iParam1))
	{
		if (iParam0 == joaat("mp_m_freemode_01"))
		{
			iVar0 = -1;
			iVar1 = -1;
			if (iParam1 >= 237)
			{
				iVar1 = func_604(iParam0, iParam1, 11, 3);
				iVar0 = func_595(iVar1);
			}
			if (iVar1 != -1 && func_528(iVar1, 0) != -1)
			{
				return false;
			}
			if (iVar1 != -1 && func_593(iVar1, 0) != -1)
			{
				return false;
			}
			if (iVar1 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar1, -497440475, 0))
			{
				return false;
			}
			if ((iVar1 == -1198378836 || iVar1 == 968798999) || iVar1 == 1283250323)
			{
				return false;
			}
			if ((((((iParam1 >= 0 && iParam1 <= 15) || (iParam1 >= 16 && iParam1 <= 31)) || (iParam1 >= 124 && iParam1 <= 139)) || iVar0 == 0) || iVar0 == 1) || iVar0 == 8)
			{
				if (iParam2 == 15)
				{
					return true;
				}
				else if (iParam2 == 13 || iParam2 == 14)
				{
					if (func_581(iParam0, 11, iParam1, 0) == -1)
					{
						return true;
					}
				}
			}
			else if ((iParam1 >= 80 && iParam1 <= 95) || iVar0 == 5)
			{
				if ((iParam2 == 16 || iParam2 == 71) || iParam2 == 72)
				{
					return true;
				}
			}
			else if ((iParam1 >= 140 && iParam1 <= 155) || iVar0 == 9)
			{
				if (iParam2 == 13 || iParam2 == 15)
				{
					return true;
				}
			}
		}
		else if (iParam0 == joaat("mp_f_freemode_01"))
		{
			iVar2 = -1;
			iVar3 = -1;
			if (iParam1 >= 256)
			{
				iVar3 = func_604(iParam0, iParam1, 11, 4);
				iVar2 = func_595(iVar3);
			}
			if (iVar3 != -1 && func_528(iVar3, 0) != -1)
			{
				return false;
			}
			if (iVar3 != -1 && func_593(iVar3, 0) != -1)
			{
				return false;
			}
			if (iVar3 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar3, -497440475, 0))
			{
				return false;
			}
			if ((iParam1 >= 0 && iParam1 <= 15) || iVar2 == 0)
			{
				if (iParam2 == 13 || iParam2 == 15)
				{
					if (func_581(iParam0, 11, iParam1, 0) == -1)
					{
						return true;
					}
				}
			}
			else if ((iParam1 >= 32 && iParam1 <= 47) || iVar2 == 2)
			{
				if (iParam2 == 13 || iParam2 == 16)
				{
					if (func_581(iParam0, 11, iParam1, 0) == -1)
					{
						return true;
					}
				}
			}
			else if ((iParam1 >= 64 && iParam1 <= 79) || iVar2 == 4)
			{
				if (iParam2 == 13)
				{
					return true;
				}
				if (iParam2 == 15)
				{
					if (iVar2 != 4 || !dlc1::_0x341DE7ED1D2A1BFD(iVar3, 1113995558, 0))
					{
						return true;
					}
				}
			}
			else if ((iParam1 >= 80 && iParam1 <= 95) || iVar2 == 5)
			{
				if (iParam2 == 13)
				{
					return true;
				}
			}
			else if ((iParam1 >= 144 && iParam1 <= 159) || iVar2 == 9)
			{
				if (iParam2 == 14)
				{
					return true;
				}
			}
		}
	}
	return false;
}

int func_593(int iParam0, int iParam1)//Position - 0x3E756
{
	int iVar0;
	
	iVar0 = -1;
	if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, 1769225721, iParam1))
	{
		iVar0 = 0;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, -1834446747, iParam1))
	{
		iVar0 = 1;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, -939525357, iParam1))
	{
		iVar0 = 2;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, 38465448, iParam1))
	{
		iVar0 = 3;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, -1469891622, iParam1))
	{
		iVar0 = 4;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, -502321359, iParam1))
	{
		iVar0 = 5;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, -792359778, iParam1))
	{
		iVar0 = 6;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, 997614074, iParam1))
	{
		iVar0 = 7;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, 748799057, iParam1))
	{
		iVar0 = 8;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, 653048039, iParam1))
	{
		iVar0 = 9;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, -1922736331, iParam1))
	{
		iVar0 = 10;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, -1685128312, iParam1))
	{
		iVar0 = 11;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, 1892460036, iParam1))
	{
		iVar0 = 12;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, -296738547, iParam1))
	{
		iVar0 = 13;
	}
	return iVar0;
}

bool func_594(int iParam0, int iParam1, int iParam2)//Position - 0x3E89A
{
	int iVar0;
	int iVar1;
	int iVar2;
	int iVar3;
	int iVar4;
	int iVar5;
	int iVar6;
	
	if (iParam0 == joaat("mp_m_freemode_01"))
	{
		iVar0 = -1;
		iVar1 = -1;
		if (iParam1 >= 256)
		{
			iVar0 = func_604(iParam0, iParam1, 4, 3);
			iVar1 = func_595(iVar0);
		}
		iVar2 = -1;
		iVar3 = -1;
		if (iParam2 >= 237)
		{
			iVar2 = func_604(iParam0, iParam2, 11, 3);
			iVar3 = func_595(iVar2);
		}
		if (iVar2 != -1)
		{
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar2, -826135203, 0))
			{
				if (iVar0 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar0, -826135203, 0))
				{
					return true;
				}
				else
				{
					return false;
				}
			}
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar0, -826135203, 0))
			{
				if (iVar2 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar2, -826135203, 0))
				{
					return true;
				}
				else
				{
					return false;
				}
			}
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar2, -1855618474, 0))
			{
				if (iVar0 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar0, -1855618474, 0))
				{
					return true;
				}
				else
				{
					return false;
				}
			}
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar0, -1855618474, 0))
			{
				if (iVar2 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar2, -1855618474, 0))
				{
					return true;
				}
				else
				{
					return false;
				}
			}
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar2, 320460654, 0))
			{
				if (iVar0 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar0, 320460654, 0))
				{
					return true;
				}
				else
				{
					return false;
				}
			}
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar0, 320460654, 0))
			{
				if (iVar2 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar2, 320460654, 0))
				{
					return true;
				}
				else
				{
					return false;
				}
			}
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar2, -2017999390, 0))
			{
				if (iVar0 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar0, -2017999390, 0))
				{
					return true;
				}
				else
				{
					return false;
				}
			}
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar0, -2017999390, 0))
			{
				if (iVar2 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar2, -2017999390, 0))
				{
					return true;
				}
				else
				{
					return false;
				}
			}
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar2, 1625463492, 0))
			{
				if (iVar0 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar0, 648481062, 0))
				{
					return true;
				}
				else
				{
					return false;
				}
			}
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar0, 648481062, 0))
			{
				return true;
			}
		}
		else if (iVar0 != -1)
		{
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar0, 648481062, 0))
			{
				return true;
			}
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar0, -826135203, 0))
			{
				if (iVar2 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar2, -826135203, 0))
				{
					return true;
				}
				else
				{
					return false;
				}
			}
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar0, -1855618474, 0))
			{
				if (iVar2 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar2, -1855618474, 0))
				{
					return true;
				}
				else
				{
					return false;
				}
			}
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar0, 320460654, 0))
			{
				if (iVar2 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar2, 320460654, 0))
				{
					return true;
				}
				else
				{
					return false;
				}
			}
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar0, -2017999390, 0))
			{
				if (iVar2 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar2, -2017999390, 0))
				{
					return true;
				}
				else
				{
					return false;
				}
			}
		}
		if (iVar2 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar2, 2026620439, 0))
		{
			if (((((((((((((((iParam1 >= 0 && iParam1 <= 15) || (iParam1 >= 48 && iParam1 <= 63)) || (iParam1 >= 64 && iParam1 <= 79)) || (iParam1 >= 112 && iParam1 <= 127)) || (iParam1 >= 128 && iParam1 <= 143)) || (iParam1 >= 176 && iParam1 <= 191)) || (iParam1 >= 224 && iParam1 <= 239)) || iVar1 == 0) || iVar1 == 3) || iVar1 == 4) || iVar1 == 7) || iVar1 == 8) || iVar1 == 11) || iVar1 == 14) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, 1627756587, 0))
			{
				return true;
			}
			else
			{
				return false;
			}
		}
		switch (iVar0)
		{
			case 312004063:
			case 6695290:
			case 1724446270:
			case -448105673:
			case -611098679:
			case -1111088081:
			case -1406369540:
			case -1912159043:
			case 2076516410:
			case 1919618438:
			case 45227112:
			case -2129094253:
			case -421370587:
			case -675363106:
				if ((iParam2 >= 204 && iParam2 <= 219) || iVar3 == 13)
				{
					return false;
				}
				break;
		}
		if (dlc1::_0x341DE7ED1D2A1BFD(iVar2, 1021189127, 0))
		{
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar0, 2044466679, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar0, -1325813684, 0))
			{
				return false;
			}
		}
	}
	else if (iParam0 == joaat("mp_f_freemode_01"))
	{
		iVar4 = -1;
		iVar5 = -1;
		if (iParam1 >= 256)
		{
			iVar4 = func_604(iParam0, iParam1, 4, 4);
			iVar5 = func_595(iVar4);
		}
		iVar6 = -1;
		if (iParam2 >= 256)
		{
			iVar6 = func_604(iParam0, iParam2, 11, 4);
		}
		if (iVar6 != -1)
		{
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar6, -826135203, 0))
			{
				if (iVar4 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar4, -826135203, 0))
				{
					return true;
				}
				else
				{
					return false;
				}
			}
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar4, -826135203, 0))
			{
				if (iVar6 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar6, -826135203, 0))
				{
					return true;
				}
				else
				{
					return false;
				}
			}
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar6, -1855618474, 0))
			{
				if (iVar4 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1855618474, 0))
				{
					return true;
				}
				else
				{
					return false;
				}
			}
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1855618474, 0))
			{
				if (iVar6 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar6, -1855618474, 0))
				{
					return true;
				}
				else
				{
					return false;
				}
			}
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar6, 320460654, 0))
			{
				if (iVar4 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar4, 320460654, 0))
				{
					return true;
				}
				else
				{
					return false;
				}
			}
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar4, 320460654, 0))
			{
				if (iVar6 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar6, 320460654, 0))
				{
					return true;
				}
				else
				{
					return false;
				}
			}
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar6, -2017999390, 0))
			{
				if (iVar4 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar4, -2017999390, 0))
				{
					return true;
				}
				else
				{
					return false;
				}
			}
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar4, -2017999390, 0))
			{
				if (iVar6 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar6, -2017999390, 0))
				{
					return true;
				}
				else
				{
					return false;
				}
			}
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar6, -530089825, 0))
			{
				if ((iVar4 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar4, -530089825, 0)) || (iVar4 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1223513441, 0)))
				{
					return true;
				}
				else
				{
					return false;
				}
			}
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar4, -530089825, 0))
			{
				if ((iVar6 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar6, -530089825, 0)) || (iVar6 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar6, -1223513441, 0)))
				{
					return true;
				}
				else
				{
					return false;
				}
			}
			if (((((((((((dlc1::_0x341DE7ED1D2A1BFD(iVar6, -1200513218, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar6, 1965569012, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar6, -779835469, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar6, -1086258388, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar6, -1119232689, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar6, -1488441032, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar6, -868698159, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar6, 2044466679, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar6, -2020757158, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar6, -2088146832, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar6, -1446333198, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar6, -1351486939, 0))
			{
				if ((((((((((((((((((((((((((((((((iVar4 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1223513441, 0)) || (iParam1 >= 240 && iParam1 <= 255)) || iVar5 == 15) || iVar4 == 1667217362) || iVar4 == 1956239942) || iVar4 == -210905108) || iVar4 == 79690384) || iVar4 == 134611232) || iVar4 == 441755069) || iVar4 == -1685936105) || iVar4 == -1379382110) || iVar4 == -788622578) || iVar4 == -481740893) || iVar4 == -266743188) || iVar4 == 573421207) || iVar4 == -739668639) || iVar4 == -1126047902) || iVar4 == -954797108) || iVar4 == -1858238438) || iVar4 == -1551291215) || iVar4 == -989872783) || iVar4 == 2073733812) || iVar4 == -1596197578) || iVar4 == -942357733) || iVar4 == -40948081) || iVar4 == -1262871322) || iVar4 == -495388573) || iVar4 == 1091483025) || iVar4 == 785649948) || iVar4 == -313291240) || iVar4 == 495041640) || iVar4 == 749492925)
				{
					return false;
				}
			}
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar6, 821147517, 0))
			{
				if ((((((((((((((((((((((((((((((((iVar4 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1223513441, 0)) || (iParam1 >= 240 && iParam1 <= 255)) || iVar5 == 15) || iVar4 == 1667217362) || iVar4 == 1956239942) || iVar4 == -210905108) || iVar4 == 79690384) || iVar4 == 134611232) || iVar4 == 441755069) || iVar4 == -1685936105) || iVar4 == -1379382110) || iVar4 == -788622578) || iVar4 == -481740893) || iVar4 == -266743188) || iVar4 == 573421207) || iVar4 == -739668639) || iVar4 == -1126047902) || iVar4 == -954797108) || iVar4 == -1858238438) || iVar4 == -1551291215) || iVar4 == -989872783) || iVar4 == 2073733812) || iVar4 == -1596197578) || iVar4 == -942357733) || iVar4 == -40948081) || iVar4 == -1262871322) || iVar4 == -495388573) || iVar4 == 1091483025) || iVar4 == 785649948) || iVar4 == -313291240) || iVar4 == 495041640) || iVar4 == 749492925)
				{
					return false;
				}
			}
		}
		if (iVar4 != -1)
		{
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar4, -826135203, 0))
			{
				if (iVar6 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar6, -826135203, 0))
				{
					return true;
				}
				else
				{
					return false;
				}
			}
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1855618474, 0))
			{
				if (iVar6 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar6, -1855618474, 0))
				{
					return true;
				}
				else
				{
					return false;
				}
			}
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar4, 320460654, 0))
			{
				if (iVar6 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar6, 320460654, 0))
				{
					return true;
				}
				else
				{
					return false;
				}
			}
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar4, -2017999390, 0))
			{
				if (iVar6 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar6, -2017999390, 0))
				{
					return true;
				}
				else
				{
					return false;
				}
			}
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar4, -530089825, 0))
			{
				if ((iVar6 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar6, -530089825, 0)) || (iVar6 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar6, -1223513441, 0)))
				{
					return true;
				}
				else
				{
					return false;
				}
			}
		}
		if (dlc1::_0x341DE7ED1D2A1BFD(iVar4, -33031567, 0))
		{
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar6, -2102859770, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar6, -747583185, 0))
			{
				return true;
			}
			else
			{
				return false;
			}
		}
		if (dlc1::_0x341DE7ED1D2A1BFD(iVar6, -747583185, 0))
		{
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar4, -33031567, 0))
			{
				return true;
			}
			else
			{
				return false;
			}
		}
		if (((iParam1 >= 32 && iParam1 <= 47) || iVar5 == 2) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1325813684, 0))
		{
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar6, 2026620439, 0))
			{
				return false;
			}
		}
		if (dlc1::_0x341DE7ED1D2A1BFD(iVar6, -2119756144, 0))
		{
			if (((((((((iParam1 >= 32 && iParam1 <= 47) || iVar5 == 2) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 264959411, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 140732128, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 1863955539, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -849839091, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -2088146832, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 1055526375, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1882920022, 0))
			{
				return false;
			}
		}
		if (dlc1::_0x341DE7ED1D2A1BFD(iVar6, 947651647, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar6, -58412562, 0))
		{
			if ((((((((((((((((((((((((((((((((iVar4 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1223513441, 0)) || (iParam1 >= 240 && iParam1 <= 255)) || iVar5 == 15) || iVar4 == 1667217362) || iVar4 == 1956239942) || iVar4 == -210905108) || iVar4 == 79690384) || iVar4 == 134611232) || iVar4 == 441755069) || iVar4 == -1685936105) || iVar4 == -1379382110) || iVar4 == -788622578) || iVar4 == -481740893) || iVar4 == -266743188) || iVar4 == 573421207) || iVar4 == -739668639) || iVar4 == -1126047902) || iVar4 == -954797108) || iVar4 == -1858238438) || iVar4 == -1551291215) || iVar4 == -989872783) || iVar4 == 2073733812) || iVar4 == -1596197578) || iVar4 == -942357733) || iVar4 == -40948081) || iVar4 == -1262871322) || iVar4 == -495388573) || iVar4 == 1091483025) || iVar4 == 785649948) || iVar4 == -313291240) || iVar4 == 495041640) || iVar4 == 749492925)
			{
				return false;
			}
		}
	}
	return true;
}

int func_595(int iParam0)//Position - 0x3F8CF
{
	int iVar0;
	
	iVar0 = -1;
	if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, 821147517, 0))
	{
		iVar0 = 0;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, 2055293595, 0))
	{
		iVar0 = 1;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, -1992562672, 0))
	{
		iVar0 = 2;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, 1458930564, 0))
	{
		iVar0 = 3;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, -1046587084, 0))
	{
		iVar0 = 4;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, 1943944625, 0))
	{
		iVar0 = 5;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, -1999870067, 0))
	{
		iVar0 = 6;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, 2048281121, 0))
	{
		iVar0 = 7;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, -109983526, 0))
	{
		iVar0 = 8;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, -1394888785, 0))
	{
		iVar0 = 9;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, -144826511, 0))
	{
		iVar0 = 10;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, 19149565, 0))
	{
		iVar0 = 11;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, 310957510, 0))
	{
		iVar0 = 12;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, 742787396, 0))
	{
		iVar0 = 13;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, -1604914832, 0))
	{
		iVar0 = 14;
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iParam0, -1092211054, 0))
	{
		iVar0 = 15;
	}
	return iVar0;
}

int func_596(int iParam0, int iParam1, int iParam2)//Position - 0x3FA31
{
	int iVar0;
	int iVar1;
	int iVar2;
	int iVar3;
	int iVar4;
	int iVar5;
	int iVar6;
	int iVar7;
	int iVar8;
	int iVar9;
	int iVar10;
	int iVar11;
	int iVar12;
	
	iVar0 = -99;
	if (iParam0 == joaat("mp_m_freemode_01"))
	{
		if (iParam1 <= 15)
		{
			iVar0 = 0;
		}
		else if (iParam1 <= 31)
		{
			iVar0 = 16;
		}
		else if (iParam1 <= 47)
		{
			iVar0 = 0;
		}
		else if (iParam1 <= 63)
		{
			iVar0 = -99;
		}
		else if (iParam1 <= 79)
		{
			iVar0 = -99;
		}
		else if (iParam1 <= 95)
		{
			iVar0 = 80;
		}
		else if (iParam1 <= 111)
		{
			iVar0 = -99;
		}
		else if (iParam1 <= 127)
		{
			iVar0 = -99;
		}
		else if (iParam1 <= 143)
		{
			iVar0 = 124;
		}
		else if (iParam1 <= 159)
		{
			iVar0 = 140;
		}
		else if (iParam1 <= 175)
		{
			iVar0 = -99;
		}
		else if (iParam1 <= 191)
		{
			iVar0 = -99;
		}
		else if (iParam1 <= 207)
		{
			iVar0 = 188;
		}
		else if (iParam1 <= 223)
		{
			iVar0 = 204;
		}
		else if (iParam1 <= 239)
		{
			iVar0 = 16;
		}
		else if (iParam1 <= 240)
		{
			iVar0 = 236;
		}
		else if (iParam1 >= 241)
		{
			iVar1 = func_604(iParam0, iParam1, 8, 3);
			if (iVar1 != -1)
			{
				iVar2 = dlc1::_0xC17AD0E5752BECDA(iVar1);
				iVar3 = 0;
				while (iVar3 < iVar2)
				{
					dlc1::get_variant_component(iVar1, iVar3, &iVar4, &iVar5, &iVar6);
					if (iVar6 == 11)
					{
						if (iVar4 != 0 && iVar4 != 1849449579)
						{
							iVar0 = func_512(iParam0, iVar4, 11, 3);
							return iVar0;
						}
						else
						{
							iVar0 = iVar5;
							return iVar0;
						}
					}
					iVar3++;
				}
			}
		}
	}
	else if (iParam0 == joaat("mp_f_freemode_01"))
	{
		if (iParam1 <= 15)
		{
			iVar0 = 0;
		}
		else if (iParam1 <= 31)
		{
			iVar0 = 0;
		}
		else if (iParam1 <= 32)
		{
			iVar0 = -99;
		}
		else if (iParam1 <= 33)
		{
			iVar0 = -99;
		}
		else if (iParam1 <= 49)
		{
			iVar0 = 64;
		}
		else if (iParam1 <= 65)
		{
			iVar0 = 80;
		}
		else if (iParam1 <= 66)
		{
			iVar0 = -99;
		}
		else if (iParam1 <= 67)
		{
			iVar0 = -99;
		}
		else if (iParam1 <= 68)
		{
			iVar0 = -99;
		}
		else if (iParam1 <= 69)
		{
			iVar0 = -99;
		}
		else if (iParam1 <= 70)
		{
			iVar0 = -99;
		}
		else if (iParam1 <= 86)
		{
			iVar0 = 176;
		}
		else if (iParam1 <= 102)
		{
			iVar0 = 192;
		}
		else if (iParam1 <= 118)
		{
			iVar0 = 208;
		}
		else if (iParam1 <= 119)
		{
			iVar0 = -99;
		}
		else if (iParam1 <= 135)
		{
			iVar0 = 240;
		}
		else if (iParam1 >= 136)
		{
			iVar7 = func_604(iParam0, iParam1, 8, 4);
			if (iVar7 != -1)
			{
				iVar8 = dlc1::_0xC17AD0E5752BECDA(iVar7);
				iVar9 = 0;
				while (iVar9 < iVar8)
				{
					dlc1::get_variant_component(iVar7, iVar9, &iVar10, &iVar11, &iVar12);
					if (iVar12 == 11)
					{
						if (iVar10 != 0 && iVar10 != 1849449579)
						{
							iVar0 = func_512(iParam0, iVar10, 11, 4);
							return iVar0;
						}
						else
						{
							iVar0 = iVar11;
							return iVar0;
						}
					}
					iVar9++;
				}
			}
		}
	}
	if (iVar0 != -99)
	{
		iVar0 = (iVar0 + iParam2);
	}
	return iVar0;
}

int func_597(int iParam0, int iParam1, int iParam2)//Position - 0x3FD28
{
	int iVar0;
	
	if (iParam1 == 14)
	{
		iVar0 = iParam2;
		return func_598(iVar0);
	}
	switch (iParam0)
	{
		case joaat("player_zero"):
			switch (iParam1)
			{
				case 0:
					return 0;
					break;
				
				case 2:
					return Global_101652.f_2079.f_539[0 /*65*/].f_59;
					break;
				
				case 3:
					if (Global_101652.f_8028.f_99.f_58[120])
					{
						return 1;
					}
					else
					{
						return 0;
					}
					break;
				
				case 4:
					if (Global_101652.f_8028.f_99.f_58[120])
					{
						return 1;
					}
					else
					{
						return 0;
					}
					break;
				
				case 6:
					return 6;
					break;
				
				case 5:
					return 0;
					break;
				
				case 8:
					return 0;
					break;
				
				case 9:
					return 0;
					break;
				
				case 10:
					return 0;
					break;
				
				case 1:
					return 0;
					break;
				
				case 7:
					return 0;
					break;
				
				case 11:
					return 0;
					break;
				
				case 12:
					break;
				
				case 13:
					return 31;
					break;
			}
			break;
		
		case joaat("player_one"):
			switch (iParam1)
			{
				case 0:
					return 0;
					break;
				
				case 2:
					return Global_101652.f_2079.f_539[1 /*65*/].f_59;
					break;
				
				case 3:
					return 73;
					break;
				
				case 4:
					return 24;
					break;
				
				case 6:
					return 17;
					break;
				
				case 5:
					return 0;
					break;
				
				case 8:
					return 26;
					break;
				
				case 9:
					return 0;
					break;
				
				case 10:
					return 0;
					break;
				
				case 1:
					return 0;
					break;
				
				case 7:
					return 0;
					break;
				
				case 11:
					return 0;
					break;
				
				case 12:
					break;
				
				case 13:
					return 31;
					break;
			}
			break;
		
		case joaat("player_two"):
			switch (iParam1)
			{
				case 0:
					return 0;
					break;
				
				case 2:
					return Global_101652.f_2079.f_539[2 /*65*/].f_59;
					break;
				
				case 3:
					return 0;
					break;
				
				case 4:
					return 91;
					break;
				
				case 6:
					return 8;
					break;
				
				case 5:
					return 0;
					break;
				
				case 8:
					return 15;
					break;
				
				case 9:
					return 0;
					break;
				
				case 10:
					return 0;
					break;
				
				case 1:
					return 0;
					break;
				
				case 7:
					return 0;
					break;
				
				case 11:
					return 0;
					break;
				
				case 12:
					break;
				
				case 13:
					return 31;
					break;
			}
			break;
		
		case joaat("mp_m_freemode_01"):
			switch (iParam1)
			{
				case 0:
					break;
				
				case 2:
					break;
				
				case 3:
					return 0;
					break;
				
				case 4:
					return 80;
					break;
				
				case 6:
					return 10;
					break;
				
				case 5:
					break;
				
				case 8:
					return 0;
					break;
				
				case 9:
					return 0;
					break;
				
				case 10:
					return 0;
					break;
				
				case 1:
					return 0;
					break;
				
				case 7:
					return 0;
					break;
				
				case 11:
					return 2;
					break;
			}
			break;
		
		case joaat("mp_f_freemode_01"):
			switch (iParam1)
			{
				case 0:
					break;
				
				case 2:
					break;
				
				case 3:
					return 0;
					break;
				
				case 4:
					return 233;
					break;
				
				case 6:
					return 16;
					break;
				
				case 5:
					break;
				
				case 8:
					return 0;
					break;
				
				case 9:
					return 0;
					break;
				
				case 10:
					return 0;
					break;
				
				case 1:
					return 0;
					break;
				
				case 7:
					return 0;
					break;
				
				case 11:
					return 78;
					break;
			}
			break;
		
		default:
			break;
	}
	return -99;
}

int func_598(int iParam0)//Position - 0x40142
{
	switch (iParam0)
	{
		case 0:
			return 0;
			break;
		
		case 1:
			return 1;
			break;
		
		case 2:
			return 2;
			break;
		
		case 3:
			return 3;
			break;
		
		case 4:
			return 4;
			break;
		
		case 5:
			return 5;
			break;
		
		case 6:
			return 6;
			break;
		
		case 7:
			return 7;
			break;
		
		case 8:
			return 8;
			break;
	}
	return 0;
}

bool func_599(int iParam0, int iParam1)//Position - 0x401C8
{
	switch (iParam0)
	{
		case joaat("mp_m_freemode_01"):
			if ((((((iParam1 >= 48 && iParam1 < 64) || (iParam1 >= 64 && iParam1 < 80)) || (iParam1 >= 96 && iParam1 < 108)) || (iParam1 >= 108 && iParam1 < 124)) || (iParam1 >= 156 && iParam1 < 172)) || (iParam1 >= 237 && dlc1::_0x341DE7ED1D2A1BFD(func_604(iParam0, iParam1, 11, 3), -1393156190, 0)))
			{
				return true;
			}
			break;
		
		case joaat("mp_f_freemode_01"):
			if ((((((iParam1 >= 16 && iParam1 < 32) || (iParam1 >= 96 && iParam1 < 112)) || (iParam1 >= 112 && iParam1 < 128)) || (iParam1 >= 128 && iParam1 < 144)) || (iParam1 >= 160 && iParam1 < 176)) || (iParam1 >= 256 && dlc1::_0x341DE7ED1D2A1BFD(func_604(iParam0, iParam1, 11, 4), -1393156190, 0)))
			{
				return true;
			}
			break;
	}
	return false;
}

int func_600(int iParam0, int iParam1, int iParam2, int iParam3)//Position - 0x40309
{
	int iVar0;
	int iVar1;
	int iVar2;
	int iVar3;
	int iVar4;
	int iVar5;
	int iVar6;
	int iVar7;
	int iVar8;
	int iVar9;
	int iVar10;
	int iVar11;
	int iVar12;
	struct<10> Var13;
	int iVar30;
	int iVar31;
	int iVar32;
	int iVar33;
	int iVar34;
	int iVar35;
	int iVar36;
	int iVar37;
	int iVar38;
	int iVar39;
	int iVar40;
	int iVar41;
	int iVar42;
	int iVar43;
	int iVar44;
	int iVar45;
	int iVar46;
	int iVar47;
	struct<10> Var48;
	int iVar65;
	int iVar66;
	int iVar67;
	int iVar68;
	int iVar69;
	int iVar70;
	int iVar71;
	int iVar72;
	int iVar73;
	int iVar74;
	int iVar75;
	int iVar76;
	int iVar77;
	int iVar78;
	int iVar79;
	int iVar80;
	int iVar81;
	int iVar82;
	int iVar83;
	int iVar84;
	int iVar85;
	int iVar86;
	int iVar87;
	int iVar88;
	int iVar89;
	int iVar90;
	int iVar91;
	int iVar92;
	
	iVar0 = -99;
	iVar1 = 1;
	if (iParam0 == joaat("mp_m_freemode_01"))
	{
		iVar2 = -1;
		iVar3 = -1;
		if (iParam2 >= 237)
		{
			iVar2 = func_604(iParam0, iParam2, 11, 3);
			iVar3 = func_595(iVar2);
		}
		iVar4 = -1;
		iVar5 = -1;
		if (iParam1 >= 237)
		{
			iVar4 = func_604(iParam0, iParam1, 11, 3);
			iVar5 = func_595(iVar4);
		}
		if (iVar2 != -1)
		{
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar2, -491588875, 0))
			{
				return -99;
			}
		}
		if (iVar2 != -1)
		{
			if (((((((((dlc1::_0x341DE7ED1D2A1BFD(iVar2, -1347486026, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, -1274099003, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, 1723403459, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, 1538937264, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, -549843760, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, 1830529185, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, -1813210391, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, -89003918, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, -747858475, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, 1208450825, 0))
			{
				if ((((((iParam1 >= 124 && iParam1 <= 139) || (iParam1 >= 188 && iParam1 <= 235)) || iVar5 == 8) || iVar5 == 12) || iVar5 == 13) || iVar5 == 14)
				{
					return -99;
				}
				if (((((!dlc1::_0x341DE7ED1D2A1BFD(iVar2, -549843760, 0) && !dlc1::_0x341DE7ED1D2A1BFD(iVar2, 1830529185, 0)) && !dlc1::_0x341DE7ED1D2A1BFD(iVar2, -1813210391, 0)) && !dlc1::_0x341DE7ED1D2A1BFD(iVar2, -89003918, 0)) && !dlc1::_0x341DE7ED1D2A1BFD(iVar2, -747858475, 0)) && !dlc1::_0x341DE7ED1D2A1BFD(iVar2, 1208450825, 0))
				{
					if (dlc1::_0x341DE7ED1D2A1BFD(iVar4, -828478571, 0))
					{
						return -99;
					}
				}
			}
			if ((dlc1::_0x341DE7ED1D2A1BFD(iVar2, -1655154167, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, -1719167561, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, 1431529976, 0))
			{
				return -99;
			}
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar2, 1690933245, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, -1325813684, 0))
			{
				return -99;
			}
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar2, 1769225721, 0))
			{
				if ((((((((((iParam1 >= 80 && iParam1 <= 95) || (iParam1 >= 124 && iParam1 <= 139)) || (iParam1 >= 140 && iParam1 <= 155)) || (iParam1 >= 188 && iParam1 <= 235)) || iVar5 == 5) || iVar5 == 8) || iVar5 == 9) || iVar5 == 12) || iVar5 == 13) || iVar5 == 14)
				{
					return -99;
				}
			}
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar2, 264959411, 0))
			{
				if ((((((((iParam1 >= 0 && iParam1 <= 15) || (iParam1 >= 16 && iParam1 <= 31)) || (iParam1 >= 80 && iParam1 <= 95)) || (iParam1 >= 236 && iParam1 <= 236)) || iVar5 == 0) || iVar5 == 1) || iVar5 == 5) || iVar5 == 15)
				{
				}
				else
				{
					return -99;
				}
			}
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar2, 1625463492, 0) && !dlc1::_0x341DE7ED1D2A1BFD(iVar4, -641612092, 0))
			{
				return -99;
			}
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar2, -1719338724, 0))
			{
				if ((((((((((iParam1 >= 0 && iParam1 <= 15) || (iParam1 >= 16 && iParam1 <= 31)) || (iParam1 >= 80 && iParam1 <= 95)) || (iParam1 >= 124 && iParam1 <= 139)) || (iParam1 >= 236 && iParam1 <= 236)) || iVar5 == 0) || iVar5 == 1) || iVar5 == 5) || iVar5 == 8) || iVar5 == 15)
				{
				}
				else
				{
					return -99;
				}
			}
		}
		iVar6 = 0;
		iVar7 = false;
		if (dlc1::_0x341DE7ED1D2A1BFD(iVar2, -1237899132, 0) && !dlc1::_0x341DE7ED1D2A1BFD(iVar2, -491588875, 0))
		{
			if (iParam1 >= 0 && iParam1 <= 15)
			{
				if ((dlc1::_0x341DE7ED1D2A1BFD(iVar2, -269266203, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, -685039259, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, 297865853, 0))
				{
					switch (iParam1)
					{
						case 0:
							iVar0 = func_512(iParam0, -1071423629, 8, 3);
							break;
						
						case 1:
							iVar0 = func_512(iParam0, -833094692, 8, 3);
							break;
						
						case 2:
							iVar0 = func_512(iParam0, -1836153782, 8, 3);
							break;
						
						case 3:
							iVar0 = func_512(iParam0, -1598414687, 8, 3);
							break;
						
						case 4:
							iVar0 = func_512(iParam0, 123661793, 8, 3);
							break;
						
						case 5:
							iVar0 = func_512(iParam0, 330958487, 8, 3);
							break;
						
						case 7:
							iVar0 = func_512(iParam0, -646180324, 8, 3);
							break;
						
						case 8:
							iVar0 = func_512(iParam0, -142717408, 8, 3);
							break;
						
						case 11:
							iVar0 = func_512(iParam0, 1290696959, 8, 3);
							break;
					}
				}
				else if (dlc1::_0x341DE7ED1D2A1BFD(iVar2, 201427653, 0))
				{
					switch (iParam1)
					{
						case 0:
							iVar0 = func_512(iParam0, -1382822784, 8, 3);
							break;
						
						case 1:
							iVar0 = func_512(iParam0, -1731353868, 8, 3);
							break;
						
						case 2:
							iVar0 = func_512(iParam0, -1960638561, 8, 3);
							break;
						
						case 3:
							iVar0 = func_512(iParam0, 147161830, 8, 3);
							break;
						
						case 4:
							iVar0 = func_512(iParam0, -92608943, 8, 3);
							break;
						
						case 5:
							iVar0 = func_512(iParam0, -162931217, 8, 3);
							break;
						
						case 7:
							iVar0 = func_512(iParam0, -537087659, 8, 3);
							break;
						
						case 8:
							iVar0 = func_512(iParam0, 1665087452, 8, 3);
							break;
						
						case 11:
							iVar0 = func_512(iParam0, 1012984348, 8, 3);
							break;
					}
				}
				else if (dlc1::_0x341DE7ED1D2A1BFD(iVar2, 967829025, 0))
				{
					switch (iParam1)
					{
						case 0:
							iVar0 = func_512(iParam0, 385813134, 8, 3);
							break;
						
						case 1:
							iVar0 = func_512(iParam0, 675392787, 8, 3);
							break;
						
						case 2:
							iVar0 = func_512(iParam0, -238272479, 8, 3);
							break;
						
						case 3:
							iVar0 = func_512(iParam0, 67757212, 8, 3);
							break;
						
						case 4:
							iVar0 = func_512(iParam0, -536372072, 8, 3);
							break;
						
						case 5:
							iVar0 = func_512(iParam0, -247578875, 8, 3);
							break;
						
						case 7:
							iVar0 = func_512(iParam0, -1160588753, 8, 3);
							break;
						
						case 8:
							iVar0 = func_512(iParam0, -854821214, 8, 3);
							break;
						
						case 11:
							iVar0 = func_512(iParam0, -1458295118, 8, 3);
							break;
						}
				}
				return iVar0;
			}
			else if (iParam1 >= 236 && iParam1 <= 236)
			{
				iVar0 = 240;
				return iVar0;
			}
			else if (iParam1 >= 237)
			{
				iVar7 = true;
				if ((dlc1::_0x341DE7ED1D2A1BFD(iVar2, -269266203, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, -685039259, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, 297865853, 0))
				{
					iVar6 = 4;
				}
				else if (dlc1::_0x341DE7ED1D2A1BFD(iVar2, 201427653, 0))
				{
					iVar6 = 5;
				}
				else if (dlc1::_0x341DE7ED1D2A1BFD(iVar2, 967829025, 0))
				{
					iVar6 = 6;
				}
				else
				{
					iVar6 = -1;
				}
			}
			else
			{
				return iVar0;
			}
		}
		if (dlc1::_0x341DE7ED1D2A1BFD(iVar4, -641612092, 0))
		{
			iVar7 = true;
			if (((((((dlc1::_0x341DE7ED1D2A1BFD(iVar2, 470686834, 0) && dlc1::_0x341DE7ED1D2A1BFD(iVar2, 1625463492, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, -416620954, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, -1507532917, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, -1813210391, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, -89003918, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, -747858475, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, 1208450825, 0))
			{
				iVar6 = 1;
			}
			else if ((dlc1::_0x341DE7ED1D2A1BFD(iVar2, 1625463492, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, -1410897066, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, -1351486939, 0))
			{
				iVar6 = 0;
			}
			else
			{
				iVar6 = -1;
			}
		}
		if (iVar7)
		{
			if (iVar6 != -1)
			{
				iVar8 = dlc1::_0xC17AD0E5752BECDA(iVar4);
				iVar9 = 0;
				while (iVar9 < iVar8)
				{
					dlc1::get_variant_component(iVar4, iVar9, &iVar10, &iVar11, &iVar12);
					if (iVar12 == 8)
					{
						if (((((((iVar6 == 6 && dlc1::_0x341DE7ED1D2A1BFD(iVar10, -168336417, 0)) || (iVar6 == 5 && dlc1::_0x341DE7ED1D2A1BFD(iVar10, -1415000253, 0))) || (iVar6 == 4 && dlc1::_0x341DE7ED1D2A1BFD(iVar10, -1703203608, 0))) || (iVar6 == 3 && dlc1::_0x341DE7ED1D2A1BFD(iVar10, 1318819110, 0))) || (iVar6 == 2 && dlc1::_0x341DE7ED1D2A1BFD(iVar10, -1138757583, 0))) || (iVar6 == 1 && dlc1::_0x341DE7ED1D2A1BFD(iVar10, 647976134, 0))) || ((((((iVar6 == 0 && !dlc1::_0x341DE7ED1D2A1BFD(iVar10, 647976134, 0)) && !dlc1::_0x341DE7ED1D2A1BFD(iVar10, -1138757583, 0)) && !dlc1::_0x341DE7ED1D2A1BFD(iVar10, 1318819110, 0)) && !dlc1::_0x341DE7ED1D2A1BFD(iVar10, -1703203608, 0)) && !dlc1::_0x341DE7ED1D2A1BFD(iVar10, -1415000253, 0)) && !dlc1::_0x341DE7ED1D2A1BFD(iVar10, -168336417, 0)))
						{
							if (iVar10 != 0 && iVar10 != 1849449579)
							{
								iVar0 = func_512(iParam0, iVar10, 8, 3);
							}
							else
							{
								iVar0 = iVar11;
							}
							iVar9 = iVar8 + 1;
							iVar1 = 0;
							return iVar0;
						}
					}
					iVar9++;
				}
			}
			return -99;
		}
		if ((iParam2 >= 96 && iParam2 <= 107) || iVar3 == 6)
		{
			if (iParam1 <= 15)
			{
				iVar0 = 32;
			}
			else if (iParam1 <= 31)
			{
				iVar0 = 224;
			}
			else if (iParam1 == 236)
			{
				iVar0 = 240;
			}
			else if (((iParam1 >= 220 && iParam1 <= 235) && func_601()) && !dlc1::_0x341DE7ED1D2A1BFD(iVar2, -1266557933, 0))
			{
				iVar0 = 34;
				iVar1 = 0;
				dlc1::init_shop_ped_component(&Var13);
				if (Global_2592838[1] != 0)
				{
					dlc1::_get_num_props_from_outfit(3, 6, -1, 0, -1, 8);
					dlc1::get_shop_ped_query_component(Global_2592835[1], &Var13);
					if (Var13.f_1 != Global_2592838[1])
					{
						Global_2592838[1] = 0;
						Global_2592835[1] = 0;
					}
				}
				if (Global_2592838[1] == 0)
				{
					iVar31 = 0;
					iVar32 = dlc1::_get_num_props_from_outfit(3, 6, -1, 0, -1, 8);
					iVar30 = 0;
					while (iVar30 < iVar32)
					{
						dlc1::get_shop_ped_query_component(iVar30, &Var13);
						if (!dlc1::_is_dlc_data_empty(Var13))
						{
							if (gameplay::get_hash_key(&(Var13.f_9)) == -1665616807 && dlc1::_0x341DE7ED1D2A1BFD(Var13.f_1, 647976134, 0))
							{
								Global_2592838[1] = Var13.f_1;
								Global_2592835[1] = iVar31;
								iVar30 = iVar32 + 1;
							}
							iVar31++;
						}
						iVar30++;
					}
				}
				if (Global_2592838[1] != 0)
				{
					iVar0 = (func_513(iParam0, func_626(8)) + Global_2592835[1]);
					iVar1 = 1;
				}
			}
			else
			{
				iVar0 = 34;
				iVar1 = 0;
				if (iParam1 >= 237)
				{
					iVar33 = func_604(iParam0, iParam1, 11, 3);
					if (((iVar33 != -1 && !dlc1::_0x341DE7ED1D2A1BFD(iVar33, 310957510, 0)) && !dlc1::_0x341DE7ED1D2A1BFD(iVar33, -109983526, 0)) && !(dlc1::_0x341DE7ED1D2A1BFD(iVar2, 490219883, 0) && dlc1::_0x341DE7ED1D2A1BFD(iVar33, 1943944625, 0)))
					{
						iVar34 = dlc1::_0xC17AD0E5752BECDA(iVar33);
						iVar35 = 0;
						while (iVar35 < iVar34)
						{
							dlc1::get_variant_component(iVar33, iVar35, &iVar36, &iVar37, &iVar38);
							if (iVar38 == 8)
							{
								if (iVar36 != 0 && iVar36 != 1849449579)
								{
									if ((!dlc1::_0x341DE7ED1D2A1BFD(iVar36, -1703203608, 0) && !dlc1::_0x341DE7ED1D2A1BFD(iVar36, -1415000253, 0)) && !dlc1::_0x341DE7ED1D2A1BFD(iVar36, -168336417, 0))
									{
										iVar0 = func_512(iParam0, iVar36, 8, 3);
									}
								}
								else
								{
									iVar0 = iVar37;
								}
							}
							iVar35++;
						}
					}
				}
			}
		}
		else if (iParam1 <= 15)
		{
			iVar0 = 0;
		}
		else if (iParam1 <= 31)
		{
			iVar0 = 16;
		}
		else if (iParam1 <= 47)
		{
			iVar0 = 2;
			iVar1 = 0;
		}
		else if (iParam1 <= 63)
		{
			iVar0 = -99;
		}
		else if (iParam1 <= 79)
		{
			iVar0 = -99;
		}
		else if (iParam1 <= 95)
		{
			iVar0 = 80;
		}
		else if (iParam1 <= 107)
		{
			iVar0 = -99;
		}
		else if (iParam1 <= 123)
		{
			iVar0 = -99;
		}
		else if (iParam1 <= 139)
		{
			iVar0 = 128;
		}
		else if (iParam1 <= 155)
		{
			iVar0 = 144;
		}
		else if (iParam1 <= 171)
		{
			iVar0 = -99;
		}
		else if (iParam1 <= 187)
		{
			iVar0 = 2;
			iVar1 = 0;
		}
		else if (iParam1 <= 203 || iVar5 == 12)
		{
			if (((((iParam2 >= 48 && iParam2 <= 63) || (iParam2 >= 108 && iParam2 <= 123)) || iVar3 == 3) || iVar3 == 7) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, 1769225721, 0))
			{
				iVar0 = 2;
				iVar1 = 0;
			}
			else
			{
				iVar39 = 0;
				if (iParam2 >= 236 && dlc1::_0x341DE7ED1D2A1BFD(iVar2, 2026620439, 0))
				{
					iVar39 = 1;
				}
				iVar40 = func_604(iParam0, iParam1, 11, 3);
				if (iVar40 != -1)
				{
					iVar41 = dlc1::_0xC17AD0E5752BECDA(iVar40);
					iVar42 = 0;
					while (iVar42 < iVar41)
					{
						dlc1::get_variant_component(iVar40, iVar42, &iVar43, &iVar44, &iVar45);
						if (iVar45 == 8 && iVar39 == dlc1::_0x341DE7ED1D2A1BFD(iVar43, 1680519719, 0))
						{
							if (iVar43 != 0 && iVar43 != 1849449579)
							{
								iVar0 = func_512(iParam0, iVar43, 8, 3);
							}
							else
							{
								iVar0 = iVar44;
							}
							iVar42 = iVar41 + 1;
							iVar1 = 0;
						}
						iVar42++;
					}
				}
				else
				{
					iVar0 = func_512(iParam0, -1739646902, 8, 3);
					iVar1 = 1;
				}
			}
		}
		else if (iParam1 <= 219)
		{
			iVar0 = 208;
		}
		else if (iParam1 <= 235)
		{
			iVar0 = 2;
			iVar1 = 0;
			if (func_601())
			{
				iVar46 = 0;
				iVar47 = 0;
				if ((iParam2 >= 96 && iParam2 <= 107) || (iParam2 >= 236 && dlc1::_0x341DE7ED1D2A1BFD(iVar2, 2026620439, 0)))
				{
					iVar46 = 1;
					iVar47 = 1;
				}
				dlc1::init_shop_ped_component(&Var48);
				if (Global_2592838[iVar47] != 0)
				{
					dlc1::_get_num_props_from_outfit(3, 6, -1, 0, -1, 8);
					dlc1::get_shop_ped_query_component(Global_2592835[iVar47], &Var48);
					if (Var48.f_1 != Global_2592838[iVar47])
					{
						Global_2592838[iVar47] = 0;
						Global_2592835[iVar47] = 0;
					}
				}
				if (Global_2592838[iVar47] == 0)
				{
					iVar66 = 0;
					iVar67 = dlc1::_get_num_props_from_outfit(3, 6, -1, 0, -1, 8);
					iVar65 = 0;
					while (iVar65 < iVar67)
					{
						dlc1::get_shop_ped_query_component(iVar65, &Var48);
						if (!dlc1::_is_dlc_data_empty(Var48))
						{
							if (gameplay::get_hash_key(&(Var48.f_9)) == -1665616807 && iVar46 == dlc1::_0x341DE7ED1D2A1BFD(Var48.f_1, 647976134, 0))
							{
								Global_2592838[iVar47] = Var48.f_1;
								Global_2592835[iVar47] = iVar66;
								iVar65 = iVar67 + 1;
							}
							iVar66++;
						}
						iVar65++;
					}
				}
				if (Global_2592838[iVar47] != 0)
				{
					iVar0 = (func_513(iParam0, func_626(8)) + Global_2592835[iVar47]);
					iVar1 = 1;
				}
			}
			if ((((iParam2 >= 237 && dlc1::_0x341DE7ED1D2A1BFD(iVar2, 2026620439, 0)) || (iParam2 >= 108 && iParam2 <= 123)) || iVar3 == 7) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, 1769225721, 0))
			{
				iVar0 = -99;
			}
		}
		else if (iParam1 <= 236)
		{
			iVar0 = 240;
		}
		else if (iParam1 >= 237)
		{
			iVar0 = 2;
			iVar1 = 0;
			iVar68 = false;
			iVar69 = func_604(iParam0, iParam1, 11, 3);
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar2, -1351486939, 0))
			{
				iVar68 = true;
			}
			if (iVar69 != -1)
			{
				iVar70 = dlc1::_0xC17AD0E5752BECDA(iVar69);
				iVar71 = 0;
				while (iVar71 < iVar70)
				{
					dlc1::get_variant_component(iVar69, iVar71, &iVar72, &iVar73, &iVar74);
					if (iVar74 == 8)
					{
						if (iVar72 != 0 && iVar72 != 1849449579)
						{
							iVar0 = func_512(iParam0, iVar72, 8, 3);
							iVar1 = 0;
							if (!iVar68 || dlc1::_0x341DE7ED1D2A1BFD(iVar72, 647976134, 0))
							{
								iVar71 = iVar70 + 1;
							}
						}
						else
						{
							iVar0 = iVar73;
							iVar71 = iVar70 + 1;
							iVar1 = 0;
						}
					}
					iVar71++;
				}
			}
		}
	}
	else if (iParam0 == joaat("mp_f_freemode_01"))
	{
		iVar75 = -1;
		iVar76 = -1;
		if (iParam2 >= 256)
		{
			iVar75 = func_604(iParam0, iParam2, 11, 4);
			iVar76 = func_595(iVar75);
		}
		iVar77 = -1;
		iVar78 = -1;
		if (iParam1 >= 256)
		{
			iVar77 = func_604(iParam0, iParam1, 11, 4);
			iVar78 = func_595(iVar77);
		}
		if (iVar75 != -1)
		{
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar75, -491588875, 0))
			{
				return -99;
			}
		}
		if ((dlc1::_0x341DE7ED1D2A1BFD(iVar75, -1813210391, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, -89003918, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, 1208450825, 0))
		{
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar77, -828478571, 0))
			{
				return -99;
			}
		}
		if (dlc1::_0x341DE7ED1D2A1BFD(iVar75, -1719338724, 0))
		{
			if (((((((((((((((((((((((((iParam1 >= 0 && iParam1 <= 15) || (iParam1 >= 32 && iParam1 <= 47)) || (iParam1 >= 64 && iParam1 <= 79)) || (iParam1 >= 80 && iParam1 <= 95)) || (iParam1 >= 176 && iParam1 <= 191)) || (iParam1 >= 192 && iParam1 <= 207)) || (iParam1 >= 208 && iParam1 <= 223)) || (iParam1 >= 240 && iParam1 <= 255)) || iVar78 == 0) || iVar78 == 2) || iVar78 == 4) || iVar78 == 5) || iVar78 == 11) || iVar78 == 12) || iVar78 == 13) || iVar78 == 15) || iVar77 == -221826679) || iVar77 == 1172264892) || iVar77 == 1474853838) || iVar77 == 278369420) || iVar77 == -310817200) || iVar77 == -138976564) || iVar77 == -905541781) || iVar77 == 998321559) || iVar77 == 64401473)
			{
			}
			else
			{
				return -99;
			}
		}
		iVar79 = 0;
		iVar80 = false;
		if ((((((dlc1::_0x341DE7ED1D2A1BFD(iVar77, -761463976, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar77, -1347486026, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar77, -1119232689, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar77, 1784133476, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar77, 2044466679, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar77, -2020757158, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar77, 2030343924, 0))
		{
			iVar80 = true;
			if ((((iParam2 >= 16 && iParam2 <= 31) || (iParam2 >= 128 && iParam2 <= 143)) || iVar76 == 1) || iVar76 == 8)
			{
				iVar79 = 2;
			}
			else if (((dlc1::_0x341DE7ED1D2A1BFD(iVar75, 1769225721, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, -1834446747, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, -868698159, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, -1266557933, 0))
			{
				iVar79 = 0;
			}
			else if (((((((((((((iParam2 >= 160 && iParam2 <= 175) || iVar76 == 10) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, 684992453, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, 916636514, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, -1939378450, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, -820724897, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, 153792394, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, -872449705, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, 700658917, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, 1714969731, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, 745826556, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, 1055526375, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, 144417099, 0))
			{
				if (dlc1::_0x341DE7ED1D2A1BFD(iVar77, 1784133476, 0))
				{
					iVar79 = 1;
				}
				else if (dlc1::_0x341DE7ED1D2A1BFD(iVar77, -1119232689, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar77, 2044466679, 0))
				{
					iVar79 = 1;
				}
				else
				{
					iVar79 = -1;
				}
			}
			else
			{
				iVar79 = 1;
			}
		}
		if (dlc1::_0x341DE7ED1D2A1BFD(iVar77, -1351486939, 0))
		{
			iVar80 = true;
			if ((((((((((iParam2 >= 112 && iParam2 <= 127) || iVar76 == 7) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, 684992453, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, 916636514, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, -820724897, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, -872449705, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, -416620954, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, 947651647, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, -549843760, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, 1830529185, 0))
			{
				if ((dlc1::_0x341DE7ED1D2A1BFD(iVar75, 1769225721, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, -1834446747, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, -1266557933, 0))
				{
					iVar79 = 0;
				}
				else
				{
					iVar79 = 1;
				}
			}
			else if ((((((dlc1::_0x341DE7ED1D2A1BFD(iVar75, 153792394, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, 1322269404, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, 548036233, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, 700658917, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, -1014753511, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, -1410897066, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, -2119756144, 0))
			{
				iVar79 = 0;
			}
			else
			{
				iVar79 = -1;
			}
		}
		switch (iVar77)
		{
			case -221826679:
			case 1172264892:
			case 1474853838:
			case 278369420:
			case -310817200:
			case -138976564:
			case -905541781:
			case 998321559:
			case 64401473:
			case 15269846:
			case -674026069:
			case -904392139:
			case -1135708510:
			case -1360241698:
			case -2130051046:
			case 1935434943:
			case 1704282417:
			case 1472114052:
			case 1169688951:
			case -1193832172:
			case -886884949:
			case -1669539745:
			case -1370260468:
			case -413962745:
			case -238779663:
				iVar80 = true;
				if ((dlc1::_0x341DE7ED1D2A1BFD(iVar75, 1769225721, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, -868698159, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, -1266557933, 0))
				{
					iVar79 = 1;
				}
				else if (dlc1::_0x341DE7ED1D2A1BFD(iVar75, -1834446747, 0))
				{
					iVar79 = 2;
				}
				else if ((((((((((dlc1::_0x341DE7ED1D2A1BFD(iVar75, -870074461, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, -1719338724, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, -416620954, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, 947651647, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, -549843760, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, 1830529185, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, -1813210391, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, -89003918, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, -747858475, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, 1208450825, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, -58412562, 0))
				{
					iVar79 = 3;
				}
				else if ((((((iParam2 >= 16 && iParam2 <= 31) || (iParam2 >= 128 && iParam2 <= 143)) || (iParam2 >= 112 && iParam2 <= 127)) || iVar76 == 1) || iVar76 == 7) || iVar76 == 8)
				{
					iVar79 = 0;
				}
				else
				{
					iVar79 = -1;
				}
				break;
			
			case 619380843:
				iVar80 = true;
				if ((((iParam2 >= 16 && iParam2 <= 31) || (iParam2 >= 128 && iParam2 <= 143)) || iVar76 == 1) || iVar76 == 8)
				{
					iVar79 = 0;
				}
				else
				{
					iVar79 = -1;
				}
				break;
		}
		if (dlc1::_0x341DE7ED1D2A1BFD(iVar75, -1266557933, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, -979468724, 0))
		{
			if ((iParam1 >= 240 && iParam1 <= 255) || iVar78 == 15)
			{
				iVar0 = 120;
			}
			else if (dlc1::_0x341DE7ED1D2A1BFD(iVar77, 2044466679, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar77, -2020757158, 0))
			{
				iVar80 = true;
				iVar79 = 0;
			}
			else
			{
				return iVar0;
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar75, -1237899132, 0) && !dlc1::_0x341DE7ED1D2A1BFD(iVar75, -491588875, 0))
		{
			if ((((((((((((iParam1 >= 64 && iParam1 <= 79) || (iParam1 >= 80 && iParam1 <= 95)) || (iParam1 >= 176 && iParam1 <= 191)) || (iParam1 >= 192 && iParam1 <= 207)) || (iParam1 >= 208 && iParam1 <= 223)) || (iParam1 >= 240 && iParam1 <= 255)) || iVar78 == 4) || iVar78 == 5) || iVar78 == 11) || iVar78 == 12) || iVar78 == 13) || iVar78 == 15)
			{
				iVar80 = false;
			}
			else if (iParam1 >= 256)
			{
				iVar80 = true;
				if ((dlc1::_0x341DE7ED1D2A1BFD(iVar75, -269266203, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, -685039259, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, 297865853, 0))
				{
					iVar79 = 4;
				}
				else if (dlc1::_0x341DE7ED1D2A1BFD(iVar75, 201427653, 0))
				{
					iVar79 = 5;
				}
				else if (dlc1::_0x341DE7ED1D2A1BFD(iVar75, 967829025, 0))
				{
					iVar79 = 6;
				}
				else
				{
					iVar79 = -1;
				}
			}
			else
			{
				return iVar0;
			}
		}
		if (iVar80)
		{
			if (iVar79 != -1)
			{
				iVar81 = dlc1::_0xC17AD0E5752BECDA(iVar77);
				iVar82 = 0;
				while (iVar82 < iVar81)
				{
					dlc1::get_variant_component(iVar77, iVar82, &iVar83, &iVar84, &iVar85);
					if (iVar85 == 8)
					{
						if (((((((iVar79 == 6 && dlc1::_0x341DE7ED1D2A1BFD(iVar83, -168336417, 0)) || (iVar79 == 5 && dlc1::_0x341DE7ED1D2A1BFD(iVar83, -1415000253, 0))) || (iVar79 == 4 && dlc1::_0x341DE7ED1D2A1BFD(iVar83, -1703203608, 0))) || (iVar79 == 3 && dlc1::_0x341DE7ED1D2A1BFD(iVar83, 1318819110, 0))) || (iVar79 == 2 && dlc1::_0x341DE7ED1D2A1BFD(iVar83, -1138757583, 0))) || (iVar79 == 1 && dlc1::_0x341DE7ED1D2A1BFD(iVar83, 647976134, 0))) || ((((((iVar79 == 0 && !dlc1::_0x341DE7ED1D2A1BFD(iVar83, 647976134, 0)) && !dlc1::_0x341DE7ED1D2A1BFD(iVar83, -1138757583, 0)) && !dlc1::_0x341DE7ED1D2A1BFD(iVar83, 1318819110, 0)) && !dlc1::_0x341DE7ED1D2A1BFD(iVar83, -1703203608, 0)) && !dlc1::_0x341DE7ED1D2A1BFD(iVar83, -1415000253, 0)) && !dlc1::_0x341DE7ED1D2A1BFD(iVar83, -168336417, 0)))
						{
							if (iVar83 != 0 && iVar83 != 1849449579)
							{
								iVar0 = func_512(iParam0, iVar83, 8, 4);
							}
							else
							{
								iVar0 = iVar84;
							}
							iVar82 = iVar81 + 1;
							iVar1 = 0;
							return iVar0;
						}
					}
					iVar82++;
				}
			}
			return -99;
		}
		if ((((((((iParam1 >= 192 && iParam1 <= 207) || iVar78 == 12) && ((((iParam2 >= 96 && iParam2 <= 111) || (iParam2 >= 112 && iParam2 <= 127)) || iVar76 == 6) || iVar76 == 7)) && func_601()) && !dlc1::_0x341DE7ED1D2A1BFD(iVar75, -416620954, 0)) && !dlc1::_0x341DE7ED1D2A1BFD(iVar75, 947651647, 0)) && !dlc1::_0x341DE7ED1D2A1BFD(iVar75, -549843760, 0)) && !dlc1::_0x341DE7ED1D2A1BFD(iVar75, 1830529185, 0))
		{
			if ((((dlc1::_0x341DE7ED1D2A1BFD(iVar75, -1813210391, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, -89003918, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, -747858475, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, 1208450825, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, -58412562, 0))
			{
				return -99;
			}
			iVar86 = iVar77;
			if (iParam1 == 199)
			{
				iVar0 = func_512(iParam0, 331193219, 8, 4);
			}
			else if (iParam1 == 200)
			{
				iVar0 = func_512(iParam0, 1115060468, 8, 4);
			}
			else if (iParam1 == 201)
			{
				iVar0 = func_512(iParam0, 779636984, 8, 4);
			}
			else if (iVar86 == 948380380)
			{
				iVar0 = func_512(iParam0, -570249206, 8, 4);
			}
			else if (iVar86 == 708412993)
			{
				iVar0 = func_512(iParam0, -876115052, 8, 4);
			}
			else if (iVar86 == 1974869305)
			{
				iVar0 = func_512(iParam0, -108599534, 8, 4);
			}
			else if (iVar86 == 1197916315)
			{
				iVar0 = func_512(iParam0, 200575961, 8, 4);
			}
			else if (iVar86 == 587593690)
			{
				iVar0 = func_512(iParam0, 961930907, 8, 4);
			}
			else if (iVar86 == 323213398)
			{
				iVar0 = func_512(iParam0, -257698508, 8, 4);
			}
			else if (iVar86 == 1050193651)
			{
				iVar0 = func_512(iParam0, 516534659, 8, 4);
			}
			else if (iVar86 == 811438717)
			{
				iVar0 = func_512(iParam0, -1174312584, 8, 4);
			}
			else if (iVar86 == -877868759)
			{
				iVar0 = func_512(iParam0, -1192794304, 8, 4);
			}
			else if (iVar86 == -1108464212)
			{
				iVar0 = func_512(iParam0, -2027256889, 8, 4);
			}
			else if (iVar86 == -467866094)
			{
				iVar0 = func_512(iParam0, -1670074789, 8, 4);
			}
			else if (iVar86 == -673000034)
			{
				iVar0 = func_512(iParam0, -326349175, 8, 4);
			}
			else if (iVar86 == -1984939718)
			{
				iVar0 = func_512(iParam0, -796060021, 8, 4);
			}
			iVar1 = 0;
		}
		else if (iParam1 <= 15)
		{
			if ((((iParam2 >= 160 && iParam2 <= 175) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, 1769225721, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, -868698159, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar75, -1266557933, 0))
			{
				iVar0 = 16;
			}
			else
			{
				iVar0 = 0;
			}
		}
		else if (iParam1 <= 31)
		{
			iVar0 = -99;
		}
		else if (iParam1 <= 47)
		{
			iVar0 = 48;
			iVar1 = 0;
		}
		else if (iParam1 <= 63)
		{
			iVar0 = 48;
			iVar1 = 0;
		}
		else if (iParam1 <= 79)
		{
			iVar0 = 34;
		}
		else if (iParam1 <= 95)
		{
			iVar0 = 50;
		}
		else if (iParam1 <= 111)
		{
			iVar0 = -99;
		}
		else if (iParam1 <= 127)
		{
			iVar0 = -99;
		}
		else if (iParam1 <= 143)
		{
			iVar0 = -99;
		}
		else if (iParam1 <= 159)
		{
			iVar0 = 48;
			iVar1 = 0;
		}
		else if (iParam1 <= 175)
		{
			iVar0 = -99;
		}
		else if (iParam1 <= 191)
		{
			iVar0 = 71;
		}
		else if (iParam1 <= 207)
		{
			iVar1 = 0;
			switch (iParam1)
			{
				case 199:
					iVar0 = 94;
					break;
				
				case 200:
					iVar0 = 95;
					break;
				
				case 201:
					iVar0 = 96;
					break;
			}
			if ((iParam2 >= 160 && iParam2 <= 175) || iVar76 == 10)
			{
				return -99;
			}
		}
		else if (iParam1 <= 223)
		{
			iVar0 = 103;
		}
		else if (iParam1 <= 239)
		{
			iVar0 = 48;
			iVar1 = 0;
		}
		else if (iParam1 <= 255)
		{
			iVar0 = 120;
		}
		else if (iParam1 >= 256)
		{
			iVar0 = 48;
			iVar1 = 0;
			if (iVar77 != -1)
			{
				iVar87 = true;
				if (dlc1::_0x341DE7ED1D2A1BFD(iVar77, 1965569012, 0))
				{
					iVar87 = false;
					if (iParam2 >= 256 && dlc1::_0x341DE7ED1D2A1BFD(iVar75, -1200513218, 0))
					{
						iVar87 = true;
					}
				}
				if (iVar87)
				{
					iVar79 = 0;
					if (iParam2 >= 160 && iParam2 <= 175)
					{
						if (iVar78 == 12)
						{
							iVar79 = 1;
						}
					}
					iVar88 = dlc1::_0xC17AD0E5752BECDA(iVar77);
					iVar89 = 0;
					while (iVar89 < iVar88)
					{
						dlc1::get_variant_component(iVar77, iVar89, &iVar90, &iVar91, &iVar92);
						if (iVar92 == 8 && ((((((((iVar90 == 0 || iVar90 == 1849449579) || (iVar79 == 6 && dlc1::_0x341DE7ED1D2A1BFD(iVar90, -168336417, 0))) || (iVar79 == 5 && dlc1::_0x341DE7ED1D2A1BFD(iVar90, -1415000253, 0))) || (iVar79 == 4 && dlc1::_0x341DE7ED1D2A1BFD(iVar90, -1703203608, 0))) || (iVar79 == 3 && dlc1::_0x341DE7ED1D2A1BFD(iVar90, 1318819110, 0))) || (iVar79 == 2 && dlc1::_0x341DE7ED1D2A1BFD(iVar90, -1138757583, 0))) || (iVar79 == 1 && dlc1::_0x341DE7ED1D2A1BFD(iVar90, 647976134, 0))) || ((((((iVar79 == 0 && !dlc1::_0x341DE7ED1D2A1BFD(iVar90, 647976134, 0)) && !dlc1::_0x341DE7ED1D2A1BFD(iVar90, -1138757583, 0)) && !dlc1::_0x341DE7ED1D2A1BFD(iVar90, 1318819110, 0)) && !dlc1::_0x341DE7ED1D2A1BFD(iVar90, -1703203608, 0)) && !dlc1::_0x341DE7ED1D2A1BFD(iVar90, -1415000253, 0)) && !dlc1::_0x341DE7ED1D2A1BFD(iVar90, -168336417, 0))))
						{
							if (iVar90 != 0 && iVar90 != 1849449579)
							{
								iVar0 = func_512(iParam0, iVar90, 8, 4);
							}
							else
							{
								iVar0 = iVar91;
							}
							iVar89 = iVar88 + 1;
							iVar1 = 0;
						}
						iVar89++;
					}
				}
			}
		}
	}
	if (iVar1 && iVar0 != -99)
	{
		iVar0 = (iVar0 + iParam3);
	}
	return iVar0;
}

int func_601()//Position - 0x426C6
{
	return dlc2::is_dlc_present(42019760);
}

int func_602(int iParam0, int iParam1, int iParam2)//Position - 0x426D7
{
	switch (iParam0)
	{
		case joaat("mp_f_freemode_01"):
			switch (iParam1)
			{
				case 0:
					switch (iParam2)
					{
						case 0:
							break;
						
						case 1:
							break;
						
						case 2:
							return 2131039487;
							break;
						
						case 3:
							return 717379468;
							break;
						
						case 4:
							return -331193181;
							break;
						
						case 5:
							return 73557144;
							break;
						
						case 6:
							return -887980266;
							break;
						
						case 7:
							return -306315670;
							break;
						
						case 8:
							return -1154048938;
							break;
					}
					break;
				
				case 1:
					switch (iParam2)
					{
						case 0:
							break;
						
						case 1:
							break;
						
						case 2:
							return -1301636615;
							break;
						
						case 3:
							return 1153996761;
							break;
						
						case 4:
							return -1315084792;
							break;
						
						case 5:
							return 1655884038;
							break;
						
						case 6:
							return 1489229833;
							break;
						
						case 7:
							return -1929503325;
							break;
						
						case 8:
							return -1189128367;
							break;
					}
					break;
				
				case 2:
					switch (iParam2)
					{
						case 0:
							break;
						
						case 1:
							break;
						
						case 2:
							return 538171135;
							break;
						
						case 3:
							return -244985062;
							break;
						
						case 4:
							return 442977103;
							break;
						
						case 5:
							return -1385727891;
							break;
						
						case 6:
							return 1309989623;
							break;
						
						case 7:
							return 1191418696;
							break;
						
						case 8:
							return 189293242;
							break;
					}
					break;
				
				case 3:
					switch (iParam2)
					{
						case 0:
							return -1438684756;
							break;
						
						case 1:
							return 194146035;
							break;
						
						case 2:
							return -420901598;
							break;
						
						case 3:
							return 2107411814;
							break;
						
						case 4:
							return 1242686602;
							break;
						
						case 5:
							return -596540583;
							break;
						
						case 6:
							return -653786071;
							break;
						
						case 7:
							return 1460048630;
							break;
						
						case 8:
							return -2079589815;
							break;
					}
					break;
				
				case 4:
					switch (iParam2)
					{
						case 0:
							break;
						
						case 1:
							break;
						
						case 2:
							return -1947098483;
							break;
						
						case 3:
							return 569295621;
							break;
						
						case 4:
							return -208098559;
							break;
						
						case 5:
							return 1256246195;
							break;
						
						case 6:
							return 1605755939;
							break;
						
						case 7:
							return 874748698;
							break;
						
						case 8:
							return -137095372;
							break;
					}
					break;
				
				case 5:
					switch (iParam2)
					{
						case 0:
							break;
						
						case 1:
							break;
						
						case 2:
							return 1950801119;
							break;
						
						case 3:
							return -1158564771;
							break;
						
						case 4:
							return -69929428;
							break;
						
						case 5:
							return 1957730707;
							break;
						
						case 6:
							return 374587029;
							break;
						
						case 7:
							return -210146735;
							break;
						
						case 8:
							return 336100633;
							break;
					}
					break;
				
				case 6:
					switch (iParam2)
					{
						case 0:
							break;
						
						case 1:
							break;
						
						case 2:
							return -1148238879;
							break;
						
						case 3:
							return -958872024;
							break;
						
						case 4:
							return 1353141306;
							break;
						
						case 5:
							return 394070886;
							break;
						
						case 6:
							return 255958050;
							break;
						
						case 7:
							return -521728710;
							break;
						
						case 8:
							return 1843470374;
							break;
					}
					break;
				
				case 7:
					switch (iParam2)
					{
						case 0:
							break;
						
						case 1:
							break;
						
						case 2:
							return 670760190;
							break;
						
						case 3:
							return 799655540;
							break;
						
						case 4:
							return -99079306;
							break;
						
						case 5:
							return 1989760633;
							break;
						
						case 6:
							return 1157052274;
							break;
						
						case 7:
							return -1196262225;
							break;
						
						case 8:
							return -664356399;
							break;
					}
					break;
				
				case 8:
					break;
				
				case 9:
					switch (iParam2)
					{
						case 0:
							break;
						
						case 1:
							break;
						
						case 2:
							return 1875496913;
							break;
						
						case 3:
							return -1978886808;
							break;
						
						case 4:
							return -1279403197;
							break;
						
						case 5:
							return -1459998821;
							break;
						
						case 6:
							return 1786467932;
							break;
						
						case 7:
							return -795005246;
							break;
						
						case 8:
							return -1147008986;
							break;
					}
					break;
				
				case 10:
					break;
				
				case 11:
				case 16:
					switch (iParam2)
					{
						case 0:
							break;
						
						case 1:
							break;
						
						case 2:
							return -1925009287;
							break;
						
						case 3:
							return -268733734;
							break;
						
						case 4:
							return -2124412821;
							break;
						
						case 5:
							return -360036697;
							break;
						
						case 6:
							return -926433555;
							break;
						
						case 7:
							return 985839403;
							break;
						
						case 8:
							return -234436397;
							break;
						
						case 9:
							return 1165919867;
							break;
						
						case 10:
							return 1606204151;
							break;
						
						case 11:
							return 1774276352;
							break;
						
						case 12:
							return 1934254610;
							break;
						
						case 13:
							return 980775017;
							break;
						
						case 14:
							return 399321881;
							break;
					}
					break;
				
				case 12:
					switch (iParam2)
					{
						case 0:
							break;
						
						case 1:
							break;
						
						case 2:
							return 493536654;
							break;
						
						case 3:
							return -1759053005;
							break;
						
						case 4:
							return 630158551;
							break;
						
						case 5:
							return -707909514;
							break;
						
						case 6:
							return 1254885089;
							break;
						
						case 7:
							return 596977742;
							break;
						
						case 8:
							return 1861540342;
							break;
					}
					break;
				
				case 13:
					break;
				
				case 14:
					switch (iParam2)
					{
						case 0:
							break;
						
						case 1:
							break;
						
						case 2:
							return -840276017;
							break;
						
						case 3:
							return 756400133;
							break;
						
						case 4:
							return 1148630611;
							break;
						
						case 5:
							return -893909282;
							break;
						
						case 6:
							return 1485630477;
							break;
						
						case 7:
							return -934174767;
							break;
						
						case 8:
							return -1866981918;
							break;
					}
					break;
				
				case 15:
					switch (iParam2)
					{
						case 0:
							break;
						
						case 1:
							break;
						
						case 2:
							return -591418577;
							break;
						
						case 3:
							return -2029591494;
							break;
						
						case 4:
							return 1293565798;
							break;
						
						case 5:
							return 1230599348;
							break;
						
						case 6:
							return 80125466;
							break;
						
						case 7:
							return 768104686;
							break;
						
						case 8:
							return -1559755280;
							break;
					}
					break;
				
				case 352:
					switch (iParam2)
					{
						case 0:
							break;
						
						case 1:
							break;
						
						case 2:
							return 1435783799;
							break;
						
						case 3:
							return -935552076;
							break;
						
						case 4:
							return 766407714;
							break;
						
						case 5:
							return 1509946582;
							break;
						
						case 6:
							return -2105033798;
							break;
						
						case 7:
							return 1608018857;
							break;
						
						case 8:
							return -1746944984;
							break;
					}
					break;
				
				case 353:
					switch (iParam2)
					{
						case 0:
							break;
						
						case 1:
							break;
						
						case 2:
							return 640553446;
							break;
						
						case 3:
							return 376036624;
							break;
						
						case 4:
							return -51036152;
							break;
						
						case 5:
							return 1864144311;
							break;
						
						case 6:
							return 875934121;
							break;
						
						case 7:
							return -671105758;
							break;
						
						case 8:
							return -1439393512;
							break;
					}
					break;
				
				case 354:
					switch (iParam2)
					{
						case 0:
							break;
						
						case 1:
							break;
						
						case 2:
							return -1795808405;
							break;
						
						case 3:
							return -583173670;
							break;
						
						case 4:
							return 1309411930;
							break;
						
						case 5:
							return -1097003929;
							break;
						
						case 6:
							return 947491077;
							break;
						
						case 7:
							return -1021187095;
							break;
						
						case 8:
							return -1662421384;
							break;
					}
					break;
				
				case 391:
					switch (iParam2)
					{
						case 0:
							break;
						
						case 1:
							break;
						
						case 2:
							return -1866149930;
							break;
						
						case 3:
							return 169817082;
							break;
						
						case 4:
							return 876172205;
							break;
						
						case 5:
							return 2053608242;
							break;
						
						case 6:
							return 720468224;
							break;
						
						case 7:
							return -1755663855;
							break;
						
						case 8:
							return -277654310;
							break;
					}
					break;
				
				case 404:
					switch (iParam2)
					{
						case 0:
							break;
						
						case 1:
							break;
						
						case 2:
							return -1685192020;
							break;
						
						case 3:
							return 447714365;
							break;
						
						case 4:
							return -187478284;
							break;
						
						case 5:
							return 2101575193;
							break;
						
						case 6:
							return 1655151264;
							break;
						
						case 7:
							return -212448586;
							break;
						
						case 8:
							return -575494038;
							break;
					}
					break;
			}
			break;
		
		case joaat("mp_m_freemode_01"):
			switch (iParam1)
			{
				case 0:
					switch (iParam2)
					{
						case 0:
							break;
						
						case 1:
							break;
						
						case 2:
							return -414534788;
							break;
						
						case 3:
							return 185531215;
							break;
						
						case 4:
							return -775417853;
							break;
						
						case 5:
							return 1619085169;
							break;
						
						case 6:
							return 888176083;
							break;
						
						case 7:
							return -868636293;
							break;
						
						case 8:
							return -481241218;
							break;
					}
					break;
				
				case 1:
					switch (iParam2)
					{
						case 0:
							break;
						
						case 1:
							break;
						
						case 2:
							return 982904848;
							break;
						
						case 3:
							return 1053086051;
							break;
						
						case 4:
							return 1565990968;
							break;
						
						case 5:
							return 869354244;
							break;
						
						case 6:
							return -1137668925;
							break;
						
						case 7:
							return -245327436;
							break;
						
						case 8:
							return -2092735770;
							break;
					}
					break;
				
				case 2:
					switch (iParam2)
					{
						case 0:
							break;
						
						case 1:
							break;
						
						case 2:
							return 1286693086;
							break;
						
						case 3:
							return 443095479;
							break;
						
						case 4:
							return -2039335276;
							break;
						
						case 5:
							return 2083407994;
							break;
						
						case 6:
							return 533001127;
							break;
						
						case 7:
							return 1728875992;
							break;
						
						case 8:
							return -1665814217;
							break;
					}
					break;
				
				case 3:
					break;
				
				case 4:
					switch (iParam2)
					{
						case 0:
							return 1402439971;
							break;
						
						case 1:
							return -77210386;
							break;
						
						case 2:
							return 206640931;
							break;
						
						case 3:
							return 1434974169;
							break;
						
						case 4:
							return -2076303403;
							break;
						
						case 5:
							return 2073263245;
							break;
						
						case 6:
							return 229693395;
							break;
						
						case 7:
							return -981246739;
							break;
						
						case 8:
							return 2107613618;
							break;
					}
					break;
				
				case 5:
					switch (iParam2)
					{
						case 0:
							break;
						
						case 1:
							break;
						
						case 2:
							return 1954830049;
							break;
						
						case 3:
							return 1793062342;
							break;
						
						case 4:
							return -2118725149;
							break;
						
						case 5:
							return -849747283;
							break;
						
						case 6:
							return 1582789248;
							break;
						
						case 7:
							return -1675687168;
							break;
						
						case 8:
							return -381889304;
							break;
					}
					break;
				
				case 6:
					switch (iParam2)
					{
						case 0:
							break;
						
						case 1:
							break;
						
						case 2:
							return 1942207698;
							break;
						
						case 3:
							return -743369876;
							break;
						
						case 4:
							return 582693633;
							break;
						
						case 5:
							return -1280288284;
							break;
						
						case 6:
							return -1000105499;
							break;
						
						case 7:
							return -2147200029;
							break;
						
						case 8:
							return -1838714866;
							break;
					}
					break;
				
				case 7:
					break;
				
				case 8:
					switch (iParam2)
					{
						case 0:
							break;
						
						case 1:
							break;
						
						case 2:
							return 1187050736;
							break;
						
						case 3:
							return -1420954963;
							break;
						
						case 4:
							return 232453794;
							break;
						
						case 5:
							return 406178867;
							break;
						
						case 6:
							return 739288468;
							break;
						
						case 7:
							return -252997160;
							break;
						
						case 8:
							return -2044888090;
							break;
					}
					break;
				
				case 9:
					break;
				
				case 10:
					break;
				
				case 11:
					switch (iParam2)
					{
						case 0:
							break;
						
						case 1:
							break;
						
						case 2:
							return 1703311969;
							break;
						
						case 3:
							return 1875667738;
							break;
						
						case 4:
							return 1291347593;
							break;
						
						case 5:
							return -713453992;
							break;
						
						case 6:
							return 1417339152;
							break;
						
						case 7:
							return 587281350;
							break;
						
						case 8:
							return -86904022;
							break;
					}
					break;
				
				case 12:
					switch (iParam2)
					{
						case 0:
							break;
						
						case 1:
							break;
						
						case 2:
							return -1858518769;
							break;
						
						case 3:
							return 44044890;
							break;
						
						case 4:
							return -1131137757;
							break;
						
						case 5:
							return 213313570;
							break;
						
						case 6:
							return -233124949;
							break;
						
						case 7:
							return 171345846;
							break;
						
						case 8:
							return 1452902248;
							break;
					}
					break;
				
				case 13:
					break;
				
				case 14:
					switch (iParam2)
					{
						case 0:
							break;
						
						case 1:
							break;
						
						case 2:
							return 747852506;
							break;
						
						case 3:
							return 216238268;
							break;
						
						case 4:
							return 404894315;
							break;
						
						case 5:
							return 950341895;
							break;
						
						case 6:
							return 1159773017;
							break;
						
						case 7:
							return -957185436;
							break;
						
						case 8:
							return -240960885;
							break;
					}
					break;
				
				case 15:
					switch (iParam2)
					{
						case 0:
							break;
						
						case 1:
							break;
						
						case 2:
							return -259688953;
							break;
						
						case 3:
							return -736534114;
							break;
						
						case 4:
							return -1673886961;
							break;
						
						case 5:
							return 976562040;
							break;
						
						case 6:
							return -1794803798;
							break;
						
						case 7:
							return -81887956;
							break;
						
						case 8:
							return 1689176064;
							break;
					}
					break;
				
				case 302:
					switch (iParam2)
					{
						case 0:
							break;
						
						case 1:
							break;
						
						case 2:
							return -1835438866;
							break;
						
						case 3:
							return -504887899;
							break;
						
						case 4:
							return -2062205969;
							break;
						
						case 5:
							return 1171204323;
							break;
						
						case 6:
							return 655612525;
							break;
						
						case 7:
							return -739019619;
							break;
						
						case 8:
							return 1371789707;
							break;
					}
					break;
				
				case 303:
					switch (iParam2)
					{
						case 0:
							break;
						
						case 1:
							break;
						
						case 2:
							return 124374814;
							break;
						
						case 3:
							return 2119944607;
							break;
						
						case 4:
							return -1129482474;
							break;
						
						case 5:
							return 801728466;
							break;
						
						case 6:
							return 1764150402;
							break;
						
						case 7:
							return -43777;
							break;
						
						case 8:
							return -543743869;
							break;
					}
					break;
				
				case 304:
					switch (iParam2)
					{
						case 0:
							break;
						
						case 1:
							break;
						
						case 2:
							return 1732443055;
							break;
						
						case 3:
							return 1991589117;
							break;
						
						case 4:
							return -1926802042;
							break;
						
						case 5:
							return -1879434956;
							break;
						
						case 6:
							return -582200001;
							break;
						
						case 7:
							return 498117603;
							break;
						
						case 8:
							return 1121585510;
							break;
					}
					break;
			}
			break;
	}
	return -1;
}

int func_603(int iParam0, int iParam1, int iParam2, int iParam3)//Position - 0x43AFB
{
	int iVar0;
	int iVar1;
	int iVar2;
	int iVar3;
	int iVar4;
	int iVar5;
	int iVar6;
	int iVar7;
	int iVar8;
	int iVar9;
	int iVar10;
	int iVar11;
	int iVar12;
	int iVar13;
	int iVar14;
	
	iVar0 = -99;
	iVar1 = -1;
	iVar2 = -1;
	iVar3 = -1;
	iVar4 = -1;
	switch (iParam0)
	{
		case joaat("mp_m_freemode_01"):
			if (iParam2 >= 237)
			{
				iVar2 = func_604(iParam0, iParam2, 11, 3);
				iVar1 = func_595(iVar2);
			}
			if (iParam1 >= 241)
			{
				iVar4 = func_604(iParam0, iParam1, 8, 3);
				iVar3 = func_595(iVar4);
			}
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar2, 320460654, 0))
			{
				iVar0 = 14;
			}
			else if (dlc1::_0x341DE7ED1D2A1BFD(iVar2, -2017999390, 0))
			{
				iVar0 = 6;
			}
			else if (iVar4 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1786447517, 0))
			{
				iVar0 = 1;
			}
			else if (iVar4 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1010805287, 0))
			{
				iVar0 = 4;
			}
			else if (dlc1::_0x341DE7ED1D2A1BFD(iVar2, -1237899132, 0) && !dlc1::_0x341DE7ED1D2A1BFD(iVar2, -491588875, 0))
			{
				if (iParam1 == 240)
				{
					if ((dlc1::_0x341DE7ED1D2A1BFD(iVar2, -269266203, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, -685039259, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, 297865853, 0))
					{
						iVar0 = func_512(iParam0, -189347783, 3, 3);
					}
					else if (dlc1::_0x341DE7ED1D2A1BFD(iVar2, 201427653, 0))
					{
						iVar0 = func_512(iParam0, -2124259813, 3, 3);
					}
					else if (dlc1::_0x341DE7ED1D2A1BFD(iVar2, 967829025, 0))
					{
						iVar0 = func_512(iParam0, 1522547645, 3, 3);
					}
					else if (dlc1::_0x341DE7ED1D2A1BFD(iVar2, -979468724, 0))
					{
						iVar0 = 5;
					}
				}
				else
				{
					iVar0 = func_603(iParam0, -99, func_596(iParam0, iParam1, 0), iParam3);
					if (iVar0 == -99)
					{
						iVar0 = 0;
					}
				}
			}
			else if (dlc1::_0x341DE7ED1D2A1BFD(iVar4, -316495692, 0))
			{
				iVar0 = 12;
			}
			else if (((iVar2 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar2, -416620954, 0)) || (iVar2 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar2, -1507532917, 0))) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, -1813210391, 0))
			{
				if (iParam1 == 240)
				{
					iVar0 = 14;
				}
				else if ((iParam1 >= 80 && iParam1 <= 95) || iVar3 == 5)
				{
					iVar0 = 6;
				}
				else if ((iParam1 >= 16 && iParam1 <= 31) || iVar3 == 1)
				{
					iVar0 = 1;
				}
				else
				{
					iVar0 = 4;
				}
			}
			else if (iVar2 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar2, -1719338724, 0))
			{
				if (iParam1 == 240)
				{
					iVar0 = 14;
				}
				else if ((iParam1 >= 80 && iParam1 <= 95) || iVar3 == 5)
				{
					iVar0 = 6;
				}
				else
				{
					iVar0 = 1;
				}
			}
			else if (iVar2 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar2, -1939378450, 0))
			{
				if ((iParam1 >= 192 && iParam1 <= 207) || iVar3 == 12)
				{
					iVar0 = 0;
				}
				else
				{
					iVar0 = 11;
				}
			}
			else if (iVar2 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar2, 264959411, 0))
			{
				if ((iParam1 >= 80 && iParam1 <= 95) || iVar3 == 5)
				{
					iVar0 = 6;
				}
				else if (iParam1 == 240)
				{
					iVar0 = 14;
				}
				else if ((iParam1 >= 16 && iParam1 <= 31) || iVar3 == 1)
				{
					iVar0 = 1;
				}
			}
			else if (iVar2 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar2, 1625463492, 0))
			{
				iVar0 = 12;
			}
			else if (((iParam2 >= 0 && iParam2 <= 31) || iVar1 == 0) || iVar1 == 1)
			{
				iVar0 = 0;
			}
			else if ((((((((((iParam2 >= 48 && iParam2 <= 63) || (iParam2 >= 64 && iParam2 <= 79)) || (iParam2 >= 96 && iParam2 <= 107)) || (iParam2 >= 108 && iParam2 <= 123)) || (iParam2 >= 156 && iParam2 <= 171)) || iVar1 == 3) || iVar1 == 4) || iVar1 == 6) || iVar1 == 7) || iVar1 == 10)
			{
				if ((iParam1 >= 80 && iParam1 <= 95) || iVar3 == 5)
				{
					iVar0 = 6;
				}
				else if (iParam1 == 240 || iVar3 == 15)
				{
					iVar0 = 14;
				}
				else if ((iParam1 >= 160 && iParam1 <= 175) || iVar3 == 10)
				{
					iVar0 = 4;
				}
				else if ((iParam1 >= 176 && iParam1 <= 191) || iVar3 == 11)
				{
					iVar0 = 12;
				}
				else if ((((iParam1 >= 16 && iParam1 <= 31) || (iParam1 >= 224 && iParam1 <= 239)) || iVar3 == 1) || iVar3 == 14)
				{
					iVar0 = 1;
				}
				else if ((iParam1 >= 80 && iParam1 <= 95) || iVar3 == 5)
				{
					iVar0 = 6;
				}
				else if ((iParam1 >= 32 && iParam1 <= 47) || iVar3 == 2)
				{
					iVar0 = 4;
				}
				else if (iVar4 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar4, 1847239679, 0))
				{
					if (iVar4 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1914383230, 0))
					{
						iVar0 = 4;
					}
					else
					{
						iVar0 = 1;
					}
				}
				else if ((iParam1 >= 144 && iParam1 <= 159) || iVar3 == 9)
				{
					iVar0 = 1;
				}
				else if (dlc1::_0x341DE7ED1D2A1BFD(iVar4, -849839091, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -2088146832, 0))
				{
					iVar0 = 4;
				}
				else if (iParam1 >= 241)
				{
					if (iVar4 != -1)
					{
						iVar5 = dlc1::_get_num_forced_components(iVar4);
						iVar6 = 0;
						while (iVar6 < iVar5)
						{
							dlc1::get_forced_component(iVar4, iVar6, &iVar7, &iVar8, &iVar9);
							if (iVar9 == 3)
							{
								if (iVar7 != 0 && iVar7 != 1849449579)
								{
									iVar0 = func_512(iParam0, iVar7, 3, 3);
								}
								else
								{
									iVar0 = iVar8;
								}
								iVar6 = iVar5 + 1;
							}
							iVar6++;
						}
					}
				}
			}
			else if ((iParam2 >= 172 && iParam2 <= 187) || iVar1 == 11)
			{
				if (iVar4 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar4, -7109286, 0))
				{
					iVar0 = 6;
				}
				else if ((((iParam1 >= 48 && iParam1 <= 63) || (iParam1 >= 112 && iParam1 <= 127)) || iVar3 == 3) || iVar3 == 7)
				{
					iVar0 = 11;
				}
				else if ((iParam1 >= 96 && iParam1 <= 111) || iVar3 == 6)
				{
					iVar0 = 11;
				}
				else if (iVar4 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar4, 1147939952, 0))
				{
					iVar0 = 12;
				}
				else if (iParam1 == 240)
				{
					iVar0 = 15;
				}
			}
			break;
		
		case joaat("mp_f_freemode_01"):
			if (iParam2 >= 256)
			{
				iVar2 = func_604(iParam0, iParam2, 11, 4);
				iVar1 = func_595(iVar2);
			}
			if (iParam1 >= 136)
			{
				iVar4 = func_604(iParam0, iParam1, 8, 4);
				iVar3 = func_595(iVar4);
				switch (iVar4)
				{
					case 327496660:
					case -63928837:
					case 695885966:
					case 525421628:
					case 1426634666:
					case 1160648693:
					case 1928065904:
					case 1748557322:
					case -1777223233:
					case -1991794649:
					case 917309067:
					case -1629661498:
						iVar3 = 15;
						break;
					
					case 587358117:
					case 742748715:
					case 490263574:
					case 682683142:
					case -1172927021:
					case -174365543:
					case -1450128251:
					case -1811439245:
					case 1578218888:
					case -1193481443:
					case 1549742623:
					case 1309119856:
					case 2143418596:
					case 1905745039:
					case 428026984:
					case 1547729071:
					case -1848319017:
						iVar3 = 13;
						break;
					}
			}
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar2, 320460654, 0))
			{
				iVar0 = 0;
			}
			else if (dlc1::_0x341DE7ED1D2A1BFD(iVar2, -1237899132, 0) && !dlc1::_0x341DE7ED1D2A1BFD(iVar2, -491588875, 0))
			{
				if ((((((((((((((((((((((((((((iParam1 >= 34 && iParam1 <= 49) || (iParam1 >= 50 && iParam1 <= 65)) || (iParam1 >= 71 && iParam1 <= 86)) || (iParam1 >= 87 && iParam1 <= 102)) || (iParam1 >= 103 && iParam1 <= 118)) || (iParam1 >= 120 && iParam1 <= 135)) || iVar3 == 4) || iVar3 == 5) || iVar3 == 11) || iVar3 == 12) || iVar3 == 13) || iVar3 == 15) || iVar4 == 1389091979) || iVar4 == 442100644) || iVar4 == -1406103725) || iVar4 == -167304449) || iVar4 == 129353308) || iVar4 == 1943510702) || iVar4 == 1963041026) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 2044466679, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -2020757158, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1064262817, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1419806467, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1053842259, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1358888880, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 1208450825, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 297865853, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 602650322, 0))
				{
					if ((dlc1::_0x341DE7ED1D2A1BFD(iVar2, -269266203, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, -685039259, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, 297865853, 0))
					{
						iVar0 = func_512(iParam0, -405734992, 3, 4);
					}
					else if (dlc1::_0x341DE7ED1D2A1BFD(iVar2, 201427653, 0))
					{
						iVar0 = func_512(iParam0, 1297919831, 3, 4);
					}
					else if (dlc1::_0x341DE7ED1D2A1BFD(iVar2, 967829025, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, -979468724, 0))
					{
						iVar0 = func_512(iParam0, 440926231, 3, 4);
					}
				}
				else if ((dlc1::_0x341DE7ED1D2A1BFD(iVar4, -89003918, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -747858475, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 490219883, 0))
				{
					iVar0 = 11;
				}
				else
				{
					iVar0 = func_603(iParam0, -99, func_596(iParam0, iParam1, 0), iParam3);
					if (iVar0 == -99)
					{
						iVar0 = 14;
					}
				}
			}
			else if (dlc1::_0x341DE7ED1D2A1BFD(iVar4, -316495692, 0))
			{
				iVar0 = 3;
			}
			else if (((iVar4 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar4, 1965569012, 0)) && !func_599(iParam0, iParam2)) && !dlc1::_0x341DE7ED1D2A1BFD(iVar2, 320460654, 0))
			{
				if (iVar4 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar4, 1147939952, 0))
				{
					iVar0 = 3;
				}
				else
				{
					iVar0 = 0;
				}
			}
			else if (iVar4 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar4, 1353777856, 0))
			{
				iVar0 = 7;
			}
			else if ((iVar4 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar4, -849839091, 0)) || (iVar4 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar4, -2088146832, 0)))
			{
				iVar0 = 3;
			}
			else if (iVar2 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar2, -2102859770, 0))
			{
				if (dlc1::_0x341DE7ED1D2A1BFD(func_604(iParam0, iParam3, 4, 4), -33031567, 0))
				{
					iVar0 = 11;
				}
				else
				{
					iVar0 = 15;
				}
			}
			else if ((((((((((((((iVar4 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1119232689, 0)) || (iVar4 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar4, 1976716889, 0))) || (iVar4 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1488441032, 0))) || (iVar4 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar4, 2044466679, 0))) || (iVar4 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1419806467, 0))) || (iVar4 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1813210391, 0))) || (iVar4 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar4, 263623295, 0))) || (iVar4 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar4, -309899747, 0))) || (iVar4 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar4, -89003918, 0))) || (iVar4 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar4, -747858475, 0))) || (iVar4 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar4, 490219883, 0))) || (iVar4 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar4, 1208450825, 0))) || (iVar4 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar4, 297865853, 0))) || (iVar4 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar4, 602650322, 0)))
			{
				if ((((((iParam2 >= 16 && iParam2 <= 31) || (iParam2 >= 96 && iParam2 <= 111)) || (iParam2 >= 128 && iParam2 <= 143)) || iVar1 == 1) || iVar1 == 6) || iVar1 == 8)
				{
					iVar0 = 1;
				}
				else if ((((((((((((((((((((((((iParam2 >= 112 && iParam2 <= 127) || (iParam2 >= 160 && iParam2 <= 175)) || iVar1 == 7) || iVar1 == 10) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, 2026620439, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, 916636514, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, 1322269404, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, 548036233, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, -870074461, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, -1174924468, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, -868698159, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, 1769225721, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, -1834446747, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, -1719338724, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, -416620954, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, 947651647, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, -549843760, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, 1830529185, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, -1266557933, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, -1813210391, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, -89003918, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, -747858475, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, 1208450825, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, -58412562, 0))
				{
					iVar0 = 3;
				}
				else if (dlc1::_0x341DE7ED1D2A1BFD(iVar2, -1939378450, 0))
				{
					iVar0 = 9;
				}
			}
			else if ((((((iVar2 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar2, -870074461, 0)) || (iVar2 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar2, -1813210391, 0))) || (iVar2 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar2, -89003918, 0))) || (iVar2 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar2, -747858475, 0))) || (iVar2 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar2, 1208450825, 0))) || (iVar2 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar2, -58412562, 0)))
			{
				if ((((dlc1::_0x341DE7ED1D2A1BFD(iVar4, 684992453, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 916636514, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1939378450, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 441715397, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 264959411, 0))
				{
					iVar0 = 1;
				}
				else
				{
					iVar0 = 6;
				}
			}
			else if ((iParam2 >= 16 && iParam2 <= 31) || iVar1 == 1)
			{
				if ((((iParam1 >= 50 && iParam1 <= 65) || (iParam1 >= 120 && iParam1 <= 135)) || iVar3 == 5) || iVar3 == 15)
				{
					iVar0 = 5;
				}
				else if (iParam1 >= 136)
				{
					if (iVar4 != -1)
					{
						iVar10 = dlc1::_get_num_forced_components(iVar4);
						iVar11 = 0;
						while (iVar11 < iVar10)
						{
							dlc1::get_forced_component(iVar4, iVar11, &iVar12, &iVar13, &iVar14);
							if (iVar14 == 3)
							{
								if (iVar12 != 0 && iVar12 != 1849449579)
								{
									iVar0 = func_512(iParam0, iVar12, 3, 4);
								}
								else
								{
									iVar0 = iVar13;
								}
								iVar11 = iVar10 + 1;
							}
							iVar11++;
						}
					}
				}
			}
			else if (((iParam2 >= 112 && iParam2 <= 127) || iVar1 == 7) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, -1719338724, 0))
			{
				if ((((dlc1::_0x341DE7ED1D2A1BFD(iVar4, 684992453, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 916636514, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1939378450, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 441715397, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 264959411, 0))
				{
					iVar0 = 3;
				}
				else
				{
					iVar0 = 6;
				}
			}
			break;
	}
	return iVar0;
}

int func_604(int iParam0, int iParam1, int iParam2, int iParam3)//Position - 0x44CEB
{
	struct<2> Var0;
	int iVar17;
	int iVar18;
	int iVar19;
	int iVar20;
	struct<2> Var21;
	int iVar38;
	int iVar39;
	int iVar40;
	int iVar41;
	
	if (iParam2 == 12)
	{
	}
	else if (iParam2 == 13)
	{
	}
	else if (iParam2 == 14)
	{
		dlc1::init_shop_ped_prop(&Var0);
		iVar18 = 0;
		iVar19 = (iParam1 - func_514(iParam0));
		if (iVar19 < 0)
		{
			return -1;
		}
		iVar20 = dlc1::_get_num_props_from_outfit(iParam3, 6, -1, 1, -1, -1);
		iVar17 = 0;
		while (iVar17 < iVar20)
		{
			dlc1::get_shop_ped_query_prop(iVar17, &Var0);
			if (!dlc1::_is_dlc_data_empty(Var0))
			{
				if (iVar18 == iVar19)
				{
					return Var0.f_1;
				}
				iVar18++;
			}
			iVar17++;
		}
	}
	else
	{
		dlc1::init_shop_ped_component(&Var21);
		iVar39 = 0;
		iVar40 = (iParam1 - func_513(iParam0, func_626(iParam2)));
		if (iVar40 < 0)
		{
			return -1;
		}
		if ((iParam0 == Global_69640.f_26[iParam2] && iParam1 == Global_69640[iParam2]) && Global_69640.f_13[iParam2] != 0)
		{
			return Global_69640.f_13[iParam2];
		}
		iVar41 = dlc1::_get_num_props_from_outfit(iParam3, 6, -1, 0, -1, func_626(iParam2));
		iVar38 = 0;
		while (iVar38 < iVar41)
		{
			dlc1::get_shop_ped_query_component(iVar38, &Var21);
			if (!dlc1::_is_dlc_data_empty(Var21))
			{
				if (iVar39 == iVar40)
				{
					Global_69640.f_13[iParam2] = Var21.f_1;
					Global_69640[iParam2] = iParam1;
					Global_69640.f_26[iParam2] = iParam0;
					return Var21.f_1;
				}
				iVar39++;
			}
			iVar38++;
		}
	}
	return -1;
}

int func_605(int iParam0, int iParam1)//Position - 0x44E47
{
	int iVar0;
	int iVar1;
	int iVar2;
	
	if (((iParam1 == 12 || iParam1 == 13) || iParam1 == 14) || ped::is_ped_injured(iParam0))
	{
		return -99;
	}
	iVar0 = func_626(iParam1);
	iVar1 = ped::get_ped_drawable_variation(iParam0, iVar0);
	iVar2 = ped::get_ped_texture_variation(iParam0, iVar0);
	return func_606(iParam0, iVar1, iVar2, iParam1);
}

int func_606(int iParam0, int iParam1, int iParam2, int iParam3)//Position - 0x44EA7
{
	int iVar0;
	int iVar1;
	int iVar2;
	int iVar3;
	int iVar4;
	int iVar5;
	
	iVar0 = func_626(iParam3);
	iVar1 = ped::get_number_of_ped_drawable_variations(iParam0, iVar0);
	iVar3 = 0;
	while (iVar3 <= (iVar1 - 1))
	{
		iVar5 = ped::get_number_of_ped_texture_variations(iParam0, iVar0, iVar3);
		if (iVar3 != iParam1)
		{
			iVar2 = (iVar2 + iVar5);
		}
		else
		{
			iVar4 = 0;
			while (iVar4 <= (iVar5 - 1))
			{
				if (iVar3 == iParam1 && iVar4 == iParam2)
				{
					return iVar2;
				}
				else
				{
					iVar2++;
				}
				iVar4++;
			}
		}
		iVar3++;
	}
	return -99;
}

void func_607(int iParam0)//Position - 0x44F2B
{
	int iVar0;
	int iVar1;
	int iVar2;
	int iVar3;
	int iVar4;
	int iVar5;
	int iVar6;
	int iVar7;
	int iVar8;
	int iVar9;
	int iVar10;
	int iVar11;
	int iVar12;
	int iVar13;
	int iVar14;
	int iVar15;
	struct<5> Var16;
	int iVar33;
	
	iVar0 = entity::get_entity_model(iParam0);
	iVar1 = ped::get_ped_drawable_variation(iParam0, 11);
	iVar2 = ped::get_ped_texture_variation(iParam0, 11);
	iVar3 = ped::get_ped_drawable_variation(iParam0, 1);
	iVar4 = ped::get_ped_texture_variation(iParam0, 1);
	iVar5 = ped::get_ped_drawable_variation(iParam0, 8);
	iVar6 = ped::get_ped_texture_variation(iParam0, 8);
	iVar7 = ped::get_ped_drawable_variation(iParam0, 10);
	iVar8 = ped::get_ped_texture_variation(iParam0, 10);
	iVar9 = dlc1::get_hash_name_for_component(iParam0, 11, iVar1, iVar2);
	iVar10 = dlc1::get_hash_name_for_component(iParam0, 1, iVar3, iVar4);
	iVar11 = dlc1::get_hash_name_for_component(iParam0, 8, iVar5, iVar6);
	iVar12 = dlc1::get_hash_name_for_prop(iParam0, 0, ped::get_ped_prop_index(iParam0, 0), ped::get_ped_prop_texture_index(iParam0, 0));
	iVar13 = dlc1::get_hash_name_for_component(iParam0, 10, iVar7, iVar8);
	if (dlc1::_0x341DE7ED1D2A1BFD(iVar9, -317649054, 0))
	{
		iVar14 = false;
		if (dlc1::_0x341DE7ED1D2A1BFD(iVar9, 32905942, 0))
		{
			if (dlc1::_0x341DE7ED1D2A1BFD(iVar12, 605826125, 0))
			{
				if (!dlc1::_0x341DE7ED1D2A1BFD(iVar9, -1889900289, 0))
				{
					iVar14 = true;
				}
			}
			else if (dlc1::_0x341DE7ED1D2A1BFD(iVar9, -1889900289, 0))
			{
				iVar14 = true;
			}
		}
		else if ((((dlc1::_0x341DE7ED1D2A1BFD(iVar10, 72391838, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar10, -1409448021, 0)) && !func_681(iVar0, 14, func_618(iParam0, 14, 0), -1)) && !dlc1::_0x341DE7ED1D2A1BFD(iVar12, -1821566288, 0)) && !dlc1::_0x341DE7ED1D2A1BFD(iVar12, 208298959, 0))
		{
			if (!dlc1::_0x341DE7ED1D2A1BFD(iVar9, -1889900289, 0))
			{
				iVar14 = true;
			}
		}
		else if (dlc1::_0x341DE7ED1D2A1BFD(iVar9, -1889900289, 0))
		{
			iVar14 = true;
		}
		if (iVar14)
		{
			if (func_609(iVar9, 11, &iVar15))
			{
				dlc1::get_shop_ped_component(iVar15, &Var16);
				ped::set_ped_component_variation(iParam0, 11, Var16.f_3, Var16.f_4, ped::get_ped_palette_variation(iParam0, 11));
				if (entity::get_entity_model(iParam0) == joaat("mp_m_freemode_01"))
				{
					if (dlc1::_0x341DE7ED1D2A1BFD(iVar13, -1487683087, 0))
					{
						if (dlc1::_0x341DE7ED1D2A1BFD(iVar15, -816428229, 0) && iVar13 != -1104282163)
						{
							dlc1::get_shop_ped_component(-1104282163, &Var16);
							ped::set_ped_component_variation(iParam0, 10, Var16.f_3, Var16.f_4, 0);
						}
						else if (dlc1::_0x341DE7ED1D2A1BFD(iVar15, -521539998, 0) && iVar13 != 326501576)
						{
							dlc1::get_shop_ped_component(326501576, &Var16);
							ped::set_ped_component_variation(iParam0, 10, Var16.f_3, Var16.f_4, 0);
						}
					}
				}
				else if (dlc1::_0x341DE7ED1D2A1BFD(iVar13, -1487683087, 0))
				{
					if (dlc1::_0x341DE7ED1D2A1BFD(iVar15, -816428229, 0))
					{
						if (iVar13 != 1349944895)
						{
							dlc1::get_shop_ped_component(1349944895, &Var16);
							ped::set_ped_component_variation(iParam0, 10, Var16.f_3, Var16.f_4, 0);
						}
					}
					else if (dlc1::_0x341DE7ED1D2A1BFD(iVar15, -521539998, 0))
					{
						if (iVar13 != -521200785)
						{
							dlc1::get_shop_ped_component(-521200785, &Var16);
							ped::set_ped_component_variation(iParam0, 10, Var16.f_3, Var16.f_4, 0);
						}
					}
				}
				ped::set_ped_component_variation(iParam0, 1, iVar3, iVar4, 0);
			}
		}
	}
	iVar33 = false;
	if (iVar0 == joaat("mp_m_freemode_01"))
	{
		if (!dlc1::_0x341DE7ED1D2A1BFD(iVar9, 572416369, 0))
		{
			iVar33 = true;
		}
		switch (iVar10)
		{
			case -486726551:
			case 219052171:
			case -1032068249:
			case -728660078:
			case -850691818:
			case -544072285:
			case -1811183977:
			case -1111303675:
			case 116190296:
			case -1282673470:
			case -936108522:
			case -671236695:
			case 1520550639:
			case 1816684092:
			case 2102823000:
			case -1866059977:
			case 1250403007:
			case 476038764:
			case 1863871456:
			case 351755390:
			case 1058844872:
			case 1549134650:
			case 1317097361:
			case -829567064:
			case -130604290:
			case -380009149:
			case 596212130:
			case 2140942786:
			case 1901696317:
			case -1797925843:
			case 790890703:
			case 1633873228:
			case 1272234544:
			case -672409000:
			case -1976713507:
			case -1902280196:
			case -115943475:
			case 1684425644:
			case 1983115079:
				iVar33 = true;
				break;
		}
	}
	else
	{
		if (!dlc1::_0x341DE7ED1D2A1BFD(iVar9, -196114988, 0))
		{
			iVar33 = true;
		}
		switch (iVar10)
		{
			case -1615510302:
			case 1527692182:
			case -2083484391:
			case -1372200477:
			case 761684042:
			case 534496565:
			case 303671729:
			case 39193130:
			case -162598372:
			case -393062749:
			case 2063387500:
			case 1633785910:
			case -874910415:
			case -1240415841:
			case 4970004:
			case -1695478944:
			case -450420789:
			case 257455149:
			case 1098963073:
			case -204554982:
			case 1027252245:
			case 1482249810:
			case 1657236270:
			case 633729300:
			case 461560974:
			case 39856713:
			case -130673163:
			case 1595499458:
			case 1424510816:
			case -1686217589:
			case 415037286:
			case 1095714954:
			case -1384675744:
			case -603364477:
			case 423419373:
			case -945505606:
			case -188672778:
			case 578089053:
			case 1418122368:
			case 39432231:
			case 998548092:
			case -539458143:
			case 1285512993:
			case 1384673675:
			case 207316274:
			case 924498608:
			case 1626705513:
			case -1951407139:
			case 1109577920:
			case 1943254053:
			case -706250677:
			case -933962458:
			case 2065187502:
			case 2143125494:
			case -728857530:
			case 113895612:
			case -106672527:
			case -1674341487:
			case -1426640612:
			case -1616110970:
			case -825558845:
			case -1062773636:
			case 1680712586:
			case 731446975:
			case -1441694810:
			case 1076144086:
			case 1291534723:
			case 1653763249:
			case -402884741:
			case 1982600156:
			case -1955185040:
			case -1722820061:
			case 519431533:
			case 1338441322:
			case -97470603:
			case -1293080337:
			case -1531999116:
			case 762322431:
			case 1318477899:
			case 199940853:
			case 1034403438:
			case 1715572641:
			case -2013146335:
			case 1085654154:
			case 962496867:
			case 1611716295:
			case 637461160:
			case -1137111266:
			case 316882033:
			case 590699797:
			case -385914710:
			case -1897876374:
			case -861786128:
			case -633615581:
			case -1298728310:
			case 2019526172:
			case -156630377:
			case 99852586:
			case 1543589216:
			case 1783097837:
			case -1876706754:
			case -1647782520:
			case -1394117691:
			case 977702533:
			case -670092377:
			case -908093624:
			case 1219695857:
			case 1919117393:
			case -534990310:
			case 445654672:
			case 329262298:
			case 22970455:
			case -476401343:
			case -706275878:
			case 1876083388:
			case -1114385357:
			case -840010097:
			case -2048003518:
			case 286623891:
			case 1792195596:
			case 1992938490:
			case -1364343871:
			case 721974080:
			case -45508669:
			case 1998385862:
			case 1222776401:
				iVar33 = true;
				break;
			}
	}
	if (iVar33)
	{
		if (dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1889900289, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar11, 1569775397, 0))
		{
			if (iVar0 == joaat("mp_m_freemode_01"))
			{
				iVar5 = 15;
				iVar6 = 0;
			}
			else
			{
				iVar5 = 14;
				iVar6 = 0;
			}
		}
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iVar10, -1409448021, 0) && !func_681(iVar0, 14, func_618(iParam0, 14, 0), -1))
	{
		if (dlc1::_0x341DE7ED1D2A1BFD(iVar11, 1569775397, 0))
		{
			iVar5++;
		}
		else
		{
			iVar5 = func_608(iParam0, 1);
			iVar6 = iVar2;
		}
	}
	else if (dlc1::_0x341DE7ED1D2A1BFD(iVar11, -1889900289, 0))
	{
		iVar5 = (iVar5 - 1);
	}
	else
	{
		iVar5 = func_608(iParam0, 0);
		iVar6 = iVar2;
	}
	ped::set_ped_component_variation(iParam0, 8, iVar5, iVar6, ped::get_ped_palette_variation(iParam0, 8));
}

var func_608(int iParam0, int iParam1)//Position - 0x456FE
{
	struct<4> Var0;
	int iVar17;
	
	iVar17 = entity::get_entity_model(iParam0) == joaat("mp_m_freemode_01");
	Var0.f_3 = -1;
	if (iVar17)
	{
		if (iParam1)
		{
			dlc1::get_shop_ped_component(-367850957, &Var0);
		}
		else
		{
			dlc1::get_shop_ped_component(1241116144, &Var0);
		}
	}
	else if (iParam1)
	{
		dlc1::get_shop_ped_component(555191698, &Var0);
	}
	else
	{
		dlc1::get_shop_ped_component(-972757995, &Var0);
	}
	return Var0.f_3;
}

bool func_609(int iParam0, int iParam1, var uParam2)//Position - 0x45761
{
	int iVar0;
	int iVar1;
	var uVar2;
	int iVar3;
	
	iVar0 = dlc1::_0xC17AD0E5752BECDA(iParam0);
	iVar1 = 0;
	while (iVar1 < iVar0)
	{
		dlc1::get_variant_component(iParam0, iVar1, uParam2, &uVar2, &iVar3);
		if (iVar3 == iParam1)
		{
			if (*uParam2 != 0 && *uParam2 != 1849449579)
			{
				return true;
			}
		}
		iVar1++;
	}
	return false;
}

int func_610(int iParam0, int iParam1, int iParam2, int iParam3, int iParam4, int iParam5)//Position - 0x457B4
{
	int iVar0;
	int iVar1;
	int iVar2;
	int iVar3;
	int iVar4;
	int iVar5;
	int iVar6;
	int iVar7;
	int iVar8;
	int iVar9;
	int iVar10;
	int iVar11;
	int iVar12;
	int iVar13;
	int iVar14;
	int iVar15;
	int iVar16;
	int iVar17;
	int iVar18;
	int iVar19;
	int iVar20;
	int iVar21;
	int iVar22;
	int iVar23;
	int iVar24;
	int iVar25;
	int iVar26;
	int iVar27;
	int iVar28;
	int iVar29;
	int iVar30;
	int iVar31;
	int iVar32;
	int iVar33;
	int iVar34;
	int iVar35;
	int iVar36;
	int iVar37;
	int iVar38;
	int iVar39;
	int iVar40;
	int iVar41;
	int iVar42;
	int iVar43;
	int iVar44;
	int iVar45;
	int iVar46;
	int iVar47;
	int iVar48;
	int iVar49;
	int iVar50;
	int iVar51;
	int iVar52;
	int iVar53;
	int iVar54;
	int iVar55;
	int iVar56;
	int iVar57;
	int iVar58;
	int iVar59;
	int iVar60;
	int iVar61;
	int iVar62;
	int iVar63;
	int iVar64;
	int iVar65;
	int iVar66;
	int iVar67;
	int iVar68;
	int iVar69;
	int iVar70;
	int iVar71;
	int iVar72;
	int iVar73;
	int iVar74;
	int iVar75;
	int iVar76;
	int iVar77;
	int iVar78;
	int iVar79;
	int iVar80;
	int iVar81;
	int iVar82;
	int iVar83;
	int iVar84;
	int iVar85;
	int iVar86;
	int iVar87;
	int iVar88;
	int iVar89;
	int iVar90;
	int iVar91;
	int iVar92;
	int iVar93;
	int iVar94;
	int iVar95;
	int iVar96;
	int iVar97;
	int iVar98;
	int iVar99;
	int iVar100;
	int iVar101;
	int iVar102;
	int iVar103;
	int iVar104;
	int iVar105;
	int iVar106;
	int iVar107;
	int iVar108;
	int iVar109;
	int iVar110;
	int iVar111;
	int iVar112;
	int iVar113;
	int iVar114;
	int iVar115;
	int iVar116;
	int iVar117;
	int iVar118;
	int iVar119;
	int iVar120;
	int iVar121;
	int iVar122;
	int iVar123;
	int iVar124;
	int iVar125;
	int iVar126;
	int iVar127;
	int iVar128;
	int iVar129;
	int iVar130;
	int iVar131;
	int iVar132;
	int iVar133;
	int iVar134;
	int iVar135;
	int iVar136;
	int iVar137;
	int iVar138;
	int iVar139;
	int iVar140;
	int iVar141;
	int iVar142;
	int iVar143;
	int iVar144;
	int iVar145;
	int iVar146;
	int iVar147;
	int iVar148;
	int iVar149;
	int iVar150;
	int iVar151;
	int iVar152;
	int iVar153;
	int iVar154;
	int iVar155;
	int iVar156;
	int iVar157;
	int iVar158;
	int iVar159;
	int iVar160;
	int iVar161;
	int iVar162;
	int iVar163;
	int iVar164;
	int iVar165;
	int iVar166;
	int iVar167;
	int iVar168;
	int iVar169;
	int iVar170;
	int iVar171;
	int iVar172;
	int iVar173;
	int iVar174;
	int iVar175;
	int iVar176;
	int iVar177;
	int iVar178;
	int iVar179;
	int iVar180;
	int iVar181;
	int iVar182;
	int iVar183;
	int iVar184;
	int iVar185;
	int iVar186;
	int iVar187;
	int iVar188;
	int iVar189;
	int iVar190;
	int iVar191;
	int iVar192;
	int iVar193;
	int iVar194;
	int iVar195;
	int iVar196;
	int iVar197;
	int iVar198;
	int iVar199;
	int iVar200;
	int iVar201;
	int iVar202;
	int iVar203;
	int iVar204;
	int iVar205;
	int iVar206;
	int iVar207;
	int iVar208;
	
	iVar0 = -99;
	if (iParam4 == 2)
	{
		func_611(iParam0, iParam1, iParam2, iParam3, &iVar0);
	}
	else if (iParam1 == joaat("mp_m_freemode_01"))
	{
		if (iParam4 == 3)
		{
			if (iParam2 == 11)
			{
				if (iParam3 <= 15)
				{
					iVar0 = 0;
				}
				else if (iParam3 <= 31)
				{
					iVar0 = 0;
				}
				else if (iParam3 <= 47)
				{
					iVar0 = 2;
				}
				else if (iParam3 <= 63)
				{
					iVar0 = 1;
				}
				else if (iParam3 <= 79)
				{
					iVar0 = 1;
				}
				else if (iParam3 <= 95)
				{
					iVar0 = 5;
				}
				else if (iParam3 <= 107)
				{
					iVar0 = 12;
				}
				else if (iParam3 <= 123)
				{
					iVar0 = 1;
				}
				else if (iParam3 <= 139)
				{
					iVar0 = 8;
				}
				else if (iParam3 <= 155)
				{
					iVar0 = 0;
				}
				else if (iParam3 <= 171)
				{
					iVar0 = 1;
				}
				else if (iParam3 <= 187)
				{
					iVar2 = func_605(iParam0, 8);
					iVar3 = func_604(iParam1, iVar2, 8, 3);
					iVar4 = func_595(iVar3);
					if (((((iVar2 >= 96 && iVar2 <= 111) || (iVar2 >= 112 && iVar2 <= 127)) || (iVar2 >= 241 && iVar4 == 6)) || (iVar2 >= 241 && iVar4 == 7)) || (iVar2 >= 241 && dlc1::_0x341DE7ED1D2A1BFD(iVar3, 1965569012, 0)))
					{
						iVar0 = -99;
					}
					else
					{
						iVar0 = 11;
					}
				}
				else if (iParam3 <= 203)
				{
					iVar0 = 12;
				}
				else if (iParam3 <= 219)
				{
					iVar0 = 11;
				}
				else if (iParam3 <= 235)
				{
					iVar0 = 4;
				}
				else if (iParam3 == 236)
				{
					iVar0 = 15;
				}
				else if (iParam3 >= 237)
				{
					iVar5 = func_604(iParam1, iParam3, 11, 3);
					if (iVar5 != -1)
					{
						iVar6 = true;
						if (dlc1::_0x341DE7ED1D2A1BFD(iVar5, 19149565, 0))
						{
							iVar2 = func_605(iParam0, 8);
							iVar7 = func_604(iParam1, iVar2, 8, 3);
							iVar8 = func_595(iVar7);
							if (((((iVar2 >= 96 && iVar2 <= 111) || (iVar2 >= 112 && iVar2 <= 127)) || (iVar2 >= 241 && iVar8 == 6)) || (iVar2 >= 241 && iVar8 == 7)) || (iVar2 >= 241 && dlc1::_0x341DE7ED1D2A1BFD(iVar7, 1965569012, 0)))
							{
								iVar6 = false;
							}
						}
						if (iVar6)
						{
							iVar9 = dlc1::_get_num_forced_components(iVar5);
							iVar10 = 0;
							while (iVar10 < iVar9)
							{
								dlc1::get_forced_component(iVar5, iVar10, &iVar11, &iVar12, &iVar13);
								if (iVar13 == 3)
								{
									if (iVar11 != 0 && iVar11 != 1849449579)
									{
										iVar0 = func_512(iParam1, iVar11, 3, 3);
									}
									else
									{
										iVar0 = iVar12;
									}
									iVar10 = iVar9 + 1;
								}
								iVar10++;
							}
						}
					}
				}
			}
			else if (iParam2 == 8)
			{
				if (iParam3 <= 15)
				{
					iVar0 = 1;
				}
				else if (iParam3 <= 31)
				{
					iVar0 = 1;
				}
				else if (iParam3 <= 47)
				{
					iVar0 = -99;
				}
				else if (iParam3 <= 63)
				{
					iVar0 = 12;
				}
				else if (iParam3 <= 79)
				{
					iVar0 = 12;
				}
				else if (iParam3 <= 95)
				{
					iVar0 = 6;
				}
				else if (iParam3 <= 111)
				{
					iVar0 = 11;
				}
				else if (iParam3 <= 127)
				{
					iVar0 = 11;
				}
				else if (iParam3 <= 143)
				{
					iVar0 = 1;
				}
				else if (iParam3 <= 159)
				{
					iVar0 = 1;
				}
				else if (iParam3 <= 175)
				{
					iVar0 = 4;
				}
				else if (iParam3 <= 191)
				{
					iVar0 = 12;
				}
				else if (iParam3 <= 207)
				{
					iVar0 = 1;
				}
				else if (iParam3 <= 223)
				{
					iVar0 = 1;
				}
				else if (iParam3 <= 239)
				{
					iVar0 = -99;
				}
				else if (iParam3 == 240)
				{
					iVar0 = 14;
				}
				else if (iParam3 >= 241)
				{
					iVar14 = func_604(iParam1, iParam3, 8, 3);
					if (iVar14 != -1)
					{
						iVar15 = dlc1::_get_num_forced_components(iVar14);
						iVar16 = 0;
						while (iVar16 < iVar15)
						{
							dlc1::get_forced_component(iVar14, iVar16, &iVar17, &iVar18, &iVar19);
							if (iVar19 == 3)
							{
								if (iVar17 != 0 && iVar17 != 1849449579)
								{
									iVar0 = func_512(iParam1, iVar17, 3, 3);
								}
								else
								{
									iVar0 = iVar18;
									iVar16 = iVar15 + 1;
								}
							}
							iVar16++;
						}
					}
				}
			}
			else if (iParam2 == 10)
			{
				if (iParam3 >= 7)
				{
					iVar20 = func_604(iParam1, iParam3, 10, 3);
					if (iVar20 != -1)
					{
						iVar21 = dlc1::_get_num_forced_components(iVar20);
						iVar22 = 0;
						while (iVar22 < iVar21)
						{
							dlc1::get_forced_component(iVar20, iVar22, &iVar23, &iVar24, &iVar25);
							if (iVar25 == 3)
							{
								if (iVar23 != 0 && iVar23 != 1849449579)
								{
									iVar0 = func_512(iParam1, iVar23, 3, 3);
								}
								else
								{
									iVar0 = iVar24;
									iVar22 = iVar21 + 1;
								}
							}
							iVar22++;
						}
					}
				}
			}
		}
		else if (iParam4 == 8)
		{
			if (iParam2 == 11)
			{
				iVar26 = -1;
				if (iParam3 >= 237)
				{
					iVar26 = func_595(func_604(iParam1, iParam3, 11, 3));
				}
				if (iParam3 <= 15)
				{
					iVar0 = 240;
				}
				else if (iParam3 <= 31)
				{
					iVar0 = 240;
				}
				else if (iParam3 <= 47)
				{
					iVar0 = 240;
				}
				else if (iParam3 <= 63)
				{
					iVar0 = -99;
				}
				else if (iParam3 <= 79)
				{
					iVar0 = -99;
				}
				else if (iParam3 <= 95)
				{
					iVar0 = 240;
				}
				else if (iParam3 <= 107)
				{
					iVar0 = -99;
				}
				else if (iParam3 <= 123)
				{
					iVar0 = -99;
				}
				else if (iParam3 <= 139)
				{
					iVar0 = 240;
				}
				else if (iParam3 <= 155)
				{
					iVar0 = 240;
				}
				else if (iParam3 <= 171)
				{
					iVar0 = -99;
				}
				else if (iParam3 <= 187 || iVar26 == 11)
				{
					iVar2 = func_605(iParam0, 8);
					iVar27 = func_604(iParam1, iVar2, 8, 3);
					iVar28 = func_595(iVar27);
					if (((((iVar2 >= 96 && iVar2 <= 111) || (iVar2 >= 112 && iVar2 <= 127)) || (iVar2 >= 241 && iVar28 == 6)) || (iVar2 >= 241 && iVar28 == 7)) || (iVar2 >= 241 && dlc1::_0x341DE7ED1D2A1BFD(iVar27, 1965569012, 0)))
					{
					}
					else
					{
						iVar0 = 112;
					}
				}
				else if (iParam3 <= 203)
				{
					iVar0 = 240;
				}
				else if (iParam3 <= 219)
				{
					iVar0 = 240;
				}
				else if (iParam3 <= 235)
				{
					iVar0 = 240;
				}
				else if (iParam3 <= 236)
				{
					iVar0 = 240;
				}
				else if (iParam3 >= 237)
				{
					iVar29 = func_604(iParam1, iParam3, 11, 3);
					if (iVar29 != -1)
					{
						iVar30 = dlc1::_get_num_forced_components(iVar29);
						iVar31 = 0;
						while (iVar31 < iVar30)
						{
							dlc1::get_forced_component(iVar29, iVar31, &iVar32, &iVar33, &iVar34);
							if (iVar34 == 8)
							{
								if (iVar32 != 0 && iVar32 != 1849449579)
								{
									iVar0 = func_512(iParam1, iVar32, 8, 3);
								}
								else
								{
									iVar0 = iVar33;
									iVar31 = iVar30 + 1;
								}
							}
							iVar31++;
						}
					}
				}
			}
			else if (iParam2 == 7)
			{
				iVar35 = -1;
				iVar36 = -1;
				if (iParam3 >= 92)
				{
					iVar36 = func_604(iParam1, iParam3, 7, 3);
					iVar35 = func_595(iVar36);
				}
				if (((((((((iParam3 >= 41 && iParam3 <= 56) || (iParam3 >= 57 && iParam3 <= 72)) || (iParam3 >= 73 && iParam3 <= 88)) || iVar35 == 10) || iVar35 == 11) || iVar35 == 12) || (iParam3 >= 92 && dlc1::_0x341DE7ED1D2A1BFD(iVar36, -1950939707, 0))) || (iParam3 >= 92 && dlc1::_0x341DE7ED1D2A1BFD(iVar36, -1371423804, 0))) || (iParam3 >= 92 && dlc1::_0x341DE7ED1D2A1BFD(iVar36, -920534092, 0)))
				{
					iVar2 = func_605(iParam0, 8);
					if (iVar2 >= 48 && iVar2 <= 63)
					{
						iVar1 = (iVar2 - 48);
						iVar0 = (64 + iVar1);
					}
					else if (iVar2 >= 112 && iVar2 <= 127)
					{
						iVar1 = (iVar2 - 112);
						iVar0 = (96 + iVar1);
					}
					else if (iVar2 >= 176 && iVar2 <= 191)
					{
						iVar1 = (iVar2 - 176);
						iVar0 = (160 + iVar1);
					}
					else if (iVar2 >= 241)
					{
						iVar37 = func_604(iParam1, iVar2, 8, 3);
						iVar38 = func_595(iVar37);
						iVar39 = dlc1::_0x341DE7ED1D2A1BFD(iVar37, 651155766, 0);
						if (((iVar38 == 3 || iVar38 == 7) || iVar38 == 11) || dlc1::_0x341DE7ED1D2A1BFD(iVar37, 1553766533, 0))
						{
							if (iVar37 != -1)
							{
								iVar40 = dlc1::_0xC17AD0E5752BECDA(iVar37);
								iVar41 = 0;
								while (iVar41 < iVar40)
								{
									dlc1::get_variant_component(iVar37, iVar41, &iVar42, &iVar43, &iVar44);
									if ((iVar44 == 8 && !iVar39) || (iVar44 == 10 && iVar39))
									{
										if (iVar42 != 0 && iVar42 != 1849449579)
										{
											iVar0 = func_512(iParam1, iVar42, 8, 3);
										}
										else
										{
											iVar0 = iVar43;
										}
										iVar41 = iVar40 + 1;
									}
									iVar41++;
								}
							}
						}
					}
				}
				else if (((iParam3 >= 92 && dlc1::_0x341DE7ED1D2A1BFD(iVar36, -378906828, 0)) || (iParam3 >= 92 && dlc1::_0x341DE7ED1D2A1BFD(iVar36, -695703461, 0))) || (iParam3 >= 92 && dlc1::_0x341DE7ED1D2A1BFD(iVar36, -108328099, 0)))
				{
					iVar45 = func_604(iParam1, iVar2, 8, 3);
					iVar46 = func_595(iVar45);
					iVar47 = dlc1::_0x341DE7ED1D2A1BFD(iVar45, 651155766, 0);
					if (((iVar46 == 3 || iVar46 == 7) || iVar46 == 11) || dlc1::_0x341DE7ED1D2A1BFD(iVar45, 1553766533, 0))
					{
						if (iVar45 != -1)
						{
							iVar48 = dlc1::_0xC17AD0E5752BECDA(iVar45);
							iVar49 = 0;
							while (iVar49 < iVar48)
							{
								dlc1::get_variant_component(iVar45, iVar49, &iVar50, &iVar51, &iVar52);
								if ((iVar52 == 8 && !iVar47) || (iVar52 == 10 && iVar47))
								{
									if (iVar50 != 0 && iVar50 != 1849449579)
									{
										iVar0 = func_512(iParam1, iVar50, 8, 3);
									}
									else
									{
										iVar0 = iVar51;
									}
									iVar49 = iVar48 + 1;
								}
								iVar49++;
							}
						}
					}
				}
				else if (iParam3 >= 92)
				{
					iVar53 = func_604(iParam1, iParam3, 7, 3);
					if (iVar53 != -1)
					{
						iVar54 = dlc1::_get_num_forced_components(iVar53);
						iVar55 = 0;
						while (iVar55 < iVar54)
						{
							dlc1::get_forced_component(iVar53, iVar55, &iVar56, &iVar57, &iVar58);
							if (iVar58 == 8)
							{
								if (iVar56 != 0 && iVar56 != 1849449579)
								{
									iVar0 = func_512(iParam1, iVar56, 8, 3);
								}
								else
								{
									iVar0 = iVar57;
									iVar55 = iVar54 + 1;
								}
							}
							iVar55++;
						}
					}
				}
			}
			else if (iParam2 == 10)
			{
				if (iParam3 >= 7)
				{
					iVar59 = func_604(iParam1, iParam3, 10, 3);
					if (iVar59 != -1)
					{
						iVar60 = dlc1::_get_num_forced_components(iVar59);
						iVar61 = 0;
						while (iVar61 < iVar60)
						{
							dlc1::get_forced_component(iVar59, iVar61, &iVar62, &iVar63, &iVar64);
							if (iVar64 == 8)
							{
								if (iVar62 != 0 && iVar62 != 1849449579)
								{
									iVar0 = func_512(iParam1, iVar62, 8, 3);
								}
								else
								{
									iVar0 = iVar63;
									iVar61 = iVar60 + 1;
								}
							}
							iVar61++;
						}
					}
				}
			}
		}
		else if (iParam4 == 11)
		{
			if (iParam2 == 7)
			{
				iVar65 = -1;
				iVar66 = -1;
				if (iParam3 >= 92)
				{
					iVar66 = func_604(iParam1, iParam3, 7, 3);
					iVar65 = func_595(iVar66);
				}
				if (((((((iParam3 >= 41 && iParam3 <= 56) || (iParam3 >= 57 && iParam3 <= 72)) || (iParam3 >= 73 && iParam3 <= 88)) || iVar65 == 10) || iVar65 == 11) || iVar65 == 12) || dlc1::_0x341DE7ED1D2A1BFD(iVar66, -920534092, 0))
				{
					iVar67 = func_605(iParam0, 11);
					if (iVar67 >= 237)
					{
						iVar68 = func_604(iParam1, iVar67, 11, 3);
						if (dlc1::_0x341DE7ED1D2A1BFD(iVar68, 1847239679, 0) && dlc1::_0x341DE7ED1D2A1BFD(iVar68, 1553766533, 0))
						{
							if (iVar68 != -1)
							{
								iVar69 = dlc1::_0xC17AD0E5752BECDA(iVar68);
								iVar70 = 0;
								while (iVar70 < iVar69)
								{
									dlc1::get_variant_component(iVar68, iVar70, &iVar71, &iVar72, &iVar73);
									if (iVar73 == 11)
									{
										if (iVar71 != 0 && iVar71 != 1849449579)
										{
											iVar0 = func_512(iParam1, iVar71, 11, 3);
										}
										else
										{
											iVar0 = iVar72;
										}
										iVar70 = iVar69 + 1;
									}
									iVar70++;
								}
							}
						}
					}
				}
			}
			else if (iParam2 == 10)
			{
				if (iParam3 >= 7)
				{
					iVar74 = func_604(iParam1, iParam3, 10, 3);
					if (iVar74 != -1)
					{
						iVar75 = dlc1::_get_num_forced_components(iVar74);
						iVar76 = 0;
						while (iVar76 < iVar75)
						{
							dlc1::get_forced_component(iVar74, iVar76, &iVar77, &iVar78, &iVar79);
							if (iVar79 == 11)
							{
								if (iVar77 != 0 && iVar77 != 1849449579)
								{
									iVar0 = func_512(iParam1, iVar77, 11, 3);
								}
								else
								{
									iVar0 = iVar78;
									iVar76 = iVar75 + 1;
								}
							}
							iVar76++;
						}
					}
				}
			}
		}
		else if (iParam4 == 7)
		{
			if (iParam2 == 11)
			{
				iVar80 = func_605(iParam0, 11);
				if (iVar80 >= 237)
				{
					iVar81 = func_604(iParam1, iVar80, 11, 3);
					if (dlc1::_0x341DE7ED1D2A1BFD(iVar81, 1847239679, 0) && dlc1::_0x341DE7ED1D2A1BFD(iVar81, 1553766533, 0))
					{
						iVar81 = func_604(iParam1, iParam3, 11, 3);
						if (iVar81 != -1)
						{
							iVar82 = dlc1::_get_num_forced_components(iVar81);
							iVar83 = 0;
							while (iVar83 < iVar82)
							{
								dlc1::get_forced_component(iVar81, iVar83, &iVar84, &iVar85, &iVar86);
								if (iVar86 == 7)
								{
									if (iVar84 != 0 && iVar84 != 1849449579)
									{
										iVar0 = func_512(iParam1, iVar84, 7, 3);
									}
									else
									{
										iVar0 = iVar85;
										iVar83 = iVar82 + 1;
									}
								}
								iVar83++;
							}
						}
					}
				}
			}
			else if (iParam2 == 14)
			{
				if (iParam3 >= 327)
				{
					iVar87 = func_604(iParam1, iParam3, 14, 3);
					if (iVar87 != -1)
					{
						iVar88 = dlc1::_get_num_forced_components(iVar87);
						iVar89 = 0;
						while (iVar89 < iVar88)
						{
							dlc1::get_forced_component(iVar87, iVar89, &iVar90, &iVar91, &iVar92);
							if (iVar92 == 7)
							{
								if (iVar90 != 0 && iVar90 != 1849449579)
								{
									iVar0 = func_512(iParam1, iVar90, 7, 3);
								}
								else
								{
									iVar0 = iVar91;
									iVar89 = iVar88 + 1;
								}
							}
							iVar89++;
						}
					}
				}
			}
		}
		else if (iParam4 == 4)
		{
			if (iParam2 == 11)
			{
				if (iParam3 >= 237)
				{
					iVar93 = func_604(iParam1, iParam3, 11, 3);
					if (iVar93 != -1)
					{
						iVar94 = dlc1::_get_num_forced_components(iVar93);
						iVar95 = 0;
						while (iVar95 < iVar94)
						{
							dlc1::get_forced_component(iVar93, iVar95, &iVar96, &iVar97, &iVar98);
							if (iVar98 == 4)
							{
								if (iVar96 != 0 && iVar96 != 1849449579)
								{
									iVar0 = func_512(iParam1, iVar96, 4, 3);
								}
								else
								{
									iVar0 = iVar97;
									iVar95 = iVar94 + 1;
								}
							}
							iVar95++;
						}
					}
				}
			}
		}
		else if (iParam4 == 10)
		{
			if (iParam2 == 11)
			{
				if (iParam3 >= 237)
				{
					iVar99 = func_604(iParam1, iParam3, 11, 3);
					if (iVar99 != -1)
					{
						iVar100 = dlc1::_get_num_forced_components(iVar99);
						iVar101 = 0;
						while (iVar101 < iVar100)
						{
							dlc1::get_forced_component(iVar99, iVar101, &iVar102, &iVar103, &iVar104);
							if (iVar104 == 10)
							{
								if (iVar102 != 0 && iVar102 != 1849449579)
								{
									iVar0 = func_512(iParam1, iVar102, 10, 3);
								}
								else
								{
									iVar0 = iVar103;
									iVar101 = iVar100 + 1;
								}
							}
							iVar101++;
						}
					}
				}
			}
		}
		else if (iParam4 == 6)
		{
			if (iParam2 == 4)
			{
				if (iParam3 >= 256)
				{
					iVar105 = func_604(iParam1, iParam3, 4, 3);
					if (iVar105 != -1)
					{
						iVar106 = dlc1::_get_num_forced_components(iVar105);
						iVar107 = 0;
						while (iVar107 < iVar106)
						{
							dlc1::get_forced_component(iVar105, iVar107, &iVar108, &iVar109, &iVar110);
							if (iVar110 == 6)
							{
								if (iVar108 != 0 && iVar108 != 1849449579)
								{
									iVar0 = func_512(iParam1, iVar108, 6, 3);
								}
								else
								{
									iVar0 = iVar109;
									iVar107 = iVar106 + 1;
								}
							}
							iVar107++;
						}
					}
				}
			}
			else if (iParam2 == 11)
			{
				if (iParam3 >= 237)
				{
					iVar111 = func_604(iParam1, iParam3, 11, 3);
					if (iVar111 != -1)
					{
						iVar112 = dlc1::_get_num_forced_components(iVar111);
						iVar113 = 0;
						while (iVar113 < iVar112)
						{
							dlc1::get_forced_component(iVar111, iVar113, &iVar114, &iVar115, &iVar116);
							if (iVar116 == 6)
							{
								if (iVar114 != 0 && iVar114 != 1849449579)
								{
									iVar0 = func_512(iParam1, iVar114, 6, 3);
								}
								else
								{
									iVar0 = iVar115;
									iVar113 = iVar112 + 1;
								}
							}
							iVar113++;
						}
					}
				}
			}
		}
		else if (iParam4 == 14)
		{
			if (iParam2 == 1)
			{
				if (iParam3 >= 26)
				{
					iVar117 = func_604(iParam1, iParam3, 1, 3);
					if (iVar117 != -1)
					{
						iVar118 = dlc1::_0x017568A8182D98A6(iVar117);
						iVar119 = 0;
						while (iVar119 < iVar118)
						{
							dlc1::_0xE1CA84EBF72E691D(iVar117, iVar119, &iVar120, &iVar121, &iVar122);
							if (iVar122 == iParam5)
							{
								if (iVar120 != 0 && iVar120 != 1849449579)
								{
									iVar0 = func_512(iParam1, iVar120, 14, 3);
									iVar119 = iVar118 + 1;
								}
								else
								{
									iVar0 = iVar121;
									iVar119 = iVar118 + 1;
								}
							}
							iVar119++;
						}
					}
				}
			}
			else if (iParam2 == 11)
			{
				if (iParam3 >= 237)
				{
					iVar123 = func_604(iParam1, iParam3, 11, 3);
					if (iVar123 != -1)
					{
						iVar124 = dlc1::_0x017568A8182D98A6(iVar123);
						iVar125 = 0;
						while (iVar125 < iVar124)
						{
							dlc1::_0xE1CA84EBF72E691D(iVar123, iVar125, &iVar126, &iVar127, &iVar128);
							if (iVar128 == iParam5)
							{
								if (iVar126 != 0 && iVar126 != 1849449579)
								{
									iVar0 = func_512(iParam1, iVar126, 14, 3);
									iVar125 = iVar124 + 1;
								}
								else
								{
									iVar0 = iVar127;
									iVar125 = iVar124 + 1;
								}
							}
							iVar125++;
						}
					}
				}
			}
		}
	}
	else if (iParam1 == joaat("mp_f_freemode_01"))
	{
		if (iParam4 == 3)
		{
			if (iParam2 == 11)
			{
				if (iParam3 <= 15)
				{
					iVar0 = 0;
				}
				else if (iParam3 <= 31)
				{
					iVar0 = 5;
				}
				else if (iParam3 <= 47)
				{
					iVar0 = 2;
				}
				else if (iParam3 <= 63)
				{
					iVar0 = 3;
				}
				else if (iParam3 <= 79)
				{
					iVar0 = 4;
				}
				else if (iParam3 <= 95)
				{
					iVar0 = 4;
				}
				else if (iParam3 <= 111)
				{
					iVar0 = 5;
				}
				else if (iParam3 <= 127)
				{
					iVar0 = 6;
				}
				else if (iParam3 <= 143)
				{
					iVar0 = 5;
				}
				else if (iParam3 <= 159)
				{
					iVar0 = 9;
				}
				else if (iParam3 <= 175)
				{
					iVar0 = 7;
				}
				else if (iParam3 <= 191)
				{
					iVar0 = 11;
				}
				else if (iParam3 <= 207)
				{
					iVar0 = 12;
				}
				else if (iParam3 <= 223)
				{
					iVar0 = 4;
				}
				else if (iParam3 <= 239)
				{
					iVar0 = 14;
				}
				else if (iParam3 <= 255)
				{
					iVar0 = 15;
				}
				else if (iParam3 >= 256)
				{
					iVar129 = func_604(iParam1, iParam3, 11, 4);
					if (iVar129 != -1)
					{
						iVar130 = dlc1::_get_num_forced_components(iVar129);
						iVar131 = 0;
						while (iVar131 < iVar130)
						{
							dlc1::get_forced_component(iVar129, iVar131, &iVar132, &iVar133, &iVar134);
							if (iVar134 == 3)
							{
								if (iVar132 != 0 && iVar132 != 1849449579)
								{
									iVar0 = func_512(iParam1, iVar132, 3, 4);
								}
								else
								{
									iVar0 = iVar133;
									iVar131 = iVar130 + 1;
								}
							}
							iVar131++;
						}
					}
				}
			}
			else if (iParam2 == 10)
			{
				if (iParam3 >= 6)
				{
					iVar135 = func_604(iParam1, iParam3, 10, 4);
					if (iVar135 != -1)
					{
						iVar136 = dlc1::_get_num_forced_components(iVar135);
						iVar137 = 0;
						while (iVar137 < iVar136)
						{
							dlc1::get_forced_component(iVar135, iVar137, &iVar138, &iVar139, &iVar140);
							if (iVar140 == 3)
							{
								if (iVar138 != 0 && iVar138 != 1849449579)
								{
									iVar0 = func_512(iParam1, iVar138, 3, 4);
								}
								else
								{
									iVar0 = iVar139;
									iVar137 = iVar136 + 1;
								}
							}
							iVar137++;
						}
					}
				}
			}
		}
		else if (iParam4 == 8)
		{
			if (iParam2 == 11)
			{
				if (iParam3 <= 15)
				{
					iVar0 = 33;
				}
				else if (iParam3 <= 31)
				{
					iVar0 = -99;
				}
				else if (iParam3 <= 47)
				{
					iVar0 = 33;
				}
				else if (iParam3 <= 63)
				{
					iVar0 = 33;
				}
				else if (iParam3 <= 79)
				{
					iVar0 = 33;
				}
				else if (iParam3 <= 95)
				{
					iVar0 = 33;
				}
				else if (iParam3 <= 111)
				{
					iVar0 = -99;
				}
				else if (iParam3 <= 127)
				{
					iVar0 = -99;
				}
				else if (iParam3 <= 143)
				{
					iVar0 = -99;
				}
				else if (iParam3 <= 159)
				{
					iVar0 = 33;
				}
				else if (iParam3 <= 175)
				{
					iVar0 = -99;
				}
				else if (iParam3 <= 191)
				{
					iVar0 = 33;
				}
				else if (iParam3 <= 207)
				{
					iVar0 = 33;
				}
				else if (iParam3 <= 223)
				{
					iVar1 = (iParam3 - 208);
					iVar0 = (103 + iVar1);
				}
				else if (iParam3 <= 239)
				{
					iVar0 = 33;
				}
				else if (iParam3 <= 255)
				{
					iVar0 = 33;
				}
				else if (iParam3 >= 256)
				{
					iVar141 = func_604(iParam1, iParam3, 11, 4);
					if (iVar141 != -1)
					{
						iVar142 = dlc1::_get_num_forced_components(iVar141);
						iVar143 = 0;
						while (iVar143 < iVar142)
						{
							dlc1::get_forced_component(iVar141, iVar143, &iVar144, &iVar145, &iVar146);
							if (iVar146 == 8)
							{
								if (iVar144 != 0 && iVar144 != 1849449579)
								{
									iVar0 = func_512(iParam1, iVar144, 8, 4);
								}
								else
								{
									iVar0 = iVar145;
									iVar143 = iVar142 + 1;
								}
							}
							iVar143++;
						}
					}
				}
			}
			else if (iParam2 == 7)
			{
				iVar147 = -1;
				if (iParam3 >= 55)
				{
					iVar147 = func_604(iParam1, iParam3, 7, 4);
				}
				if ((iVar147 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar147, -920534092, 0)) || (iVar147 != -1 && dlc1::_0x341DE7ED1D2A1BFD(iVar147, 1537081084, 0)))
				{
					iVar148 = dlc1::get_hash_name_for_component(iParam0, 8, ped::get_ped_drawable_variation(iParam0, 8), ped::get_ped_texture_variation(iParam0, 8));
					iVar149 = false;
					if (dlc1::_0x341DE7ED1D2A1BFD(iVar147, -378906828, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar147, -108328099, 0))
					{
						if (dlc1::_0x341DE7ED1D2A1BFD(iVar148, -1914383230, 0))
						{
							iVar149 = true;
						}
					}
					else if (dlc1::_0x341DE7ED1D2A1BFD(iVar148, 1553766533, 0))
					{
						iVar149 = true;
					}
					if (iVar149)
					{
						iVar150 = dlc1::_0xC17AD0E5752BECDA(iVar148);
						iVar151 = 0;
						while (iVar151 < iVar150)
						{
							dlc1::get_variant_component(iVar148, iVar151, &iVar152, &iVar153, &iVar154);
							if (iVar154 == 8)
							{
								if (iVar152 != 0 && iVar152 != 1849449579)
								{
									iVar0 = func_512(iParam1, iVar152, 8, 4);
								}
								else
								{
									iVar0 = iVar153;
								}
								iVar151 = iVar150 + 1;
							}
							iVar151++;
						}
					}
				}
			}
			else if (iParam2 == 10)
			{
				if (iParam3 >= 6)
				{
					iVar155 = func_604(iParam1, iParam3, 10, 4);
					if (iVar155 != -1)
					{
						iVar156 = dlc1::_get_num_forced_components(iVar155);
						iVar157 = 0;
						while (iVar157 < iVar156)
						{
							dlc1::get_forced_component(iVar155, iVar157, &iVar158, &iVar159, &iVar160);
							if (iVar160 == 8)
							{
								if (iVar158 != 0 && iVar158 != 1849449579)
								{
									iVar0 = func_512(iParam1, iVar158, 8, 4);
								}
								else
								{
									iVar0 = iVar159;
									iVar157 = iVar156 + 1;
								}
							}
							iVar157++;
						}
					}
				}
			}
		}
		else if (iParam4 == 6)
		{
			if (iParam2 == 4)
			{
				if (iParam3 >= 256)
				{
					iVar161 = func_604(iParam1, iParam3, 4, 4);
					if (iVar161 != -1)
					{
						iVar162 = dlc1::_get_num_forced_components(iVar161);
						iVar163 = 0;
						while (iVar163 < iVar162)
						{
							dlc1::get_forced_component(iVar161, iVar163, &iVar164, &iVar165, &iVar166);
							if (iVar166 == 6)
							{
								if (iVar164 != 0 && iVar164 != 1849449579)
								{
									iVar0 = func_512(iParam1, iVar164, 6, 4);
								}
								else
								{
									iVar0 = iVar165;
									iVar163 = iVar162 + 1;
								}
							}
							iVar163++;
						}
					}
				}
			}
			else if (iParam2 == 11)
			{
				if (iParam3 >= 256)
				{
					iVar167 = func_604(iParam1, iParam3, 11, 4);
					if (iVar167 != -1)
					{
						iVar168 = dlc1::_get_num_forced_components(iVar167);
						iVar169 = 0;
						while (iVar169 < iVar168)
						{
							dlc1::get_forced_component(iVar167, iVar169, &iVar170, &iVar171, &iVar172);
							if (iVar172 == 6)
							{
								if (iVar170 != 0 && iVar170 != 1849449579)
								{
									iVar0 = func_512(iParam1, iVar170, 6, 4);
								}
								else
								{
									iVar0 = iVar171;
									iVar169 = iVar168 + 1;
								}
							}
							iVar169++;
						}
					}
				}
			}
		}
		else if (iParam4 == 4)
		{
			if (iParam2 == 11)
			{
				if (iParam3 >= 256)
				{
					iVar173 = func_604(iParam1, iParam3, 11, 4);
					if (iVar173 != -1)
					{
						iVar174 = dlc1::_get_num_forced_components(iVar173);
						iVar175 = 0;
						while (iVar175 < iVar174)
						{
							dlc1::get_forced_component(iVar173, iVar175, &iVar176, &iVar177, &iVar178);
							if (iVar178 == 4)
							{
								if (iVar176 != 0 && iVar176 != 1849449579)
								{
									iVar0 = func_512(iParam1, iVar176, 4, 4);
								}
								else
								{
									iVar0 = iVar177;
									iVar175 = iVar174 + 1;
								}
							}
							iVar175++;
						}
					}
				}
			}
		}
		else if (iParam4 == 10)
		{
			if (iParam2 == 11)
			{
				if (iParam3 >= 256)
				{
					iVar179 = func_604(iParam1, iParam3, 11, 4);
					if (iVar179 != -1)
					{
						iVar180 = dlc1::_get_num_forced_components(iVar179);
						iVar181 = 0;
						while (iVar181 < iVar180)
						{
							dlc1::get_forced_component(iVar179, iVar181, &iVar182, &iVar183, &iVar184);
							if (iVar184 == 10)
							{
								if (iVar182 != 0 && iVar182 != 1849449579)
								{
									iVar0 = func_512(iParam1, iVar182, 10, 4);
								}
								else
								{
									iVar0 = iVar183;
									iVar181 = iVar180 + 1;
								}
							}
							iVar181++;
						}
					}
				}
			}
		}
		else if (iParam4 == 11)
		{
			if (iParam2 == 10)
			{
				if (iParam3 >= 6)
				{
					iVar185 = func_604(iParam1, iParam3, 10, 4);
					if (iVar185 != -1)
					{
						iVar186 = dlc1::_get_num_forced_components(iVar185);
						iVar187 = 0;
						while (iVar187 < iVar186)
						{
							dlc1::get_forced_component(iVar185, iVar187, &iVar188, &iVar189, &iVar190);
							if (iVar190 == 11)
							{
								if (iVar188 != 0 && iVar188 != 1849449579)
								{
									iVar0 = func_512(iParam1, iVar188, 11, 4);
								}
								else
								{
									iVar0 = iVar189;
									iVar187 = iVar186 + 1;
								}
							}
							iVar187++;
						}
					}
				}
			}
		}
		else if (iParam4 == 7)
		{
			if (iParam2 == 14)
			{
				if (iParam3 >= 327)
				{
					iVar191 = func_604(iParam1, iParam3, 14, 4);
					if (iVar191 != -1)
					{
						iVar192 = dlc1::_get_num_forced_components(iVar191);
						iVar193 = 0;
						while (iVar193 < iVar192)
						{
							dlc1::get_forced_component(iVar191, iVar193, &iVar194, &iVar195, &iVar196);
							if (iVar196 == 7)
							{
								if (iVar194 != 0 && iVar194 != 1849449579)
								{
									iVar0 = func_512(iParam1, iVar194, 7, 4);
								}
								else
								{
									iVar0 = iVar195;
									iVar193 = iVar192 + 1;
								}
							}
							iVar193++;
						}
					}
				}
			}
		}
		else if (iParam4 == 14)
		{
			if (iParam2 == 1)
			{
				if (iParam3 >= 26)
				{
					iVar197 = func_604(iParam1, iParam3, 1, 4);
					if (iVar197 != -1)
					{
						iVar198 = dlc1::_0x017568A8182D98A6(iVar197);
						iVar199 = 0;
						while (iVar199 < iVar198)
						{
							dlc1::_0xE1CA84EBF72E691D(iVar197, iVar199, &iVar200, &iVar201, &iVar202);
							if (iVar202 == iParam5)
							{
								if (iVar200 != 0 && iVar200 != 1849449579)
								{
									iVar0 = func_512(iParam1, iVar200, 14, 4);
									iVar199 = iVar198 + 1;
								}
								else
								{
									iVar0 = iVar201;
									iVar199 = iVar198 + 1;
								}
							}
							iVar199++;
						}
					}
				}
			}
			else if (iParam2 == 11)
			{
				if (iParam3 >= 256)
				{
					iVar203 = func_604(iParam1, iParam3, 11, 4);
					if (iVar203 != -1)
					{
						iVar204 = dlc1::_0x017568A8182D98A6(iVar203);
						iVar205 = 0;
						while (iVar205 < iVar204)
						{
							dlc1::_0xE1CA84EBF72E691D(iVar203, iVar205, &iVar206, &iVar207, &iVar208);
							if (iVar208 == iParam5)
							{
								if (iVar206 != 0 && iVar206 != 1849449579)
								{
									iVar0 = func_512(iParam1, iVar206, 14, 4);
									iVar205 = iVar204 + 1;
								}
								else
								{
									iVar0 = iVar207;
									iVar205 = iVar204 + 1;
								}
							}
							iVar205++;
						}
					}
				}
			}
		}
	}
	return iVar0;
}

bool func_611(int iParam0, int iParam1, int iParam2, int iParam3, int iParam4)//Position - 0x47212
{
	int iVar0;
	int iVar1;
	int iVar2;
	int iVar3;
	int iVar4;
	var uVar5;
	int iVar6;
	int iVar7;
	int iVar8;
	int iVar9;
	int iVar10;
	int iVar11;
	var uVar12;
	int iVar13;
	
	*iParam4 = -99;
	switch (iParam1)
	{
		case joaat("mp_m_freemode_01"):
			switch (iParam2)
			{
				case 1:
					if (((((iParam3 >= 1 && iParam3 <= 4) || (iParam3 >= 5 && iParam3 <= 8)) || iParam3 == 9) || (iParam3 >= 14 && iParam3 <= 17)) || (iParam3 >= 22 && iParam3 <= 25))
					{
						*iParam4 = 0;
					}
					if (iParam3 >= func_513(iParam1, 1))
					{
						func_638(iParam1, 1, iParam3);
						if (Global_2621445 == -1751726434)
						{
							*iParam4 = 0;
						}
					}
					iVar0 = func_605(iParam0, 1);
					if (iVar0 >= 26)
					{
						iVar1 = func_604(iParam1, iVar0, 1, 3);
						if (dlc1::_0x341DE7ED1D2A1BFD(iVar1, -1188154325, 0))
						{
							iVar1 = func_604(iParam1, iParam3, 1, 3);
							if (iVar1 != -1)
							{
								iVar2 = dlc1::_get_num_forced_components(iVar1);
								iVar3 = 0;
								while (iVar3 < iVar2)
								{
									dlc1::get_forced_component(iVar1, iVar3, &iVar4, &uVar5, &iVar6);
									if (iVar6 == 2)
									{
										if (iVar4 != 0 && iVar4 != 1849449579)
										{
											*iParam4 = func_512(iParam1, iVar4, 2, 3);
										}
										else
										{
											*iParam4 = uVar5;
											iVar3 = iVar2 + 1;
										}
									}
									iVar3++;
								}
							}
						}
					}
					break;
			}
			break;
		
		case joaat("mp_f_freemode_01"):
			switch (iParam2)
			{
				case 1:
					if (((((iParam3 >= 1 && iParam3 <= 4) || (iParam3 >= 5 && iParam3 <= 8)) || iParam3 == 9) || (iParam3 >= 14 && iParam3 <= 17)) || (iParam3 >= 22 && iParam3 <= 25))
					{
						*iParam4 = 0;
					}
					if (iParam3 >= func_513(iParam1, 1))
					{
						func_638(iParam1, 1, iParam3);
						if (Global_2621445 == -1751726434)
						{
							*iParam4 = 0;
						}
					}
					iVar7 = func_605(iParam0, 1);
					if (iVar7 >= 26)
					{
						iVar8 = func_604(iParam1, iVar7, 1, 4);
						if (dlc1::_0x341DE7ED1D2A1BFD(iVar8, -1188154325, 0))
						{
							iVar8 = func_604(iParam1, iParam3, 1, 4);
							if (iVar8 != -1)
							{
								iVar9 = dlc1::_get_num_forced_components(iVar8);
								iVar10 = 0;
								while (iVar10 < iVar9)
								{
									dlc1::get_forced_component(iVar8, iVar10, &iVar11, &uVar12, &iVar13);
									if (iVar13 == 2)
									{
										if (iVar11 != 0 && iVar11 != 1849449579)
										{
											*iParam4 = func_512(iParam1, iVar11, 2, 4);
										}
										else
										{
											*iParam4 = uVar12;
											iVar10 = iVar9 + 1;
										}
									}
									iVar10++;
								}
							}
						}
					}
					break;
			}
			break;
	}
	if (*iParam4 != -99)
	{
		func_506(748, iParam3, Global_69516, 1, 0);
		func_506(749, iParam2, Global_69516, 1, 0);
		return true;
	}
	return false;
}

void func_612(int iParam0, int iParam1, int iParam2, int iParam3, int iParam4)//Position - 0x474DB
{
	int iVar0;
	int iVar1;
	int iVar2;
	
	if (!ped::is_ped_injured(iParam0))
	{
		if (func_614(iParam0))
		{
			return;
		}
		if (iParam1 == 11 || iParam1 == 8)
		{
			iVar0 = entity::get_entity_model(iParam0);
			if (iParam1 == 11)
			{
				if (func_599(iVar0, iParam2))
				{
					iParam1 = 8;
					iParam2 = func_605(iParam0, iParam1);
				}
			}
			else if (iParam1 == 8)
			{
				iVar1 = func_605(iParam0, 11);
				if (!func_599(iVar0, iVar1))
				{
					return;
				}
			}
			func_590(gameplay::get_hash_key("torsoDecal"), iParam0);
			if (iParam1 == 11)
			{
				if (((((!func_592(iVar0, iParam2, 13) && !func_592(iVar0, iParam2, 14)) && !func_592(iVar0, iParam2, 15)) && !func_592(iVar0, iParam2, 16)) && !func_592(iVar0, iParam2, 71)) && !func_592(iVar0, iParam2, 72))
				{
					func_590(gameplay::get_hash_key("crewLogo"), iParam0);
				}
			}
			iVar2 = func_581(iVar0, iParam1, iParam2, iParam4);
			if (iVar2 != -1)
			{
				if (iParam3 == 1)
				{
					func_613(iParam0, iVar2);
				}
				else
				{
					func_615(iVar2, 1, Global_69516);
				}
			}
		}
	}
}

void func_613(int iParam0, int iParam1)//Position - 0x47608
{
	int iVar0;
	struct<6> Var1;
	
	if (!ped::is_ped_injured(iParam0))
	{
		if (iParam1 != -1)
		{
			iVar0 = func_588(iParam0);
			if (!func_569(iParam1, -1))
			{
				if (func_564(&Var1, iParam1, iVar0, iParam0, -1))
				{
					ped::_set_ped_decoration(iParam0, Var1.f_4, Var1.f_5);
					func_560(iParam0, Var1.f_4, Var1.f_5);
				}
			}
		}
	}
}

bool func_614(int iParam0)//Position - 0x4765F
{
	int iVar0;
	int iVar1;
	int iVar2;
	int iVar3;
	int iVar4;
	
	if (!ped::is_ped_injured(iParam0))
	{
		if (entity::get_entity_model(iParam0) == joaat("mp_m_freemode_01"))
		{
			iVar0 = ped::get_ped_drawable_variation(iParam0, 11);
			if (iVar0 > 15)
			{
				iVar1 = func_618(iParam0, 11, -1);
				if (iVar1 >= 237)
				{
					iVar2 = func_604(joaat("mp_m_freemode_01"), iVar1, 11, 3);
					if (dlc1::_0x341DE7ED1D2A1BFD(iVar2, 490219883, 0))
					{
						return true;
					}
					else if ((((((((((dlc1::_0x341DE7ED1D2A1BFD(iVar2, 201427653, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, 967829025, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, -1266557933, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, -979468724, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, 310055897, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, 606713654, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, 1831422288, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, -838136846, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, 655638019, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, 83294665, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar2, -697656159, 0))
					{
						return true;
					}
					else if (dlc1::_0x341DE7ED1D2A1BFD(iVar2, 1148412551, 0))
					{
						return true;
					}
				}
			}
		}
		else if (entity::get_entity_model(iParam0) == joaat("mp_f_freemode_01"))
		{
			iVar0 = ped::get_ped_drawable_variation(iParam0, 11);
			if (iVar0 > 15)
			{
				iVar3 = func_618(iParam0, 11, -1);
				if (iVar3 >= 237)
				{
					iVar4 = func_604(joaat("mp_f_freemode_01"), iVar3, 11, 4);
					if (dlc1::_0x341DE7ED1D2A1BFD(iVar4, 490219883, 0))
					{
						return true;
					}
					else if ((((((((((dlc1::_0x341DE7ED1D2A1BFD(iVar4, 201427653, 0) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 967829025, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -1266557933, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -979468724, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 970679185, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 83294665, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 382246252, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -99064836, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, 198641529, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -398213037, 0)) || dlc1::_0x341DE7ED1D2A1BFD(iVar4, -306768813, 0))
					{
						return true;
					}
					else if (dlc1::_0x341DE7ED1D2A1BFD(iVar4, 1148412551, 0))
					{
						return true;
					}
				}
			}
		}
	}
	return false;
}

void func_615(int iParam0, int iParam1, int iParam2)//Position - 0x478E3
{
	if (iParam1)
	{
		if (!func_569(iParam0, iParam2))
		{
			func_616(iParam0, 1, iParam2);
		}
	}
	else if (func_569(iParam0, iParam2))
	{
		func_616(iParam0, 0, iParam2);
	}
}

void func_616(int iParam0, int iParam1, int iParam2)//Position - 0x4791C
{
	int iVar0;
	int iVar1;
	
	iVar0 = func_571(iParam0, iParam2);
	iVar1 = iParam0;
	if (iVar1 > -1)
	{
		if (iParam1)
		{
			gameplay::set_bit(&iVar0, func_570(iVar1));
		}
		else
		{
			gameplay::clear_bit(&iVar0, func_570(iVar1));
		}
		func_506(func_572(iParam0), iVar0, iParam2, 1, 0);
	}
}

int func_617()//Position - 0x4796B
{
	int iVar0;
	
	iVar0 = Global_69516;
	if (func_569(13, iVar0))
	{
		return 13;
	}
	if (func_569(14, iVar0))
	{
		return 14;
	}
	if (func_569(15, iVar0))
	{
		return 15;
	}
	if (func_569(16, iVar0))
	{
		return 16;
	}
	if (func_569(71, iVar0))
	{
		return 71;
	}
	if (func_569(72, iVar0))
	{
		return 72;
	}
	return -1;
}

int func_618(int iParam0, int iParam1, int iParam2)//Position - 0x479DA
{
	int iVar0;
	int iVar1;
	
	if (!ped::is_ped_injured(iParam0))
	{
		if (iParam1 == 12)
		{
			iVar0 = 0;
			while (iVar0 <= 53)
			{
				if (func_530(iParam0, iParam1, iVar0))
				{
					return iVar0;
				}
				iVar0++;
			}
		}
		else if (iParam1 == 13)
		{
			iVar1 = 0;
			while (iVar1 <= 19)
			{
				if (func_530(iParam0, iParam1, iVar1))
				{
					return iVar1;
				}
				iVar1++;
			}
			return 31;
		}
		else if (iParam1 == 14)
		{
			if (iParam2 == -1)
			{
			}
			else
			{
				return func_619(iParam0, iParam2);
			}
		}
		else
		{
			return func_605(iParam0, iParam1);
		}
	}
	return -99;
}

int func_619(int iParam0, int iParam1)//Position - 0x47A7B
{
	int iVar0;
	int iVar1;
	
	if (ped::is_ped_injured(iParam0))
	{
		return -99;
	}
	iVar0 = ped::get_ped_prop_index(iParam0, iParam1);
	if (iVar0 == -1)
	{
		return func_598(iParam1);
	}
	iVar1 = ped::get_ped_prop_texture_index(iParam0, iParam1);
	return func_620(iParam0, iVar0, iVar1, iParam1);
}

int func_620(int iParam0, int iParam1, int iParam2, int iParam3)//Position - 0x47AC1
{
	int iVar0;
	int iVar1;
	int iVar2;
	int iVar3;
	int iVar4;
	int iVar5;
	int iVar6;
	
	if (iParam1 == -1)
	{
		return func_598(iParam3);
	}
	iVar0 = entity::get_entity_model(iParam0);
	iVar1 = dlc1::get_hash_name_for_prop(iParam0, iParam3, iParam1, iParam2);
	if (iVar1 != -1 && iVar1 != 0)
	{
		if (iVar0 == joaat("mp_m_freemode_01"))
		{
			return func_512(entity::get_entity_model(iParam0), iVar1, 14, 3);
		}
		else if (iVar0 == joaat("mp_f_freemode_01"))
		{
			return func_512(entity::get_entity_model(iParam0), iVar1, 14, 4);
		}
	}
	iVar2 = ped::get_number_of_ped_prop_drawable_variations(iParam0, iParam3);
	iVar4 = 0;
	while (iVar4 <= (iVar2 - 1))
	{
		iVar6 = ped::get_number_of_ped_prop_texture_variations(iParam0, iParam3, iVar4);
		if (iVar4 != iParam1)
		{
			iVar3 = (iVar3 + iVar6);
		}
		else
		{
			iVar5 = 0;
			while (iVar5 <= (iVar6 - 1))
			{
				if (iVar4 == iParam1 && iVar5 == iParam2)
				{
					iVar3 = (iVar3 + func_621(iParam0, iParam3));
					return iVar3;
				}
				else
				{
					iVar3++;
				}
				iVar5++;
			}
		}
		iVar4++;
	}
	return func_598(iParam3);
}

int func_621(int iParam0, int iParam1)//Position - 0x47BBD
{
	int iVar0;
	
	iVar0 = entity::get_entity_model(iParam0);
	switch (iVar0)
	{
		case joaat("player_zero"):
			switch (iParam1)
			{
				case 0:
					return 10;
					break;
				
				case 1:
					return 58;
					break;
				
				case 2:
					return 112;
					break;
			}
			break;
		
		case joaat("player_one"):
			switch (iParam1)
			{
				case 0:
					return 10;
					break;
				
				case 1:
					return 82;
					break;
				
				case 2:
					return 158;
					break;
			}
			break;
		
		case joaat("player_two"):
			switch (iParam1)
			{
				case 0:
					return 10;
					break;
				
				case 1:
					return 88;
					break;
				
				case 2:
					return 154;
					break;
			}
			break;
		
		case joaat("mp_m_freemode_01"):
			switch (iParam1)
			{
				case 0:
					return 10;
					break;
				
				case 1:
					return 155;
					break;
				
				case 6:
					return 319;
					break;
			}
			break;
		
		case joaat("mp_f_freemode_01"):
			switch (iParam1)
			{
				case 0:
					return 10;
					break;
				
				case 1:
					return 155;
					break;
				
				case 6:
					return 319;
					break;
			}
			break;
	}
	return -99;
}

void func_622(int iParam0, int iParam1, int iParam2, int iParam3)//Position - 0x47CFB
{
	int iVar0;
	
	if (iParam2 == -1)
	{
		ped::clear_ped_prop(iParam0, iParam1);
		if (iParam1 == 0)
		{
			ped::set_ped_config_flag(iParam0, 34, false);
			ped::set_ped_config_flag(iParam0, 36, false);
		}
	}
	else
	{
		ped::set_ped_prop_index(iParam0, iParam1, iParam2, iParam3, network::network_is_game_in_progress());
		if (iParam1 == 0)
		{
			iVar0 = func_620(iParam0, iParam2, iParam3, iParam1);
			if (func_681(entity::get_entity_model(iParam0), 14, iVar0, dlc1::get_hash_name_for_prop(iParam0, 0, iParam2, iParam3)))
			{
				ped::set_ped_config_flag(iParam0, 34, true);
				ped::set_ped_config_flag(iParam0, 36, true);
			}
			else
			{
				ped::set_ped_config_flag(iParam0, 34, false);
				ped::set_ped_config_flag(iParam0, 36, false);
			}
		}
	}
}

struct<10> func_623(int iParam0, int iParam1)//Position - 0x47D93
{
	int iVar0;
	struct<10> Var1;
	
	Var1 = 9;
	iVar0 = 0;
	while (iVar0 <= 8)
	{
		Var1[iVar0] = -99;
		iVar0++;
	}
	switch (iParam0)
	{
		case joaat("player_zero"):
			switch (iParam1)
			{
				case 31:
					func_625(&Var1, 0, 1, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 0:
					func_625(&Var1, 10, 1, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 1:
					func_625(&Var1, 19, 1, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 2:
					func_625(&Var1, 14, 1, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 3:
					func_625(&Var1, 18, 1, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 4:
					func_625(&Var1, 0, 59, 112, 3, 4, 5, 6, 7, 8);
					break;
				
				case 5:
					func_625(&Var1, 0, 60, 112, 3, 4, 5, 6, 7, 8);
					break;
				
				case 6:
					func_625(&Var1, 15, 1, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 7:
					func_625(&Var1, 0, 60, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 8:
					func_625(&Var1, 55, 1, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 9:
					func_625(&Var1, 0, 1, 112, 3, 4, 5, 6, 7, 8);
					break;
				
				default:
					func_624(&Var1, iParam0, iParam1, 10);
					break;
			}
			break;
		
		case joaat("player_one"):
			switch (iParam1)
			{
				case 31:
					func_625(&Var1, 0, 1, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 0:
					func_625(&Var1, 10, 1, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 1:
					func_625(&Var1, 0, 82, 158, 3, 4, 5, 6, 7, 8);
					break;
				
				case 2:
					func_625(&Var1, 0, 1, 158, 3, 4, 5, 6, 7, 8);
					break;
				
				case 3:
					func_625(&Var1, 15, 1, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 4:
					func_625(&Var1, 41, 1, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 5:
					func_625(&Var1, 40, 1, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 6:
					func_625(&Var1, 41, 95, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 7:
					func_625(&Var1, 0, 95, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 8:
					func_625(&Var1, 69, 95, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				default:
					func_624(&Var1, iParam0, iParam1, 9);
					break;
			}
			break;
		
		case joaat("player_two"):
			switch (iParam1)
			{
				case 31:
					func_625(&Var1, 0, 1, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 0:
					func_625(&Var1, 11, 1, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 1:
					func_625(&Var1, 17, 90, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 2:
					func_625(&Var1, 15, 1, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 3:
					func_625(&Var1, 0, 88, 154, 3, 4, 5, 6, 7, 8);
					break;
				
				case 4:
					func_625(&Var1, 0, 1, 154, 3, 4, 5, 6, 7, 8);
					break;
				
				case 5:
					func_625(&Var1, 16, 1, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 6:
					func_625(&Var1, 36, 1, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 7:
					func_625(&Var1, 0, 123, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 8:
					func_625(&Var1, 69, 1, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				default:
					func_624(&Var1, iParam0, iParam1, 9);
					break;
			}
			break;
		
		case joaat("mp_m_freemode_01"):
			switch (iParam1)
			{
				case 31:
					func_625(&Var1, 0, 1, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 0:
					func_625(&Var1, 129, 167, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 1:
					func_625(&Var1, 90, 1, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 2:
					func_625(&Var1, 23, 251, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 3:
					func_625(&Var1, 36, 262, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 4:
					func_625(&Var1, 88, 1, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 5:
					func_625(&Var1, 125, 175, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 6:
					func_625(&Var1, 35, 1, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 7:
					func_625(&Var1, 44, 208, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 8:
					func_625(&Var1, 52, 189, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 9:
					func_625(&Var1, 0, 261, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 10:
					func_625(&Var1, 0, 243, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 11:
					func_625(&Var1, 0, 243, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 12:
					func_625(&Var1, 0, 212, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 13:
					func_625(&Var1, 64, 291, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 14:
					func_625(&Var1, 61, 207, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 15:
					func_625(&Var1, 0, 291, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 16:
					func_625(&Var1, 0, 208, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 17:
					func_625(&Var1, 0, 229, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 18:
					func_625(&Var1, 36, 249, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 19:
					func_625(&Var1, 0, 259, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 20:
					func_625(&Var1, 0, 174, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 21:
					func_625(&Var1, 35, 180, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 22:
					func_625(&Var1, 36, 1, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 23:
					func_625(&Var1, 0, 259, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 24:
					func_625(&Var1, 35, 1, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				default:
					func_624(&Var1, iParam0, iParam1, 25);
					break;
			}
			break;
		
		case joaat("mp_f_freemode_01"):
			switch (iParam1)
			{
				case 31:
					func_625(&Var1, 0, 1, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 0:
					func_625(&Var1, 35, 233, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 1:
					func_625(&Var1, 36, 178, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 2:
					func_625(&Var1, 53, 221, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 3:
					func_625(&Var1, 38, 170, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 4:
					func_625(&Var1, 37, 1, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 5:
					func_625(&Var1, 113, 203, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 6:
					func_625(&Var1, 114, 183, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 7:
					func_625(&Var1, 0, 221, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 8:
					func_625(&Var1, 0, 221, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 9:
					func_625(&Var1, 0, 199, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 10:
					func_625(&Var1, 0, 182, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 11:
					func_625(&Var1, 0, 233, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 12:
					func_625(&Var1, 107, 167, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 13:
					func_625(&Var1, 109, 170, 2, 3, 4, 5, 323, 7, 8);
					break;
				
				case 14:
					func_625(&Var1, 119, 237, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 15:
					func_625(&Var1, 0, 221, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 16:
					func_625(&Var1, 114, 1, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 17:
					func_625(&Var1, 35, 268, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 18:
					func_625(&Var1, 0, 266, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 19:
					func_625(&Var1, 42, 1, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 20:
					func_625(&Var1, 76, 1, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 21:
					func_625(&Var1, 39, 235, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 22:
					func_625(&Var1, 41, 183, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				case 23:
					func_625(&Var1, 111, 194, 2, 3, 4, 5, 6, 7, 8);
					break;
				
				default:
					func_624(&Var1, iParam0, iParam1, 25);
					break;
			}
			break;
	}
	return Var1;
}

void func_624(int iParam0, int iParam1, int iParam2, int iParam3)//Position - 0x486C3
{
	int iVar0;
	struct<4> Var1;
	vector3 vVar16;
	int iVar19;
	
	if (iParam2 != 0 && iParam2 != -99)
	{
		(*iParam0)[0] = 0;
		(*iParam0)[1] = 1;
		(*iParam0)[2] = 2;
		(*iParam0)[3] = 3;
		(*iParam0)[4] = 4;
		(*iParam0)[5] = 5;
		(*iParam0)[6] = 6;
		(*iParam0)[7] = 7;
		(*iParam0)[8] = 8;
		iVar0 = 0;
		if (iParam1 == joaat("player_zero"))
		{
			iVar0 = 0;
		}
		else if (iParam1 == joaat("player_one"))
		{
			iVar0 = 1;
		}
		else if (iParam1 == joaat("player_two"))
		{
			iVar0 = 2;
		}
		else if (iParam1 == joaat("mp_m_freemode_01"))
		{
			iVar0 = 3;
		}
		else if (iParam1 == joaat("mp_f_freemode_01"))
		{
			iVar0 = 4;
		}
		dlc1::get_shop_ped_outfit(iParam2, &Var1);
		if (!dlc1::_is_dlc_data_empty(Var1))
		{
			iVar19 = 0;
			while (iVar19 < Var1.f_3)
			{
				if (dlc1::_0xA9F9C2E0FDE11CBB(Var1.f_1, iVar19, &vVar16) && vVar16.y != -1)
				{
					if ((vVar16.x != 0 && vVar16.x != -1) && vVar16.x != 1849449579)
					{
						(*iParam0)[vVar16.y] = func_512(iParam1, vVar16.x, 14, iVar0);
					}
					else if (vVar16.y != -1)
					{
						(*iParam0)[vVar16.y] = vVar16.y;
					}
				}
				iVar19++;
			}
		}
	}
}

void func_625(int iParam0, int iParam1, int iParam2, int iParam3, int iParam4, int iParam5, int iParam6, int iParam7, int iParam8, int iParam9)//Position - 0x487ED
{
	(*iParam0)[0] = iParam1;
	(*iParam0)[1] = iParam2;
	(*iParam0)[2] = iParam3;
	(*iParam0)[3] = iParam4;
	(*iParam0)[4] = iParam5;
	(*iParam0)[5] = iParam6;
	(*iParam0)[6] = iParam7;
	(*iParam0)[7] = iParam8;
	(*iParam0)[8] = iParam9;
}

int func_626(int iParam0)//Position - 0x48835
{
	switch (iParam0)
	{
		case 0:
			return 0;
			break;
		
		case 2:
			return 2;
			break;
		
		case 3:
			return 3;
			break;
		
		case 4:
			return 4;
			break;
		
		case 6:
			return 6;
			break;
		
		case 5:
			return 5;
			break;
		
		case 8:
			return 8;
			break;
		
		case 9:
			return 9;
			break;
		
		case 10:
			return 10;
			break;
		
		case 1:
			return 1;
			break;
		
		case 7:
			return 7;
			break;
		
		case 11:
			return 11;
			break;
	}
	return 0;
}

struct<17> func_627(int iParam0, int iParam1)//Position - 0x488E5
{
	int iVar0;
	struct<17> Var1;
	
	Var1 = 15;
	iVar0 = 0;
	while (iVar0 <= 14)
	{
		Var1[iVar0] = -99;
		iVar0++;
	}
	Var1.f_16 = 0;
	switch (iParam0)
	{
		case joaat("player_zero"):
			switch (iParam1)
			{
				case 0:
					if (Global_101652.f_8028.f_99.f_58[120])
					{
						func_630(&Var1, -99, -99, 1, 1, 0, 0, 0, 0, 0, -99, 0, 0, 31);
					}
					else
					{
						func_630(&Var1, -99, -99, 0, 0, 0, 0, 0, 0, 0, -99, 0, 0, 31);
					}
					break;
				
				case 1:
					func_630(&Var1, -99, -99, 16, 16, 6, 1, 1, 0, 1, -99, 0, 0, 0);
					break;
				
				case 2:
					func_630(&Var1, -99, -99, 36, 21, 6, 1, 5, 0, 0, -99, 0, 0, 8);
					break;
				
				case 3:
					func_630(&Var1, -99, -99, 65, 36, 6, 0, 2, 0, 0, -99, 0, 0, 31);
					break;
				
				case 4:
					func_630(&Var1, -99, -99, 61, 32, 6, 0, 0, 7, 3, -99, 0, 0, 2);
					break;
				
				case 5:
					func_630(&Var1, -99, -99, Global_101652.f_2079.f_539.f_196[0], Global_101652.f_2079.f_539.f_200[0], 6, 3, 0, 0, 0, -99, 0, 0, 3);
					break;
				
				case 6:
					func_630(&Var1, -99, -99, 92, 72, 7, 0, 0, 0, 0, -99, 0, 0, 31);
					break;
				
				case 7:
					func_630(&Var1, -99, -99, 85, 95, 6, 0, 0, 0, 0, -99, 0, 0, 31);
					break;
				
				case 8:
					func_630(&Var1, -99, -99, 170, 80, 6, 0, 0, 0, 0, -99, 0, 0, 31);
					break;
				
				case 9:
					func_630(&Var1, -99, -99, 171, 89, 6, 0, 0, 0, 0, -99, 0, 0, 31);
					break;
				
				case 10:
					func_630(&Var1, -99, -99, 33, 18, 8, 10, 3, 8, 0, -99, 0, 0, 4);
					break;
				
				case 11:
					func_630(&Var1, -99, -99, 33, 18, 17, 10, 4, 8, 0, -99, 0, 0, 5);
					break;
				
				case 12:
					func_630(&Var1, -99, -99, 35, 20, 9, 10, 23, 0, 0, -99, 0, 0, 31);
					break;
				
				case 13:
					func_630(&Var1, -99, -99, 69, 40, 13, 0, 0, 0, 0, -99, 0, 0, 31);
					break;
				
				case 14:
					func_630(&Var1, -99, -99, 62, 33, 38, 0, 8, 0, 0, -99, 0, 0, 6);
					break;
				
				case 15:
					func_630(&Var1, -99, -99, 63, 34, 6, 10, 0, 0, 4, -99, 0, 0, 31);
					break;
				
				case 16:
					func_630(&Var1, -99, -99, 174, 93, 18, 0, 18, 0, 0, -99, 0, 0, 31);
					break;
				
				case 17:
					func_630(&Var1, -99, -99, 76, 46, 6, 10, 0, 0, 0, -99, 0, 0, 31);
					break;
				
				case 18:
					func_630(&Var1, -99, -99, 35, 20, 9, 10, 0, 4, 0, -99, 0, 0, 7);
					break;
				
				case 19:
					func_630(&Var1, -99, -99, 64, 35, 6, 0, 0, 0, 0, -99, 0, 0, 31);
					break;
				
				case 20:
					func_630(&Var1, -99, -99, 66, 37, 6, 0, 0, 0, 0, -99, 0, 0, 31);
					break;
				
				case 21:
					func_630(&Var1, -99, -99, 67, 38, 6, 0, 0, 0, 0, -99, 0, 0, 31);
					break;
				
				case 22:
					func_630(&Var1, -99, -99, 68, 39, 6, 0, 0, 0, 0, -99, 0, 0, 31);
					break;
				
				case 23:
					func_630(&Var1, -99, -99, 177, 94, 19, 9, 0, 0, 0, -99, 0, 0, 31);
					break;
				
				case 24:
					func_630(&Var1, -99, -99, 35, 20, 9, 10, 4, 0, 0, -99, 0, 0, 31);
					break;
				
				case 25:
					func_630(&Var1, -99, -99, 97, 81, 6, 0, 0, 0, 0, -99, 0, 0, 31);
					break;
				
				case 26:
					func_630(&Var1, -99, -99, 3, 3, 0, 0, 0, 0, 0, -99, 0, 0, 31);
					break;
				
				case 27:
					func_630(&Var1, -99, -99, 129, 81, 6, 0, 0, 0, 0, -99, 0, 0, 31);
					break;
				
				case 28:
					func_630(&Var1, -99, -99, 170, 80, 6, 0, 13, 0, 0, -99, 0, 0, 31);
					break;
				
				case 29:
					func_630(&Var1, -99, -99, 2, 2, 0, 0, 0, 0, 0, -99, 0, 0, 31);
					break;
				
				case 30:
					func_630(&Var1, -99, -99, 161, 3, 0, 0, 0, 0, 0, -99, 0, 0, 31);
					break;
				
				case 31:
					func_630(&Var1, -99, -99, 3, 3, 0, 12, 0, 0, 0, -99, 0, 1, 31);
					break;
				
				case 32:
					func_630(&Var1, -99, -99, 85, 55, 6, 0, 0, 0, 0, -99, 0, 0, 31);
					break;
				
				case 33:
					func_630(&Var1, -99, -99, 86, 4, 20, 0, 0, 0, 0, -99, 0, 0, 31);
					break;
				
				case 34:
					func_630(&Var1, -99, -99, 44, 97, 6, 0, 0, 0, 0, -99, 0, 2, 31);
					break;
				
				case 35:
					func_630(&Var1, -99, -99, 85, 81, 6, 0, 0, 0, 0, -99, 0, 0, 31);
					break;
				
				case 36:
					func_630(&Var1, -99, -99, 4, 4, 0, 0, 0, 0, 0, -99, 0, 0, 31);
					break;
				
				case 37:
					func_630(&Var1, -99, -99, 5, 5, 0, 0, 0, 0, 0, -99, 0, 0, 31);
					break;
				
				case 38:
					func_630(&Var1, -99, -99, 6, 6, 0, 0, 0, 0, 0, -99, 0, 0, 31);
					break;
				
				case 39:
					func_630(&Var1, -99, -99, 7, 7, 0, 0, 0, 0, 0, -99, 0, 0, 31);
					break;
				
				case 40:
					func_630(&Var1, -99, -99, 8, 8, 0, 0, 0, 0, 0, -99, 0, 0, 31);
					break;
				
				case 41:
					func_630(&Var1, -99, -99, 9, 9, 0, 0, 0, 0, 0, -99, 0, 0, 31);
					break;
				
				case 42:
					func_630(&Var1, -99, -99, 10, 10, 0, 0, 0, 0, 0, -99, 0, 0, 31);
					break;
				
				case 43:
					func_630(&Var1, -99, -99, 11, 11, 0, 0, 0, 0, 0, -99, 0, 0, 31);
					break;
				
				case 44:
					func_630(&Var1, -99, -99, 12, 12, 0, 0, 0, 0, 0, -99, 0, 0, 31);
					break;
				
				case 45:
					func_630(&Var1, -99, -99, 13, 13, 0, 0, 0, 0, 0, -99, 0, 0, 31);
					break;
				
				case 46:
					func_630(&Var1, -99, -99, 14, 14, 0, 0, 0, 0, 0, -99, 0, 0, 31);
					break;
				
				case 47:
					func_630(&Var1, -99, -99, 15, 15, 0, 0, 0, 0, 0, -99, 0, 0, 31);
					break;
				
				case 48:
					func_630(&Var1, -99, -99, 91, 71, 14, 13, 0, 0, 0, -99, 0, 0, 31);
					break;
				
				case 49:
					func_630(&Var1, -99, -99, 35, 20, 9, 10, 0, 0, 0, -99, 0, 0, 31);
					break;
				
				case 50:
					func_630(&Var1, -99, -99, 33, 18, 8, 10, 3, 8, 0, -99, 0, 0, 9);
					break;
				
				case 51:
					func_630(&Var1, -99, -99, 169, 95, 6, 0, 0, 0, 0, -99, 0, 0, 31);
					break;
				
				case 52:
					func_630(&Var1, -99, -99, 169, 72, 6, 0, 0, 0, 0, -99, 0, 0, 31);
					break;
				
				default:
					func_628(&Var1, iParam0, iParam1, 53);
					break;
			}
			break;
		
		case joaat("player_one"):
			switch (iParam1)
			{
				case 0:
					func_630(&Var1, -99, -99, 73, 24, 18, 0, 26, 0, 0, -99, 0, 0, 31);
					break;
				
				case 1:
					func_630(&Var1, -99, -99, 22, 10, 64, 0, 24, 0, 0, -99, 0, 43, 31);
					break;
				
				case 2:
					func_630(&Var1, -99, -99, Global_101652.f_2079.f_539.f_196[1], Global_101652.f_2079.f_539.f_200[1], 17, 2, 26, 0, 0, -99, 0, 45, 31);
					break;
				
				case 3:
					func_630(&Var1, -99, -99, 23, 11, 13, 5, 2, 4, 0, -99, 0, 0, 1);
					break;
				
				case 4:
					func_630(&Var1, -99, -99, 23, 11, 34, 5, 26, 0, 0, -99, 0, 0, 2);
					break;
				
				case 5:
					func_630(&Var1, -99, 20, 159, 69, 17, 5, 26, 0, 0, -99, 0, 0, 31);
					break;
				
				case 6:
					func_630(&Var1, -99, -99, 40, 13, 14, 0, 0, 0, 0, -99, 0, 0, 31);
					break;
				
				case 7:
					func_630(&Var1, -99, -99, 90, 32, 17, 1, 8, 0, 1, -99, 0, 0, 3);
					break;
				
				case 8:
					func_630(&Var1, -99, -99, 17, 5, 12, 0, 26, 0, 2, -99, 0, 0, 5);
					break;
				
				case 9:
					func_630(&Var1, -99, -99, 16, 4, 12, 0, 26, 0, 0, -99, 0, 0, 31);
					break;
				
				case 10:
					func_630(&Var1, -99, -99, 208, 71, 17, 0, 26, 0, 0, -99, 0, 0, 31);
					break;
				
				case 11:
					func_630(&Var1, -99, -99, 259, 10, 35, 0, 24, 0, 0, -99, 0, 43, 31);
					break;
				
				case 12:
					func_630(&Var1, -99, -99, 18, 6, 12, 0, 26, 0, 0, -99, 0, 0, 31);
					break;
				
				case 13:
					func_630(&Var1, -99, -99, 19, 7, 12, 0, 26, 0, 0, -99, 0, 0, 31);
					break;
				
				case 14:
					func_630(&Var1, -99, -99, 20, 8, 12, 0, 26, 0, 0, -99, 0, 0, 31);
					break;
				
				case 15:
					func_630(&Var1, -99, -99, 21, 9, 12, 0, 26, 0, 0, -99, 0, 0, 31);
					break;
				
				case 16:
					func_630(&Var1, -99, -99, 135, 40, 0, 0, 26, 0, 0, -99, 0, 0, 31);
					break;
				
				case 17:
					func_630(&Var1, -99, -99, 74, 24, 52, 0, 26, 0, 0, -99, 0, 0, 31);
					break;
				
				case 18:
					func_630(&Var1, -99, -99, 176, 53, 26, 5, 26, 0, 0, -99, 0, 41, 31);
					break;
				
				case 19:
					func_630(&Var1, -99, -99, 125, 24, 18, 0, 26, 0, 0, -99, 0, 0, 31);
					break;
				
				case 20:
					func_630(&Var1, -99, -99, 162, 24, 36, 0, 26, 0, 0, -99, 0, 0, 31);
					break;
				
				case 21:
					func_630(&Var1, -99, -99, 75, 24, 36, 0, 26, 0, 0, -99, 0, 0, 4);
					break;
				
				case 22:
					func_630(&Var1, -99, -99, 227, 53, 25, 0, 27, 0, 0, -99, 0, 25, 31);
					break;
				
				case 23:
					func_630(&Var1, -99, -99, 228, 54, 25, 0, 28, 0, 0, -99, 0, 26, 31);
					break;
				
				case 24:
					func_630(&Var1, -99, -99, 229, 55, 25, 0, 29, 0, 0, -99, 0, 27, 31);
					break;
				
				case 25:
					func_630(&Var1, -99, -99, 230, 56, 25, 0, 30, 0, 0, -99, 0, 28, 31);
					break;
				
				case 26:
					func_630(&Var1, -99, -99, 231, 57, 25, 0, 31, 0, 0, -99, 0, 29, 31);
					break;
				
				case 27:
					func_630(&Var1, -99, -99, 232, 58, 25, 0, 32, 0, 0, -99, 0, 30, 31);
					break;
				
				case 28:
					func_630(&Var1, -99, -99, 233, 59, 25, 0, 33, 0, 0, -99, 0, 31, 31);
					break;
				
				case 29:
					func_630(&Var1, -99, -99, 234, 60, 25, 0, 34, 0, 0, -99, 0, 32, 31);
					break;
				
				case 30:
					func_630(&Var1, -99, -99, 235, 61, 25, 0, 35, 0, 0, -99, 0, 33, 31);
					break;
				
				case 31:
					func_630(&Var1, -99, -99, 236, 62, 25, 0, 36, 0, 0, -99, 0, 34, 31);
					break;
				
				case 32:
					func_630(&Var1, -99, -99, 237, 63, 25, 0, 37, 0, 0, -99, 0, 35, 31);
					break;
				
				case 33:
					func_630(&Var1, -99, -99, 238, 64, 25, 0, 38, 0, 0, -99, 0, 36, 31);
					break;
				
				case 34:
					func_630(&Var1, -99, -99, 239, 65, 25, 0, 39, 0, 0, -99, 0, 37, 31);
					break;
				
				case 35:
					func_630(&Var1, -99, -99, 240, 66, 25, 0, 40, 0, 0, -99, 0, 38, 31);
					break;
				
				case 36:
					func_630(&Var1, -99, -99, 241, 67, 25, 0, 41, 0, 0, -99, 0, 39, 31);
					break;
				
				case 37:
					func_630(&Var1, -99, -99, 242, 68, 25, 0, 42, 0, 0, -99, 0, 40, 31);
					break;
				
				case 38:
					func_630(&Var1, -99, -99, 260, 72, 17, 0, 26, 0, 0, -99, 0, 0, 31);
					break;
				
				case 39:
					func_630(&Var1, -99, -99, 125, 24, 0, 0, 26, 0, 0, -99, 0, 0, 31);
					break;
				
				case 40:
					func_630(&Var1, -99, -99, 123, 24, 0, 0, 26, 0, 0, -99, 0, 0, 31);
					break;
				
				case 41:
					func_630(&Var1, -99, -99, 159, 69, 17, 5, 26, 0, 0, -99, 0, 0, 31);
					break;
				
				case 42:
					func_630(&Var1, -99, -99, 89, 22, 15, 6, 26, 0, 0, -99, 0, 0, 31);
					break;
				
				case 43:
					func_630(&Var1, -99, -99, 317, 69, 17, 0, 0, 0, 51, -99, 0, 0, 6);
					break;
				
				case 44:
					func_630(&Var1, -99, -99, 30, 23, 16, 0, 0, 0, 0, -99, 0, 0, 7);
					break;
				
				case 45:
					func_630(&Var1, -99, -99, 106, 70, 17, 5, 26, 0, 0, -99, 0, 0, 8);
					break;
				
				case 46:
					func_630(&Var1, -99, -99, 117, 24, 20, 5, 26, 0, 52, -99, 0, 0, 31);
					break;
				
				default:
					func_628(&Var1, iParam0, iParam1, 47);
					break;
			}
			break;
		
		case joaat("player_two"):
			switch (iParam1)
			{
				case 0:
					func_630(&Var1, -99, -99, 0, 91, 28, 0, 0, 0, 0, -99, 0, 0, 31);
					break;
				
				case 1:
					func_630(&Var1, -99, -99, 17, 5, 8, 2, 3, 0, 0, -99, 0, 0, 8);
					break;
				
				case 2:
					func_630(&Var1, -99, -99, 43, 8, 12, 3, 5, 0, 0, -99, 0, 0, 1);
					break;
				
				case 3:
					func_630(&Var1, -99, -99, 50, 14, 8, 0, 15, 6, 3, -99, 0, 0, 2);
					break;
				
				case 4:
					func_630(&Var1, -99, -99, Global_101652.f_2079.f_539.f_196[2], Global_101652.f_2079.f_539.f_200[2], 8, 0, 0, 0, 0, -99, 0, 0, 31);
					break;
				
				case 5:
					func_630(&Var1, -99, -99, 95, 33, 8, 0, 15, 0, 0, -99, 0, 0, 6);
					break;
				
				case 6:
					func_630(&Var1, -99, -99, 49, 13, 10, 4, 6, 0, 0, -99, 0, 0, 3);
					break;
				
				case 7:
					func_630(&Var1, -99, -99, 49, 13, 14, 4, 15, 0, 0, -99, 0, 0, 4);
					break;
				
				case 8:
					func_630(&Var1, -99, -99, 79, 32, 8, 5, 7, 0, 0, -99, 0, 0, 31);
					break;
				
				case 9:
					func_630(&Var1, -99, -99, 53, 17, 11, 0, 15, 0, 0, -99, 0, 0, 31);
					break;
				
				case 10:
					func_630(&Var1, -99, -99, 96, 81, 8, 0, 0, 0, 0, -99, 0, 0, 31);
					break;
				
				case 11:
					func_630(&Var1, -99, -99, 51, 15, 33, 0, 8, 0, 0, -99, 0, 0, 5);
					break;
				
				case 12:
					func_630(&Var1, -99, -99, 0, 93, 29, 0, 13, 0, 0, -99, 0, 0, 31);
					break;
				
				case 13:
					func_630(&Var1, -99, -99, 52, 16, 30, 5, 15, 0, 0, -99, 0, 0, 31);
					break;
				
				case 14:
					func_630(&Var1, -99, -99, 241, 92, 16, 0, 12, 0, 0, -99, 0, 0, 31);
					break;
				
				case 15:
					func_630(&Var1, -99, -99, 97, 34, 8, 0, 0, 0, 0, -99, 0, 0, 31);
					break;
				
				case 16:
					func_630(&Var1, -99, -99, 44, 9, 12, 0, 15, 0, 0, -99, 0, 0, 31);
					break;
				
				case 17:
					func_630(&Var1, -99, -99, 45, 10, 12, 0, 15, 0, 0, -99, 0, 0, 31);
					break;
				
				case 18:
					func_630(&Var1, -99, -99, 46, 11, 12, 0, 15, 0, 0, -99, 0, 0, 31);
					break;
				
				case 19:
					func_630(&Var1, -99, -99, 47, 12, 12, 0, 15, 0, 0, -99, 0, 0, 31);
					break;
				
				case 20:
					func_630(&Var1, -99, -99, 161, 53, 8, 0, 15, 0, 0, -99, 0, 0, 31);
					break;
				
				case 21:
					func_630(&Var1, -99, -99, 0, 44, 8, 0, 0, 0, 0, -99, 0, 0, 31);
					break;
				
				case 22:
					func_630(&Var1, -99, -99, 98, 0, 28, 0, 15, 0, 0, -99, 0, 0, 31);
					break;
				
				case 23:
					func_630(&Var1, -99, -99, 27, 0, 31, 0, 15, 0, 0, -99, 0, 0, 31);
					break;
				
				case 24:
					func_630(&Var1, -99, -99, 190, 71, 8, 0, 15, 0, 0, -99, 0, 0, 31);
					break;
				
				case 25:
					func_630(&Var1, -99, -99, 191, 72, 8, 0, 15, 0, 0, -99, 0, 0, 31);
					break;
				
				case 26:
					func_630(&Var1, -99, -99, 192, 73, 8, 0, 15, 0, 0, -99, 0, 0, 31);
					break;
				
				case 27:
					func_630(&Var1, -99, -99, 193, 74, 8, 0, 15, 0, 0, -99, 0, 0, 31);
					break;
				
				case 28:
					func_630(&Var1, -99, -99, 194, 75, 8, 0, 15, 0, 0, -99, 0, 0, 31);
					break;
				
				case 29:
					func_630(&Var1, -99, -99, 195, 76, 8, 0, 15, 0, 0, -99, 0, 0, 31);
					break;
				
				case 30:
					func_630(&Var1, -99, -99, 196, 77, 8, 0, 15, 0, 0, -99, 0, 0, 31);
					break;
				
				case 31:
					func_630(&Var1, -99, -99, 197, 78, 8, 0, 15, 0, 0, -99, 0, 0, 31);
					break;
				
				case 32:
					func_630(&Var1, -99, -99, 198, 79, 8, 0, 15, 0, 0, -99, 0, 0, 31);
					break;
				
				case 33:
					func_630(&Var1, -99, -99, 199, 80, 8, 0, 15, 0, 0, -99, 0, 0, 31);
					break;
				
				case 34:
					func_630(&Var1, -99, -99, 200, 62, 16, 0, 15, 0, 0, -99, 0, 0, 31);
					break;
				
				case 35:
					func_630(&Var1, -99, -99, 201, 63, 16, 0, 15, 0, 0, -99, 0, 0, 31);
					break;
				
				case 36:
					func_630(&Var1, -99, -99, 202, 64, 16, 0, 15, 0, 0, -99, 0, 0, 31);
					break;
				
				case 37:
					func_630(&Var1, -99, -99, 203, 65, 16, 0, 15, 0, 0, -99, 0, 0, 31);
					break;
				
				case 38:
					func_630(&Var1, -99, -99, 204, 66, 16, 0, 15, 0, 0, -99, 0, 0, 31);
					break;
				
				case 39:
					func_630(&Var1, -99, -99, 205, 67, 16, 0, 15, 0, 0, -99, 0, 0, 31);
					break;
				
				case 40:
					func_630(&Var1, -99, -99, 206, 68, 16, 0, 15, 0, 0, -99, 0, 0, 31);
					break;
				
				case 41:
					func_630(&Var1, -99, -99, 2, 43, 8, 0, 0, 0, 0, -99, 0, 0, 31);
					break;
				
				case 42:
					func_630(&Var1, -99, -99, 55, 0, 28, 0, 0, 0, 0, -99, 0, 0, 31);
					break;
				
				case 43:
					func_630(&Var1, -99, -99, 0, 52, 8, 0, 0, 0, 0, -99, 0, 0, 31);
					break;
				
				case 44:
					func_630(&Var1, -99, -99, 70, 30, 32, 6, 15, 0, 0, -99, 0, 0, 31);
					break;
				
				case 45:
					func_630(&Var1, -99, -99, 19, 91, 28, 0, 0, 0, 0, -99, 0, 0, 7);
					break;
				
				case 46:
					func_630(&Var1, -99, -99, 0, 0, 28, 0, 0, 0, 0, -99, 0, 0, 31);
					break;
				
				case 47:
					func_630(&Var1, -99, -99, 79, 32, 8, 5, 15, 0, 0, -99, 0, 0, 31);
					break;
				
				default:
					func_628(&Var1, iParam0, iParam1, 48);
					break;
			}
			break;
		
		case joaat("mp_m_freemode_01"):
			switch (iParam1)
			{
				case 0:
					func_630(&Var1, -99, -99, 0, 0, 10, -99, 0, -99, -99, 0, 0, 0, 31);
					break;
				
				case 1:
					func_630(&Var1, -99, -99, 1, 127, 38, -99, 2, 0, 0, 0, 0, 62, 0);
					break;
				
				case 2:
					func_630(&Var1, -99, -99, 0, 248, 45, -99, 240, 0, 0, 0, 0, 144, 1);
					break;
				
				case 3:
					func_630(&Var1, -99, -99, 4, 31, 25, -99, 240, 0, 0, 0, 0, 231, 2);
					break;
				
				case 4:
					func_630(&Var1, -99, -99, 1, 66, 10, -99, 21, 0, 0, 0, 0, 123, 3);
					break;
				
				case 5:
					func_630(&Var1, -99, -99, 1, 93, 141, -99, 3, 0, 0, 0, 0, 114, 4);
					break;
				
				case 6:
					func_630(&Var1, -99, -99, 1, 116, 113, -99, 7, 0, 0, 0, 0, 113, 5);
					break;
				
				case 7:
					func_630(&Var1, -99, -99, 1, 61, 136, -99, 27, 0, 0, 0, 0, 61, 6);
					break;
				
				case 8:
					func_630(&Var1, -99, -99, 0, 112, 10, -99, 240, 0, 0, 0, 0, 8, 7);
					break;
				
				case 9:
					func_630(&Var1, -99, -99, 4, 131, 24, -99, 240, 0, 0, 0, 0, 223, 8);
					break;
				
				case 10:
					func_630(&Var1, -99, -99, 1, 209, 188, -99, 208, 0, 0, 0, 0, 64, 9);
					break;
				
				case 11:
					func_630(&Var1, -99, -99, 1, 209, 160, -99, 211, 0, 0, 0, 43, 157, 10);
					break;
				
				case 12:
					func_630(&Var1, -99, -99, 1, 162, 174, -99, 201, 0, 0, 0, 0, 158, 11);
					break;
				
				case 13:
					func_630(&Var1, -99, -99, 1, 4, 240, -99, 34, 0, 0, 0, 0, 97, 12);
					break;
				
				case 14:
					func_630(&Var1, -99, -99, 1, 128, 232, -99, 43, 0, 0, 0, 0, 102, 13);
					break;
				
				case 15:
					func_630(&Var1, -99, -99, 1, 66, 65, -99, 224, 0, 0, 0, 0, 100, 14);
					break;
				
				case 16:
					func_630(&Var1, -99, -99, 1, 65, 172, -99, 202, 0, 0, 0, 0, 64, 15);
					break;
				
				case 17:
					func_630(&Var1, -99, -99, 1, 64, 10, -99, 1, 0, 0, 0, 0, 66, 16);
					break;
				
				case 18:
					func_630(&Var1, -99, -99, 5, 98, 80, -99, 240, 0, 0, 0, 0, 87, 17);
					break;
				
				case 19:
					func_630(&Var1, -99, -99, 5, 192, 96, -99, 240, 0, 0, 0, 0, 80, 18);
					break;
				
				case 20:
					func_630(&Var1, -99, -99, 1, 124, 96, -99, 11, 0, 0, 0, 0, 110, 19);
					break;
				
				case 21:
					func_630(&Var1, -99, -99, 0, 80, 114, -99, 240, 0, 0, 0, 0, 2, 20);
					break;
				
				case 22:
					func_630(&Var1, -99, -99, 6, 43, 112, -99, 82, 0, 0, 0, 0, 48, 21);
					break;
				
				case 23:
					func_630(&Var1, -99, -99, 1, 116, 144, -99, 2, 0, 0, 0, 0, 108, 22);
					break;
				
				case 24:
					func_630(&Var1, -99, -99, 1, 63, 38, -99, 3, 0, 0, 0, 0, 63, 23);
					break;
				
				case 25:
					func_630(&Var1, -99, -99, 2, 64, 10, -99, 240, 0, 0, 0, 0, 41, 24);
					break;
				
				default:
					func_628(&Var1, iParam0, iParam1, 26);
					break;
			}
			break;
		
		case joaat("mp_f_freemode_01"):
			switch (iParam1)
			{
				case 0:
					func_630(&Var1, -99, -99, 0, 0, 0, -99, 0, -99, -99, 0, -99, 0, 31);
					break;
				
				case 1:
					func_630(&Var1, -99, -99, 5, 136, 241, -99, 47, 0, 0, 0, 0, 21, 31);
					break;
				
				case 2:
					func_630(&Var1, -99, -99, 4, 1, 96, -99, 32, 0, 0, 0, 7, 215, 0);
					break;
				
				case 3:
					func_630(&Var1, -99, -99, 1, 73, 241, -99, 3, 0, 0, 0, 0, 25, 1);
					break;
				
				case 4:
					func_630(&Var1, -99, -99, 2, 88, 217, -99, 32, 0, 0, 0, 0, 33, 2);
					break;
				
				case 5:
					func_630(&Var1, -99, -99, 9, 7, 98, -99, 32, 0, 0, 0, 7, 153, 3);
					break;
				
				case 6:
					func_630(&Var1, -99, -99, 1, 140, 241, -99, 7, 0, 0, 0, 31, 16, 4);
					break;
				
				case 7:
					func_630(&Var1, -99, -99, 4, 139, 112, -99, 32, 0, 0, 0, 49, 78, 5);
					break;
				
				case 8:
					func_630(&Var1, -99, -99, 1, 193, 48, -99, 108, 0, 0, 0, 0, 17, 6);
					break;
				
				case 9:
					func_630(&Var1, -99, -99, 5, 114, 97, -99, 103, 0, 0, 0, 0, 98, 7);
					break;
				
				case 10:
					func_630(&Var1, -99, -99, 9, 134, 239, -99, 32, 0, 0, 0, 2, 144, 8);
					break;
				
				case 11:
					func_630(&Var1, -99, -99, 5, 152, 96, -99, 10, 0, 0, 0, 31, 96, 9);
					break;
				
				case 12:
					func_630(&Var1, -99, -99, 6, 129, 1, -99, 96, 0, 0, 0, 5, 120, 10);
					break;
				
				case 13:
					func_630(&Var1, -99, -99, 5, 0, 0, -99, 10, 0, 0, 0, 0, 130, 31);
					break;
				
				case 14:
					func_630(&Var1, -99, -99, 4, 159, 96, -99, 32, 0, 0, 0, 22, 214, 11);
					break;
				
				case 15:
					func_630(&Var1, -99, -99, 9, 232, 213, -99, 32, 0, 0, 0, 22, 147, 12);
					break;
				
				case 16:
					func_630(&Var1, -99, -99, 2, 8, 98, -99, 32, 0, 0, 0, 33, 39, 13);
					break;
				
				case 17:
					func_630(&Var1, -99, -99, 5, 150, 235, -99, 106, 0, 0, 0, 0, 128, 14);
					break;
				
				case 18:
					func_630(&Var1, -99, -99, 6, 96, 97, -99, 7, 0, 0, 0, 32, 114, 15);
					break;
				
				case 19:
					func_630(&Var1, -99, -99, 4, 48, 64, -99, 32, 0, 0, 0, 0, 89, 16);
					break;
				
				case 20:
					func_630(&Var1, -99, -99, 4, 62, 64, -99, 32, 0, 0, 0, 0, 78, 17);
					break;
				
				case 21:
					func_630(&Var1, -99, -99, 4, 49, 65, -99, 32, 0, 0, 0, 8, 80, 31);
					break;
				
				case 22:
					func_630(&Var1, -99, -99, 3, 20, 16, -99, 32, 0, 0, 0, 0, 49, 18);
					break;
				
				case 23:
					func_630(&Var1, -99, -99, 0, 73, 178, -99, 32, 0, 0, 0, 38, 11, 19);
					break;
				
				case 24:
					func_630(&Var1, -99, -99, 5, 135, 53, -99, 9, 0, 0, 0, 29, 27, 20);
					break;
				
				case 25:
					func_630(&Var1, -99, -99, 7, 233, 176, -99, 120, 0, 0, 0, 11, 160, 21);
					break;
				
				case 26:
					func_630(&Var1, -99, -99, 4, 34, 179, -99, 32, 0, 0, 0, 0, 77, 22);
					break;
				
				case 27:
					func_630(&Var1, -99, -99, 15, 131, 93, -99, 32, 0, 0, 0, 0, 250, 23);
					break;
				
				default:
					func_628(&Var1, iParam0, iParam1, 28);
					break;
			}
			break;
	}
	return Var1;
}

void func_628(var uParam0, int iParam1, int iParam2, int iParam3)//Position - 0x4A72D
{
	int iVar0;
	struct<5> Var1;
	vector3 vVar16;
	struct<2> Var19;
	int iVar36;
	
	(*uParam0)[0] = 0;
	(*uParam0)[2] = -99;
	(*uParam0)[3] = 0;
	(*uParam0)[4] = 0;
	(*uParam0)[6] = 0;
	(*uParam0)[5] = 0;
	(*uParam0)[8] = 0;
	(*uParam0)[9] = 0;
	(*uParam0)[10] = 0;
	(*uParam0)[1] = 0;
	(*uParam0)[7] = 0;
	(*uParam0)[11] = 0;
	(*uParam0)[13] = -99;
	(*uParam0)[14] = -99;
	uParam0->f_16 = 0;
	iVar0 = 0;
	if (iParam1 == joaat("player_zero"))
	{
		iVar0 = 0;
		(*uParam0)[13] = (10 + (iParam2 - iParam3));
	}
	else if (iParam1 == joaat("player_one"))
	{
		iVar0 = 1;
		(*uParam0)[13] = (9 + (iParam2 - iParam3));
	}
	else if (iParam1 == joaat("player_two"))
	{
		iVar0 = 2;
		(*uParam0)[13] = (9 + (iParam2 - iParam3));
	}
	else if (iParam1 == joaat("mp_m_freemode_01"))
	{
		iVar0 = 3;
	}
	else if (iParam1 == joaat("mp_f_freemode_01"))
	{
		iVar0 = 4;
	}
	dlc1::_0xF3FBE2D50A6A8C28(iVar0, 0);
	dlc1::get_shop_ped_query_outfit((iParam2 - iParam3), &Var1);
	if (!dlc1::_is_dlc_data_empty(Var1))
	{
		iVar36 = 0;
		while (iVar36 < Var1.f_4)
		{
			if (dlc1::_get_prop_from_outfit(Var1.f_1, iVar36, &vVar16))
			{
				if ((vVar16.x != 0 && vVar16.x != -1) && vVar16.x != 1849449579)
				{
					if (vVar16.y == 10)
					{
						dlc1::init_shop_ped_component(&Var19);
						dlc1::get_shop_ped_component(vVar16.x, &Var19);
						if (vVar16.x != Var19.f_1)
						{
							uParam0->f_16 = 1;
						}
					}
					if (vVar16.y == 10 && uParam0->f_16)
					{
						(*uParam0)[func_629(vVar16.y)] = vVar16.x;
						uParam0->f_16 = 1;
					}
					else
					{
						(*uParam0)[func_629(vVar16.y)] = func_512(iParam1, vVar16.x, func_629(vVar16.y), iVar0);
					}
				}
				else if (vVar16.y != -1)
				{
					(*uParam0)[func_629(vVar16.y)] = vVar16.y;
				}
			}
			iVar36++;
		}
		if (Var1.f_3 == 0)
		{
			(*uParam0)[13] = -99;
		}
		else
		{
			(*uParam0)[13] = Var1.f_1;
		}
	}
}

int func_629(int iParam0)//Position - 0x4A917
{
	switch (iParam0)
	{
		case 0:
			return 0;
			break;
		
		case 2:
			return 2;
			break;
		
		case 3:
			return 3;
			break;
		
		case 4:
			return 4;
			break;
		
		case 6:
			return 6;
			break;
		
		case 5:
			return 5;
			break;
		
		case 8:
			return 8;
			break;
		
		case 9:
			return 9;
			break;
		
		case 10:
			return 10;
			break;
		
		case 1:
			return 1;
			break;
		
		case 7:
			return 7;
			break;
		
		case 11:
			return 11;
			break;
	}
	return 0;
}

void func_630(var uParam0, int iParam1, int iParam2, int iParam3, int iParam4, int iParam5, int iParam6, int iParam7, int iParam8, int iParam9, int iParam10, int iParam11, int iParam12, int iParam13)//Position - 0x4A9C7
{
	(*uParam0)[0] = iParam1;
	(*uParam0)[2] = iParam2;
	(*uParam0)[3] = iParam3;
	(*uParam0)[4] = iParam4;
	(*uParam0)[6] = iParam5;
	(*uParam0)[5] = iParam6;
	(*uParam0)[8] = iParam7;
	(*uParam0)[9] = iParam8;
	(*uParam0)[10] = iParam9;
	(*uParam0)[1] = iParam10;
	(*uParam0)[7] = iParam11;
	(*uParam0)[11] = iParam12;
	(*uParam0)[13] = iParam13;
	(*uParam0)[14] = -99;
}

void func_631(int iParam0, int iParam1, int iParam2, int iParam3)//Position - 0x4AA38
{
	int iVar0;
	int iVar1;
	int iVar2;
	var uVar3;
	int iVar4;
	int iVar5;
	int iVar6;
	int iVar7;
	int iVar8;
	int iVar9;
	int iVar10[2];
	struct<2> Var13;
	int iVar30;
	int iVar31;
	int iVar32;
	int iVar33;
	struct<2> Var34;
	int iVar51;
	int iVar52;
	int iVar53;
	
	if (network::network_is_game_in_progress())
	{
		if (Global_69516 != func_126() || iParam2 == -99)
		{
			return;
		}
		Global_69518[2 /*14*/] = { func_638(iParam0, iParam1, iParam2) };
		if (gameplay::is_bit_set(Global_69518[2 /*14*/].f_6, 1) && gameplay::is_bit_set(Global_69518[2 /*14*/].f_6, 6))
		{
			if (iParam1 == 12)
			{
				func_634(Global_2621444, 2, 1, 1, -1);
			}
			else if (iParam1 == 13)
			{
			}
			else if (iParam1 == 14)
			{
				func_634(Global_2621444, 2, 1, 1, -1);
			}
			else
			{
				func_634(Global_2621444, 2, 1, 1, -1);
			}
			if (iParam3)
			{
				iVar0 = dlc1::_0xC17AD0E5752BECDA(Global_2621444);
				iVar5 = 0;
				iVar1 = 0;
				while (iVar1 < iVar0)
				{
					if (iVar5 < Global_2592865)
					{
						Global_2592865[iVar5] = -1;
						Global_2592876[iVar5] = -1;
					}
					dlc1::get_variant_component(Global_2621444, iVar1, &iVar2, &uVar3, &iVar4);
					if (iVar4 != 10 && iVar4 != 9)
					{
						if (iParam1 == 4 && dlc1::_0x341DE7ED1D2A1BFD(Global_2621444, -1223513441, 0))
						{
						}
						else if (iVar2 != 0 && iVar2 != 1849449579)
						{
							func_634(iVar2, 2, 1, 1, -1);
							if (iVar5 < Global_2592865)
							{
								Global_2592865[iVar5] = iVar2;
								Global_2592876[iVar5] = iVar4;
								iVar5++;
							}
						}
						else
						{
							func_631(iParam0, func_629(iVar4), uVar3, 0);
						}
					}
					iVar1++;
				}
				Global_2592864++;
				if (Global_2592864 < 2)
				{
					iVar1 = 0;
					while (iVar1 < iVar5)
					{
						if (iVar1 < Global_2592865)
						{
							if (Global_2592865[iVar1] != -1)
							{
								if (iParam0 == joaat("mp_m_freemode_01"))
								{
									func_631(iParam0, func_629(Global_2592876[iVar1]), func_512(iParam0, Global_2592865[iVar1], func_629(Global_2592876[iVar1]), 3), 1);
								}
								else
								{
									func_631(iParam0, func_629(Global_2592876[iVar1]), func_512(iParam0, Global_2592865[iVar1], func_629(Global_2592876[iVar1]), 4), 1);
								}
							}
						}
						iVar1++;
					}
				}
				Global_2592864 = (Global_2592864 - 1);
			}
			return;
		}
		if (gameplay::is_bit_set(Global_69518[2 /*14*/].f_6, 1) && !gameplay::is_bit_set(Global_69518[2 /*14*/].f_6, 6))
		{
			if (func_633(iParam1, Global_69518[1 /*14*/].f_2, &iVar6))
			{
				iVar7 = func_241(iVar6, Global_69516, 0);
				gameplay::set_bit(&iVar7, Global_69518[2 /*14*/].f_1);
				func_506(iVar6, iVar7, Global_69516, 1, 0);
			}
			if (iParam3 == 1)
			{
				if (iParam0 == joaat("mp_m_freemode_01"))
				{
					if (iParam1 == 14)
					{
						if (iParam2 >= 83 && iParam2 <= 90)
						{
							iVar8 = (75 + Global_69518[2 /*14*/].f_4);
							func_631(iParam0, 14, iVar8, 0);
						}
						else if (iParam2 >= 75 && iParam2 <= 82)
						{
							iVar8 = (83 + Global_69518[2 /*14*/].f_4);
							func_631(iParam0, 14, iVar8, 0);
						}
					}
					else if (iParam1 == 8)
					{
						if (iParam2 >= 48 && iParam2 <= 63)
						{
							iVar8 = (64 + Global_69518[2 /*14*/].f_4);
							func_631(iParam0, 8, iVar8, 0);
						}
						else if (iParam2 >= 64 && iParam2 <= 79)
						{
							iVar8 = (48 + Global_69518[2 /*14*/].f_4);
							func_631(iParam0, 8, iVar8, 0);
						}
						else if (iParam2 >= 96 && iParam2 <= 111)
						{
							iVar8 = (112 + Global_69518[2 /*14*/].f_4);
							func_631(iParam0, 8, iVar8, 0);
						}
						else if (iParam2 >= 112 && iParam2 <= 127)
						{
							iVar8 = (96 + Global_69518[2 /*14*/].f_4);
							func_631(iParam0, 8, iVar8, 0);
						}
						else if (iParam2 >= 176 && iParam2 <= 191)
						{
							iVar8 = (160 + Global_69518[2 /*14*/].f_4);
							func_631(iParam0, 8, iVar8, 0);
						}
						else if (iParam2 >= 160 && iParam2 <= 175)
						{
							iVar8 = (176 + Global_69518[2 /*14*/].f_4);
							func_631(iParam0, 8, iVar8, 0);
						}
						else if (iParam2 >= 32 && iParam2 <= 47)
						{
							iVar8 = (0 + Global_69518[2 /*14*/].f_4);
							func_631(iParam0, 11, iVar8, 0);
						}
						else if (iParam2 >= 224 && iParam2 <= 239)
						{
							iVar8 = (16 + Global_69518[2 /*14*/].f_4);
							func_631(iParam0, 11, iVar8, 0);
						}
					}
					else if (iParam1 == 11)
					{
						if (iParam2 >= 0 && iParam2 <= 15)
						{
							iVar8 = (32 + Global_69518[2 /*14*/].f_4);
							func_631(iParam0, 8, iVar8, 0);
						}
						else if (iParam2 >= 16 && iParam2 <= 31)
						{
							iVar8 = (224 + Global_69518[2 /*14*/].f_4);
							func_631(iParam0, 8, iVar8, 0);
						}
						else if (iParam2 >= 220 && iParam2 <= 235)
						{
							switch (iParam2)
							{
								case 220:
									iVar10[0] = 691352495;
									iVar10[1] = 691352495;
									break;
								
								case 221:
									iVar10[0] = 451909412;
									iVar10[1] = 451909412;
									break;
								
								case 222:
									iVar10[0] = -206550874;
									iVar10[1] = -206550874;
									break;
								
								case 223:
									iVar10[0] = -445797343;
									iVar10[1] = -445797343;
									break;
								
								case 224:
									iVar10[0] = -173716332;
									iVar10[1] = -173716332;
									break;
								
								case 225:
									iVar10[0] = -538304226;
									iVar10[1] = -538304226;
									break;
								
								case 226:
									iVar10[0] = -592242000;
									iVar10[1] = -592242000;
									break;
								
								case 227:
									iVar10[0] = -831095241;
									iVar10[1] = -831095241;
									break;
								
								case 228:
									iVar10[0] = -1092100326;
									iVar10[1] = -1092100326;
									break;
								
								case 229:
									iVar10[0] = -1465994616;
									iVar10[1] = -1465994616;
									break;
								
								case 230:
									iVar10[0] = 507503642;
									iVar10[1] = 507503642;
									break;
								
								case 231:
									iVar10[0] = -1392082519;
									iVar10[1] = -1392082519;
									break;
								
								case 232:
									iVar10[0] = -88859389;
									iVar10[1] = -88859389;
									break;
								
								case 233:
									iVar10[0] = 157858412;
									iVar10[1] = 157858412;
									break;
								
								case 234:
									iVar10[0] = -513152401;
									iVar10[1] = -513152401;
									break;
								
								case 235:
									iVar10[0] = 2004948615;
									iVar10[1] = 2004948615;
									break;
							}
							dlc1::init_shop_ped_component(&Var13);
							iVar32 = dlc1::_get_num_props_from_outfit(3, 6, -1, 0, -1, 8);
							iVar30 = 0;
							while (iVar30 < iVar32)
							{
								dlc1::get_shop_ped_query_component(iVar30, &Var13);
								if (!dlc1::_is_dlc_data_empty(Var13))
								{
									if (Var13.f_1 == iVar10[0] || Var13.f_1 == iVar10[1])
									{
										func_631(iParam0, 8, (241 + iVar31), 0);
										iVar30 = iVar32 + 1;
									}
									iVar31++;
								}
								iVar30++;
							}
						}
					}
					else if (iParam1 == 7)
					{
						if (iParam2 >= 41 && iParam2 <= 56)
						{
							switch (Global_69518[2 /*14*/].f_4)
							{
								case 0:
									func_631(iParam0, 7, func_512(iParam0, -1893758670, 7, 3), 0);
									func_631(iParam0, 7, func_512(iParam0, 221276858, 7, 3), 0);
									break;
								
								case 1:
									func_631(iParam0, 7, func_512(iParam0, -1596052305, 7, 3), 0);
									func_631(iParam0, 7, func_512(iParam0, 576886046, 7, 3), 0);
									break;
								
								case 2:
									func_631(iParam0, 7, func_512(iParam0, 1233059274, 7, 3), 0);
									func_631(iParam0, 7, func_512(iParam0, -392978047, 7, 3), 0);
									break;
								
								case 3:
									func_631(iParam0, 7, func_512(iParam0, 232228476, 7, 3), 0);
									func_631(iParam0, 7, func_512(iParam0, -33764269, 7, 3), 0);
									break;
								
								case 4:
									func_631(iParam0, 7, func_512(iParam0, -454445919, 7, 3), 0);
									func_631(iParam0, 7, func_512(iParam0, 1510704243, 7, 3), 0);
									break;
								
								case 5:
									func_631(iParam0, 7, func_512(iParam0, 925653285, 7, 3), 0);
									func_631(iParam0, 7, func_512(iParam0, 1800939276, 7, 3), 0);
									break;
								
								case 6:
									func_631(iParam0, 7, func_512(iParam0, -2104856604, 7, 3), 0);
									func_631(iParam0, 7, func_512(iParam0, 833565623, 7, 3), 0);
									break;
								
								case 7:
									func_631(iParam0, 7, func_512(iParam0, 1657483366, 7, 3), 0);
									func_631(iParam0, 7, func_512(iParam0, 1201823645, 7, 3), 0);
									break;
								
								case 8:
									func_631(iParam0, 7, func_512(iParam0, 501294735, 7, 3), 0);
									func_631(iParam0, 7, func_512(iParam0, 2132496022, 7, 3), 0);
									break;
								
								case 9:
									func_631(iParam0, 7, func_512(iParam0, 1882573627, 7, 3), 0);
									func_631(iParam0, 7, func_512(iParam0, -1939019463, 7, 3), 0);
									break;
								
								case 10:
									func_631(iParam0, 7, func_512(iParam0, 206035418, 7, 3), 0);
									func_631(iParam0, 7, func_512(iParam0, 1713491273, 7, 3), 0);
									break;
								
								case 11:
									func_631(iParam0, 7, func_512(iParam0, -642943834, 7, 3), 0);
									func_631(iParam0, 7, func_512(iParam0, -156668318, 7, 3), 0);
									break;
								
								case 12:
									func_631(iParam0, 7, func_512(iParam0, -388295935, 7, 3), 0);
									func_631(iParam0, 7, func_512(iParam0, 106696135, 7, 3), 0);
									break;
								
								case 13:
									func_631(iParam0, 7, func_512(iParam0, 927641567, 7, 3), 0);
									func_631(iParam0, 7, func_512(iParam0, -802905767, 7, 3), 0);
									break;
								
								case 14:
									func_631(iParam0, 7, func_512(iParam0, 1147226636, 7, 3), 0);
									func_631(iParam0, 7, func_512(iParam0, -505527092, 7, 3), 0);
									break;
								
								case 15:
									func_631(iParam0, 7, func_512(iParam0, 312665744, 7, 3), 0);
									func_631(iParam0, 7, func_512(iParam0, -1144129332, 7, 3), 0);
									break;
							}
						}
						else if (iParam2 >= 73 && iParam2 <= 88)
						{
							switch (Global_69518[2 /*14*/].f_4)
							{
								case 0:
									func_631(iParam0, 7, func_512(iParam0, -335266079, 7, 3), 0);
									func_631(iParam0, 7, func_512(iParam0, -925989020, 7, 3), 0);
									break;
								
								case 1:
									func_631(iParam0, 7, func_512(iParam0, -1379548555, 7, 3), 0);
									func_631(iParam0, 7, func_512(iParam0, 244486895, 7, 3), 0);
									break;
								
								case 2:
									func_631(iParam0, 7, func_512(iParam0, -1402159165, 7, 3), 0);
									func_631(iParam0, 7, func_512(iParam0, 1095104597, 7, 3), 0);
									break;
								
								case 3:
									func_631(iParam0, 7, func_512(iParam0, 1357351098, 7, 3), 0);
									func_631(iParam0, 7, func_512(iParam0, 1787874026, 7, 3), 0);
									break;
								
								case 4:
									func_631(iParam0, 7, func_512(iParam0, -1097178082, 7, 3), 0);
									func_631(iParam0, 7, func_512(iParam0, 476163725, 7, 3), 0);
									break;
								
								case 5:
									func_631(iParam0, 7, func_512(iParam0, -179482237, 7, 3), 0);
									func_631(iParam0, 7, func_512(iParam0, 1223952305, 7, 3), 0);
									break;
								
								case 6:
									func_631(iParam0, 7, func_512(iParam0, -750514831, 7, 3), 0);
									func_631(iParam0, 7, func_512(iParam0, 2049796643, 7, 3), 0);
									break;
								
								case 7:
									func_631(iParam0, 7, func_512(iParam0, -1724573356, 7, 3), 0);
									func_631(iParam0, 7, func_512(iParam0, -1013547784, 7, 3), 0);
									break;
								
								case 8:
									func_631(iParam0, 7, func_512(iParam0, 94106144, 7, 3), 0);
									func_631(iParam0, 7, func_512(iParam0, 1456972664, 7, 3), 0);
									break;
								
								case 9:
									func_631(iParam0, 7, func_512(iParam0, 1070524041, 7, 3), 0);
									func_631(iParam0, 7, func_512(iParam0, -1670762848, 7, 3), 0);
									break;
								
								case 10:
									func_631(iParam0, 7, func_512(iParam0, -1644577318, 7, 3), 0);
									func_631(iParam0, 7, func_512(iParam0, 1428867383, 7, 3), 0);
									break;
								
								case 11:
									func_631(iParam0, 7, func_512(iParam0, 1865900118, 7, 3), 0);
									func_631(iParam0, 7, func_512(iParam0, -1664165762, 7, 3), 0);
									break;
								
								case 12:
									func_631(iParam0, 7, func_512(iParam0, 1611776523, 7, 3), 0);
									func_631(iParam0, 7, func_512(iParam0, -1962101510, 7, 3), 0);
									break;
								
								case 13:
									func_631(iParam0, 7, func_512(iParam0, 1381115532, 7, 3), 0);
									func_631(iParam0, 7, func_512(iParam0, -1270511757, 7, 3), 0);
									break;
								
								case 14:
									func_631(iParam0, 7, func_512(iParam0, 1636484345, 7, 3), 0);
									func_631(iParam0, 7, func_512(iParam0, -1571626106, 7, 3), 0);
									break;
								
								case 15:
									func_631(iParam0, 7, func_512(iParam0, 1422633851, 7, 3), 0);
									func_631(iParam0, 7, func_512(iParam0, -698332248, 7, 3), 0);
									break;
								}
							}
					}
				}
				else if (iParam0 == joaat("mp_f_freemode_01"))
				{
					if (iParam1 == 11)
					{
						if (iParam2 >= 0 && iParam2 <= 15)
						{
							iVar8 = (16 + Global_69518[2 /*14*/].f_4);
							func_631(iParam0, 8, iVar8, 0);
						}
					}
				}
				Global_69518[2 /*14*/] = { func_638(iParam0, iParam1, iParam2) };
				if (iParam1 == 11)
				{
					iVar9 = func_632(iParam0, iParam2, Global_69518[2 /*14*/].f_4);
					if (iVar9 != -99)
					{
						func_631(iParam0, 8, iVar9, 0);
					}
					if (iParam2 >= 192 && iParam2 <= 203)
					{
						switch (iParam2)
						{
							case 199:
								iVar33 = 331193219;
								break;
							
							case 200:
								iVar33 = 1115060468;
								break;
							
							case 201:
								iVar33 = 779636984;
								break;
						}
						dlc1::init_shop_ped_component(&Var34);
						iVar53 = dlc1::_get_num_props_from_outfit(4, 6, -1, 0, -1, 8);
						iVar51 = 0;
						while (iVar51 < iVar53)
						{
							dlc1::get_shop_ped_query_component(iVar51, &Var34);
							if (!dlc1::_is_dlc_data_empty(Var34))
							{
								if (Var34.f_1 == iVar33)
								{
									func_631(iParam0, 8, (136 + iVar52), 0);
									iVar51 = iVar53 + 1;
								}
								iVar52++;
							}
							iVar51++;
						}
					}
				}
				else if (iParam1 == 8)
				{
					iVar9 = func_596(iParam0, iParam2, Global_69518[2 /*14*/].f_4);
					if (iVar9 != -99)
					{
						func_631(iParam0, 11, iVar9, 0);
					}
				}
			}
		}
	}
}

int func_632(int iParam0, int iParam1, int iParam2)//Position - 0x4B966
{
	int iVar0;
	int iVar1;
	int iVar2;
	int iVar3;
	int iVar4;
	int iVar5;
	int iVar6;
	int iVar7;
	int iVar8;
	int iVar9;
	int iVar10;
	int iVar11;
	int iVar12;
	
	iVar0 = -99;
	if (iParam0 == joaat("mp_m_freemode_01"))
	{
		if (iParam1 <= 15)
		{
			iVar0 = 0;
		}
		else if (iParam1 <= 31)
		{
			iVar0 = 16;
		}
		else if (iParam1 <= 47)
		{
			iVar0 = -99;
		}
		else if (iParam1 <= 63)
		{
			iVar0 = -99;
		}
		else if (iParam1 <= 79)
		{
			iVar0 = -99;
		}
		else if (iParam1 <= 95)
		{
			iVar0 = 80;
		}
		else if (iParam1 <= 107)
		{
			iVar0 = -99;
		}
		else if (iParam1 <= 123)
		{
			iVar0 = -99;
		}
		else if (iParam1 <= 139)
		{
			iVar0 = 128;
		}
		else if (iParam1 <= 155)
		{
			iVar0 = 144;
		}
		else if (iParam1 <= 171)
		{
			iVar0 = -99;
		}
		else if (iParam1 <= 187)
		{
			iVar0 = -99;
		}
		else if (iParam1 <= 203)
		{
			iVar0 = 192;
		}
		else if (iParam1 <= 219)
		{
			iVar0 = 208;
		}
		else if (iParam1 <= 235)
		{
			iVar0 = -99;
		}
		else if (iParam1 <= 236)
		{
			iVar0 = 240;
		}
		else if (iParam1 >= 237)
		{
			iVar1 = func_604(iParam0, iParam1, 11, 3);
			if (iVar1 != -1)
			{
				iVar2 = dlc1::_0xC17AD0E5752BECDA(iVar1);
				iVar3 = 0;
				while (iVar3 < iVar2)
				{
					dlc1::get_variant_component(iVar1, iVar3, &iVar4, &iVar5, &iVar6);
					if (iVar6 == 8)
					{
						if (iVar4 != 0 && iVar4 != 1849449579)
						{
							iVar0 = func_512(iParam0, iVar4, 8, 3);
						}
						else
						{
							iVar0 = iVar5;
						}
						iVar3 = iVar2 + 1;
					}
					iVar3++;
				}
			}
		}
	}
	else if (iParam0 == joaat("mp_f_freemode_01"))
	{
		if (iParam1 <= 15)
		{
			iVar0 = 0;
		}
		else if (iParam1 <= 31)
		{
			iVar0 = -99;
		}
		else if (iParam1 <= 47)
		{
			iVar0 = -99;
		}
		else if (iParam1 <= 63)
		{
			iVar0 = -99;
		}
		else if (iParam1 <= 79)
		{
			iVar0 = 34;
		}
		else if (iParam1 <= 95)
		{
			iVar0 = 50;
		}
		else if (iParam1 <= 111)
		{
			iVar0 = -99;
		}
		else if (iParam1 <= 127)
		{
			iVar0 = -99;
		}
		else if (iParam1 <= 143)
		{
			iVar0 = -99;
		}
		else if (iParam1 <= 159)
		{
			iVar0 = -99;
		}
		else if (iParam1 <= 175)
		{
			iVar0 = -99;
		}
		else if (iParam1 <= 191)
		{
			iVar0 = 71;
		}
		else if (iParam1 <= 207)
		{
			iVar0 = 87;
		}
		else if (iParam1 <= 223)
		{
			iVar0 = 103;
		}
		else if (iParam1 <= 239)
		{
			iVar0 = -99;
		}
		else if (iParam1 <= 255)
		{
			iVar0 = 120;
		}
		else if (iParam1 >= 256)
		{
			iVar7 = func_604(iParam0, iParam1, 11, 4);
			if (iVar7 != -1)
			{
				iVar8 = dlc1::_0xC17AD0E5752BECDA(iVar7);
				iVar9 = 0;
				while (iVar9 < iVar8)
				{
					dlc1::get_variant_component(iVar7, iVar9, &iVar10, &iVar11, &iVar12);
					if (iVar12 == 8)
					{
						if (iVar10 != 0 && iVar10 != 1849449579)
						{
							iVar0 = func_512(iParam0, iVar10, 8, 4);
						}
						else
						{
							iVar0 = iVar11;
						}
						iVar9 = iVar8 + 1;
					}
					iVar9++;
				}
			}
		}
	}
	if (iVar0 != -99)
	{
		iVar0 = (iVar0 + iParam2);
	}
	return iVar0;
}

int func_633(int iParam0, int iParam1, var uParam2)//Position - 0x4BC5B
{
	*uParam2 = 973;
	switch (iParam1)
	{
		case 0:
			switch (iParam0)
			{
				case 2:
					*uParam2 = 974;
					break;
				
				case 3:
					*uParam2 = 1424;
					break;
				
				case 4:
					*uParam2 = 990;
					break;
				
				case 6:
					*uParam2 = 998;
					break;
				
				case 8:
					*uParam2 = 1425;
					break;
				
				case 9:
					*uParam2 = 1433;
					break;
				
				case 10:
					*uParam2 = 1435;
					break;
				
				case 1:
					*uParam2 = 1006;
					break;
				
				case 7:
					*uParam2 = 1436;
					break;
				
				case 11:
					*uParam2 = 982;
					break;
				
				case 14:
					*uParam2 = 1014;
					break;
				
				case 12:
					*uParam2 = 1025;
					break;
			}
			break;
		
		case 1:
			switch (iParam0)
			{
				case 2:
					*uParam2 = 975;
					break;
				
				case 4:
					*uParam2 = 991;
					break;
				
				case 6:
					*uParam2 = 999;
					break;
				
				case 8:
					*uParam2 = 1426;
					break;
				
				case 9:
					*uParam2 = 1434;
					break;
				
				case 7:
					*uParam2 = 1437;
					break;
				
				case 11:
					*uParam2 = 983;
					break;
				
				case 14:
					*uParam2 = 1015;
					break;
			}
			break;
		
		case 2:
			switch (iParam0)
			{
				case 2:
					*uParam2 = 976;
					break;
				
				case 4:
					*uParam2 = 992;
					break;
				
				case 6:
					*uParam2 = 1000;
					break;
				
				case 8:
					*uParam2 = 1427;
					break;
				
				case 7:
					*uParam2 = 1438;
					break;
				
				case 11:
					*uParam2 = 984;
					break;
				
				case 14:
					*uParam2 = 1016;
					break;
			}
			break;
		
		case 3:
			switch (iParam0)
			{
				case 4:
					*uParam2 = 993;
					break;
				
				case 6:
					*uParam2 = 1001;
					break;
				
				case 8:
					*uParam2 = 1428;
					break;
				
				case 11:
					*uParam2 = 985;
					break;
				
				case 14:
					*uParam2 = 1017;
					break;
			}
			break;
		
		case 4:
			switch (iParam0)
			{
				case 4:
					*uParam2 = 994;
					break;
				
				case 6:
					*uParam2 = 1002;
					break;
				
				case 8:
					*uParam2 = 1429;
					break;
				
				case 11:
					*uParam2 = 986;
					break;
				
				case 14:
					*uParam2 = 1018;
					break;
			}
			break;
		
		case 5:
			switch (iParam0)
			{
				case 4:
					*uParam2 = 995;
					break;
				
				case 6:
					*uParam2 = 1003;
					break;
				
				case 8:
					*uParam2 = 1430;
					break;
				
				case 11:
					*uParam2 = 987;
					break;
				
				case 14:
					*uParam2 = 1019;
					break;
			}
			break;
		
		case 6:
			switch (iParam0)
			{
				case 4:
					*uParam2 = 996;
					break;
				
				case 6:
					*uParam2 = 1004;
					break;
				
				case 8:
					*uParam2 = 1431;
					break;
				
				case 11:
					*uParam2 = 988;
					break;
				
				case 14:
					*uParam2 = 1020;
					break;
			}
			break;
		
		case 7:
			switch (iParam0)
			{
				case 4:
					*uParam2 = 997;
					break;
				
				case 6:
					*uParam2 = 1005;
					break;
				
				case 8:
					*uParam2 = 1432;
					break;
				
				case 11:
					*uParam2 = 989;
					break;
				
				case 14:
					*uParam2 = 1021;
					break;
			}
			break;
		
		case 8:
			switch (iParam0)
			{
				case 14:
					*uParam2 = 1022;
					break;
			}
			break;
		
		case 9:
			switch (iParam0)
			{
				case 14:
					*uParam2 = 1023;
					break;
			}
			break;
		
		case 10:
			switch (iParam0)
			{
				case 14:
					*uParam2 = 1024;
					break;
			}
			break;
	}
	return *uParam2 != 973;
}

void func_634(int iParam0, int iParam1, int iParam2, int iParam3, int iParam4)//Position - 0x4C061
{
	int iVar0;
	int iVar1;
	int iVar2;
	int iVar3;
	
	iVar0 = Global_69516;
	if (iParam4 != -1)
	{
		iVar0 = iParam4;
	}
	if (func_635(iParam0, iParam1, &iVar2, &iVar1, iParam2, iParam3))
	{
		iVar3 = func_241(iVar2, iVar0, 0);
		gameplay::set_bit(&iVar3, iVar1);
		func_506(iVar2, iVar3, iVar0, 1, 0);
	}
}

int func_635(int iParam0, int iParam1, var uParam2, var uParam3, int iParam4, int iParam5)//Position - 0x4C0AB
{
	int iVar0;
	
	*uParam2 = 6022;
	if ((iParam4 && Global_2592834) || (!iParam4 && iParam5))
	{
		switch (iParam1)
		{
			case 1:
				switch (iParam0)
				{
					case 8886212:
					case -969630947:
						*uParam2 = 966;
						*uParam3 = 19;
						return true;
						break;
					
					case 1857811503:
					case -1198063650:
						*uParam2 = 966;
						*uParam3 = 20;
						return true;
						break;
					
					case 552556691:
					case -1596927918:
						*uParam2 = 966;
						*uParam3 = 21;
						return true;
						break;
					
					case 328711652:
					case 2093516866:
						*uParam2 = 966;
						*uParam3 = 22;
						return true;
						break;
					
					case 1194403102:
					case 1863511255:
						*uParam2 = 966;
						*uParam3 = 23;
						return true;
						break;
					
					case 1107630790:
					case 1503248869:
						*uParam2 = 966;
						*uParam3 = 24;
						return true;
						break;
					
					case 1807937089:
					case 1263478096:
						*uParam2 = 966;
						*uParam3 = 25;
						return true;
						break;
					
					case 1453442047:
					case 745170819:
						*uParam2 = 966;
						*uParam3 = 26;
						return true;
						break;
					
					case -1071423629:
					case -1382822784:
					case 385813134:
						*uParam2 = 930;
						*uParam3 = 0;
						return true;
						break;
					
					case -833094692:
					case -1731353868:
					case 675392787:
						*uParam2 = 930;
						*uParam3 = 1;
						return true;
						break;
					
					case -1836153782:
					case -1960638561:
					case -238272479:
						*uParam2 = 930;
						*uParam3 = 2;
						return true;
						break;
					
					case -1598414687:
					case 147161830:
					case 67757212:
						*uParam2 = 930;
						*uParam3 = 3;
						return true;
						break;
					
					case 123661793:
					case -92608943:
					case -536372072:
						*uParam2 = 930;
						*uParam3 = 4;
						return true;
						break;
					
					case 330958487:
					case -162931217:
					case -247578875:
						*uParam2 = 930;
						*uParam3 = 5;
						return true;
						break;
					
					case -142717408:
					case 1665087452:
					case -854821214:
						*uParam2 = 930;
						*uParam3 = 7;
						return true;
						break;
					
					case 1290696959:
					case 1012984348:
					case -1458295118:
						*uParam2 = 930;
						*uParam3 = 8;
						return true;
						break;
					
					case 2059568454:
					case 933072050:
					case -1454802604:
						*uParam2 = 930;
						*uParam3 = 11;
						return true;
						break;
				}
				break;
			
			case 2:
				switch (iParam0)
				{
					case 8886212:
					case -969630947:
						*uParam2 = 1018;
						*uParam3 = 19;
						return true;
						break;
					
					case 1857811503:
					case -1198063650:
						*uParam2 = 1018;
						*uParam3 = 20;
						return true;
						break;
					
					case 552556691:
					case -1596927918:
						*uParam2 = 1018;
						*uParam3 = 21;
						return true;
						break;
					
					case 328711652:
					case 2093516866:
						*uParam2 = 1018;
						*uParam3 = 22;
						return true;
						break;
					
					case 1194403102:
					case 1863511255:
						*uParam2 = 1018;
						*uParam3 = 23;
						return true;
						break;
					
					case 1107630790:
					case 1503248869:
						*uParam2 = 1018;
						*uParam3 = 24;
						return true;
						break;
					
					case 1807937089:
					case 1263478096:
						*uParam2 = 1018;
						*uParam3 = 25;
						return true;
						break;
					
					case 1453442047:
					case 745170819:
						*uParam2 = 1018;
						*uParam3 = 26;
						return true;
						break;
				}
				break;
		}
	}
	else
	{
		switch (iParam1)
		{
			case 1:
				switch (iParam0)
				{
					case -1795774903:
					case -379046860:
						*uParam2 = 966;
						*uParam3 = 19;
						return true;
						break;
					
					case 1655095722:
					case 472553912:
						*uParam2 = 966;
						*uParam3 = 20;
						return true;
						break;
					
					case -1951624263:
					case 147288818:
						*uParam2 = 966;
						*uParam3 = 21;
						return true;
						break;
					
					case -1586249913:
					case 1027988462:
						*uParam2 = 966;
						*uParam3 = 22;
						return true;
						break;
					
					case -1472181024:
					case 788217689:
						*uParam2 = 966;
						*uParam3 = 23;
						return true;
						break;
					
					case -1116178608:
					case 1338147047:
						*uParam2 = 966;
						*uParam3 = 24;
						return true;
						break;
					
					case -1028914761:
					case 1095820292:
						*uParam2 = 966;
						*uParam3 = 25;
						return true;
						break;
					
					case -654496167:
					case -1989217217:
						*uParam2 = 966;
						*uParam3 = 26;
						return true;
						break;
				}
				break;
			
			case 2:
				switch (iParam0)
				{
					case -1795774903:
					case -379046860:
						*uParam2 = 1018;
						*uParam3 = 19;
						return true;
						break;
					
					case 1655095722:
					case 472553912:
						*uParam2 = 1018;
						*uParam3 = 20;
						return true;
						break;
					
					case -1951624263:
					case 147288818:
						*uParam2 = 1018;
						*uParam3 = 21;
						return true;
						break;
					
					case -1586249913:
					case 1027988462:
						*uParam2 = 1018;
						*uParam3 = 22;
						return true;
						break;
					
					case -1472181024:
					case 788217689:
						*uParam2 = 1018;
						*uParam3 = 23;
						return true;
						break;
					
					case -1116178608:
					case 1338147047:
						*uParam2 = 1018;
						*uParam3 = 24;
						return true;
						break;
					
					case -1028914761:
					case 1095820292:
						*uParam2 = 1018;
						*uParam3 = 25;
						return true;
						break;
					
					case -654496167:
					case -1989217217:
						*uParam2 = 1018;
						*uParam3 = 26;
						return true;
						break;
				}
				break;
			}
	}
	iVar0 = -1;
	if (iParam4)
	{
		if (Global_2592834)
		{
			iVar0 = ped::_0x1E77FA7A62EE6C4C(iParam0);
		}
		else
		{
			iVar0 = ped::_0xF033419D1B81FAE8(iParam0);
		}
	}
	else if (iParam5)
	{
		iVar0 = ped::_0x1E77FA7A62EE6C4C(iParam0);
	}
	else
	{
		iVar0 = ped::_0xF033419D1B81FAE8(iParam0);
	}
	if (iVar0 == -1)
	{
		return false;
	}
	switch (iParam1)
	{
		case 1:
			switch (system::floor((system::to_float(iVar0) / 32f)))
			{
				case 0:
					*uParam2 = 1753;
					break;
				
				case 1:
					*uParam2 = 1754;
					break;
				
				case 2:
					*uParam2 = 1755;
					break;
				
				case 3:
					*uParam2 = 1756;
					break;
				
				case 4:
					*uParam2 = 1757;
					break;
				
				case 5:
					*uParam2 = 1758;
					break;
				
				case 6:
					*uParam2 = 1765;
					break;
				
				case 7:
					*uParam2 = 1766;
					break;
				
				case 8:
					*uParam2 = 1767;
					break;
				
				case 9:
					*uParam2 = 1768;
					break;
				
				case 10:
					*uParam2 = 1769;
					break;
				
				case 11:
					*uParam2 = 1770;
					break;
				
				case 12:
					*uParam2 = 1771;
					break;
				
				case 13:
					*uParam2 = 1779;
					break;
				
				case 14:
					*uParam2 = 1780;
					break;
				
				case 15:
					*uParam2 = 1881;
					break;
				
				case 16:
					*uParam2 = 1882;
					break;
				
				case 17:
					*uParam2 = 1913;
					break;
				
				case 18:
					*uParam2 = 1927;
					break;
				
				case 19:
					*uParam2 = 1928;
					break;
				
				case 20:
					*uParam2 = 1929;
					break;
				
				case 21:
					*uParam2 = 1930;
					break;
				
				case 22:
					*uParam2 = 1931;
					break;
				
				case 23:
					*uParam2 = 2035;
					break;
				
				case 24:
					*uParam2 = 2036;
					break;
				
				case 25:
					*uParam2 = 2062;
					break;
				
				case 26:
					*uParam2 = 2063;
					break;
				
				case 27:
					*uParam2 = 2064;
					break;
				
				case 28:
					*uParam2 = 2065;
					break;
				
				case 29:
					*uParam2 = 2066;
					break;
				
				case 30:
					*uParam2 = 2067;
					break;
				
				case 31:
					*uParam2 = 2068;
					break;
				
				case 32:
					*uParam2 = 2069;
					break;
				
				case 33:
					*uParam2 = 2070;
					break;
				
				case 34:
					*uParam2 = 2071;
					break;
				
				case 35:
					*uParam2 = 2318;
					break;
				
				case 36:
					*uParam2 = 2319;
					break;
				
				case 37:
					*uParam2 = 2371;
					break;
				
				case 38:
					*uParam2 = 2372;
					break;
				
				case 39:
					*uParam2 = 2373;
					break;
				
				case 40:
					*uParam2 = 2374;
					break;
				
				case 41:
					*uParam2 = 2433;
					break;
				
				case 42:
					*uParam2 = 2434;
					break;
				
				case 43:
					*uParam2 = 2435;
					break;
				
				case 44:
					*uParam2 = 2436;
					break;
				
				case 45:
					*uParam2 = 2437;
					break;
				
				case 46:
					*uParam2 = 2438;
					break;
				
				case 47:
					*uParam2 = 2439;
					break;
				
				case 48:
					*uParam2 = 2440;
					break;
				
				case 49:
					*uParam2 = 2441;
					break;
				
				case 50:
					*uParam2 = 2442;
					break;
				
				case 51:
					*uParam2 = 2571;
					break;
				
				case 52:
					*uParam2 = 2572;
					break;
				
				case 53:
					*uParam2 = 2573;
					break;
				
				case 54:
					*uParam2 = 2574;
					break;
				
				case 55:
					*uParam2 = 2575;
					break;
				
				case 56:
					*uParam2 = 2576;
					break;
				
				case 57:
					*uParam2 = 2577;
					break;
				
				case 58:
					*uParam2 = 2578;
					break;
				
				case 59:
					*uParam2 = 2579;
					break;
				
				case 60:
					*uParam2 = 2580;
					break;
				
				case 61:
					*uParam2 = 2581;
					break;
				
				case 62:
					*uParam2 = 3178;
					break;
				
				case 63:
					*uParam2 = 3179;
					break;
				
				case 64:
					*uParam2 = 3180;
					break;
				
				case 65:
					*uParam2 = 3181;
					break;
				
				case 66:
					*uParam2 = 3182;
					break;
				
				case 67:
					*uParam2 = 3183;
					break;
				
				case 68:
					*uParam2 = 3651;
					break;
				
				case 69:
					*uParam2 = 3652;
					break;
				
				case 70:
					*uParam2 = 3653;
					break;
				
				case 71:
					*uParam2 = 3654;
					break;
				
				case 72:
					*uParam2 = 3655;
					break;
				
				case 73:
					*uParam2 = 3656;
					break;
				
				case 74:
					*uParam2 = 3657;
					break;
				
				case 75:
					*uParam2 = 3658;
					break;
				
				case 76:
					*uParam2 = 3659;
					break;
				
				case 77:
					*uParam2 = 3660;
					break;
				
				case 78:
					*uParam2 = 3764;
					break;
				
				case 79:
					*uParam2 = 3765;
					break;
				
				case 80:
					*uParam2 = 3766;
					break;
				
				case 81:
					*uParam2 = 3767;
					break;
				
				case 82:
					*uParam2 = 3768;
					break;
				
				case 83:
					*uParam2 = 3769;
					break;
				
				case 84:
					*uParam2 = 3770;
					break;
				
				case 85:
					*uParam2 = 3771;
					break;
				
				case 86:
					*uParam2 = 3874;
					break;
				
				case 87:
					*uParam2 = 3875;
					break;
				
				case 88:
					*uParam2 = 3876;
					break;
				
				case 89:
					*uParam2 = 5309;
					break;
				
				case 90:
					*uParam2 = 5310;
					break;
				
				case 91:
					*uParam2 = 5311;
					break;
				
				case 92:
					*uParam2 = 5312;
					break;
				
				case 93:
					*uParam2 = 5313;
					break;
				
				case 94:
					*uParam2 = 5314;
					break;
				
				case 95:
					*uParam2 = 5315;
					break;
				
				case 96:
					*uParam2 = 5316;
					break;
				
				case 97:
					*uParam2 = 5317;
					break;
				
				case 98:
					*uParam2 = 5318;
					break;
				
				case 99:
					*uParam2 = 5319;
					break;
				
				case 100:
					*uParam2 = 5320;
					break;
				
				default:
					break;
			}
			break;
		
		case 2:
			switch (system::floor((system::to_float(iVar0) / 32f)))
			{
				case 0:
					*uParam2 = 1759;
					break;
				
				case 1:
					*uParam2 = 1760;
					break;
				
				case 2:
					*uParam2 = 1761;
					break;
				
				case 3:
					*uParam2 = 1762;
					break;
				
				case 4:
					*uParam2 = 1763;
					break;
				
				case 5:
					*uParam2 = 1764;
					break;
				
				case 6:
					*uParam2 = 1772;
					break;
				
				case 7:
					*uParam2 = 1773;
					break;
				
				case 8:
					*uParam2 = 1774;
					break;
				
				case 9:
					*uParam2 = 1775;
					break;
				
				case 10:
					*uParam2 = 1776;
					break;
				
				case 11:
					*uParam2 = 1777;
					break;
				
				case 12:
					*uParam2 = 1778;
					break;
				
				case 13:
					*uParam2 = 1781;
					break;
				
				case 14:
					*uParam2 = 1782;
					break;
				
				case 15:
					*uParam2 = 1883;
					break;
				
				case 16:
					*uParam2 = 1884;
					break;
				
				case 17:
					*uParam2 = 1914;
					break;
				
				case 18:
					*uParam2 = 1932;
					break;
				
				case 19:
					*uParam2 = 1933;
					break;
				
				case 20:
					*uParam2 = 1934;
					break;
				
				case 21:
					*uParam2 = 1935;
					break;
				
				case 22:
					*uParam2 = 1936;
					break;
				
				case 23:
					*uParam2 = 2037;
					break;
				
				case 24:
					*uParam2 = 2038;
					break;
				
				case 25:
					*uParam2 = 2072;
					break;
				
				case 26:
					*uParam2 = 2073;
					break;
				
				case 27:
					*uParam2 = 2074;
					break;
				
				case 28:
					*uParam2 = 2075;
					break;
				
				case 29:
					*uParam2 = 2076;
					break;
				
				case 30:
					*uParam2 = 2077;
					break;
				
				case 31:
					*uParam2 = 2078;
					break;
				
				case 32:
					*uParam2 = 2079;
					break;
				
				case 33:
					*uParam2 = 2080;
					break;
				
				case 34:
					*uParam2 = 2081;
					break;
				
				case 35:
					*uParam2 = 2320;
					break;
				
				case 36:
					*uParam2 = 2321;
					break;
				
				case 37:
					*uParam2 = 2375;
					break;
				
				case 38:
					*uParam2 = 2376;
					break;
				
				case 39:
					*uParam2 = 2377;
					break;
				
				case 40:
					*uParam2 = 2378;
					break;
				
				case 41:
					*uParam2 = 2443;
					break;
				
				case 42:
					*uParam2 = 2444;
					break;
				
				case 43:
					*uParam2 = 2445;
					break;
				
				case 44:
					*uParam2 = 2446;
					break;
				
				case 45:
					*uParam2 = 2447;
					break;
				
				case 46:
					*uParam2 = 2448;
					break;
				
				case 47:
					*uParam2 = 2449;
					break;
				
				case 48:
					*uParam2 = 2450;
					break;
				
				case 49:
					*uParam2 = 2451;
					break;
				
				case 50:
					*uParam2 = 2452;
					break;
				
				case 51:
					*uParam2 = 2582;
					break;
				
				case 52:
					*uParam2 = 2583;
					break;
				
				case 53:
					*uParam2 = 2584;
					break;
				
				case 54:
					*uParam2 = 2585;
					break;
				
				case 55:
					*uParam2 = 2586;
					break;
				
				case 56:
					*uParam2 = 2587;
					break;
				
				case 57:
					*uParam2 = 2588;
					break;
				
				case 58:
					*uParam2 = 2589;
					break;
				
				case 59:
					*uParam2 = 2590;
					break;
				
				case 60:
					*uParam2 = 2591;
					break;
				
				case 61:
					*uParam2 = 2592;
					break;
				
				case 62:
					*uParam2 = 3184;
					break;
				
				case 63:
					*uParam2 = 3185;
					break;
				
				case 64:
					*uParam2 = 3186;
					break;
				
				case 65:
					*uParam2 = 3187;
					break;
				
				case 66:
					*uParam2 = 3188;
					break;
				
				case 67:
					*uParam2 = 3189;
					break;
				
				case 68:
					*uParam2 = 3661;
					break;
				
				case 69:
					*uParam2 = 3662;
					break;
				
				case 70:
					*uParam2 = 3663;
					break;
				
				case 71:
					*uParam2 = 3664;
					break;
				
				case 72:
					*uParam2 = 3665;
					break;
				
				case 73:
					*uParam2 = 3666;
					break;
				
				case 74:
					*uParam2 = 3667;
					break;
				
				case 75:
					*uParam2 = 3668;
					break;
				
				case 76:
					*uParam2 = 3669;
					break;
				
				case 77:
					*uParam2 = 3670;
					break;
				
				case 78:
					*uParam2 = 3772;
					break;
				
				case 79:
					*uParam2 = 3773;
					break;
				
				case 80:
					*uParam2 = 3774;
					break;
				
				case 81:
					*uParam2 = 3775;
					break;
				
				case 82:
					*uParam2 = 3776;
					break;
				
				case 83:
					*uParam2 = 3777;
					break;
				
				case 84:
					*uParam2 = 3778;
					break;
				
				case 85:
					*uParam2 = 3779;
					break;
				
				case 86:
					*uParam2 = 3877;
					break;
				
				case 87:
					*uParam2 = 3878;
					break;
				
				case 88:
					*uParam2 = 3879;
					break;
				
				case 89:
					*uParam2 = 5321;
					break;
				
				case 90:
					*uParam2 = 5322;
					break;
				
				case 91:
					*uParam2 = 5323;
					break;
				
				case 92:
					*uParam2 = 5324;
					break;
				
				case 93:
					*uParam2 = 5325;
					break;
				
				case 94:
					*uParam2 = 5326;
					break;
				
				case 95:
					*uParam2 = 5327;
					break;
				
				case 96:
					*uParam2 = 5328;
					break;
				
				case 97:
					*uParam2 = 5329;
					break;
				
				case 98:
					*uParam2 = 5330;
					break;
				
				case 99:
					*uParam2 = 5331;
					break;
				
				case 100:
					*uParam2 = 5332;
					break;
				
				default:
					break;
			}
			break;
	}
	*uParam3 = (iVar0 % 32);
	return *uParam2 != 6022;
}

bool func_636(int iParam0)//Position - 0x4D29A
{
	if (!gameplay::is_bit_set(Global_69518[1 /*14*/].f_6, 0))
	{
		return false;
	}
	if (iParam0 == 1)
	{
		if (!gameplay::is_bit_set(Global_69518[1 /*14*/].f_6, 1))
		{
			return false;
		}
		if (!gameplay::is_bit_set(Global_69518[1 /*14*/].f_6, 2))
		{
			return false;
		}
	}
	return true;
}

void func_637(int iParam0, int iParam1, int iParam2)//Position - 0x4D2EB
{
	int iVar0;
	
	iVar0 = entity::get_entity_model(iParam0);
	if (iParam1 == iParam1)
	{
	}
	if (iParam2 == iParam2)
	{
	}
	switch (iVar0)
	{
		case joaat("mp_m_freemode_01"):
			break;
		
		case joaat("mp_f_freemode_01"):
			break;
	}
}

struct<14> func_638(int iParam0, int iParam1, int iParam2)//Position - 0x4D322
{
	func_679();
	if (iParam0 == joaat("mp_m_freemode_01"))
	{
		func_663(iParam1, iParam2);
	}
	else if (iParam0 == joaat("mp_f_freemode_01"))
	{
		func_639(iParam1, iParam2);
	}
	return Global_69518[0 /*14*/];
}

void func_639(int iParam0, int iParam1)//Position - 0x4D35F
{
	switch (iParam0)
	{
		case 2:
			func_662(iParam1);
			break;
		
		case 11:
			func_661(iParam1);
			break;
		
		case 8:
			func_660(iParam1);
			break;
		
		case 9:
			func_659(iParam1);
			break;
		
		case 3:
			func_658(iParam1);
			break;
		
		case 4:
			func_657(iParam1);
			break;
		
		case 6:
			func_656(iParam1);
			break;
		
		case 1:
			func_655(iParam1);
			break;
		
		case 7:
			func_654(iParam1);
			break;
		
		case 10:
			func_653(iParam1);
			break;
		
		case 14:
			func_652(iParam1);
			break;
		
		case 12:
			func_651(iParam1);
			break;
		
		case 5:
			func_650(iParam1);
			break;
		
		case 0:
			func_648(iParam1);
			break;
		
		case 13:
			func_640(iParam1);
			break;
	}
}

void func_640(int iParam0)//Position - 0x4D44F
{
	int iVar0;
	int iVar1;
	char* sVar2;
	int iVar6;
	int iVar7;
	int iVar8;
	int iVar9;
	int iVar10;
	
	iVar0 = false;
	iVar1 = 10;
	iVar6 = 0;
	iVar7 = 0;
	iVar8 = -1;
	iVar9 = 2;
	iVar10 = 13;
	switch (iParam0)
	{
		case 31:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 0:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 1:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 2:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 3:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 4:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 5:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 6:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 7:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 8:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 9:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 10:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 11:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 12:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 13:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 14:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 15:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 16:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 17:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 18:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 19:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 20:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 21:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 22:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 23:
			iVar6 = 0;
			iVar7 = 0;
			break;
	}
	func_641(&(Global_69518[0 /*14*/]), iVar10, iParam0, &sVar2, iVar6, iVar7, iVar1, iVar0, iVar8, iVar9, 0);
}

void func_641(var uParam0, int iParam1, int iParam2, char* sParam3, int iParam4, int iParam5, int iParam6, int iParam7, int iParam8, int iParam9, int iParam10)//Position - 0x4D60A
{
	int iVar0;
	int iVar1;
	
	uParam0->f_6 = 0;
	*uParam0 = iParam9;
	uParam0->f_1 = (iParam2 % 32);
	uParam0->f_2 = (iParam2 / 32);
	uParam0->f_3 = iParam4;
	uParam0->f_4 = iParam5;
	uParam0->f_7 = iParam6;
	StringCopy(&(uParam0->f_8), sParam3, 16);
	uParam0->f_13 = iParam8;
	uParam0->f_12 = func_647(iParam8);
	if ((uParam0->f_2 >= 10 && uParam0->f_5 >= 0) && uParam0->f_5 < 3)
	{
		if (!iParam10)
		{
		}
		uParam0->f_2 = 0;
	}
	if (gameplay::get_hash_key(sParam3) != gameplay::get_hash_key("NO_LABEL"))
	{
	}
	if (iParam7)
	{
		gameplay::set_bit(&(uParam0->f_6), 3);
	}
	if (iParam10)
	{
		gameplay::set_bit(&(uParam0->f_6), 0);
		if (uParam0->f_5 >= 0 && uParam0->f_5 < 3)
		{
			gameplay::set_bit(&(uParam0->f_6), 5);
		}
		gameplay::set_bit(&(uParam0->f_6), 1);
		gameplay::set_bit(&(uParam0->f_6), 2);
		gameplay::set_bit(&(uParam0->f_6), 6);
		if (func_646(14))
		{
			return;
		}
		if (iParam1 == 1)
		{
			if (dlc1::_0x341DE7ED1D2A1BFD(Global_2621444, 1827025211, 0))
			{
				gameplay::set_bit(&(uParam0->f_6), 7);
			}
		}
		if (iParam1 == 12)
		{
			if (!func_645(Global_2621444, 1, 1, 1, -1))
			{
				gameplay::clear_bit(&(uParam0->f_6), 2);
			}
			if (!func_645(Global_2621444, 2, 1, 1, -1))
			{
				gameplay::set_bit(&(uParam0->f_6), 4);
			}
		}
		else if (iParam1 == 13)
		{
		}
		else if (iParam1 == 14)
		{
			if (!func_645(Global_2621444, 1, 1, 1, -1))
			{
				gameplay::clear_bit(&(uParam0->f_6), 2);
			}
			if (!func_645(Global_2621444, 2, 1, 1, -1))
			{
				gameplay::set_bit(&(uParam0->f_6), 4);
			}
		}
		else
		{
			if (!func_645(Global_2621444, 1, 1, 1, -1))
			{
				gameplay::clear_bit(&(uParam0->f_6), 2);
			}
			if (!func_645(Global_2621444, 2, 1, 1, -1))
			{
				gameplay::set_bit(&(uParam0->f_6), 4);
			}
		}
	}
	else if (uParam0->f_5 >= 0 && uParam0->f_5 < 3)
	{
		gameplay::set_bit(&(uParam0->f_6), 0);
		gameplay::set_bit(&(uParam0->f_6), 5);
		if (func_644(iParam1, uParam0->f_5, uParam0->f_2, 0, uParam0->f_1, 0, 0))
		{
			gameplay::set_bit(&(uParam0->f_6), 1);
		}
		if (func_644(iParam1, uParam0->f_5, uParam0->f_2, 1, uParam0->f_1, 0, 0))
		{
			gameplay::set_bit(&(uParam0->f_6), 2);
		}
		if (!func_644(iParam1, uParam0->f_5, uParam0->f_2, 2, uParam0->f_1, 0, 0))
		{
			gameplay::set_bit(&(uParam0->f_6), 4);
		}
	}
	else
	{
		gameplay::set_bit(&(uParam0->f_6), 0);
		if ((((((((((iParam1 == 11 || iParam1 == 4) || iParam1 == 6) || iParam1 == 1) || iParam1 == 14) || iParam1 == 2) || iParam1 == 8) || iParam1 == 9) || iParam1 == 10) || iParam1 == 7) || iParam1 == 12)
		{
			if (func_646(14))
			{
				return;
			}
			iVar0 = func_241(func_643(iParam1, uParam0->f_2), Global_69516, 0);
			if (gameplay::is_bit_set(iVar0, uParam0->f_1))
			{
				gameplay::set_bit(&(uParam0->f_6), 1);
			}
			iVar0 = func_241(func_642(iParam1, uParam0->f_2), Global_69516, 0);
			if (gameplay::is_bit_set(iVar0, uParam0->f_1))
			{
				gameplay::set_bit(&(uParam0->f_6), 2);
			}
			if (func_633(iParam1, uParam0->f_2, &iVar1))
			{
				iVar0 = func_241(iVar1, Global_69516, 0);
				if (!gameplay::is_bit_set(iVar0, uParam0->f_1))
				{
					gameplay::set_bit(&(uParam0->f_6), 4);
				}
			}
		}
		else
		{
			gameplay::set_bit(&(uParam0->f_6), 1);
			gameplay::set_bit(&(uParam0->f_6), 2);
		}
	}
	if (iParam1 == 14)
	{
		if (iParam4 == -1)
		{
			gameplay::set_bit(&(uParam0->f_6), 1);
			gameplay::set_bit(&(uParam0->f_6), 2);
		}
	}
}

int func_642(int iParam0, int iParam1)//Position - 0x4D99B
{
	switch (iParam1)
	{
		case 0:
			switch (iParam0)
			{
				case 2:
					return 922;
					break;
				
				case 3:
					return 1409;
					break;
				
				case 4:
					return 938;
					break;
				
				case 6:
					return 946;
					break;
				
				case 8:
					return 1410;
					break;
				
				case 9:
					return 1418;
					break;
				
				case 10:
					return 1420;
					break;
				
				case 1:
					return 954;
					break;
				
				case 7:
					return 1421;
					break;
				
				case 11:
					return 930;
					break;
				
				case 14:
					return 962;
					break;
				
				case 12:
					return 973;
					break;
			}
			break;
		
		case 1:
			switch (iParam0)
			{
				case 2:
					return 923;
					break;
				
				case 4:
					return 939;
					break;
				
				case 6:
					return 947;
					break;
				
				case 8:
					return 1411;
					break;
				
				case 9:
					return 1419;
					break;
				
				case 7:
					return 1422;
					break;
				
				case 11:
					return 931;
					break;
				
				case 14:
					return 963;
					break;
			}
			break;
		
		case 2:
			switch (iParam0)
			{
				case 2:
					return 924;
					break;
				
				case 4:
					return 940;
					break;
				
				case 6:
					return 948;
					break;
				
				case 8:
					return 1412;
					break;
				
				case 7:
					return 1423;
					break;
				
				case 11:
					return 932;
					break;
				
				case 14:
					return 964;
					break;
			}
			break;
		
		case 3:
			switch (iParam0)
			{
				case 4:
					return 941;
					break;
				
				case 6:
					return 949;
					break;
				
				case 8:
					return 1413;
					break;
				
				case 11:
					return 933;
					break;
				
				case 14:
					return 965;
					break;
			}
			break;
		
		case 4:
			switch (iParam0)
			{
				case 4:
					return 942;
					break;
				
				case 6:
					return 950;
					break;
				
				case 8:
					return 1414;
					break;
				
				case 11:
					return 934;
					break;
				
				case 14:
					return 966;
					break;
			}
			break;
		
		case 5:
			switch (iParam0)
			{
				case 4:
					return 943;
					break;
				
				case 6:
					return 951;
					break;
				
				case 8:
					return 1415;
					break;
				
				case 11:
					return 935;
					break;
				
				case 14:
					return 967;
					break;
			}
			break;
		
		case 6:
			switch (iParam0)
			{
				case 4:
					return 944;
					break;
				
				case 6:
					return 952;
					break;
				
				case 8:
					return 1416;
					break;
				
				case 11:
					return 936;
					break;
				
				case 14:
					return 968;
					break;
			}
			break;
		
		case 7:
			switch (iParam0)
			{
				case 4:
					return 945;
					break;
				
				case 6:
					return 953;
					break;
				
				case 8:
					return 1417;
					break;
				
				case 11:
					return 937;
					break;
				
				case 14:
					return 969;
					break;
			}
			break;
		
		case 8:
			switch (iParam0)
			{
				case 14:
					return 970;
					break;
			}
			break;
		
		case 9:
			switch (iParam0)
			{
				case 14:
					return 971;
					break;
			}
			break;
		
		case 10:
			switch (iParam0)
			{
				case 14:
					return 972;
					break;
			}
			break;
	}
	return 930;
}

int func_643(int iParam0, int iParam1)//Position - 0x4DD96
{
	switch (iParam1)
	{
		case 0:
			switch (iParam0)
			{
				case 2:
					return 870;
					break;
				
				case 3:
					return 1394;
					break;
				
				case 4:
					return 886;
					break;
				
				case 6:
					return 894;
					break;
				
				case 8:
					return 1395;
					break;
				
				case 9:
					return 1403;
					break;
				
				case 10:
					return 1405;
					break;
				
				case 1:
					return 902;
					break;
				
				case 7:
					return 1406;
					break;
				
				case 11:
					return 878;
					break;
				
				case 14:
					return 910;
					break;
				
				case 12:
					return 921;
					break;
			}
			break;
		
		case 1:
			switch (iParam0)
			{
				case 2:
					return 871;
					break;
				
				case 4:
					return 887;
					break;
				
				case 6:
					return 895;
					break;
				
				case 8:
					return 1396;
					break;
				
				case 9:
					return 1404;
					break;
				
				case 7:
					return 1407;
					break;
				
				case 11:
					return 879;
					break;
				
				case 14:
					return 911;
					break;
			}
			break;
		
		case 2:
			switch (iParam0)
			{
				case 2:
					return 872;
					break;
				
				case 4:
					return 888;
					break;
				
				case 6:
					return 896;
					break;
				
				case 8:
					return 1397;
					break;
				
				case 7:
					return 1408;
					break;
				
				case 11:
					return 880;
					break;
				
				case 14:
					return 912;
					break;
			}
			break;
		
		case 3:
			switch (iParam0)
			{
				case 4:
					return 889;
					break;
				
				case 6:
					return 897;
					break;
				
				case 8:
					return 1398;
					break;
				
				case 11:
					return 881;
					break;
				
				case 14:
					return 913;
					break;
			}
			break;
		
		case 4:
			switch (iParam0)
			{
				case 4:
					return 890;
					break;
				
				case 6:
					return 898;
					break;
				
				case 8:
					return 1399;
					break;
				
				case 11:
					return 882;
					break;
				
				case 14:
					return 914;
					break;
			}
			break;
		
		case 5:
			switch (iParam0)
			{
				case 4:
					return 891;
					break;
				
				case 6:
					return 899;
					break;
				
				case 8:
					return 1400;
					break;
				
				case 11:
					return 883;
					break;
				
				case 14:
					return 915;
					break;
			}
			break;
		
		case 6:
			switch (iParam0)
			{
				case 4:
					return 892;
					break;
				
				case 6:
					return 900;
					break;
				
				case 8:
					return 1401;
					break;
				
				case 11:
					return 884;
					break;
				
				case 14:
					return 916;
					break;
			}
			break;
		
		case 7:
			switch (iParam0)
			{
				case 4:
					return 893;
					break;
				
				case 6:
					return 901;
					break;
				
				case 8:
					return 1402;
					break;
				
				case 11:
					return 885;
					break;
				
				case 14:
					return 917;
					break;
			}
			break;
		
		case 8:
			switch (iParam0)
			{
				case 14:
					return 918;
					break;
			}
			break;
		
		case 9:
			switch (iParam0)
			{
				case 14:
					return 919;
					break;
			}
			break;
		
		case 10:
			switch (iParam0)
			{
				case 14:
					return 920;
					break;
			}
			break;
	}
	return 878;
}

int func_644(int iParam0, var uParam1, int iParam2, int iParam3, int iParam4, int iParam5, int iParam6)//Position - 0x4E191
{
	if (iParam0 == 0)
	{
		if (iParam5 == 1)
		{
			gameplay::set_bit(&(Global_101652.f_2079[uParam1 /*164*/][iParam3]), iParam4);
		}
		if (iParam6 == 1)
		{
			gameplay::clear_bit(&(Global_101652.f_2079[uParam1 /*164*/][iParam3]), iParam4);
		}
		return gameplay::is_bit_set(Global_101652.f_2079[uParam1 /*164*/][iParam3], iParam4);
	}
	else if (iParam0 == 1)
	{
		if (iParam5 == 1)
		{
			gameplay::set_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_4[iParam3]), iParam4);
		}
		if (iParam6 == 1)
		{
			gameplay::clear_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_4[iParam3]), iParam4);
		}
		return gameplay::is_bit_set(Global_101652.f_2079[uParam1 /*164*/].f_4[iParam3], iParam4);
	}
	else if (iParam0 == 2)
	{
		if (iParam5 == 1)
		{
			gameplay::set_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_8[iParam3]), iParam4);
		}
		if (iParam6 == 1)
		{
			gameplay::clear_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_8[iParam3]), iParam4);
		}
		return gameplay::is_bit_set(Global_101652.f_2079[uParam1 /*164*/].f_8[iParam3], iParam4);
	}
	else if (iParam0 == 3)
	{
		if (iParam2 == 0)
		{
			if (iParam5 == 1)
			{
				gameplay::set_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_12[iParam3]), iParam4);
			}
			if (iParam6 == 1)
			{
				gameplay::clear_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_12[iParam3]), iParam4);
			}
			return gameplay::is_bit_set(Global_101652.f_2079[uParam1 /*164*/].f_12[iParam3], iParam4);
		}
		else if (iParam2 == 1)
		{
			if (iParam5 == 1)
			{
				gameplay::set_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_16[iParam3]), iParam4);
			}
			if (iParam6 == 1)
			{
				gameplay::clear_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_16[iParam3]), iParam4);
			}
			return gameplay::is_bit_set(Global_101652.f_2079[uParam1 /*164*/].f_16[iParam3], iParam4);
		}
		else if (iParam2 == 2)
		{
			if (iParam5 == 1)
			{
				gameplay::set_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_20[iParam3]), iParam4);
			}
			if (iParam6 == 1)
			{
				gameplay::clear_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_20[iParam3]), iParam4);
			}
			return gameplay::is_bit_set(Global_101652.f_2079[uParam1 /*164*/].f_20[iParam3], iParam4);
		}
		else if (iParam2 == 3)
		{
			if (iParam5 == 1)
			{
				gameplay::set_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_24[iParam3]), iParam4);
			}
			if (iParam6 == 1)
			{
				gameplay::clear_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_24[iParam3]), iParam4);
			}
			return gameplay::is_bit_set(Global_101652.f_2079[uParam1 /*164*/].f_24[iParam3], iParam4);
		}
		else if (iParam2 == 4)
		{
			if (iParam5 == 1)
			{
				gameplay::set_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_28[iParam3]), iParam4);
			}
			if (iParam6 == 1)
			{
				gameplay::clear_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_28[iParam3]), iParam4);
			}
			return gameplay::is_bit_set(Global_101652.f_2079[uParam1 /*164*/].f_28[iParam3], iParam4);
		}
		else if (iParam2 == 5)
		{
			if (iParam5 == 1)
			{
				gameplay::set_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_32[iParam3]), iParam4);
			}
			if (iParam6 == 1)
			{
				gameplay::clear_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_32[iParam3]), iParam4);
			}
			return gameplay::is_bit_set(Global_101652.f_2079[uParam1 /*164*/].f_32[iParam3], iParam4);
		}
		else if (iParam2 == 6)
		{
			if (iParam5 == 1)
			{
				gameplay::set_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_36[iParam3]), iParam4);
			}
			if (iParam6 == 1)
			{
				gameplay::clear_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_36[iParam3]), iParam4);
			}
			return gameplay::is_bit_set(Global_101652.f_2079[uParam1 /*164*/].f_36[iParam3], iParam4);
		}
		else if (iParam2 == 7)
		{
			if (iParam5 == 1)
			{
				gameplay::set_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_40[iParam3]), iParam4);
			}
			if (iParam6 == 1)
			{
				gameplay::clear_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_40[iParam3]), iParam4);
			}
			return gameplay::is_bit_set(Global_101652.f_2079[uParam1 /*164*/].f_40[iParam3], iParam4);
		}
		else if (iParam2 == 8)
		{
			if (iParam5 == 1)
			{
				gameplay::set_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_44[iParam3]), iParam4);
			}
			if (iParam6 == 1)
			{
				gameplay::clear_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_44[iParam3]), iParam4);
			}
			return gameplay::is_bit_set(Global_101652.f_2079[uParam1 /*164*/].f_44[iParam3], iParam4);
		}
		else if (iParam2 == 9)
		{
			if (iParam5 == 1)
			{
				gameplay::set_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_48[iParam3]), iParam4);
			}
			if (iParam6 == 1)
			{
				gameplay::clear_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_48[iParam3]), iParam4);
			}
			return gameplay::is_bit_set(Global_101652.f_2079[uParam1 /*164*/].f_48[iParam3], iParam4);
		}
	}
	else if (iParam0 == 4)
	{
		if (iParam2 == 0)
		{
			if (iParam5 == 1)
			{
				gameplay::set_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_52[iParam3]), iParam4);
			}
			if (iParam6 == 1)
			{
				gameplay::clear_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_52[iParam3]), iParam4);
			}
			return gameplay::is_bit_set(Global_101652.f_2079[uParam1 /*164*/].f_52[iParam3], iParam4);
		}
		else if (iParam2 == 1)
		{
			if (iParam5 == 1)
			{
				gameplay::set_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_56[iParam3]), iParam4);
			}
			if (iParam6 == 1)
			{
				gameplay::clear_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_56[iParam3]), iParam4);
			}
			return gameplay::is_bit_set(Global_101652.f_2079[uParam1 /*164*/].f_56[iParam3], iParam4);
		}
		else if (iParam2 == 2)
		{
			if (iParam5 == 1)
			{
				gameplay::set_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_60[iParam3]), iParam4);
			}
			if (iParam6 == 1)
			{
				gameplay::clear_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_60[iParam3]), iParam4);
			}
			return gameplay::is_bit_set(Global_101652.f_2079[uParam1 /*164*/].f_60[iParam3], iParam4);
		}
		else if (iParam2 == 3)
		{
			if (iParam5 == 1)
			{
				gameplay::set_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_64[iParam3]), iParam4);
			}
			if (iParam6 == 1)
			{
				gameplay::clear_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_64[iParam3]), iParam4);
			}
			return gameplay::is_bit_set(Global_101652.f_2079[uParam1 /*164*/].f_64[iParam3], iParam4);
		}
	}
	else if (iParam0 == 5)
	{
		if (iParam5 == 1)
		{
			gameplay::set_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_68[iParam3]), iParam4);
		}
		if (iParam6 == 1)
		{
			gameplay::clear_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_68[iParam3]), iParam4);
		}
		return gameplay::is_bit_set(Global_101652.f_2079[uParam1 /*164*/].f_68[iParam3], iParam4);
	}
	else if (iParam0 == 6)
	{
		if (iParam2 == 0)
		{
			if (iParam5 == 1)
			{
				gameplay::set_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_72[iParam3]), iParam4);
			}
			if (iParam6 == 1)
			{
				gameplay::clear_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_72[iParam3]), iParam4);
			}
			return gameplay::is_bit_set(Global_101652.f_2079[uParam1 /*164*/].f_72[iParam3], iParam4);
		}
		else if (iParam2 == 1)
		{
			if (iParam5 == 1)
			{
				gameplay::set_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_76[iParam3]), iParam4);
			}
			if (iParam6 == 1)
			{
				gameplay::clear_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_76[iParam3]), iParam4);
			}
			return gameplay::is_bit_set(Global_101652.f_2079[uParam1 /*164*/].f_76[iParam3], iParam4);
		}
		else if (iParam2 == 2)
		{
			if (iParam5 == 1)
			{
				gameplay::set_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_80[iParam3]), iParam4);
			}
			if (iParam6 == 1)
			{
				gameplay::clear_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_80[iParam3]), iParam4);
			}
			return gameplay::is_bit_set(Global_101652.f_2079[uParam1 /*164*/].f_80[iParam3], iParam4);
		}
		else if (iParam2 == 3)
		{
			if (iParam5 == 1)
			{
				gameplay::set_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_84[iParam3]), iParam4);
			}
			if (iParam6 == 1)
			{
				gameplay::clear_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_84[iParam3]), iParam4);
			}
			return gameplay::is_bit_set(Global_101652.f_2079[uParam1 /*164*/].f_84[iParam3], iParam4);
		}
		else if (iParam2 == 4)
		{
			if (iParam5 == 1)
			{
				gameplay::set_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_88[iParam3]), iParam4);
			}
			if (iParam6 == 1)
			{
				gameplay::clear_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_88[iParam3]), iParam4);
			}
			return gameplay::is_bit_set(Global_101652.f_2079[uParam1 /*164*/].f_88[iParam3], iParam4);
		}
	}
	else if (iParam0 == 7)
	{
		if (iParam5 == 1)
		{
			gameplay::set_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_92[iParam3]), iParam4);
		}
		if (iParam6 == 1)
		{
			gameplay::clear_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_92[iParam3]), iParam4);
		}
		return gameplay::is_bit_set(Global_101652.f_2079[uParam1 /*164*/].f_92[iParam3], iParam4);
	}
	else if (iParam0 == 8)
	{
		if (iParam2 == 0)
		{
			if (iParam5 == 1)
			{
				gameplay::set_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_96[iParam3]), iParam4);
			}
			if (iParam6 == 1)
			{
				gameplay::clear_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_96[iParam3]), iParam4);
			}
			return gameplay::is_bit_set(Global_101652.f_2079[uParam1 /*164*/].f_96[iParam3], iParam4);
		}
		else if (iParam2 == 1)
		{
			if (iParam5 == 1)
			{
				gameplay::set_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_100[iParam3]), iParam4);
			}
			if (iParam6 == 1)
			{
				gameplay::clear_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_100[iParam3]), iParam4);
			}
			return gameplay::is_bit_set(Global_101652.f_2079[uParam1 /*164*/].f_100[iParam3], iParam4);
		}
		else if (iParam2 == 2)
		{
			if (iParam5 == 1)
			{
				gameplay::set_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_104[iParam3]), iParam4);
			}
			if (iParam6 == 1)
			{
				gameplay::clear_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_104[iParam3]), iParam4);
			}
			return gameplay::is_bit_set(Global_101652.f_2079[uParam1 /*164*/].f_104[iParam3], iParam4);
		}
	}
	else if (iParam0 == 9)
	{
		if (iParam5 == 1)
		{
			gameplay::set_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_108[iParam3]), iParam4);
		}
		if (iParam6 == 1)
		{
			gameplay::clear_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_108[iParam3]), iParam4);
		}
		return gameplay::is_bit_set(Global_101652.f_2079[uParam1 /*164*/].f_108[iParam3], iParam4);
	}
	else if (iParam0 == 10)
	{
		if (iParam2 == 0)
		{
			if (iParam5 == 1)
			{
				gameplay::set_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_112[iParam3]), iParam4);
			}
			if (iParam6 == 1)
			{
				gameplay::clear_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_112[iParam3]), iParam4);
			}
			return gameplay::is_bit_set(Global_101652.f_2079[uParam1 /*164*/].f_112[iParam3], iParam4);
		}
		else if (iParam2 == 1)
		{
			if (iParam5 == 1)
			{
				gameplay::set_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_116[iParam3]), iParam4);
			}
			if (iParam6 == 1)
			{
				gameplay::clear_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_116[iParam3]), iParam4);
			}
			return gameplay::is_bit_set(Global_101652.f_2079[uParam1 /*164*/].f_116[iParam3], iParam4);
		}
	}
	else if (iParam0 == 11)
	{
		if (iParam2 == 0)
		{
			if (iParam5 == 1)
			{
				gameplay::set_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_120[iParam3]), iParam4);
			}
			if (iParam6 == 1)
			{
				gameplay::clear_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_120[iParam3]), iParam4);
			}
			return gameplay::is_bit_set(Global_101652.f_2079[uParam1 /*164*/].f_120[iParam3], iParam4);
		}
		else if (iParam2 == 1)
		{
			if (iParam5 == 1)
			{
				gameplay::set_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_124[iParam3]), iParam4);
			}
			if (iParam6 == 1)
			{
				gameplay::clear_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_124[iParam3]), iParam4);
			}
			return gameplay::is_bit_set(Global_101652.f_2079[uParam1 /*164*/].f_124[iParam3], iParam4);
		}
	}
	else if (iParam0 == 12)
	{
		if (iParam2 == 0)
		{
			if (iParam5 == 1)
			{
				gameplay::set_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_128[iParam3]), iParam4);
			}
			if (iParam6 == 1)
			{
				gameplay::clear_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_128[iParam3]), iParam4);
			}
			return gameplay::is_bit_set(Global_101652.f_2079[uParam1 /*164*/].f_128[iParam3], iParam4);
		}
		else if (iParam2 == 1)
		{
			if (iParam5 == 1)
			{
				gameplay::set_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_132[iParam3]), iParam4);
			}
			if (iParam6 == 1)
			{
				gameplay::clear_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_132[iParam3]), iParam4);
			}
			return gameplay::is_bit_set(Global_101652.f_2079[uParam1 /*164*/].f_132[iParam3], iParam4);
		}
	}
	else if (iParam0 == 13)
	{
		if (iParam5 == 1)
		{
			gameplay::set_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_136[iParam3]), iParam4);
		}
		if (iParam6 == 1)
		{
			gameplay::clear_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_136[iParam3]), iParam4);
		}
		return gameplay::is_bit_set(Global_101652.f_2079[uParam1 /*164*/].f_136[iParam3], iParam4);
	}
	else if (iParam0 == 14)
	{
		if (iParam2 == 0)
		{
			if (iParam5 == 1)
			{
				gameplay::set_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_140[iParam3]), iParam4);
			}
			if (iParam6 == 1)
			{
				gameplay::clear_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_140[iParam3]), iParam4);
			}
			return gameplay::is_bit_set(Global_101652.f_2079[uParam1 /*164*/].f_140[iParam3], iParam4);
		}
		else if (iParam2 == 1)
		{
			if (iParam5 == 1)
			{
				gameplay::set_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_144[iParam3]), iParam4);
			}
			if (iParam6 == 1)
			{
				gameplay::clear_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_144[iParam3]), iParam4);
			}
			return gameplay::is_bit_set(Global_101652.f_2079[uParam1 /*164*/].f_144[iParam3], iParam4);
		}
		else if (iParam2 == 2)
		{
			if (iParam5 == 1)
			{
				gameplay::set_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_148[iParam3]), iParam4);
			}
			if (iParam6 == 1)
			{
				gameplay::clear_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_148[iParam3]), iParam4);
			}
			return gameplay::is_bit_set(Global_101652.f_2079[uParam1 /*164*/].f_148[iParam3], iParam4);
		}
		else if (iParam2 == 3)
		{
			if (iParam5 == 1)
			{
				gameplay::set_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_152[iParam3]), iParam4);
			}
			if (iParam6 == 1)
			{
				gameplay::clear_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_152[iParam3]), iParam4);
			}
			return gameplay::is_bit_set(Global_101652.f_2079[uParam1 /*164*/].f_152[iParam3], iParam4);
		}
		else if (iParam2 == 4)
		{
			if (iParam5 == 1)
			{
				gameplay::set_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_156[iParam3]), iParam4);
			}
			if (iParam6 == 1)
			{
				gameplay::clear_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_156[iParam3]), iParam4);
			}
			return gameplay::is_bit_set(Global_101652.f_2079[uParam1 /*164*/].f_156[iParam3], iParam4);
		}
		else if (iParam2 == 5)
		{
			if (iParam5 == 1)
			{
				gameplay::set_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_160[iParam3]), iParam4);
			}
			if (iParam6 == 1)
			{
				gameplay::clear_bit(&(Global_101652.f_2079[uParam1 /*164*/].f_160[iParam3]), iParam4);
			}
			return gameplay::is_bit_set(Global_101652.f_2079[uParam1 /*164*/].f_160[iParam3], iParam4);
		}
	}
	return false;
}

int func_645(int iParam0, int iParam1, int iParam2, int iParam3, int iParam4)//Position - 0x4F0AF
{
	int iVar0;
	int iVar1;
	int iVar2;
	int iVar3;
	
	iVar0 = Global_69516;
	if (iParam4 != -1)
	{
		iVar0 = iParam4;
	}
	if (func_635(iParam0, iParam1, &iVar2, &iVar1, iParam2, iParam3))
	{
		iVar3 = func_241(iVar2, iVar0, 0);
		return gameplay::is_bit_set(iVar3, iVar1);
	}
	return false;
}

int func_646(int iParam0)//Position - 0x4F0F1
{
	return Global_35777 == iParam0;
}

int func_647(int iParam0)//Position - 0x4F0FF
{
	switch (iParam0)
	{
		case -1:
			return 0;
			break;
		
		case 0:
			return 0;
			break;
		
		case 1:
			return 1;
			break;
		
		case 2:
			return 2;
			break;
		
		case 3:
			return 3;
			break;
		
		case 4:
			return 4;
			break;
		
		case 5:
			return 5;
			break;
		
		case 6:
			return 6;
			break;
		
		case 7:
			return 7;
			break;
		
		case 8:
			return 8;
			break;
		
		case 9:
			return 0;
			break;
		
		case 10:
			return 1;
			break;
		
		case 11:
			return 0;
			break;
		
		case 12:
			return 0;
			break;
		
		case 13:
			return 0;
			break;
	}
	return 0;
}

void func_648(int iParam0)//Position - 0x4F1D3
{
	int iVar0;
	
	iVar0 = 0;
	Global_69518[0 /*14*/].f_5 = 4;
	func_649(iVar0, iParam0, 0);
}

void func_649(int iParam0, int iParam1, int iParam2)//Position - 0x4F1F1
{
	int iVar0;
	int iVar1;
	struct<8> Var2;
	int iVar17;
	int iVar18;
	int iVar19;
	struct<10> Var20;
	int iVar37;
	int iVar38;
	int iVar39;
	int iVar40;
	struct<10> Var41;
	int iVar58;
	int iVar59;
	int iVar60;
	
	iVar0 = (iParam1 - iParam2);
	iVar0 = iVar0;
	if (iVar0 < 0)
	{
		return;
	}
	iVar1 = Global_69518[0 /*14*/].f_5;
	if (iParam0 == 12)
	{
		iVar18 = 0;
		iVar19 = dlc1::_0xF3FBE2D50A6A8C28(iVar1, 0);
		iVar17 = 0;
		while (iVar17 < iVar19)
		{
			dlc1::get_shop_ped_query_outfit(iVar17, &Var2);
			if (!dlc1::_is_dlc_data_empty(Var2))
			{
				if (iVar18 == (iParam1 - iParam2))
				{
					Global_2621444 = Var2.f_1;
					Global_2621445 = Var2;
					func_641(&(Global_69518[0 /*14*/]), iParam0, iParam1, &(Var2.f_7), 0, 0, Var2.f_2, 0, -1, 2, 1);
					return;
				}
				iVar18++;
			}
			iVar17++;
		}
	}
	else if (iParam0 == 13)
	{
		func_641(&(Global_69518[0 /*14*/]), iParam0, iParam1, "NO_LABEL", 0, 0, 0, 1, -1, 2, 1);
	}
	else if (iParam0 == 14)
	{
		dlc1::init_shop_ped_prop(&Var20);
		iVar39 = 0;
		iVar40 = dlc1::_get_num_props_from_outfit(iVar1, 6, -1, 1, -1, -1);
		iVar38 = 0;
		while (iVar38 < iVar40)
		{
			dlc1::get_shop_ped_query_prop(iVar38, &Var20);
			if (!dlc1::_is_dlc_data_empty(Var20))
			{
				if (iVar39 == (iParam1 - iParam2))
				{
					if (Var20.f_6 == 0)
					{
						iVar37 = 9;
					}
					else if (Var20.f_6 == 1)
					{
						iVar37 = 10;
					}
					else if (Var20.f_6 == 2)
					{
						iVar37 = 2;
					}
					else if (Var20.f_6 == 3)
					{
						iVar37 = 3;
					}
					else if (Var20.f_6 == 4)
					{
						iVar37 = 4;
					}
					else if (Var20.f_6 == 5)
					{
						iVar37 = 5;
					}
					else if (Var20.f_6 == 6)
					{
						iVar37 = 6;
					}
					else if (Var20.f_6 == 7)
					{
						iVar37 = 7;
					}
					else if (Var20.f_6 == 8)
					{
						iVar37 = 8;
					}
					else
					{
						iVar37 = -1;
					}
					Global_2621444 = Var20.f_1;
					Global_2621445 = Var20;
					func_641(&(Global_69518[0 /*14*/]), iParam0, iParam1, &(Var20.f_9), Var20.f_3, Var20.f_4, Var20.f_5, dlc1::_0x341DE7ED1D2A1BFD(Var20.f_1, -2050632586, 0), iVar37, 2, Var20.f_1 != 0);
					return;
				}
				iVar39++;
			}
			iVar38++;
		}
	}
	else
	{
		dlc1::init_shop_ped_component(&Var41);
		iVar59 = 0;
		iVar60 = dlc1::_get_num_props_from_outfit(iVar1, 6, -1, 0, -1, func_626(iParam0));
		iVar58 = 0;
		while (iVar58 < iVar60)
		{
			dlc1::get_shop_ped_query_component(iVar58, &Var41);
			if (!dlc1::_is_dlc_data_empty(Var41))
			{
				if (iVar59 == (iParam1 - iParam2))
				{
					Global_2621444 = Var41.f_1;
					Global_2621445 = Var41;
					func_641(&(Global_69518[0 /*14*/]), iParam0, iParam1, &(Var41.f_9), Var41.f_3, Var41.f_4, Var41.f_5, dlc1::_0x341DE7ED1D2A1BFD(Var41.f_1, -2050632586, 0), -1, 2, Var41.f_1 != 0);
					return;
				}
				iVar59++;
			}
			iVar58++;
		}
	}
}

void func_650(int iParam0)//Position - 0x4F46C
{
	int iVar0;
	int iVar1;
	struct<2> Var2;
	int iVar6;
	int iVar7;
	int iVar8;
	int iVar9;
	int iVar10;
	
	iVar0 = false;
	iVar1 = 10;
	iVar6 = 0;
	iVar7 = 0;
	iVar8 = -1;
	iVar9 = 2;
	iVar10 = 5;
	switch (iParam0)
	{
		case 0:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 1:
			iVar6 = 1;
			iVar7 = 0;
			break;
		
		case 2:
			iVar6 = 2;
			iVar7 = 0;
			break;
		
		case 3:
			iVar6 = 3;
			iVar7 = 0;
			break;
		
		case 4:
			iVar6 = 4;
			iVar7 = 0;
			break;
		
		case 5:
			iVar6 = 5;
			iVar7 = 0;
			break;
		
		case 6:
			iVar6 = 6;
			iVar7 = 0;
			break;
		
		case 7:
			iVar6 = 7;
			iVar7 = 0;
			break;
		
		case 8:
			iVar6 = 8;
			iVar7 = 0;
			break;
		
		default:
			Global_69518[0 /*14*/].f_5 = 4;
			func_649(iVar10, iParam0, 9);
			return;
			break;
	}
	StringCopy(&Var2, "HA_FMF_", 16);
	StringIntConCat(&Var2, iVar6, 16);
	StringConCat(&Var2, "_", 16);
	StringIntConCat(&Var2, iVar7, 16);
	func_641(&(Global_69518[0 /*14*/]), iVar10, iParam0, &Var2, iVar6, iVar7, iVar1, iVar0, iVar8, iVar9, 0);
}

void func_651(int iParam0)//Position - 0x4F56D
{
	int iVar0;
	int iVar1;
	struct<2> Var2;
	int iVar6;
	int iVar7;
	int iVar8;
	int iVar9;
	int iVar10;
	
	iVar0 = false;
	iVar1 = 10;
	iVar6 = 0;
	iVar7 = 0;
	iVar8 = -1;
	iVar9 = 2;
	iVar10 = 12;
	switch (iParam0)
	{
		case 0:
			iVar6 = 0;
			iVar7 = 0;
			iVar0 = true;
			break;
		
		case 1:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMF_S1", 16);
			break;
		
		case 2:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMF_S2", 16);
			break;
		
		case 3:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMF_S3", 16);
			break;
		
		case 4:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMF_S4", 16);
			break;
		
		case 5:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMF_S5", 16);
			break;
		
		case 6:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMF_S6", 16);
			break;
		
		case 7:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMF_S7", 16);
			break;
		
		case 8:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMF_S8", 16);
			break;
		
		case 9:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMF_P1", 16);
			break;
		
		case 10:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMF_P2", 16);
			break;
		
		case 11:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMF_P3", 16);
			break;
		
		case 12:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMF_P4", 16);
			break;
		
		case 13:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMF_P5", 16);
			break;
		
		case 14:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMF_P6", 16);
			break;
		
		case 15:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMF_P7", 16);
			break;
		
		case 16:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMF_P8", 16);
			break;
		
		case 17:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMF_P9", 16);
			break;
		
		case 18:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMF_P10", 16);
			break;
		
		case 19:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMF_B1", 16);
			break;
		
		case 20:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMF_B2", 16);
			break;
		
		case 21:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMF_B3", 16);
			break;
		
		case 22:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMF_B4", 16);
			break;
		
		case 23:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMF_B5", 16);
			break;
		
		case 24:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMF_B6", 16);
			break;
		
		case 25:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMF_B7", 16);
			break;
		
		case 26:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMF_B8", 16);
			break;
		
		case 27:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMF_B9", 16);
			break;
		
		default:
			Global_69518[0 /*14*/].f_5 = 4;
			func_649(iVar10, iParam0, 28);
			return;
			break;
	}
	func_641(&(Global_69518[0 /*14*/]), iVar10, iParam0, &Var2, iVar6, iVar7, iVar1, iVar0, iVar8, iVar9, 0);
}

void func_652(int iParam0)//Position - 0x4F84A
{
	int iVar0;
	int iVar1;
	struct<2> Var2;
	int iVar6;
	int iVar7;
	int iVar8;
	int iVar9;
	int iVar10;
	int iVar11;
	int iVar12;
	int iVar13;
	int iVar14;
	int iVar15;
	
	iVar0 = false;
	iVar1 = 10;
	iVar6 = 0;
	iVar7 = 0;
	iVar8 = -1;
	iVar9 = 2;
	iVar10 = 14;
	iVar11 = 0;
	switch (iParam0)
	{
		case 0:
			iVar6 = -1;
			iVar7 = 0;
			iVar1 = 0;
			iVar8 = 0;
			break;
		
		case 1:
			iVar6 = -1;
			iVar7 = 0;
			iVar1 = 0;
			iVar8 = 1;
			break;
		
		case 2:
			iVar6 = -1;
			iVar7 = 0;
			iVar1 = 0;
			iVar8 = 2;
			break;
		
		case 3:
			iVar6 = -1;
			iVar7 = 0;
			iVar1 = 0;
			iVar8 = 3;
			break;
		
		case 4:
			iVar6 = -1;
			iVar7 = 0;
			iVar1 = 0;
			iVar8 = 4;
			break;
		
		case 5:
			iVar6 = -1;
			iVar7 = 0;
			iVar1 = 0;
			iVar8 = 5;
			break;
		
		case 6:
			iVar6 = -1;
			iVar7 = 0;
			iVar1 = 0;
			iVar8 = 6;
			break;
		
		case 7:
			iVar6 = -1;
			iVar7 = 0;
			iVar1 = 0;
			iVar8 = 7;
			break;
		
		case 8:
			iVar6 = -1;
			iVar7 = 0;
			iVar1 = 0;
			iVar8 = 8;
			break;
		
		case 10:
			StringCopy(&Var2, "HT_FMF_0_0", 16);
			iVar6 = 0;
			iVar7 = 0;
			iVar1 = 65;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 11:
			StringCopy(&Var2, "HT_FMF_0_1", 16);
			iVar6 = 0;
			iVar7 = 1;
			iVar1 = 65;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 12:
			StringCopy(&Var2, "HT_FMF_0_2", 16);
			iVar6 = 0;
			iVar7 = 2;
			iVar1 = 85;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 13:
			StringCopy(&Var2, "HT_FMF_0_3", 16);
			iVar6 = 0;
			iVar7 = 3;
			iVar1 = 75;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 14:
			StringCopy(&Var2, "HT_FMF_0_4", 16);
			iVar6 = 0;
			iVar7 = 4;
			iVar1 = 235;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 15:
			StringCopy(&Var2, "HT_FMF_0_5", 16);
			iVar6 = 0;
			iVar7 = 5;
			iVar1 = 80;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 16:
			StringCopy(&Var2, "HT_FMF_0_6", 16);
			iVar6 = 0;
			iVar7 = 6;
			iVar1 = 85;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 17:
			StringCopy(&Var2, "HT_FMF_0_7", 16);
			iVar6 = 0;
			iVar7 = 7;
			iVar1 = 90;
			iVar8 = 0;
			iVar11 = 1;
			break;
	}
	switch (iParam0)
	{
		case 18:
			StringCopy(&Var2, "HT_FMF_1_0", 16);
			iVar6 = 1;
			iVar7 = 0;
			iVar8 = 0;
			break;
		
		case 19:
			StringCopy(&Var2, "HT_FMF_2_0", 16);
			iVar6 = 2;
			iVar7 = 0;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 20:
			StringCopy(&Var2, "HT_FMF_2_1", 16);
			iVar6 = 2;
			iVar7 = 1;
			iVar1 = 5000;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 21:
			StringCopy(&Var2, "HT_FMF_2_2", 16);
			iVar6 = 2;
			iVar7 = 2;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 22:
			StringCopy(&Var2, "HT_FMF_2_3", 16);
			iVar6 = 2;
			iVar7 = 3;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 23:
			StringCopy(&Var2, "HT_FMF_2_4", 16);
			iVar6 = 2;
			iVar7 = 4;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 24:
			StringCopy(&Var2, "HT_FMF_2_5", 16);
			iVar6 = 2;
			iVar7 = 5;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 25:
			StringCopy(&Var2, "HT_FMF_2_6", 16);
			iVar6 = 2;
			iVar7 = 6;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 26:
			StringCopy(&Var2, "HT_FMF_2_7", 16);
			iVar6 = 2;
			iVar7 = 7;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 27:
			StringCopy(&Var2, "HT_FMF_3_0", 16);
			iVar6 = 3;
			iVar7 = 0;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 28:
			StringCopy(&Var2, "HT_FMF_3_1", 16);
			iVar6 = 3;
			iVar7 = 1;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 29:
			StringCopy(&Var2, "HT_FMF_3_2", 16);
			iVar6 = 3;
			iVar7 = 2;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 30:
			StringCopy(&Var2, "HT_FMF_3_3", 16);
			iVar6 = 3;
			iVar7 = 3;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 31:
			StringCopy(&Var2, "HT_FMF_3_4", 16);
			iVar6 = 3;
			iVar7 = 4;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 32:
			StringCopy(&Var2, "HT_FMF_3_5", 16);
			iVar6 = 3;
			iVar7 = 5;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 33:
			StringCopy(&Var2, "HT_FMF_3_6", 16);
			iVar6 = 3;
			iVar7 = 6;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 34:
			StringCopy(&Var2, "HT_FMF_3_7", 16);
			iVar6 = 3;
			iVar7 = 7;
			iVar1 = 120;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 35:
			StringCopy(&Var2, "HT_FMF_4_0", 16);
			iVar6 = 4;
			iVar7 = 0;
			iVar1 = 400;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 36:
			StringCopy(&Var2, "HT_FMF_4_1", 16);
			iVar6 = 4;
			iVar7 = 1;
			iVar1 = 65;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 37:
			StringCopy(&Var2, "HT_FMF_4_2", 16);
			iVar6 = 4;
			iVar7 = 2;
			iVar1 = 375;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 38:
			StringCopy(&Var2, "HT_FMF_4_3", 16);
			iVar6 = 4;
			iVar7 = 3;
			iVar1 = 75;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 39:
			StringCopy(&Var2, "HT_FMF_4_4", 16);
			iVar6 = 4;
			iVar7 = 4;
			iVar1 = 65;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 40:
			StringCopy(&Var2, "HT_FMF_4_5", 16);
			iVar6 = 4;
			iVar7 = 5;
			iVar1 = 65;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 41:
			StringCopy(&Var2, "HT_FMF_4_6", 16);
			iVar6 = 4;
			iVar7 = 6;
			iVar1 = 85;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 42:
			StringCopy(&Var2, "HT_FMF_4_7", 16);
			iVar6 = 4;
			iVar7 = 7;
			iVar1 = 325;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 43:
			StringCopy(&Var2, "HT_FMF_5_0", 16);
			iVar6 = 5;
			iVar7 = 0;
			iVar1 = 35;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 44:
			StringCopy(&Var2, "HT_FMF_5_1", 16);
			iVar6 = 5;
			iVar7 = 1;
			iVar1 = 30;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 45:
			StringCopy(&Var2, "HT_FMF_5_2", 16);
			iVar6 = 5;
			iVar7 = 2;
			iVar1 = 35;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 46:
			StringCopy(&Var2, "HT_FMF_5_3", 16);
			iVar6 = 5;
			iVar7 = 3;
			iVar1 = 40;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 47:
			StringCopy(&Var2, "HT_FMF_5_4", 16);
			iVar6 = 5;
			iVar7 = 4;
			iVar1 = 35;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 48:
			StringCopy(&Var2, "HT_FMF_5_5", 16);
			iVar6 = 5;
			iVar7 = 5;
			iVar1 = 30;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 49:
			StringCopy(&Var2, "HT_FMF_5_6", 16);
			iVar6 = 5;
			iVar7 = 6;
			iVar1 = 35;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 50:
			StringCopy(&Var2, "HT_FMF_5_7", 16);
			iVar6 = 5;
			iVar7 = 7;
			iVar1 = 255;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 51:
			StringCopy(&Var2, "HT_FMF_6_0", 16);
			iVar6 = 6;
			iVar7 = 0;
			iVar1 = 360;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 52:
			StringCopy(&Var2, "HT_FMF_6_1", 16);
			iVar6 = 6;
			iVar7 = 1;
			iVar1 = 195;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 53:
			StringCopy(&Var2, "HT_FMF_6_2", 16);
			iVar6 = 6;
			iVar7 = 2;
			iVar1 = 3970;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 54:
			StringCopy(&Var2, "HT_FMF_6_3", 16);
			iVar6 = 6;
			iVar7 = 3;
			iVar1 = 135;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 55:
			StringCopy(&Var2, "HT_FMF_6_4", 16);
			iVar6 = 6;
			iVar7 = 4;
			iVar1 = 1355;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 56:
			StringCopy(&Var2, "HT_FMF_6_5", 16);
			iVar6 = 6;
			iVar7 = 5;
			iVar1 = 110;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 57:
			StringCopy(&Var2, "HT_FMF_6_6", 16);
			iVar6 = 6;
			iVar7 = 6;
			iVar1 = 140;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 58:
			StringCopy(&Var2, "HT_FMF_6_7", 16);
			iVar6 = 6;
			iVar7 = 7;
			iVar1 = 130;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 59:
			StringCopy(&Var2, "HT_FMF_7_0", 16);
			iVar6 = 7;
			iVar7 = 0;
			iVar1 = 230;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 60:
			StringCopy(&Var2, "HT_FMF_7_1", 16);
			iVar6 = 7;
			iVar7 = 1;
			iVar1 = 195;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 61:
			StringCopy(&Var2, "HT_FMF_7_2", 16);
			iVar6 = 7;
			iVar7 = 2;
			iVar1 = 515;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 62:
			StringCopy(&Var2, "HT_FMF_7_3", 16);
			iVar6 = 7;
			iVar7 = 3;
			iVar1 = 545;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 63:
			StringCopy(&Var2, "HT_FMF_7_4", 16);
			iVar6 = 7;
			iVar7 = 4;
			iVar1 = 195;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 64:
			StringCopy(&Var2, "HT_FMF_7_5", 16);
			iVar6 = 7;
			iVar7 = 5;
			iVar1 = 155;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 65:
			StringCopy(&Var2, "HT_FMF_7_6", 16);
			iVar6 = 7;
			iVar7 = 6;
			iVar1 = 155;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 66:
			StringCopy(&Var2, "HT_FMF_7_7", 16);
			iVar6 = 7;
			iVar7 = 7;
			iVar1 = 1440;
			iVar8 = 0;
			iVar11 = 1;
			break;
	}
	switch (iParam0)
	{
		case 67:
			StringCopy(&Var2, "HT_FMF_8_0", 16);
			iVar6 = 8;
			iVar7 = 0;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 68:
			StringCopy(&Var2, "HT_FMF_8_1", 16);
			iVar6 = 8;
			iVar7 = 1;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 69:
			StringCopy(&Var2, "HT_FMF_8_2", 16);
			iVar6 = 8;
			iVar7 = 2;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 70:
			StringCopy(&Var2, "HT_FMF_8_3", 16);
			iVar6 = 8;
			iVar7 = 3;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 71:
			StringCopy(&Var2, "HT_FMF_8_4", 16);
			iVar6 = 8;
			iVar7 = 4;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 72:
			StringCopy(&Var2, "HT_FMF_8_5", 16);
			iVar6 = 8;
			iVar7 = 5;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 73:
			StringCopy(&Var2, "HT_FMF_8_6", 16);
			iVar6 = 8;
			iVar7 = 6;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 74:
			StringCopy(&Var2, "HT_FMF_8_7", 16);
			iVar6 = 8;
			iVar7 = 7;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 75:
			StringCopy(&Var2, "HT_FMF_9_0", 16);
			iVar6 = 9;
			iVar7 = 0;
			iVar1 = 35;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 76:
			StringCopy(&Var2, "HT_FMF_9_1", 16);
			iVar6 = 9;
			iVar7 = 1;
			iVar1 = 25;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 77:
			StringCopy(&Var2, "HT_FMF_9_2", 16);
			iVar6 = 9;
			iVar7 = 2;
			iVar1 = 30;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 78:
			StringCopy(&Var2, "HT_FMF_9_3", 16);
			iVar6 = 9;
			iVar7 = 3;
			iVar1 = 25;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 79:
			StringCopy(&Var2, "HT_FMF_9_4", 16);
			iVar6 = 9;
			iVar7 = 4;
			iVar1 = 50;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 80:
			StringCopy(&Var2, "HT_FMF_9_5", 16);
			iVar6 = 9;
			iVar7 = 5;
			iVar1 = 40;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 81:
			StringCopy(&Var2, "HT_FMF_9_6", 16);
			iVar6 = 9;
			iVar7 = 6;
			iVar1 = 575;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 82:
			StringCopy(&Var2, "HT_FMF_9_7", 16);
			iVar6 = 9;
			iVar7 = 7;
			iVar1 = 605;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 83:
			StringCopy(&Var2, "HT_FMF_10_0", 16);
			iVar6 = 10;
			iVar7 = 0;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 84:
			StringCopy(&Var2, "HT_FMF_10_1", 16);
			iVar6 = 10;
			iVar7 = 1;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 85:
			StringCopy(&Var2, "HT_FMF_10_2", 16);
			iVar6 = 10;
			iVar7 = 2;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 86:
			StringCopy(&Var2, "HT_FMF_10_3", 16);
			iVar6 = 10;
			iVar7 = 3;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 87:
			StringCopy(&Var2, "HT_FMF_10_4", 16);
			iVar6 = 10;
			iVar7 = 4;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 88:
			StringCopy(&Var2, "HT_FMF_10_5", 16);
			iVar6 = 10;
			iVar7 = 5;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 89:
			StringCopy(&Var2, "HT_FMF_10_6", 16);
			iVar6 = 10;
			iVar7 = 6;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 90:
			StringCopy(&Var2, "HT_FMF_10_7", 16);
			iVar6 = 10;
			iVar7 = 7;
			iVar1 = 285;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 91:
			StringCopy(&Var2, "HT_FMF_11_0", 16);
			iVar6 = 11;
			iVar7 = 0;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 92:
			StringCopy(&Var2, "HT_FMF_11_1", 16);
			iVar6 = 11;
			iVar7 = 1;
			iVar1 = 2125;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 93:
			StringCopy(&Var2, "HT_FMF_11_2", 16);
			iVar6 = 11;
			iVar7 = 2;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 94:
			StringCopy(&Var2, "HT_FMF_11_3", 16);
			iVar6 = 11;
			iVar7 = 3;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 95:
			StringCopy(&Var2, "HT_FMF_11_4", 16);
			iVar6 = 11;
			iVar7 = 4;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 96:
			StringCopy(&Var2, "HT_FMF_11_5", 16);
			iVar6 = 11;
			iVar7 = 5;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 97:
			StringCopy(&Var2, "HT_FMF_11_6", 16);
			iVar6 = 11;
			iVar7 = 6;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 98:
			StringCopy(&Var2, "HT_FMF_11_7", 16);
			iVar6 = 11;
			iVar7 = 7;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 99:
			StringCopy(&Var2, "HT_FMF_12_0", 16);
			iVar6 = 12;
			iVar7 = 0;
			iVar1 = 75;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 100:
			StringCopy(&Var2, "HT_FMF_12_1", 16);
			iVar6 = 12;
			iVar7 = 1;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 101:
			StringCopy(&Var2, "HT_FMF_12_2", 16);
			iVar6 = 12;
			iVar7 = 2;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 102:
			StringCopy(&Var2, "HT_FMF_12_3", 16);
			iVar6 = 12;
			iVar7 = 3;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 103:
			StringCopy(&Var2, "HT_FMF_12_4", 16);
			iVar6 = 12;
			iVar7 = 4;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 104:
			StringCopy(&Var2, "HT_FMF_12_5", 16);
			iVar6 = 12;
			iVar7 = 5;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 105:
			StringCopy(&Var2, "HT_FMF_12_6", 16);
			iVar6 = 12;
			iVar7 = 6;
			iVar1 = 75;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 106:
			StringCopy(&Var2, "HT_FMF_12_7", 16);
			iVar6 = 12;
			iVar7 = 7;
			iVar1 = 295;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 107:
			StringCopy(&Var2, "HT_FMF_13_0", 16);
			iVar6 = 13;
			iVar7 = 0;
			iVar1 = 195;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 108:
			StringCopy(&Var2, "HT_FMF_13_1", 16);
			iVar6 = 13;
			iVar7 = 1;
			iVar1 = 200;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 109:
			StringCopy(&Var2, "HT_FMF_13_2", 16);
			iVar6 = 13;
			iVar7 = 2;
			iVar1 = 160;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 110:
			StringCopy(&Var2, "HT_FMF_13_3", 16);
			iVar6 = 13;
			iVar7 = 3;
			iVar1 = 855;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 111:
			StringCopy(&Var2, "HT_FMF_13_4", 16);
			iVar6 = 13;
			iVar7 = 4;
			iVar1 = 1615;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 112:
			StringCopy(&Var2, "HT_FMF_13_5", 16);
			iVar6 = 13;
			iVar7 = 5;
			iVar1 = 1130;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 113:
			StringCopy(&Var2, "HT_FMF_13_6", 16);
			iVar6 = 13;
			iVar7 = 6;
			iVar1 = 165;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 114:
			StringCopy(&Var2, "HT_FMF_13_7", 16);
			iVar6 = 13;
			iVar7 = 7;
			iVar1 = 215;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 115:
			StringCopy(&Var2, "HT_FMF_14_0", 16);
			iVar6 = 14;
			iVar7 = 0;
			iVar1 = 145;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 116:
			StringCopy(&Var2, "HT_FMF_14_1", 16);
			iVar6 = 14;
			iVar7 = 1;
			iVar1 = 250;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 117:
			StringCopy(&Var2, "HT_FMF_14_2", 16);
			iVar6 = 14;
			iVar7 = 2;
			iVar1 = 110;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 118:
			StringCopy(&Var2, "HT_FMF_14_3", 16);
			iVar6 = 14;
			iVar7 = 3;
			iVar1 = 145;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 119:
			StringCopy(&Var2, "HT_FMF_14_4", 16);
			iVar6 = 14;
			iVar7 = 4;
			iVar1 = 105;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 120:
			StringCopy(&Var2, "HT_FMF_14_5", 16);
			iVar6 = 14;
			iVar7 = 5;
			iVar1 = 105;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 121:
			StringCopy(&Var2, "HT_FMF_14_6", 16);
			iVar6 = 14;
			iVar7 = 6;
			iVar1 = 115;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 122:
			StringCopy(&Var2, "HT_FMF_14_7", 16);
			iVar6 = 14;
			iVar7 = 7;
			iVar1 = 115;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 123:
			StringCopy(&Var2, "HT_FMF_15_0", 16);
			iVar6 = 15;
			iVar7 = 0;
			iVar1 = 390;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 124:
			StringCopy(&Var2, "HT_FMF_15_1", 16);
			iVar6 = 15;
			iVar7 = 1;
			iVar1 = 395;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 125:
			StringCopy(&Var2, "HT_FMF_15_2", 16);
			iVar6 = 15;
			iVar7 = 2;
			iVar1 = 595;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 126:
			StringCopy(&Var2, "HT_FMF_15_3", 16);
			iVar6 = 15;
			iVar7 = 3;
			iVar1 = 425;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 127:
			StringCopy(&Var2, "HT_FMF_15_4", 16);
			iVar6 = 15;
			iVar7 = 4;
			iVar1 = 600;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 128:
			StringCopy(&Var2, "HT_FMF_15_5", 16);
			iVar6 = 15;
			iVar7 = 5;
			iVar1 = 590;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 129:
			StringCopy(&Var2, "HT_FMF_15_6", 16);
			iVar6 = 15;
			iVar7 = 6;
			iVar1 = 595;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 130:
			StringCopy(&Var2, "HT_FMF_15_7", 16);
			iVar6 = 15;
			iVar7 = 7;
			iVar1 = 555;
			iVar8 = 0;
			iVar11 = 1;
			break;
	}
	switch (iParam0)
	{
		case 131:
			StringCopy(&Var2, "HE_FMF_16_0", 16);
			iVar6 = 16;
			iVar7 = 0;
			iVar1 = 1060;
			iVar8 = 0;
			iVar11 = 2;
			break;
		
		case 132:
			StringCopy(&Var2, "HE_FMF_16_1", 16);
			iVar6 = 16;
			iVar7 = 1;
			iVar1 = 1400;
			iVar8 = 0;
			iVar11 = 2;
			break;
		
		case 133:
			StringCopy(&Var2, "HE_FMF_16_2", 16);
			iVar6 = 16;
			iVar7 = 2;
			iVar1 = 1315;
			iVar8 = 0;
			iVar11 = 2;
			break;
		
		case 134:
			StringCopy(&Var2, "HE_FMF_16_3", 16);
			iVar6 = 16;
			iVar7 = 3;
			iVar1 = 1230;
			iVar8 = 0;
			iVar11 = 2;
			break;
		
		case 135:
			StringCopy(&Var2, "HE_FMF_16_4", 16);
			iVar6 = 16;
			iVar7 = 4;
			iVar1 = 1145;
			iVar8 = 0;
			iVar11 = 2;
			break;
		
		case 136:
			StringCopy(&Var2, "HE_FMF_16_5", 16);
			iVar6 = 16;
			iVar7 = 5;
			iVar1 = 8450;
			iVar8 = 0;
			iVar11 = 2;
			break;
		
		case 137:
			StringCopy(&Var2, "HE_FMF_16_6", 16);
			iVar6 = 16;
			iVar7 = 6;
			iVar1 = 675;
			iVar8 = 0;
			iVar11 = 2;
			break;
		
		case 138:
			StringCopy(&Var2, "HE_FMF_16_7", 16);
			iVar6 = 16;
			iVar7 = 7;
			iVar1 = 8750;
			iVar8 = 0;
			iVar11 = 2;
			break;
		
		case 139:
			StringCopy(&Var2, "HE_FMF_17_0", 16);
			iVar6 = 17;
			iVar7 = 0;
			iVar1 = 975;
			iVar8 = 0;
			iVar11 = 2;
			break;
		
		case 140:
			StringCopy(&Var2, "HE_FMF_17_1", 16);
			iVar6 = 17;
			iVar7 = 1;
			iVar1 = 750;
			iVar8 = 0;
			iVar11 = 2;
			break;
		
		case 141:
			StringCopy(&Var2, "HE_FMF_17_2", 16);
			iVar6 = 17;
			iVar7 = 2;
			iVar1 = 865;
			iVar8 = 0;
			iVar11 = 2;
			break;
		
		case 142:
			StringCopy(&Var2, "HE_FMF_17_3", 16);
			iVar6 = 17;
			iVar7 = 3;
			iVar1 = 890;
			iVar8 = 0;
			iVar11 = 2;
			break;
		
		case 143:
			StringCopy(&Var2, "HE_FMF_17_4", 16);
			iVar6 = 17;
			iVar7 = 4;
			iVar1 = 730;
			iVar8 = 0;
			iVar11 = 2;
			break;
		
		case 144:
			StringCopy(&Var2, "HE_FMF_17_5", 16);
			iVar6 = 17;
			iVar7 = 5;
			iVar1 = 650;
			iVar8 = 0;
			iVar11 = 2;
			break;
		
		case 145:
			StringCopy(&Var2, "HE_FMF_17_6", 16);
			iVar6 = 17;
			iVar7 = 6;
			iVar1 = 645;
			iVar8 = 0;
			iVar11 = 2;
			break;
		
		case 146:
			StringCopy(&Var2, "HE_FMF_17_7", 16);
			iVar6 = 17;
			iVar7 = 7;
			iVar1 = 755;
			iVar8 = 0;
			iVar11 = 2;
			break;
		
		case 147:
			StringCopy(&Var2, "HE_FMF_18_0", 16);
			iVar6 = 18;
			iVar7 = 0;
			iVar1 = 13850;
			iVar8 = 0;
			iVar11 = 2;
			break;
		
		case 148:
			StringCopy(&Var2, "HE_FMF_18_1", 16);
			iVar6 = 18;
			iVar7 = 1;
			iVar1 = 2900;
			iVar8 = 0;
			iVar11 = 2;
			break;
		
		case 149:
			StringCopy(&Var2, "HE_FMF_18_2", 16);
			iVar6 = 18;
			iVar7 = 2;
			iVar1 = 2895;
			iVar8 = 0;
			iVar11 = 2;
			break;
		
		case 150:
			StringCopy(&Var2, "HE_FMF_18_3", 16);
			iVar6 = 18;
			iVar7 = 3;
			iVar1 = 12500;
			iVar8 = 0;
			iVar11 = 2;
			break;
		
		case 151:
			StringCopy(&Var2, "HE_FMF_18_4", 16);
			iVar6 = 18;
			iVar7 = 4;
			iVar1 = 15000;
			iVar8 = 0;
			iVar11 = 2;
			break;
		
		case 152:
			StringCopy(&Var2, "HE_FMF_18_5", 16);
			iVar6 = 18;
			iVar7 = 5;
			iVar1 = 14750;
			iVar8 = 0;
			iVar11 = 2;
			break;
		
		case 153:
			StringCopy(&Var2, "HE_FMF_18_6", 16);
			iVar6 = 18;
			iVar7 = 6;
			iVar1 = 13150;
			iVar8 = 0;
			iVar11 = 2;
			break;
		
		case 154:
			StringCopy(&Var2, "HE_FMF_18_7", 16);
			iVar6 = 18;
			iVar7 = 7;
			iVar1 = 2925;
			iVar8 = 0;
			iVar11 = 2;
			break;
	}
	switch (iParam0)
	{
		case 155:
			StringCopy(&Var2, "G_FMF_0_0", 16);
			iVar6 = 0;
			iVar7 = 0;
			iVar1 = 65;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 156:
			StringCopy(&Var2, "G_FMF_0_1", 16);
			iVar6 = 0;
			iVar7 = 1;
			iVar1 = 65;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 157:
			StringCopy(&Var2, "G_FMF_0_2", 16);
			iVar6 = 0;
			iVar7 = 2;
			iVar1 = 85;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 158:
			StringCopy(&Var2, "G_FMF_0_3", 16);
			iVar6 = 0;
			iVar7 = 3;
			iVar1 = 75;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 159:
			StringCopy(&Var2, "G_FMF_0_4", 16);
			iVar6 = 0;
			iVar7 = 4;
			iVar1 = 85;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 160:
			StringCopy(&Var2, "G_FMF_0_5", 16);
			iVar6 = 0;
			iVar7 = 5;
			iVar1 = 80;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 161:
			StringCopy(&Var2, "G_FMF_0_6", 16);
			iVar6 = 0;
			iVar7 = 6;
			iVar1 = 85;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 162:
			StringCopy(&Var2, "G_FMF_0_7", 16);
			iVar6 = 0;
			iVar7 = 7;
			iVar1 = 90;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 163:
			StringCopy(&Var2, "CLO_EXF_G_0_8", 16);
			iVar6 = 0;
			iVar7 = 8;
			iVar1 = 820;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 164:
			StringCopy(&Var2, "CLO_EXF_G_0_9", 16);
			iVar6 = 0;
			iVar7 = 9;
			iVar1 = 435;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 165:
			StringCopy(&Var2, "CLO_EXF_G_0_10", 16);
			iVar6 = 0;
			iVar7 = 10;
			iVar1 = 500;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 166:
			StringCopy(&Var2, "G_FMF_1_0", 16);
			iVar6 = 1;
			iVar7 = 0;
			iVar1 = 160;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 167:
			StringCopy(&Var2, "G_FMF_1_1", 16);
			iVar6 = 1;
			iVar7 = 1;
			iVar1 = 165;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 168:
			StringCopy(&Var2, "G_FMF_1_2", 16);
			iVar6 = 1;
			iVar7 = 2;
			iVar1 = 170;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 169:
			StringCopy(&Var2, "G_FMF_1_3", 16);
			iVar6 = 1;
			iVar7 = 3;
			iVar1 = 135;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 170:
			StringCopy(&Var2, "G_FMF_1_4", 16);
			iVar6 = 1;
			iVar7 = 4;
			iVar1 = 120;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 171:
			StringCopy(&Var2, "G_FMF_1_5", 16);
			iVar6 = 1;
			iVar7 = 5;
			iVar1 = 110;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 172:
			StringCopy(&Var2, "G_FMF_1_6", 16);
			iVar6 = 1;
			iVar7 = 6;
			iVar1 = 140;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 173:
			StringCopy(&Var2, "G_FMF_1_7", 16);
			iVar6 = 1;
			iVar7 = 7;
			iVar1 = 130;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 174:
			StringCopy(&Var2, "CLO_EXF_G_1_8", 16);
			iVar6 = 1;
			iVar7 = 8;
			iVar1 = 970;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 175:
			StringCopy(&Var2, "CLO_EXF_G_1_9", 16);
			iVar6 = 1;
			iVar7 = 9;
			iVar1 = 585;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 176:
			StringCopy(&Var2, "CLO_EXF_G_1_10", 16);
			iVar6 = 1;
			iVar7 = 10;
			iVar1 = 650;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 177:
			StringCopy(&Var2, "G_FMF_2_0", 16);
			iVar6 = 2;
			iVar7 = 0;
			iVar1 = 180;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 178:
			StringCopy(&Var2, "G_FMF_2_1", 16);
			iVar6 = 2;
			iVar7 = 1;
			iVar1 = 110;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 179:
			StringCopy(&Var2, "G_FMF_2_2", 16);
			iVar6 = 2;
			iVar7 = 2;
			iVar1 = 115;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 180:
			StringCopy(&Var2, "G_FMF_2_3", 16);
			iVar6 = 2;
			iVar7 = 3;
			iVar1 = 120;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 181:
			StringCopy(&Var2, "G_FMF_2_4", 16);
			iVar6 = 2;
			iVar7 = 4;
			iVar1 = 595;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 182:
			StringCopy(&Var2, "G_FMF_2_5", 16);
			iVar6 = 2;
			iVar7 = 5;
			iVar1 = 160;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 183:
			StringCopy(&Var2, "G_FMF_2_6", 16);
			iVar6 = 2;
			iVar7 = 6;
			iVar1 = 545;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 184:
			StringCopy(&Var2, "G_FMF_2_7", 16);
			iVar6 = 2;
			iVar7 = 7;
			iVar1 = 590;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 185:
			StringCopy(&Var2, "CLO_EXF_G_2_8", 16);
			iVar6 = 2;
			iVar7 = 8;
			iVar1 = 1125;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 186:
			StringCopy(&Var2, "CLO_EXF_G_2_9", 16);
			iVar6 = 2;
			iVar7 = 9;
			iVar1 = 740;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 187:
			StringCopy(&Var2, "CLO_EXF_G_2_10", 16);
			iVar6 = 2;
			iVar7 = 10;
			iVar1 = 805;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 188:
			StringCopy(&Var2, "G_FMF_3_0", 16);
			iVar6 = 3;
			iVar7 = 0;
			iVar1 = 6250;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 189:
			StringCopy(&Var2, "G_FMF_3_1", 16);
			iVar6 = 3;
			iVar7 = 1;
			iVar1 = 4065;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 190:
			StringCopy(&Var2, "G_FMF_3_2", 16);
			iVar6 = 3;
			iVar7 = 2;
			iVar1 = 3585;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 191:
			StringCopy(&Var2, "G_FMF_3_3", 16);
			iVar6 = 3;
			iVar7 = 3;
			iVar1 = 4075;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 192:
			StringCopy(&Var2, "G_FMF_3_4", 16);
			iVar6 = 3;
			iVar7 = 4;
			iVar1 = 4935;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 193:
			StringCopy(&Var2, "G_FMF_3_5", 16);
			iVar6 = 3;
			iVar7 = 5;
			iVar1 = 130;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 194:
			StringCopy(&Var2, "G_FMF_3_6", 16);
			iVar6 = 3;
			iVar7 = 6;
			iVar1 = 5600;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 195:
			StringCopy(&Var2, "G_FMF_3_7", 16);
			iVar6 = 3;
			iVar7 = 7;
			iVar1 = 4790;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 196:
			StringCopy(&Var2, "CLO_EXF_G_3_8", 16);
			iVar6 = 3;
			iVar7 = 8;
			iVar1 = 2315;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 197:
			StringCopy(&Var2, "CLO_EXF_G_3_9", 16);
			iVar6 = 3;
			iVar7 = 9;
			iVar1 = 1930;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 198:
			StringCopy(&Var2, "CLO_EXF_G_3_10", 16);
			iVar6 = 3;
			iVar7 = 10;
			iVar1 = 1995;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 199:
			StringCopy(&Var2, "G_FMF_4_0", 16);
			iVar6 = 4;
			iVar7 = 0;
			iVar1 = 2245;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 200:
			StringCopy(&Var2, "G_FMF_4_1", 16);
			iVar6 = 4;
			iVar7 = 1;
			iVar1 = 250;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 201:
			StringCopy(&Var2, "G_FMF_4_2", 16);
			iVar6 = 4;
			iVar7 = 2;
			iVar1 = 210;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 202:
			StringCopy(&Var2, "G_FMF_4_3", 16);
			iVar6 = 4;
			iVar7 = 3;
			iVar1 = 245;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 203:
			StringCopy(&Var2, "G_FMF_4_4", 16);
			iVar6 = 4;
			iVar7 = 4;
			iVar1 = 1205;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 204:
			StringCopy(&Var2, "G_FMF_4_5", 16);
			iVar6 = 4;
			iVar7 = 5;
			iVar1 = 205;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 205:
			StringCopy(&Var2, "G_FMF_4_6", 16);
			iVar6 = 4;
			iVar7 = 6;
			iVar1 = 2215;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 206:
			StringCopy(&Var2, "G_FMF_4_7", 16);
			iVar6 = 4;
			iVar7 = 7;
			iVar1 = 215;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 207:
			StringCopy(&Var2, "CLO_EXF_G_4_8", 16);
			iVar6 = 4;
			iVar7 = 8;
			iVar1 = 2835;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 208:
			StringCopy(&Var2, "CLO_EXF_G_4_9", 16);
			iVar6 = 4;
			iVar7 = 9;
			iVar1 = 2450;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 209:
			StringCopy(&Var2, "CLO_EXF_G_4_10", 16);
			iVar6 = 4;
			iVar7 = 10;
			iVar1 = 2515;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 210:
			StringCopy(&Var2, "G_FMF_5_0", 16);
			iVar6 = 5;
			iVar7 = 0;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 211:
			StringCopy(&Var2, "G_FMF_5_1", 16);
			iVar6 = 5;
			iVar7 = 1;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 212:
			StringCopy(&Var2, "G_FMF_5_2", 16);
			iVar6 = 5;
			iVar7 = 2;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 213:
			StringCopy(&Var2, "G_FMF_5_3", 16);
			iVar6 = 5;
			iVar7 = 3;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 214:
			StringCopy(&Var2, "G_FMF_5_4", 16);
			iVar6 = 5;
			iVar7 = 4;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 215:
			StringCopy(&Var2, "G_FMF_5_5", 16);
			iVar6 = 5;
			iVar7 = 5;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 216:
			StringCopy(&Var2, "G_FMF_5_6", 16);
			iVar6 = 5;
			iVar7 = 6;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 217:
			StringCopy(&Var2, "G_FMF_5_7", 16);
			iVar6 = 5;
			iVar7 = 7;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 218:
			StringCopy(&Var2, "G_FMF_5_8", 16);
			iVar6 = 5;
			iVar7 = 8;
			iVar1 = 50;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 219:
			StringCopy(&Var2, "G_FMF_5_9", 16);
			iVar6 = 5;
			iVar7 = 9;
			iVar1 = 50;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 220:
			StringCopy(&Var2, "G_FMF_5_10", 16);
			iVar6 = 5;
			iVar7 = 10;
			iVar1 = 50;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 221:
			StringCopy(&Var2, "G_FMF_6_0", 16);
			iVar6 = 6;
			iVar7 = 0;
			iVar1 = 5000;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 222:
			StringCopy(&Var2, "G_FMF_6_1", 16);
			iVar6 = 6;
			iVar7 = 1;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 223:
			StringCopy(&Var2, "G_FMF_6_2", 16);
			iVar6 = 6;
			iVar7 = 2;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 224:
			StringCopy(&Var2, "G_FMF_6_3", 16);
			iVar6 = 6;
			iVar7 = 3;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 225:
			StringCopy(&Var2, "G_FMF_6_4", 16);
			iVar6 = 6;
			iVar7 = 4;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 226:
			StringCopy(&Var2, "G_FMF_6_5", 16);
			iVar6 = 6;
			iVar7 = 5;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 227:
			StringCopy(&Var2, "G_FMF_6_6", 16);
			iVar6 = 6;
			iVar7 = 6;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 228:
			StringCopy(&Var2, "G_FMF_6_7", 16);
			iVar6 = 6;
			iVar7 = 7;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 229:
			StringCopy(&Var2, "CLO_EXF_G_6_8", 16);
			iVar6 = 6;
			iVar7 = 8;
			iVar1 = 2820;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 230:
			StringCopy(&Var2, "CLO_EXF_G_6_9", 16);
			iVar6 = 6;
			iVar7 = 9;
			iVar1 = 2435;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 231:
			StringCopy(&Var2, "CLO_EXF_G_6_10", 16);
			iVar6 = 6;
			iVar7 = 10;
			iVar1 = 2500;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 232:
			StringCopy(&Var2, "G_FMF_7_0", 16);
			iVar6 = 7;
			iVar7 = 0;
			iVar1 = 4815;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 233:
			StringCopy(&Var2, "G_FMF_7_1", 16);
			iVar6 = 7;
			iVar7 = 1;
			iVar1 = 4795;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 234:
			StringCopy(&Var2, "G_FMF_7_2", 16);
			iVar6 = 7;
			iVar7 = 2;
			iVar1 = 4305;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 235:
			StringCopy(&Var2, "G_FMF_7_3", 16);
			iVar6 = 7;
			iVar7 = 3;
			iVar1 = 4305;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 236:
			StringCopy(&Var2, "G_FMF_7_4", 16);
			iVar6 = 7;
			iVar7 = 4;
			iVar1 = 4965;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 237:
			StringCopy(&Var2, "G_FMF_7_5", 16);
			iVar6 = 7;
			iVar7 = 5;
			iVar1 = 480;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 238:
			StringCopy(&Var2, "G_FMF_7_6", 16);
			iVar6 = 7;
			iVar7 = 6;
			iVar1 = 465;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 239:
			StringCopy(&Var2, "G_FMF_7_7", 16);
			iVar6 = 7;
			iVar7 = 7;
			iVar1 = 4320;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 240:
			StringCopy(&Var2, "CLO_EXF_G_7_8", 16);
			iVar6 = 7;
			iVar7 = 8;
			iVar1 = 2390;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 241:
			StringCopy(&Var2, "CLO_EXF_G_7_9", 16);
			iVar6 = 7;
			iVar7 = 9;
			iVar1 = 2005;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 242:
			StringCopy(&Var2, "CLO_EXF_G_7_10", 16);
			iVar6 = 7;
			iVar7 = 10;
			iVar1 = 2070;
			iVar8 = 1;
			iVar11 = 3;
			break;
	}
	switch (iParam0)
	{
		case 243:
			StringCopy(&Var2, "G_FMF_8_0", 16);
			iVar6 = 8;
			iVar7 = 0;
			iVar1 = 500;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 244:
			StringCopy(&Var2, "G_FMF_8_1", 16);
			iVar6 = 8;
			iVar7 = 1;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 245:
			StringCopy(&Var2, "G_FMF_8_2", 16);
			iVar6 = 8;
			iVar7 = 2;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 246:
			StringCopy(&Var2, "G_FMF_8_3", 16);
			iVar6 = 8;
			iVar7 = 3;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 247:
			StringCopy(&Var2, "G_FMF_8_4", 16);
			iVar6 = 8;
			iVar7 = 4;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 248:
			StringCopy(&Var2, "G_FMF_8_5", 16);
			iVar6 = 8;
			iVar7 = 5;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 249:
			StringCopy(&Var2, "G_FMF_8_6", 16);
			iVar6 = 8;
			iVar7 = 6;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 250:
			StringCopy(&Var2, "G_FMF_8_7", 16);
			iVar6 = 8;
			iVar7 = 7;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 251:
			StringCopy(&Var2, "CLO_EXF_G_8_8", 16);
			iVar6 = 8;
			iVar7 = 8;
			iVar1 = 645;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 252:
			StringCopy(&Var2, "CLO_EXF_G_8_9", 16);
			iVar6 = 8;
			iVar7 = 9;
			iVar1 = 260;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 253:
			StringCopy(&Var2, "CLO_EXF_G_8_10", 16);
			iVar6 = 8;
			iVar7 = 10;
			iVar1 = 325;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 254:
			StringCopy(&Var2, "G_FMF_9_0", 16);
			iVar6 = 9;
			iVar7 = 0;
			iVar1 = 70;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 255:
			StringCopy(&Var2, "G_FMF_9_1", 16);
			iVar6 = 9;
			iVar7 = 1;
			iVar1 = 60;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 256:
			StringCopy(&Var2, "G_FMF_9_2", 16);
			iVar6 = 9;
			iVar7 = 2;
			iVar1 = 65;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 257:
			StringCopy(&Var2, "G_FMF_9_3", 16);
			iVar6 = 9;
			iVar7 = 3;
			iVar1 = 570;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 258:
			StringCopy(&Var2, "G_FMF_9_4", 16);
			iVar6 = 9;
			iVar7 = 4;
			iVar1 = 525;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 259:
			StringCopy(&Var2, "G_FMF_9_5", 16);
			iVar6 = 9;
			iVar7 = 5;
			iVar1 = 75;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 260:
			StringCopy(&Var2, "G_FMF_9_6", 16);
			iVar6 = 9;
			iVar7 = 6;
			iVar1 = 75;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 261:
			StringCopy(&Var2, "G_FMF_9_7", 16);
			iVar6 = 9;
			iVar7 = 7;
			iVar1 = 90;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 262:
			StringCopy(&Var2, "CLO_EXF_G_9_8", 16);
			iVar6 = 9;
			iVar7 = 8;
			iVar1 = 645;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 263:
			StringCopy(&Var2, "CLO_EXF_G_9_9", 16);
			iVar6 = 9;
			iVar7 = 9;
			iVar1 = 260;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 264:
			StringCopy(&Var2, "CLO_EXF_G_9_10", 16);
			iVar6 = 9;
			iVar7 = 10;
			iVar1 = 325;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 265:
			StringCopy(&Var2, "G_FMF_10_0", 16);
			iVar6 = 10;
			iVar7 = 0;
			iVar1 = 4065;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 266:
			StringCopy(&Var2, "G_FMF_10_1", 16);
			iVar6 = 10;
			iVar7 = 1;
			iVar1 = 65;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 267:
			StringCopy(&Var2, "G_FMF_10_2", 16);
			iVar6 = 10;
			iVar7 = 2;
			iVar1 = 85;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 268:
			StringCopy(&Var2, "G_FMF_10_3", 16);
			iVar6 = 10;
			iVar7 = 3;
			iVar1 = 4275;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 269:
			StringCopy(&Var2, "G_FMF_10_4", 16);
			iVar6 = 10;
			iVar7 = 4;
			iVar1 = 85;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 270:
			StringCopy(&Var2, "G_FMF_10_5", 16);
			iVar6 = 10;
			iVar7 = 5;
			iVar1 = 80;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 271:
			StringCopy(&Var2, "G_FMF_10_6", 16);
			iVar6 = 10;
			iVar7 = 6;
			iVar1 = 85;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 272:
			StringCopy(&Var2, "G_FMF_10_7", 16);
			iVar6 = 10;
			iVar7 = 7;
			iVar1 = 90;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 273:
			StringCopy(&Var2, "CLO_EXF_G_10_8", 16);
			iVar6 = 10;
			iVar7 = 8;
			iVar1 = 2315;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 274:
			StringCopy(&Var2, "CLO_EXF_G_10_9", 16);
			iVar6 = 10;
			iVar7 = 9;
			iVar1 = 1930;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 275:
			StringCopy(&Var2, "CLO_EXF_G_10_10", 16);
			iVar6 = 10;
			iVar7 = 10;
			iVar1 = 1995;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 276:
			StringCopy(&Var2, "G_FMF_11_0", 16);
			iVar6 = 11;
			iVar7 = 0;
			iVar1 = 3660;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 277:
			StringCopy(&Var2, "G_FMF_11_1", 16);
			iVar6 = 11;
			iVar7 = 1;
			iVar1 = 4165;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 278:
			StringCopy(&Var2, "G_FMF_11_2", 16);
			iVar6 = 11;
			iVar7 = 2;
			iVar1 = 3670;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 279:
			StringCopy(&Var2, "G_FMF_11_3", 16);
			iVar6 = 11;
			iVar7 = 3;
			iVar1 = 135;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 280:
			StringCopy(&Var2, "G_FMF_11_4", 16);
			iVar6 = 11;
			iVar7 = 4;
			iVar1 = 3620;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 281:
			StringCopy(&Var2, "G_FMF_11_5", 16);
			iVar6 = 11;
			iVar7 = 5;
			iVar1 = 3610;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 282:
			StringCopy(&Var2, "G_FMF_11_6", 16);
			iVar6 = 11;
			iVar7 = 6;
			iVar1 = 4140;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 283:
			StringCopy(&Var2, "G_FMF_11_7", 16);
			iVar6 = 11;
			iVar7 = 7;
			iVar1 = 130;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 284:
			StringCopy(&Var2, "G_FMF_12_0", 16);
			iVar6 = 12;
			iVar7 = 0;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 285:
			StringCopy(&Var2, "G_FMF_12_1", 16);
			iVar6 = 12;
			iVar7 = 1;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 286:
			StringCopy(&Var2, "G_FMF_12_2", 16);
			iVar6 = 12;
			iVar7 = 2;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 287:
			StringCopy(&Var2, "G_FMF_12_3", 16);
			iVar6 = 12;
			iVar7 = 3;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 288:
			StringCopy(&Var2, "G_FMF_12_4", 16);
			iVar6 = 12;
			iVar7 = 4;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 289:
			StringCopy(&Var2, "G_FMF_12_5", 16);
			iVar6 = 12;
			iVar7 = 5;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 290:
			StringCopy(&Var2, "G_FMF_12_6", 16);
			iVar6 = 12;
			iVar7 = 6;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 291:
			StringCopy(&Var2, "G_FMF_12_7", 16);
			iVar6 = 12;
			iVar7 = 7;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 292:
			StringCopy(&Var2, "G_FMF_13_0", 16);
			iVar6 = 13;
			iVar7 = 0;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 293:
			StringCopy(&Var2, "G_FMF_13_1", 16);
			iVar6 = 13;
			iVar7 = 1;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 294:
			StringCopy(&Var2, "G_FMF_13_2", 16);
			iVar6 = 13;
			iVar7 = 2;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 295:
			StringCopy(&Var2, "G_FMF_13_3", 16);
			iVar6 = 13;
			iVar7 = 3;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 296:
			StringCopy(&Var2, "G_FMF_13_4", 16);
			iVar6 = 13;
			iVar7 = 4;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 297:
			StringCopy(&Var2, "G_FMF_13_5", 16);
			iVar6 = 13;
			iVar7 = 5;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 298:
			StringCopy(&Var2, "G_FMF_13_6", 16);
			iVar6 = 13;
			iVar7 = 6;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 299:
			StringCopy(&Var2, "G_FMF_13_7", 16);
			iVar6 = 13;
			iVar7 = 7;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 300:
			StringCopy(&Var2, "G_FMF_14_0", 16);
			iVar6 = 14;
			iVar7 = 0;
			iVar1 = 325;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 301:
			StringCopy(&Var2, "G_FMF_14_1", 16);
			iVar6 = 14;
			iVar7 = 1;
			iVar1 = 110;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 302:
			StringCopy(&Var2, "G_FMF_14_2", 16);
			iVar6 = 14;
			iVar7 = 2;
			iVar1 = 115;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 303:
			StringCopy(&Var2, "G_FMF_14_3", 16);
			iVar6 = 14;
			iVar7 = 3;
			iVar1 = 120;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 304:
			StringCopy(&Var2, "G_FMF_14_4", 16);
			iVar6 = 14;
			iVar7 = 4;
			iVar1 = 135;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 305:
			StringCopy(&Var2, "G_FMF_14_5", 16);
			iVar6 = 14;
			iVar7 = 5;
			iVar1 = 110;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 306:
			StringCopy(&Var2, "G_FMF_14_6", 16);
			iVar6 = 14;
			iVar7 = 6;
			iVar1 = 115;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 307:
			StringCopy(&Var2, "G_FMF_14_7", 16);
			iVar6 = 14;
			iVar7 = 7;
			iVar1 = 120;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 308:
			StringCopy(&Var2, "CLO_EXF_G_14_8", 16);
			iVar6 = 14;
			iVar7 = 8;
			iVar1 = 1490;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 309:
			StringCopy(&Var2, "CLO_EXF_G_14_9", 16);
			iVar6 = 14;
			iVar7 = 9;
			iVar1 = 1105;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 310:
			StringCopy(&Var2, "CLO_EXF_G_14_10", 16);
			iVar6 = 14;
			iVar7 = 10;
			iVar1 = 1170;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 311:
			StringCopy(&Var2, "G_FMF_15_0", 16);
			iVar6 = 15;
			iVar7 = 0;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 312:
			StringCopy(&Var2, "G_FMF_15_1", 16);
			iVar6 = 15;
			iVar7 = 1;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 313:
			StringCopy(&Var2, "G_FMF_15_2", 16);
			iVar6 = 15;
			iVar7 = 2;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 314:
			StringCopy(&Var2, "G_FMF_15_3", 16);
			iVar6 = 15;
			iVar7 = 3;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 315:
			StringCopy(&Var2, "G_FMF_15_4", 16);
			iVar6 = 15;
			iVar7 = 4;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 316:
			StringCopy(&Var2, "G_FMF_15_5", 16);
			iVar6 = 15;
			iVar7 = 5;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 317:
			StringCopy(&Var2, "G_FMF_15_6", 16);
			iVar6 = 15;
			iVar7 = 6;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 318:
			StringCopy(&Var2, "G_FMF_15_7", 16);
			iVar6 = 15;
			iVar7 = 7;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
	}
	switch (iParam0)
	{
		case 319:
			StringCopy(&Var2, "W_FMF_0_0", 16);
			iVar6 = 0;
			iVar7 = 0;
			iVar1 = 0;
			iVar8 = 6;
			iVar11 = 4;
			iVar0 = true;
			break;
		
		case 320:
			StringCopy(&Var2, "W_FMF_0_1", 16);
			iVar6 = 0;
			iVar7 = 1;
			iVar1 = 0;
			iVar8 = 6;
			iVar11 = 4;
			iVar0 = true;
			break;
		
		case 321:
			StringCopy(&Var2, "W_FMF_0_2", 16);
			iVar6 = 0;
			iVar7 = 2;
			iVar1 = 0;
			iVar8 = 6;
			iVar11 = 4;
			iVar0 = true;
			break;
		
		case 322:
			StringCopy(&Var2, "W_FMF_0_3", 16);
			iVar6 = 0;
			iVar7 = 3;
			iVar1 = 0;
			iVar8 = 6;
			iVar11 = 4;
			iVar0 = true;
			break;
		
		case 323:
			StringCopy(&Var2, "W_FMF_0_4", 16);
			iVar6 = 0;
			iVar7 = 4;
			iVar1 = 825;
			iVar8 = 6;
			iVar11 = 4;
			break;
		
		case 324:
			StringCopy(&Var2, "W_FMF_1_0", 16);
			iVar6 = 1;
			iVar7 = 0;
			iVar1 = 0;
			iVar8 = 6;
			iVar11 = 4;
			iVar0 = true;
			break;
		
		case 325:
			StringCopy(&Var2, "W_FMF_1_1", 16);
			iVar6 = 1;
			iVar7 = 1;
			iVar1 = 0;
			iVar8 = 6;
			iVar11 = 4;
			iVar0 = true;
			break;
		
		case 326:
			StringCopy(&Var2, "W_FMF_1_2", 16);
			iVar6 = 1;
			iVar7 = 2;
			iVar1 = 0;
			iVar8 = 6;
			iVar11 = 4;
			iVar0 = true;
			break;
	}
	if (iVar11 == 1)
	{
		iVar12 = (iParam0 - 10);
		if (iVar12 >= 0 && iVar12 < 121)
		{
			if (iVar12 > 8)
			{
				iVar12 = (iVar12 - 1);
			}
			iVar1 = system::round(((system::to_float(iVar1) * Global_262145.f_2041[iVar12]) * Global_279748.f_26));
		}
	}
	else if (iVar11 == 2)
	{
		iVar13 = (iParam0 - 131);
		if (iVar13 >= 0 && iVar13 < 24)
		{
			iVar1 = system::round(((system::to_float(iVar1) * Global_262145.f_2162[iVar13]) * Global_279748.f_27));
		}
	}
	else if (iVar11 == 3)
	{
		iVar14 = (iParam0 - 155);
		if (iVar14 >= 0 && iVar14 < 128)
		{
			iVar1 = system::round(((system::to_float(iVar1) * Global_262145.f_2187[iVar14]) * Global_279748.f_56));
		}
	}
	else if (iVar11 == 4)
	{
		iVar15 = (iParam0 - 319);
		if (iVar15 >= 0 && iVar15 < 10)
		{
			iVar1 = system::round(((system::to_float(iVar1) * Global_262145.f_2316[iVar15]) * Global_279748.f_28));
		}
	}
	if (iParam0 >= 327)
	{
		Global_69518[0 /*14*/].f_5 = 4;
		func_649(iVar10, iParam0, 327);
		if (Global_69518[0 /*14*/].f_7 > 0)
		{
			if (dlc1::_0x341DE7ED1D2A1BFD(Global_2621444, -1757550583, 1))
			{
				Global_69518[0 /*14*/].f_7 = system::round((system::to_float(Global_69518[0 /*14*/].f_7) * Global_279748.f_26));
			}
			else if (dlc1::_0x341DE7ED1D2A1BFD(Global_2621444, 97230661, 1))
			{
				Global_69518[0 /*14*/].f_7 = system::round((system::to_float(Global_69518[0 /*14*/].f_7) * Global_279748.f_56));
			}
			else if (dlc1::_0x341DE7ED1D2A1BFD(Global_2621444, 1147826474, 1))
			{
				Global_69518[0 /*14*/].f_7 = system::round((system::to_float(Global_69518[0 /*14*/].f_7) * Global_279748.f_28));
			}
		}
	}
	else
	{
		func_641(&(Global_69518[0 /*14*/]), iVar10, iParam0, &Var2, iVar6, iVar7, iVar1, iVar0, iVar8, iVar9, 0);
	}
}

void func_653(int iParam0)//Position - 0x5261E
{
	int iVar0;
	int iVar1;
	struct<2> Var2;
	int iVar6;
	int iVar7;
	int iVar8;
	int iVar9;
	int iVar10;
	
	iVar0 = false;
	iVar1 = 10;
	iVar6 = 0;
	iVar7 = 0;
	iVar8 = -1;
	iVar9 = 2;
	iVar10 = 10;
	switch (iParam0)
	{
		case 0:
			StringCopy(&Var2, "D_FMM_0_0", 16);
			iVar6 = 0;
			iVar7 = 0;
			iVar1 = 0;
			break;
		
		case 1:
			StringCopy(&Var2, "D_FMM_2_0", 16);
			iVar6 = 1;
			iVar7 = 0;
			iVar1 = 10000;
			break;
		
		case 2:
			StringCopy(&Var2, "D_FMM_1_0", 16);
			iVar6 = 2;
			iVar7 = 0;
			iVar1 = 5000;
			break;
		
		case 3:
			StringCopy(&Var2, "D_FMM_2_0", 16);
			iVar6 = 3;
			iVar7 = 0;
			iVar1 = 10000;
			break;
		
		case 4:
			StringCopy(&Var2, "D_FMM_1_0", 16);
			iVar6 = 4;
			iVar7 = 0;
			iVar1 = 5000;
			break;
		
		case 5:
			StringCopy(&Var2, "D_FMM_2_0", 16);
			iVar6 = 5;
			iVar7 = 0;
			iVar1 = 10000;
			break;
		
		default:
			Global_69518[0 /*14*/].f_5 = 4;
			func_649(iVar10, iParam0, 6);
			return;
			break;
	}
	func_641(&(Global_69518[0 /*14*/]), iVar10, iParam0, &Var2, iVar6, iVar7, iVar1, iVar0, iVar8, iVar9, 0);
}

void func_654(int iParam0)//Position - 0x52721
{
	int iVar0;
	int iVar1;
	struct<2> Var2;
	int iVar6;
	int iVar7;
	int iVar8;
	int iVar9;
	int iVar10;
	
	iVar0 = false;
	iVar1 = 10;
	iVar6 = 0;
	iVar7 = 0;
	iVar8 = -1;
	iVar9 = 2;
	iVar10 = 7;
	switch (iParam0)
	{
		case 0:
			iVar6 = 0;
			iVar7 = 0;
			iVar1 = 0;
			break;
		
		case 1:
			iVar6 = 1;
			iVar7 = 0;
			if (Global_262145.f_4138 != -1)
			{
				iVar1 = Global_262145.f_4138;
			}
			else
			{
				iVar1 = 310;
			}
			break;
		
		case 2:
			iVar6 = 1;
			iVar7 = 1;
			if (Global_262145.f_4139 != -1)
			{
				iVar1 = Global_262145.f_4139;
			}
			else
			{
				iVar1 = 125;
			}
			break;
		
		case 3:
			iVar6 = 1;
			iVar7 = 2;
			if (Global_262145.f_4140 != -1)
			{
				iVar1 = Global_262145.f_4140;
			}
			else
			{
				iVar1 = 145;
			}
			break;
		
		case 4:
			iVar6 = 1;
			iVar7 = 3;
			if (Global_262145.f_4141 != -1)
			{
				iVar1 = Global_262145.f_4141;
			}
			else
			{
				iVar1 = 130;
			}
			break;
		
		case 5:
			iVar6 = 1;
			iVar7 = 4;
			if (Global_262145.f_4142 != -1)
			{
				iVar1 = Global_262145.f_4142;
			}
			else
			{
				iVar1 = 265;
			}
			break;
		
		case 6:
			iVar6 = 1;
			iVar7 = 5;
			if (Global_262145.f_4143 != -1)
			{
				iVar1 = Global_262145.f_4143;
			}
			else
			{
				iVar1 = 280;
			}
			break;
		
		case 7:
			iVar6 = 2;
			iVar7 = 0;
			if (Global_262145.f_4144 != -1)
			{
				iVar1 = Global_262145.f_4144;
			}
			else
			{
				iVar1 = 295;
			}
			break;
		
		case 8:
			iVar6 = 2;
			iVar7 = 1;
			if (Global_262145.f_4145 != -1)
			{
				iVar1 = Global_262145.f_4145;
			}
			else
			{
				iVar1 = 95;
			}
			break;
		
		case 9:
			iVar6 = 2;
			iVar7 = 2;
			if (Global_262145.f_4146 != -1)
			{
				iVar1 = Global_262145.f_4146;
			}
			else
			{
				iVar1 = 85;
			}
			break;
		
		case 10:
			iVar6 = 2;
			iVar7 = 3;
			if (Global_262145.f_4147 != -1)
			{
				iVar1 = Global_262145.f_4147;
			}
			else
			{
				iVar1 = 95;
			}
			break;
		
		case 11:
			iVar6 = 2;
			iVar7 = 4;
			if (Global_262145.f_4148 != -1)
			{
				iVar1 = Global_262145.f_4148;
			}
			else
			{
				iVar1 = 105;
			}
			break;
		
		case 12:
			iVar6 = 2;
			iVar7 = 5;
			if (Global_262145.f_4149 != -1)
			{
				iVar1 = Global_262145.f_4149;
			}
			else
			{
				iVar1 = 95;
			}
			break;
		
		case 13:
			iVar6 = 3;
			iVar7 = 0;
			if (Global_262145.f_4150 != -1)
			{
				iVar1 = Global_262145.f_4150;
			}
			else
			{
				iVar1 = 35;
			}
			break;
		
		case 14:
			iVar6 = 3;
			iVar7 = 1;
			if (Global_262145.f_4151 != -1)
			{
				iVar1 = Global_262145.f_4151;
			}
			else
			{
				iVar1 = 35;
			}
			break;
		
		case 15:
			iVar6 = 3;
			iVar7 = 2;
			if (Global_262145.f_4152 != -1)
			{
				iVar1 = Global_262145.f_4152;
			}
			else
			{
				iVar1 = 30;
			}
			break;
		
		case 16:
			iVar6 = 3;
			iVar7 = 3;
			if (Global_262145.f_4153 != -1)
			{
				iVar1 = Global_262145.f_4153;
			}
			else
			{
				iVar1 = 40;
			}
			break;
		
		case 17:
			iVar6 = 3;
			iVar7 = 4;
			if (Global_262145.f_4154 != -1)
			{
				iVar1 = Global_262145.f_4154;
			}
			else
			{
				iVar1 = 35;
			}
			break;
		
		case 18:
			iVar6 = 3;
			iVar7 = 5;
			if (Global_262145.f_4155 != -1)
			{
				iVar1 = Global_262145.f_4155;
			}
			else
			{
				iVar1 = 35;
			}
			break;
		
		case 19:
			iVar6 = 4;
			iVar7 = 0;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 20:
			iVar6 = 4;
			iVar7 = 1;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 21:
			iVar6 = 4;
			iVar7 = 2;
			if (Global_262145.f_4156 != -1)
			{
				iVar1 = Global_262145.f_4156;
			}
			else
			{
				iVar1 = 355;
			}
			break;
		
		case 22:
			iVar6 = 4;
			iVar7 = 3;
			if (Global_262145.f_4157 != -1)
			{
				iVar1 = Global_262145.f_4157;
			}
			else
			{
				iVar1 = 370;
			}
			break;
		
		case 23:
			iVar6 = 4;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 24:
			iVar6 = 4;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 25:
			iVar6 = 5;
			iVar7 = 0;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 26:
			iVar6 = 5;
			iVar7 = 1;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 27:
			iVar6 = 5;
			iVar7 = 2;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 28:
			iVar6 = 5;
			iVar7 = 3;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 29:
			iVar6 = 5;
			iVar7 = 4;
			if (Global_262145.f_4158 != -1)
			{
				iVar1 = Global_262145.f_4158;
			}
			else
			{
				iVar1 = 110;
			}
			break;
		
		case 30:
			iVar6 = 5;
			iVar7 = 5;
			if (Global_262145.f_4159 != -1)
			{
				iVar1 = Global_262145.f_4159;
			}
			else
			{
				iVar1 = 160;
			}
			break;
		
		case 31:
			iVar6 = 6;
			iVar7 = 0;
			if (Global_262145.f_4160 != -1)
			{
				iVar1 = Global_262145.f_4160;
			}
			else
			{
				iVar1 = 385;
			}
			break;
		
		case 32:
			iVar6 = 6;
			iVar7 = 1;
			if (Global_262145.f_4161 != -1)
			{
				iVar1 = Global_262145.f_4161;
			}
			else
			{
				iVar1 = 190;
			}
			break;
		
		case 33:
			iVar6 = 6;
			iVar7 = 2;
			if (Global_262145.f_4162 != -1)
			{
				iVar1 = Global_262145.f_4162;
			}
			else
			{
				iVar1 = 235;
			}
			break;
		
		case 34:
			iVar6 = 6;
			iVar7 = 3;
			if (Global_262145.f_4163 != -1)
			{
				iVar1 = Global_262145.f_4163;
			}
			else
			{
				iVar1 = 220;
			}
			break;
		
		case 35:
			iVar6 = 6;
			iVar7 = 4;
			if (Global_262145.f_4164 != -1)
			{
				iVar1 = Global_262145.f_4164;
			}
			else
			{
				iVar1 = 250;
			}
			break;
		
		case 36:
			iVar6 = 6;
			iVar7 = 5;
			if (Global_262145.f_4165 != -1)
			{
				iVar1 = Global_262145.f_4165;
			}
			else
			{
				iVar1 = 205;
			}
			break;
		
		case 37:
			iVar6 = 7;
			iVar7 = 0;
			if (Global_262145.f_4166 != -1)
			{
				iVar1 = Global_262145.f_4166;
			}
			else
			{
				iVar1 = 445;
			}
			break;
		
		case 38:
			iVar6 = 7;
			iVar7 = 1;
			if (Global_262145.f_4167 != -1)
			{
				iVar1 = Global_262145.f_4167;
			}
			else
			{
				iVar1 = 175;
			}
			break;
		
		case 39:
			iVar6 = 7;
			iVar7 = 2;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 40:
			iVar6 = 7;
			iVar7 = 3;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 41:
			iVar6 = 7;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 42:
			iVar6 = 7;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 43:
			iVar6 = 8;
			iVar7 = 0;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 44:
			iVar6 = 8;
			iVar7 = 1;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 45:
			iVar6 = 8;
			iVar7 = 2;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 46:
			iVar6 = 8;
			iVar7 = 3;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 47:
			iVar6 = 8;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 48:
			iVar6 = 8;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 49:
			iVar6 = 9;
			iVar7 = 0;
			if (Global_262145.f_4168 != -1)
			{
				iVar1 = Global_262145.f_4168;
			}
			else
			{
				iVar1 = 340;
			}
			break;
		
		case 50:
			iVar6 = 9;
			iVar7 = 1;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 51:
			iVar6 = 9;
			iVar7 = 2;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 52:
			iVar6 = 9;
			iVar7 = 3;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 53:
			iVar6 = 9;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 54:
			iVar6 = 9;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		default:
			Global_69518[0 /*14*/].f_5 = 4;
			func_649(iVar10, iParam0, 55);
			if (Global_69518[0 /*14*/].f_7 > 0)
			{
				Global_69518[0 /*14*/].f_7 = system::round((system::to_float(Global_69518[0 /*14*/].f_7) * Global_279748.f_58));
			}
			return;
			break;
	}
	iVar1 = system::round((system::to_float(iVar1) * Global_279748.f_58));
	StringCopy(&Var2, "T_FMF_", 16);
	StringIntConCat(&Var2, iVar6, 16);
	StringConCat(&Var2, "_", 16);
	StringIntConCat(&Var2, iVar7, 16);
	func_641(&(Global_69518[0 /*14*/]), iVar10, iParam0, &Var2, iVar6, iVar7, iVar1, iVar0, iVar8, iVar9, 0);
}

void func_655(int iParam0)//Position - 0x52EFB
{
	int iVar0;
	int iVar1;
	struct<2> Var2;
	int iVar6;
	int iVar7;
	int iVar8;
	int iVar9;
	int iVar10;
	int iVar11;
	
	iVar0 = false;
	iVar1 = 10;
	iVar6 = 0;
	iVar7 = 0;
	iVar8 = -1;
	iVar9 = 2;
	iVar10 = 1;
	switch (iParam0)
	{
		case 0:
			iVar6 = 0;
			iVar7 = 0;
			iVar1 = 0;
			break;
		
		case 1:
			iVar6 = 1;
			iVar7 = 0;
			iVar1 = 965;
			break;
		
		case 2:
			iVar6 = 1;
			iVar7 = 1;
			iVar1 = 960;
			break;
		
		case 3:
			iVar6 = 1;
			iVar7 = 2;
			iVar1 = 9500;
			break;
		
		case 4:
			iVar6 = 1;
			iVar7 = 3;
			iVar1 = 975;
			break;
		
		case 5:
			iVar6 = 2;
			iVar7 = 0;
			iVar1 = 1185;
			break;
		
		case 6:
			iVar6 = 2;
			iVar7 = 1;
			iVar1 = 15000;
			break;
		
		case 7:
			iVar6 = 2;
			iVar7 = 2;
			iVar1 = 1115;
			break;
		
		case 8:
			iVar6 = 2;
			iVar7 = 3;
			iVar1 = 1105;
			break;
		
		case 9:
			iVar6 = 3;
			iVar7 = 0;
			iVar1 = 25000;
			break;
		
		case 10:
			iVar6 = 4;
			iVar7 = 0;
			iVar1 = 510;
			break;
		
		case 11:
			iVar6 = 4;
			iVar7 = 1;
			iVar1 = 530;
			break;
		
		case 12:
			iVar6 = 4;
			iVar7 = 2;
			iVar1 = 5500;
			break;
		
		case 13:
			iVar6 = 4;
			iVar7 = 3;
			iVar1 = 535;
			break;
		
		case 14:
			iVar6 = 5;
			iVar7 = 0;
			iVar1 = 1510;
			break;
		
		case 15:
			iVar6 = 5;
			iVar7 = 1;
			iVar1 = 1530;
			break;
		
		case 16:
			iVar6 = 5;
			iVar7 = 2;
			iVar1 = 14500;
			break;
		
		case 17:
			iVar6 = 5;
			iVar7 = 3;
			iVar1 = 13000;
			break;
		
		case 18:
			iVar6 = 6;
			iVar7 = 0;
			iVar1 = 8000;
			break;
		
		case 19:
			iVar6 = 6;
			iVar7 = 1;
			iVar1 = 1265;
			break;
		
		case 20:
			iVar6 = 6;
			iVar7 = 2;
			iVar1 = 8500;
			break;
		
		case 21:
			iVar6 = 6;
			iVar7 = 3;
			iVar1 = 1210;
			break;
		
		case 22:
			iVar6 = 7;
			iVar7 = 0;
			iVar1 = 2360;
			break;
		
		case 23:
			iVar6 = 7;
			iVar7 = 1;
			iVar1 = 22500;
			break;
		
		case 24:
			iVar6 = 7;
			iVar7 = 2;
			iVar1 = 2375;
			break;
		
		case 25:
			iVar6 = 7;
			iVar7 = 3;
			iVar1 = 2485;
			break;
		
		default:
			Global_69518[0 /*14*/].f_5 = 4;
			func_649(iVar10, iParam0, 26);
			if (Global_69518[0 /*14*/].f_7 > 0)
			{
				Global_69518[0 /*14*/].f_7 = system::round((system::to_float(Global_69518[0 /*14*/].f_7) * Global_279748.f_29));
			}
			return;
			break;
	}
	StringCopy(&Var2, "M_FMF_", 16);
	StringIntConCat(&Var2, iVar6, 16);
	StringConCat(&Var2, "_", 16);
	StringIntConCat(&Var2, iVar7, 16);
	iVar11 = (iParam0 - 1);
	if (iVar11 >= 0 && iVar11 < 26)
	{
		iVar1 = system::round(((system::to_float(iVar1) * Global_262145.f_2014[iVar11]) * Global_279748.f_29));
	}
	func_641(&(Global_69518[0 /*14*/]), iVar10, iParam0, &Var2, iVar6, iVar7, iVar1, iVar0, iVar8, iVar9, 0);
}

void func_656(int iParam0)//Position - 0x531DE
{
	int iVar0;
	int iVar1;
	struct<2> Var2;
	int iVar6;
	int iVar7;
	int iVar8;
	int iVar9;
	int iVar10;
	int iVar11;
	
	iVar0 = false;
	iVar1 = 10;
	iVar6 = 0;
	iVar7 = 0;
	iVar8 = -1;
	iVar9 = 2;
	iVar10 = 6;
	switch (iParam0)
	{
		case 0:
			iVar6 = 0;
			iVar7 = 0;
			iVar1 = 1765;
			break;
		
		case 1:
			iVar6 = 0;
			iVar7 = 1;
			iVar1 = 760;
			break;
		
		case 2:
			iVar6 = 0;
			iVar7 = 2;
			iVar1 = 760;
			break;
		
		case 3:
			iVar6 = 0;
			iVar7 = 3;
			iVar1 = 765;
			break;
		
		case 4:
			iVar6 = 0;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 5:
			iVar6 = 0;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 6:
			iVar6 = 0;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 7:
			iVar6 = 0;
			iVar7 = 7;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 8:
			iVar6 = 0;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 9:
			iVar6 = 0;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 10:
			iVar6 = 0;
			iVar7 = 10;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 11:
			iVar6 = 0;
			iVar7 = 11;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 12:
			iVar6 = 0;
			iVar7 = 12;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 13:
			iVar6 = 0;
			iVar7 = 13;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 14:
			iVar6 = 0;
			iVar7 = 14;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 15:
			iVar6 = 0;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 16:
			iVar6 = 1;
			iVar7 = 0;
			iVar1 = 85;
			break;
		
		case 17:
			iVar6 = 1;
			iVar7 = 1;
			iVar1 = 80;
			break;
		
		case 18:
			iVar6 = 1;
			iVar7 = 2;
			iVar1 = 90;
			break;
		
		case 19:
			iVar6 = 1;
			iVar7 = 3;
			iVar1 = 90;
			break;
		
		case 20:
			iVar6 = 1;
			iVar7 = 4;
			iVar1 = 95;
			break;
		
		case 21:
			iVar6 = 1;
			iVar7 = 5;
			iVar1 = 100;
			break;
		
		case 22:
			iVar6 = 1;
			iVar7 = 6;
			iVar1 = 60;
			break;
		
		case 23:
			iVar6 = 1;
			iVar7 = 7;
			iVar1 = 55;
			break;
		
		case 24:
			iVar6 = 1;
			iVar7 = 8;
			iVar1 = 100;
			break;
		
		case 25:
			iVar6 = 1;
			iVar7 = 9;
			iVar1 = 1255;
			break;
		
		case 26:
			iVar6 = 1;
			iVar7 = 10;
			iVar1 = 65;
			break;
		
		case 27:
			iVar6 = 1;
			iVar7 = 11;
			iVar1 = 1050;
			break;
		
		case 28:
			iVar6 = 1;
			iVar7 = 12;
			iVar1 = 1895;
			break;
		
		case 29:
			iVar6 = 1;
			iVar7 = 13;
			iVar1 = 185;
			break;
		
		case 30:
			iVar6 = 1;
			iVar7 = 14;
			iVar1 = 190;
			break;
		
		case 31:
			iVar6 = 1;
			iVar7 = 15;
			iVar1 = 115;
			break;
	}
	switch (iParam0)
	{
		case 32:
			iVar6 = 2;
			iVar7 = 0;
			iVar1 = 415;
			break;
		
		case 33:
			iVar6 = 2;
			iVar7 = 1;
			iVar1 = 115;
			break;
		
		case 34:
			iVar6 = 2;
			iVar7 = 2;
			iVar1 = 135;
			break;
		
		case 35:
			iVar6 = 2;
			iVar7 = 3;
			iVar1 = 125;
			break;
		
		case 36:
			iVar6 = 2;
			iVar7 = 4;
			iVar1 = 105;
			break;
		
		case 37:
			iVar6 = 2;
			iVar7 = 5;
			iVar1 = 130;
			break;
		
		case 38:
			iVar6 = 2;
			iVar7 = 6;
			iVar1 = 3530;
			break;
		
		case 39:
			iVar6 = 2;
			iVar7 = 7;
			iVar1 = 2610;
			break;
		
		case 40:
			iVar6 = 2;
			iVar7 = 8;
			iVar1 = 1295;
			break;
		
		case 41:
			iVar6 = 2;
			iVar7 = 9;
			iVar1 = 120;
			break;
		
		case 42:
			iVar6 = 2;
			iVar7 = 10;
			iVar1 = 160;
			break;
		
		case 43:
			iVar6 = 2;
			iVar7 = 11;
			iVar1 = 160;
			break;
		
		case 44:
			iVar6 = 2;
			iVar7 = 12;
			iVar1 = 145;
			break;
		
		case 45:
			iVar6 = 2;
			iVar7 = 13;
			iVar1 = 105;
			break;
		
		case 46:
			iVar6 = 2;
			iVar7 = 14;
			iVar1 = 115;
			break;
		
		case 47:
			iVar6 = 2;
			iVar7 = 15;
			iVar1 = 150;
			break;
		
		case 48:
			iVar6 = 3;
			iVar7 = 0;
			iVar1 = 540;
			break;
		
		case 49:
			iVar6 = 3;
			iVar7 = 1;
			iVar1 = 115;
			break;
		
		case 50:
			iVar6 = 3;
			iVar7 = 2;
			iVar1 = 110;
			break;
		
		case 51:
			iVar6 = 3;
			iVar7 = 3;
			iVar1 = 120;
			break;
		
		case 52:
			iVar6 = 3;
			iVar7 = 4;
			iVar1 = 460;
			break;
		
		case 53:
			iVar6 = 3;
			iVar7 = 5;
			iVar1 = 120;
			break;
		
		case 54:
			iVar6 = 3;
			iVar7 = 6;
			iVar1 = 120;
			break;
		
		case 55:
			iVar6 = 3;
			iVar7 = 7;
			iVar1 = 415;
			break;
		
		case 56:
			iVar6 = 3;
			iVar7 = 8;
			iVar1 = 135;
			break;
		
		case 57:
			iVar6 = 3;
			iVar7 = 9;
			iVar1 = 140;
			break;
		
		case 58:
			iVar6 = 3;
			iVar7 = 10;
			iVar1 = 160;
			break;
		
		case 59:
			iVar6 = 3;
			iVar7 = 11;
			iVar1 = 120;
			break;
		
		case 60:
			iVar6 = 3;
			iVar7 = 12;
			iVar1 = 1025;
			break;
		
		case 61:
			iVar6 = 3;
			iVar7 = 13;
			iVar1 = 1560;
			break;
		
		case 62:
			iVar6 = 3;
			iVar7 = 14;
			iVar1 = 145;
			break;
		
		case 63:
			iVar6 = 3;
			iVar7 = 15;
			iVar1 = 120;
			break;
	}
	switch (iParam0)
	{
		case 64:
			iVar6 = 4;
			iVar7 = 0;
			iVar1 = 365;
			break;
		
		case 65:
			iVar6 = 4;
			iVar7 = 1;
			iVar1 = 100;
			break;
		
		case 66:
			iVar6 = 4;
			iVar7 = 2;
			iVar1 = 65;
			break;
		
		case 67:
			iVar6 = 4;
			iVar7 = 3;
			iVar1 = 85;
			break;
		
		case 68:
			iVar6 = 4;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 69:
			iVar6 = 4;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 70:
			iVar6 = 4;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 71:
			iVar6 = 4;
			iVar7 = 7;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 72:
			iVar6 = 4;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 73:
			iVar6 = 4;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 74:
			iVar6 = 4;
			iVar7 = 10;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 75:
			iVar6 = 4;
			iVar7 = 11;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 76:
			iVar6 = 4;
			iVar7 = 12;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 77:
			iVar6 = 4;
			iVar7 = 13;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 78:
			iVar6 = 4;
			iVar7 = 14;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 79:
			iVar6 = 4;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 80:
			iVar6 = 5;
			iVar7 = 0;
			iVar1 = 50;
			break;
		
		case 81:
			iVar6 = 5;
			iVar7 = 1;
			iVar1 = 35;
			break;
		
		case 82:
			iVar6 = 5;
			iVar7 = 2;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 83:
			iVar6 = 5;
			iVar7 = 3;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 84:
			iVar6 = 5;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 85:
			iVar6 = 5;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 86:
			iVar6 = 5;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 87:
			iVar6 = 5;
			iVar7 = 7;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 88:
			iVar6 = 5;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 89:
			iVar6 = 5;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 90:
			iVar6 = 5;
			iVar7 = 10;
			iVar1 = 50;
			break;
		
		case 91:
			iVar6 = 5;
			iVar7 = 11;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 92:
			iVar6 = 5;
			iVar7 = 12;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 93:
			iVar6 = 5;
			iVar7 = 13;
			iVar1 = 50;
			break;
		
		case 94:
			iVar6 = 5;
			iVar7 = 14;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 95:
			iVar6 = 5;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
	}
	switch (iParam0)
	{
		case 96:
			iVar6 = 6;
			iVar7 = 0;
			iVar1 = 2395;
			break;
		
		case 97:
			iVar6 = 6;
			iVar7 = 1;
			iVar1 = 3675;
			break;
		
		case 98:
			iVar6 = 6;
			iVar7 = 2;
			iVar1 = 320;
			break;
		
		case 99:
			iVar6 = 6;
			iVar7 = 3;
			iVar1 = 3875;
			break;
		
		case 100:
			iVar6 = 6;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 101:
			iVar6 = 6;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 102:
			iVar6 = 6;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 103:
			iVar6 = 6;
			iVar7 = 7;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 104:
			iVar6 = 6;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 105:
			iVar6 = 6;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 106:
			iVar6 = 6;
			iVar7 = 10;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 107:
			iVar6 = 6;
			iVar7 = 11;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 108:
			iVar6 = 6;
			iVar7 = 12;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 109:
			iVar6 = 6;
			iVar7 = 13;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 110:
			iVar6 = 6;
			iVar7 = 14;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 111:
			iVar6 = 6;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 112:
			iVar6 = 7;
			iVar7 = 0;
			iVar1 = 2050;
			break;
		
		case 113:
			iVar6 = 7;
			iVar7 = 1;
			iVar1 = 375;
			break;
		
		case 114:
			iVar6 = 7;
			iVar7 = 2;
			iVar1 = 2105;
			break;
		
		case 115:
			iVar6 = 7;
			iVar7 = 3;
			iVar1 = 345;
			break;
		
		case 116:
			iVar6 = 7;
			iVar7 = 4;
			iVar1 = 380;
			break;
		
		case 117:
			iVar6 = 7;
			iVar7 = 5;
			iVar1 = 340;
			break;
		
		case 118:
			iVar6 = 7;
			iVar7 = 6;
			iVar1 = 385;
			break;
		
		case 119:
			iVar6 = 7;
			iVar7 = 7;
			iVar1 = 4135;
			break;
		
		case 120:
			iVar6 = 7;
			iVar7 = 8;
			iVar1 = 370;
			break;
		
		case 121:
			iVar6 = 7;
			iVar7 = 9;
			iVar1 = 375;
			break;
		
		case 122:
			iVar6 = 7;
			iVar7 = 10;
			iVar1 = 385;
			break;
		
		case 123:
			iVar6 = 7;
			iVar7 = 11;
			iVar1 = 365;
			break;
		
		case 124:
			iVar6 = 7;
			iVar7 = 12;
			iVar1 = 325;
			break;
		
		case 125:
			iVar6 = 7;
			iVar7 = 13;
			iVar1 = 325;
			break;
		
		case 126:
			iVar6 = 7;
			iVar7 = 14;
			iVar1 = 370;
			break;
		
		case 127:
			iVar6 = 7;
			iVar7 = 15;
			iVar1 = 330;
			break;
	}
	switch (iParam0)
	{
		case 128:
			iVar6 = 8;
			iVar7 = 0;
			iVar1 = 1025;
			break;
		
		case 129:
			iVar6 = 8;
			iVar7 = 1;
			iVar1 = 390;
			break;
		
		case 130:
			iVar6 = 8;
			iVar7 = 2;
			iVar1 = 400;
			break;
		
		case 131:
			iVar6 = 8;
			iVar7 = 3;
			iVar1 = 390;
			break;
		
		case 132:
			iVar6 = 8;
			iVar7 = 4;
			iVar1 = 365;
			break;
		
		case 133:
			iVar6 = 8;
			iVar7 = 5;
			iVar1 = 410;
			break;
		
		case 134:
			iVar6 = 8;
			iVar7 = 6;
			iVar1 = 4125;
			break;
		
		case 135:
			iVar6 = 8;
			iVar7 = 7;
			iVar1 = 4365;
			break;
		
		case 136:
			iVar6 = 8;
			iVar7 = 8;
			iVar1 = 5365;
			break;
		
		case 137:
			iVar6 = 8;
			iVar7 = 9;
			iVar1 = 6225;
			break;
		
		case 138:
			iVar6 = 8;
			iVar7 = 10;
			iVar1 = 3755;
			break;
		
		case 139:
			iVar6 = 8;
			iVar7 = 11;
			iVar1 = 405;
			break;
		
		case 140:
			iVar6 = 8;
			iVar7 = 12;
			iVar1 = 4115;
			break;
		
		case 141:
			iVar6 = 8;
			iVar7 = 13;
			iVar1 = 2240;
			break;
		
		case 142:
			iVar6 = 8;
			iVar7 = 14;
			iVar1 = 3850;
			break;
		
		case 143:
			iVar6 = 8;
			iVar7 = 15;
			iVar1 = 3110;
			break;
		
		case 144:
			iVar6 = 9;
			iVar7 = 0;
			iVar1 = 1950;
			break;
		
		case 145:
			iVar6 = 9;
			iVar7 = 1;
			iVar1 = 455;
			break;
		
		case 146:
			iVar6 = 9;
			iVar7 = 2;
			iVar1 = 405;
			break;
		
		case 147:
			iVar6 = 9;
			iVar7 = 3;
			iVar1 = 410;
			break;
		
		case 148:
			iVar6 = 9;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 149:
			iVar6 = 9;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 150:
			iVar6 = 9;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 151:
			iVar6 = 9;
			iVar7 = 7;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 152:
			iVar6 = 9;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 153:
			iVar6 = 9;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 154:
			iVar6 = 9;
			iVar7 = 10;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 155:
			iVar6 = 9;
			iVar7 = 11;
			iVar1 = 415;
			break;
		
		case 156:
			iVar6 = 9;
			iVar7 = 12;
			iVar1 = 4425;
			break;
		
		case 157:
			iVar6 = 9;
			iVar7 = 13;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 158:
			iVar6 = 9;
			iVar7 = 14;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 159:
			iVar6 = 9;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
	}
	switch (iParam0)
	{
		case 160:
			iVar6 = 10;
			iVar7 = 0;
			iVar1 = 115;
			break;
		
		case 161:
			iVar6 = 10;
			iVar7 = 1;
			iVar1 = 65;
			break;
		
		case 162:
			iVar6 = 10;
			iVar7 = 2;
			iVar1 = 85;
			break;
		
		case 163:
			iVar6 = 10;
			iVar7 = 3;
			iVar1 = 75;
			break;
		
		case 164:
			iVar6 = 10;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 165:
			iVar6 = 10;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 166:
			iVar6 = 10;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 167:
			iVar6 = 10;
			iVar7 = 7;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 168:
			iVar6 = 10;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 169:
			iVar6 = 10;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 170:
			iVar6 = 10;
			iVar7 = 10;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 171:
			iVar6 = 10;
			iVar7 = 11;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 172:
			iVar6 = 10;
			iVar7 = 12;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 173:
			iVar6 = 10;
			iVar7 = 13;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 174:
			iVar6 = 10;
			iVar7 = 14;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 175:
			iVar6 = 10;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 176:
			iVar6 = 11;
			iVar7 = 0;
			iVar1 = 115;
			break;
		
		case 177:
			iVar6 = 11;
			iVar7 = 1;
			iVar1 = 360;
			break;
		
		case 178:
			iVar6 = 11;
			iVar7 = 2;
			iVar1 = 135;
			break;
		
		case 179:
			iVar6 = 11;
			iVar7 = 3;
			iVar1 = 175;
			break;
		
		case 180:
			iVar6 = 11;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 181:
			iVar6 = 11;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 182:
			iVar6 = 11;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 183:
			iVar6 = 11;
			iVar7 = 7;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 184:
			iVar6 = 11;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 185:
			iVar6 = 11;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 186:
			iVar6 = 11;
			iVar7 = 10;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 187:
			iVar6 = 11;
			iVar7 = 11;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 188:
			iVar6 = 11;
			iVar7 = 12;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 189:
			iVar6 = 11;
			iVar7 = 13;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 190:
			iVar6 = 11;
			iVar7 = 14;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 191:
			iVar6 = 11;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 192:
			iVar6 = 12;
			iVar7 = 0;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 193:
			iVar6 = 12;
			iVar7 = 1;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 194:
			iVar6 = 12;
			iVar7 = 2;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 195:
			iVar6 = 12;
			iVar7 = 3;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 196:
			iVar6 = 12;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 197:
			iVar6 = 12;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 198:
			iVar6 = 12;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 199:
			iVar6 = 12;
			iVar7 = 7;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 200:
			iVar6 = 12;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 201:
			iVar6 = 12;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 202:
			iVar6 = 12;
			iVar7 = 10;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 203:
			iVar6 = 12;
			iVar7 = 11;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 204:
			iVar6 = 12;
			iVar7 = 12;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 205:
			iVar6 = 12;
			iVar7 = 13;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 206:
			iVar6 = 12;
			iVar7 = 14;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 207:
			iVar6 = 12;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
	}
	switch (iParam0)
	{
		case 208:
			iVar6 = 13;
			iVar7 = 0;
			iVar1 = 675;
			break;
		
		case 209:
			iVar6 = 13;
			iVar7 = 1;
			iVar1 = 100;
			break;
		
		case 210:
			iVar6 = 13;
			iVar7 = 2;
			iVar1 = 400;
			break;
		
		case 211:
			iVar6 = 13;
			iVar7 = 3;
			iVar1 = 340;
			break;
		
		case 212:
			iVar6 = 13;
			iVar7 = 4;
			iVar1 = 195;
			break;
		
		case 213:
			iVar6 = 13;
			iVar7 = 5;
			iVar1 = 215;
			break;
		
		case 214:
			iVar6 = 13;
			iVar7 = 6;
			iVar1 = 120;
			break;
		
		case 215:
			iVar6 = 13;
			iVar7 = 7;
			iVar1 = 165;
			break;
		
		case 216:
			iVar6 = 13;
			iVar7 = 8;
			iVar1 = 100;
			break;
		
		case 217:
			iVar6 = 13;
			iVar7 = 9;
			iVar1 = 1040;
			break;
		
		case 218:
			iVar6 = 13;
			iVar7 = 10;
			iVar1 = 100;
			break;
		
		case 219:
			iVar6 = 13;
			iVar7 = 11;
			iVar1 = 120;
			break;
		
		case 220:
			iVar6 = 13;
			iVar7 = 12;
			iVar1 = 210;
			break;
		
		case 221:
			iVar6 = 13;
			iVar7 = 13;
			iVar1 = 205;
			break;
		
		case 222:
			iVar6 = 13;
			iVar7 = 14;
			iVar1 = 200;
			break;
		
		case 223:
			iVar6 = 13;
			iVar7 = 15;
			iVar1 = 100;
			break;
		
		case 224:
			iVar6 = 14;
			iVar7 = 0;
			iVar1 = 1420;
			break;
		
		case 225:
			iVar6 = 14;
			iVar7 = 1;
			iVar1 = 445;
			break;
		
		case 226:
			iVar6 = 14;
			iVar7 = 2;
			iVar1 = 435;
			break;
		
		case 227:
			iVar6 = 14;
			iVar7 = 3;
			iVar1 = 420;
			break;
		
		case 228:
			iVar6 = 14;
			iVar7 = 4;
			iVar1 = 425;
			break;
		
		case 229:
			iVar6 = 14;
			iVar7 = 5;
			iVar1 = 435;
			break;
		
		case 230:
			iVar6 = 14;
			iVar7 = 6;
			iVar1 = 425;
			break;
		
		case 231:
			iVar6 = 14;
			iVar7 = 7;
			iVar1 = 430;
			break;
		
		case 232:
			iVar6 = 14;
			iVar7 = 8;
			iVar1 = 3215;
			break;
		
		case 233:
			iVar6 = 14;
			iVar7 = 9;
			iVar1 = 3320;
			break;
		
		case 234:
			iVar6 = 14;
			iVar7 = 10;
			iVar1 = 440;
			break;
		
		case 235:
			iVar6 = 14;
			iVar7 = 11;
			iVar1 = 440;
			break;
		
		case 236:
			iVar6 = 14;
			iVar7 = 12;
			iVar1 = 445;
			break;
		
		case 237:
			iVar6 = 14;
			iVar7 = 13;
			iVar1 = 450;
			break;
		
		case 238:
			iVar6 = 14;
			iVar7 = 14;
			iVar1 = 450;
			break;
		
		case 239:
			iVar6 = 14;
			iVar7 = 15;
			iVar1 = 1255;
			break;
		
		case 240:
			iVar6 = 15;
			iVar7 = 0;
			iVar1 = 750;
			break;
		
		case 241:
			iVar6 = 15;
			iVar7 = 1;
			iVar1 = 165;
			break;
		
		case 242:
			iVar6 = 15;
			iVar7 = 2;
			iVar1 = 460;
			break;
		
		case 243:
			iVar6 = 15;
			iVar7 = 3;
			iVar1 = 190;
			break;
		
		case 244:
			iVar6 = 15;
			iVar7 = 4;
			iVar1 = 195;
			break;
		
		case 245:
			iVar6 = 15;
			iVar7 = 5;
			iVar1 = 200;
			break;
		
		case 246:
			iVar6 = 15;
			iVar7 = 6;
			iVar1 = 205;
			break;
		
		case 247:
			iVar6 = 15;
			iVar7 = 7;
			iVar1 = 210;
			break;
		
		case 248:
			iVar6 = 15;
			iVar7 = 8;
			iVar1 = 215;
			break;
		
		case 249:
			iVar6 = 15;
			iVar7 = 9;
			iVar1 = 220;
			break;
		
		case 250:
			iVar6 = 15;
			iVar7 = 10;
			iVar1 = 455;
			break;
		
		case 251:
			iVar6 = 15;
			iVar7 = 11;
			iVar1 = 175;
			break;
		
		case 252:
			iVar6 = 15;
			iVar7 = 12;
			iVar1 = 800;
			break;
		
		case 253:
			iVar6 = 15;
			iVar7 = 13;
			iVar1 = 790;
			break;
		
		case 254:
			iVar6 = 15;
			iVar7 = 14;
			iVar1 = 175;
			break;
		
		case 255:
			iVar6 = 15;
			iVar7 = 15;
			iVar1 = 190;
			break;
	}
	StringCopy(&Var2, "F_FMF_", 16);
	StringIntConCat(&Var2, iVar6, 16);
	StringConCat(&Var2, "_", 16);
	StringIntConCat(&Var2, iVar7, 16);
	iVar11 = iParam0;
	if (iVar11 >= 0 && iVar11 < 256)
	{
		iVar1 = system::round(((system::to_float(iVar1) * Global_262145.f_1757[iVar11]) * Global_279748.f_25));
	}
	if (iParam0 >= 256)
	{
		Global_69518[0 /*14*/].f_5 = 4;
		func_649(iVar10, iParam0, 256);
		if (Global_69518[0 /*14*/].f_7 > 0)
		{
			Global_69518[0 /*14*/].f_7 = system::round((system::to_float(Global_69518[0 /*14*/].f_7) * Global_279748.f_25));
		}
	}
	else
	{
		func_641(&(Global_69518[0 /*14*/]), iVar10, iParam0, &Var2, iVar6, iVar7, iVar1, iVar0, iVar8, iVar9, 0);
	}
}

void func_657(int iParam0)//Position - 0x548E6
{
	int iVar0;
	int iVar1;
	struct<2> Var2;
	int iVar6;
	int iVar7;
	int iVar8;
	int iVar9;
	int iVar10;
	int iVar11;
	
	iVar0 = false;
	iVar1 = 10;
	iVar6 = 0;
	iVar7 = 0;
	iVar8 = -1;
	iVar9 = 2;
	iVar10 = 4;
	switch (iParam0)
	{
		case 0:
			iVar6 = 0;
			iVar7 = 0;
			iVar1 = 270;
			break;
		
		case 1:
			iVar6 = 0;
			iVar7 = 1;
			iVar1 = 750;
			break;
		
		case 2:
			iVar6 = 0;
			iVar7 = 2;
			iVar1 = 450;
			break;
		
		case 3:
			iVar6 = 0;
			iVar7 = 3;
			iVar1 = 4875;
			break;
		
		case 4:
			iVar6 = 0;
			iVar7 = 4;
			iVar1 = 1760;
			break;
		
		case 5:
			iVar6 = 0;
			iVar7 = 5;
			iVar1 = 1090;
			break;
		
		case 6:
			iVar6 = 0;
			iVar7 = 6;
			iVar1 = 2465;
			break;
		
		case 7:
			iVar6 = 0;
			iVar7 = 7;
			iVar1 = 305;
			break;
		
		case 8:
			iVar6 = 0;
			iVar7 = 8;
			iVar1 = 290;
			break;
		
		case 9:
			iVar6 = 0;
			iVar7 = 9;
			iVar1 = 410;
			break;
		
		case 10:
			iVar6 = 0;
			iVar7 = 10;
			iVar1 = 255;
			break;
		
		case 11:
			iVar6 = 0;
			iVar7 = 11;
			iVar1 = 255;
			break;
		
		case 12:
			iVar6 = 0;
			iVar7 = 12;
			iVar1 = 405;
			break;
		
		case 13:
			iVar6 = 0;
			iVar7 = 13;
			iVar1 = 5000;
			break;
		
		case 14:
			iVar6 = 0;
			iVar7 = 14;
			iVar1 = 4480;
			break;
		
		case 15:
			iVar6 = 0;
			iVar7 = 15;
			iVar1 = 4335;
			break;
	}
	switch (iParam0)
	{
		case 16:
			iVar6 = 1;
			iVar7 = 0;
			iVar1 = 375;
			break;
		
		case 17:
			iVar6 = 1;
			iVar7 = 1;
			iVar1 = 265;
			break;
		
		case 18:
			iVar6 = 1;
			iVar7 = 2;
			iVar1 = 275;
			break;
		
		case 19:
			iVar6 = 1;
			iVar7 = 3;
			iVar1 = 280;
			break;
		
		case 20:
			iVar6 = 1;
			iVar7 = 4;
			iVar1 = 300;
			break;
		
		case 21:
			iVar6 = 1;
			iVar7 = 5;
			iVar1 = 265;
			break;
		
		case 22:
			iVar6 = 1;
			iVar7 = 6;
			iVar1 = 255;
			break;
		
		case 23:
			iVar6 = 1;
			iVar7 = 7;
			iVar1 = 250;
			break;
		
		case 24:
			iVar6 = 1;
			iVar7 = 8;
			iVar1 = 260;
			break;
		
		case 25:
			iVar6 = 1;
			iVar7 = 9;
			iVar1 = 250;
			break;
		
		case 26:
			iVar6 = 1;
			iVar7 = 10;
			iVar1 = 225;
			break;
		
		case 27:
			iVar6 = 1;
			iVar7 = 11;
			iVar1 = 230;
			break;
		
		case 28:
			iVar6 = 1;
			iVar7 = 12;
			iVar1 = 215;
			break;
		
		case 29:
			iVar6 = 1;
			iVar7 = 13;
			iVar1 = 650;
			break;
		
		case 30:
			iVar6 = 1;
			iVar7 = 14;
			iVar1 = 425;
			break;
		
		case 31:
			iVar6 = 1;
			iVar7 = 15;
			iVar1 = 345;
			break;
	}
	switch (iParam0)
	{
		case 32:
			iVar6 = 2;
			iVar7 = 0;
			iVar1 = 115;
			break;
		
		case 33:
			iVar6 = 2;
			iVar7 = 1;
			iVar1 = 110;
			break;
		
		case 34:
			iVar6 = 2;
			iVar7 = 2;
			iVar1 = 250;
			break;
		
		case 35:
			iVar6 = 2;
			iVar7 = 3;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 36:
			iVar6 = 2;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 37:
			iVar6 = 2;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 38:
			iVar6 = 2;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 39:
			iVar6 = 2;
			iVar7 = 7;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 40:
			iVar6 = 2;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 41:
			iVar6 = 2;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 42:
			iVar6 = 2;
			iVar7 = 10;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 43:
			iVar6 = 2;
			iVar7 = 11;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 44:
			iVar6 = 2;
			iVar7 = 12;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 45:
			iVar6 = 2;
			iVar7 = 13;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 46:
			iVar6 = 2;
			iVar7 = 14;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 47:
			iVar6 = 2;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
	}
	switch (iParam0)
	{
		case 48:
			iVar6 = 3;
			iVar7 = 0;
			iVar1 = 290;
			break;
		
		case 49:
			iVar6 = 3;
			iVar7 = 1;
			iVar1 = 115;
			break;
		
		case 50:
			iVar6 = 3;
			iVar7 = 2;
			iVar1 = 135;
			break;
		
		case 51:
			iVar6 = 3;
			iVar7 = 3;
			iVar1 = 125;
			break;
		
		case 52:
			iVar6 = 3;
			iVar7 = 4;
			iVar1 = 120;
			break;
		
		case 53:
			iVar6 = 3;
			iVar7 = 5;
			iVar1 = 130;
			break;
		
		case 54:
			iVar6 = 3;
			iVar7 = 6;
			iVar1 = 110;
			break;
		
		case 55:
			iVar6 = 3;
			iVar7 = 7;
			iVar1 = 525;
			break;
		
		case 56:
			iVar6 = 3;
			iVar7 = 8;
			iVar1 = 115;
			break;
		
		case 57:
			iVar6 = 3;
			iVar7 = 9;
			iVar1 = 535;
			break;
		
		case 58:
			iVar6 = 3;
			iVar7 = 10;
			iVar1 = 135;
			break;
		
		case 59:
			iVar6 = 3;
			iVar7 = 11;
			iVar1 = 120;
			break;
		
		case 60:
			iVar6 = 3;
			iVar7 = 12;
			iVar1 = 130;
			break;
		
		case 61:
			iVar6 = 3;
			iVar7 = 13;
			iVar1 = 140;
			break;
		
		case 62:
			iVar6 = 3;
			iVar7 = 14;
			iVar1 = 130;
			break;
		
		case 63:
			iVar6 = 3;
			iVar7 = 15;
			iVar1 = 520;
			break;
	}
	switch (iParam0)
	{
		case 64:
			iVar6 = 4;
			iVar7 = 0;
			iVar1 = 215;
			break;
		
		case 65:
			iVar6 = 4;
			iVar7 = 1;
			iVar1 = 220;
			break;
		
		case 66:
			iVar6 = 4;
			iVar7 = 2;
			iVar1 = 225;
			break;
		
		case 67:
			iVar6 = 4;
			iVar7 = 3;
			iVar1 = 245;
			break;
		
		case 68:
			iVar6 = 4;
			iVar7 = 4;
			iVar1 = 215;
			break;
		
		case 69:
			iVar6 = 4;
			iVar7 = 5;
			iVar1 = 630;
			break;
		
		case 70:
			iVar6 = 4;
			iVar7 = 6;
			iVar1 = 250;
			break;
		
		case 71:
			iVar6 = 4;
			iVar7 = 7;
			iVar1 = 260;
			break;
		
		case 72:
			iVar6 = 4;
			iVar7 = 8;
			iVar1 = 200;
			break;
		
		case 73:
			iVar6 = 4;
			iVar7 = 9;
			iVar1 = 225;
			break;
		
		case 74:
			iVar6 = 4;
			iVar7 = 10;
			iVar1 = 230;
			break;
		
		case 75:
			iVar6 = 4;
			iVar7 = 11;
			iVar1 = 725;
			break;
		
		case 76:
			iVar6 = 4;
			iVar7 = 12;
			iVar1 = 650;
			break;
		
		case 77:
			iVar6 = 4;
			iVar7 = 13;
			iVar1 = 230;
			break;
		
		case 78:
			iVar6 = 4;
			iVar7 = 14;
			iVar1 = 230;
			break;
		
		case 79:
			iVar6 = 4;
			iVar7 = 15;
			iVar1 = 280;
			break;
	}
	switch (iParam0)
	{
		case 80:
			iVar6 = 5;
			iVar7 = 0;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 81:
			iVar6 = 5;
			iVar7 = 1;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 82:
			iVar6 = 5;
			iVar7 = 2;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 83:
			iVar6 = 5;
			iVar7 = 3;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 84:
			iVar6 = 5;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 85:
			iVar6 = 5;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 86:
			iVar6 = 5;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 87:
			iVar6 = 5;
			iVar7 = 7;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 88:
			iVar6 = 5;
			iVar7 = 8;
			iVar1 = 330;
			break;
		
		case 89:
			iVar6 = 5;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 90:
			iVar6 = 5;
			iVar7 = 10;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 91:
			iVar6 = 5;
			iVar7 = 11;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 92:
			iVar6 = 5;
			iVar7 = 12;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 93:
			iVar6 = 5;
			iVar7 = 13;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 94:
			iVar6 = 5;
			iVar7 = 14;
			iVar1 = 320;
			break;
		
		case 95:
			iVar6 = 5;
			iVar7 = 15;
			iVar1 = 315;
			break;
	}
	switch (iParam0)
	{
		case 96:
			iVar6 = 6;
			iVar7 = 0;
			iVar1 = 850;
			break;
		
		case 97:
			iVar6 = 6;
			iVar7 = 1;
			iVar1 = 535;
			break;
		
		case 98:
			iVar6 = 6;
			iVar7 = 2;
			iVar1 = 530;
			break;
		
		case 99:
			iVar6 = 6;
			iVar7 = 3;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 100:
			iVar6 = 6;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 101:
			iVar6 = 6;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 102:
			iVar6 = 6;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 103:
			iVar6 = 6;
			iVar7 = 7;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 104:
			iVar6 = 6;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 105:
			iVar6 = 6;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 106:
			iVar6 = 6;
			iVar7 = 10;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 107:
			iVar6 = 6;
			iVar7 = 11;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 108:
			iVar6 = 6;
			iVar7 = 12;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 109:
			iVar6 = 6;
			iVar7 = 13;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 110:
			iVar6 = 6;
			iVar7 = 14;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 111:
			iVar6 = 6;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
	}
	switch (iParam0)
	{
		case 112:
			iVar6 = 7;
			iVar7 = 0;
			iVar1 = 890;
			break;
		
		case 113:
			iVar6 = 7;
			iVar7 = 1;
			iVar1 = 440;
			break;
		
		case 114:
			iVar6 = 7;
			iVar7 = 2;
			iVar1 = 455;
			break;
		
		case 115:
			iVar6 = 7;
			iVar7 = 3;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 116:
			iVar6 = 7;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 117:
			iVar6 = 7;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 118:
			iVar6 = 7;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 119:
			iVar6 = 7;
			iVar7 = 7;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 120:
			iVar6 = 7;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 121:
			iVar6 = 7;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 122:
			iVar6 = 7;
			iVar7 = 10;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 123:
			iVar6 = 7;
			iVar7 = 11;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 124:
			iVar6 = 7;
			iVar7 = 12;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 125:
			iVar6 = 7;
			iVar7 = 13;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 126:
			iVar6 = 7;
			iVar7 = 14;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 127:
			iVar6 = 7;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
	}
	switch (iParam0)
	{
		case 128:
			iVar6 = 8;
			iVar7 = 0;
			iVar1 = 295;
			break;
		
		case 129:
			iVar6 = 8;
			iVar7 = 1;
			iVar1 = 180;
			break;
		
		case 130:
			iVar6 = 8;
			iVar7 = 2;
			iVar1 = 150;
			break;
		
		case 131:
			iVar6 = 8;
			iVar7 = 3;
			iVar1 = 150;
			break;
		
		case 132:
			iVar6 = 8;
			iVar7 = 4;
			iVar1 = 155;
			break;
		
		case 133:
			iVar6 = 8;
			iVar7 = 5;
			iVar1 = 840;
			break;
		
		case 134:
			iVar6 = 8;
			iVar7 = 6;
			iVar1 = 205;
			break;
		
		case 135:
			iVar6 = 8;
			iVar7 = 7;
			iVar1 = 150;
			break;
		
		case 136:
			iVar6 = 8;
			iVar7 = 8;
			iVar1 = 950;
			break;
		
		case 137:
			iVar6 = 8;
			iVar7 = 9;
			iVar1 = 580;
			break;
		
		case 138:
			iVar6 = 8;
			iVar7 = 10;
			iVar1 = 200;
			break;
		
		case 139:
			iVar6 = 8;
			iVar7 = 11;
			iVar1 = 665;
			break;
		
		case 140:
			iVar6 = 8;
			iVar7 = 12;
			iVar1 = 780;
			break;
		
		case 141:
			iVar6 = 8;
			iVar7 = 13;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 142:
			iVar6 = 8;
			iVar7 = 14;
			iVar1 = 615;
			break;
		
		case 143:
			iVar6 = 8;
			iVar7 = 15;
			iVar1 = 250;
			break;
	}
	switch (iParam0)
	{
		case 144:
			iVar6 = 9;
			iVar7 = 0;
			iVar1 = 495;
			break;
		
		case 145:
			iVar6 = 9;
			iVar7 = 1;
			iVar1 = 435;
			break;
		
		case 146:
			iVar6 = 9;
			iVar7 = 2;
			iVar1 = 420;
			break;
		
		case 147:
			iVar6 = 9;
			iVar7 = 3;
			iVar1 = 390;
			break;
		
		case 148:
			iVar6 = 9;
			iVar7 = 4;
			iVar1 = 485;
			break;
		
		case 149:
			iVar6 = 9;
			iVar7 = 5;
			iVar1 = 380;
			break;
		
		case 150:
			iVar6 = 9;
			iVar7 = 6;
			iVar1 = 1295;
			break;
		
		case 151:
			iVar6 = 9;
			iVar7 = 7;
			iVar1 = 1135;
			break;
		
		case 152:
			iVar6 = 9;
			iVar7 = 8;
			iVar1 = 1425;
			break;
		
		case 153:
			iVar6 = 9;
			iVar7 = 9;
			iVar1 = 1645;
			break;
		
		case 154:
			iVar6 = 9;
			iVar7 = 10;
			iVar1 = 1925;
			break;
		
		case 155:
			iVar6 = 9;
			iVar7 = 11;
			iVar1 = 2250;
			break;
		
		case 156:
			iVar6 = 9;
			iVar7 = 12;
			iVar1 = 365;
			break;
		
		case 157:
			iVar6 = 9;
			iVar7 = 13;
			iVar1 = 360;
			break;
		
		case 158:
			iVar6 = 9;
			iVar7 = 14;
			iVar1 = 2245;
			break;
		
		case 159:
			iVar6 = 9;
			iVar7 = 15;
			iVar1 = 2170;
			break;
		
		case 160:
			iVar6 = 10;
			iVar7 = 0;
			iVar1 = 50;
			break;
		
		case 161:
			iVar6 = 10;
			iVar7 = 1;
			iVar1 = 100;
			break;
		
		case 162:
			iVar6 = 10;
			iVar7 = 2;
			iVar1 = 65;
			break;
		
		case 163:
			iVar6 = 10;
			iVar7 = 3;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 164:
			iVar6 = 10;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 165:
			iVar6 = 10;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 166:
			iVar6 = 10;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 167:
			iVar6 = 10;
			iVar7 = 7;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 168:
			iVar6 = 10;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 169:
			iVar6 = 10;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 170:
			iVar6 = 10;
			iVar7 = 10;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 171:
			iVar6 = 10;
			iVar7 = 11;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 172:
			iVar6 = 10;
			iVar7 = 12;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 173:
			iVar6 = 10;
			iVar7 = 13;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 174:
			iVar6 = 10;
			iVar7 = 14;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 175:
			iVar6 = 10;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
	}
	switch (iParam0)
	{
		case 176:
			iVar6 = 11;
			iVar7 = 0;
			iVar1 = 275;
			break;
		
		case 177:
			iVar6 = 11;
			iVar7 = 1;
			iVar1 = 300;
			break;
		
		case 178:
			iVar6 = 11;
			iVar7 = 2;
			iVar1 = 145;
			break;
		
		case 179:
			iVar6 = 11;
			iVar7 = 3;
			iVar1 = 150;
			break;
		
		case 180:
			iVar6 = 11;
			iVar7 = 4;
			iVar1 = 110;
			break;
		
		case 181:
			iVar6 = 11;
			iVar7 = 5;
			iVar1 = 95;
			break;
		
		case 182:
			iVar6 = 11;
			iVar7 = 6;
			iVar1 = 155;
			break;
		
		case 183:
			iVar6 = 11;
			iVar7 = 7;
			iVar1 = 155;
			break;
		
		case 184:
			iVar6 = 11;
			iVar7 = 8;
			iVar1 = 510;
			break;
		
		case 185:
			iVar6 = 11;
			iVar7 = 9;
			iVar1 = 165;
			break;
		
		case 186:
			iVar6 = 11;
			iVar7 = 10;
			iVar1 = 465;
			break;
		
		case 187:
			iVar6 = 11;
			iVar7 = 11;
			iVar1 = 250;
			break;
		
		case 188:
			iVar6 = 11;
			iVar7 = 12;
			iVar1 = 110;
			break;
		
		case 189:
			iVar6 = 11;
			iVar7 = 13;
			iVar1 = 470;
			break;
		
		case 190:
			iVar6 = 11;
			iVar7 = 14;
			iVar1 = 480;
			break;
		
		case 191:
			iVar6 = 11;
			iVar7 = 15;
			iVar1 = 155;
			break;
		
		case 192:
			iVar6 = 12;
			iVar7 = 0;
			iVar1 = 275;
			break;
		
		case 193:
			iVar6 = 12;
			iVar7 = 1;
			iVar1 = 395;
			break;
		
		case 194:
			iVar6 = 12;
			iVar7 = 2;
			iVar1 = 285;
			break;
		
		case 195:
			iVar6 = 12;
			iVar7 = 3;
			iVar1 = 560;
			break;
		
		case 196:
			iVar6 = 12;
			iVar7 = 4;
			iVar1 = 595;
			break;
		
		case 197:
			iVar6 = 12;
			iVar7 = 5;
			iVar1 = 295;
			break;
		
		case 198:
			iVar6 = 12;
			iVar7 = 6;
			iVar1 = 230;
			break;
		
		case 199:
			iVar6 = 12;
			iVar7 = 7;
			iVar1 = 215;
			break;
		
		case 200:
			iVar6 = 12;
			iVar7 = 8;
			iVar1 = 270;
			break;
		
		case 201:
			iVar6 = 12;
			iVar7 = 9;
			iVar1 = 295;
			break;
		
		case 202:
			iVar6 = 12;
			iVar7 = 10;
			iVar1 = 285;
			break;
		
		case 203:
			iVar6 = 12;
			iVar7 = 11;
			iVar1 = 215;
			break;
		
		case 204:
			iVar6 = 12;
			iVar7 = 12;
			iVar1 = 210;
			break;
		
		case 205:
			iVar6 = 12;
			iVar7 = 13;
			iVar1 = 290;
			break;
		
		case 206:
			iVar6 = 12;
			iVar7 = 14;
			iVar1 = 230;
			break;
		
		case 207:
			iVar6 = 12;
			iVar7 = 15;
			iVar1 = 215;
			break;
	}
	switch (iParam0)
	{
		case 208:
			iVar6 = 13;
			iVar7 = 0;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 209:
			iVar6 = 13;
			iVar7 = 1;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 210:
			iVar6 = 13;
			iVar7 = 2;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 211:
			iVar6 = 13;
			iVar7 = 3;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 212:
			iVar6 = 13;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 213:
			iVar6 = 13;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 214:
			iVar6 = 13;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 215:
			iVar6 = 13;
			iVar7 = 7;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 216:
			iVar6 = 13;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 217:
			iVar6 = 13;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 218:
			iVar6 = 13;
			iVar7 = 10;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 219:
			iVar6 = 13;
			iVar7 = 11;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 220:
			iVar6 = 13;
			iVar7 = 12;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 221:
			iVar6 = 13;
			iVar7 = 13;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 222:
			iVar6 = 13;
			iVar7 = 14;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 223:
			iVar6 = 13;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 224:
			iVar6 = 14;
			iVar7 = 0;
			iVar1 = 90;
			break;
		
		case 225:
			iVar6 = 14;
			iVar7 = 1;
			iVar1 = 105;
			break;
		
		case 226:
			iVar6 = 14;
			iVar7 = 2;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 227:
			iVar6 = 14;
			iVar7 = 3;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 228:
			iVar6 = 14;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 229:
			iVar6 = 14;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 230:
			iVar6 = 14;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 231:
			iVar6 = 14;
			iVar7 = 7;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 232:
			iVar6 = 14;
			iVar7 = 8;
			iVar1 = 100;
			break;
		
		case 233:
			iVar6 = 14;
			iVar7 = 9;
			iVar1 = 105;
			break;
		
		case 234:
			iVar6 = 14;
			iVar7 = 10;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 235:
			iVar6 = 14;
			iVar7 = 11;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 236:
			iVar6 = 14;
			iVar7 = 12;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 237:
			iVar6 = 14;
			iVar7 = 13;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 238:
			iVar6 = 14;
			iVar7 = 14;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 239:
			iVar6 = 14;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
	}
	switch (iParam0)
	{
		case 240:
			iVar6 = 15;
			iVar7 = 0;
			iVar1 = 230;
			break;
		
		case 241:
			iVar6 = 15;
			iVar7 = 1;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 242:
			iVar6 = 15;
			iVar7 = 2;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 243:
			iVar6 = 15;
			iVar7 = 3;
			iVar1 = 130;
			break;
		
		case 244:
			iVar6 = 15;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 245:
			iVar6 = 15;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 246:
			iVar6 = 15;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 247:
			iVar6 = 15;
			iVar7 = 7;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 248:
			iVar6 = 15;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 249:
			iVar6 = 15;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 250:
			iVar6 = 15;
			iVar7 = 10;
			iVar1 = 350;
			break;
		
		case 251:
			iVar6 = 15;
			iVar7 = 11;
			iVar1 = 335;
			break;
		
		case 252:
			iVar6 = 15;
			iVar7 = 12;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 253:
			iVar6 = 15;
			iVar7 = 13;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 254:
			iVar6 = 15;
			iVar7 = 14;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 255:
			iVar6 = 15;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
	}
	StringCopy(&Var2, "L_FMF_", 16);
	StringIntConCat(&Var2, iVar6, 16);
	StringConCat(&Var2, "_", 16);
	StringIntConCat(&Var2, iVar7, 16);
	iVar11 = iParam0;
	if (iVar11 >= 0 && iVar11 < 256)
	{
		iVar1 = system::round(((system::to_float(iVar1) * Global_262145.f_1243[iVar11]) * Global_279748.f_23));
	}
	if (iParam0 >= 256)
	{
		Global_69518[0 /*14*/].f_5 = 4;
		func_649(iVar10, iParam0, 256);
		if (Global_69518[0 /*14*/].f_7 > 0)
		{
			Global_69518[0 /*14*/].f_7 = system::round((system::to_float(Global_69518[0 /*14*/].f_7) * Global_279748.f_23));
		}
	}
	else
	{
		func_641(&(Global_69518[0 /*14*/]), iVar10, iParam0, &Var2, iVar6, iVar7, iVar1, iVar0, iVar8, iVar9, 0);
	}
}

void func_658(int iParam0)//Position - 0x55F43
{
	int iVar0;
	int iVar1;
	char* sVar2;
	int iVar6;
	int iVar7;
	int iVar8;
	int iVar9;
	int iVar10;
	
	iVar0 = false;
	iVar1 = 10;
	iVar6 = 0;
	iVar7 = 0;
	iVar8 = -1;
	iVar9 = 2;
	iVar10 = 3;
	switch (iParam0)
	{
		case 0:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 1:
			iVar6 = 1;
			iVar7 = 0;
			break;
		
		case 2:
			iVar6 = 2;
			iVar7 = 0;
			break;
		
		case 3:
			iVar6 = 3;
			iVar7 = 0;
			break;
		
		case 4:
			iVar6 = 4;
			iVar7 = 0;
			break;
		
		case 5:
			iVar6 = 5;
			iVar7 = 0;
			break;
		
		case 6:
			iVar6 = 6;
			iVar7 = 0;
			break;
		
		case 7:
			iVar6 = 7;
			iVar7 = 0;
			break;
		
		case 8:
			iVar6 = 8;
			iVar7 = 0;
			break;
		
		case 9:
			iVar6 = 9;
			iVar7 = 0;
			break;
		
		case 10:
			iVar6 = 10;
			iVar7 = 0;
			break;
		
		case 11:
			iVar6 = 11;
			iVar7 = 0;
			break;
		
		case 12:
			iVar6 = 12;
			iVar7 = 0;
			break;
		
		case 13:
			iVar6 = 13;
			iVar7 = 0;
			break;
		
		case 14:
			iVar6 = 14;
			iVar7 = 0;
			break;
		
		case 15:
			iVar6 = 15;
			iVar7 = 0;
			break;
	}
	if (iParam0 >= 16)
	{
		Global_69518[0 /*14*/].f_5 = 4;
		func_649(iVar10, iParam0, 16);
		return;
	}
	func_641(&(Global_69518[0 /*14*/]), iVar10, iParam0, &sVar2, iVar6, iVar7, iVar1, iVar0, iVar8, iVar9, 0);
}

void func_659(int iParam0)//Position - 0x5609C
{
	int iVar0;
	int iVar1;
	char* sVar2;
	int iVar6;
	int iVar7;
	int iVar8;
	int iVar9;
	int iVar10;
	
	iVar0 = false;
	iVar1 = 10;
	iVar6 = 0;
	iVar7 = 0;
	iVar8 = -1;
	iVar9 = 2;
	iVar10 = 9;
	switch (iParam0)
	{
		case 0:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 1:
			iVar6 = 1;
			iVar7 = 0;
			break;
		
		case 2:
			iVar6 = 1;
			iVar7 = 1;
			break;
		
		case 3:
			iVar6 = 1;
			iVar7 = 2;
			break;
		
		case 4:
			iVar6 = 1;
			iVar7 = 3;
			break;
		
		case 5:
			iVar6 = 1;
			iVar7 = 4;
			break;
		
		case 6:
			iVar6 = 2;
			iVar7 = 0;
			break;
		
		case 7:
			iVar6 = 2;
			iVar7 = 1;
			break;
		
		case 8:
			iVar6 = 2;
			iVar7 = 2;
			break;
		
		case 9:
			iVar6 = 2;
			iVar7 = 3;
			break;
		
		case 10:
			iVar6 = 2;
			iVar7 = 4;
			break;
		
		case 11:
			iVar6 = 3;
			iVar7 = 0;
			break;
		
		case 12:
			iVar6 = 3;
			iVar7 = 1;
			break;
		
		case 13:
			iVar6 = 3;
			iVar7 = 2;
			break;
		
		case 14:
			iVar6 = 3;
			iVar7 = 3;
			break;
		
		case 15:
			iVar6 = 3;
			iVar7 = 4;
			break;
		
		case 16:
			iVar6 = 4;
			iVar7 = 0;
			break;
		
		case 17:
			iVar6 = 4;
			iVar7 = 1;
			break;
		
		case 18:
			iVar6 = 4;
			iVar7 = 2;
			break;
		
		case 19:
			iVar6 = 4;
			iVar7 = 3;
			break;
		
		case 20:
			iVar6 = 4;
			iVar7 = 4;
			break;
		
		case 21:
			iVar6 = 5;
			iVar7 = 0;
			break;
		
		case 22:
			iVar6 = 5;
			iVar7 = 1;
			break;
		
		case 23:
			iVar6 = 5;
			iVar7 = 2;
			break;
		
		case 24:
			iVar6 = 5;
			iVar7 = 3;
			break;
		
		case 25:
			iVar6 = 5;
			iVar7 = 4;
			break;
		
		case 26:
			iVar6 = 6;
			iVar7 = 0;
			break;
		
		case 27:
			iVar6 = 6;
			iVar7 = 1;
			break;
		
		case 28:
			iVar6 = 6;
			iVar7 = 2;
			break;
		
		case 29:
			iVar6 = 6;
			iVar7 = 3;
			break;
		
		case 30:
			iVar6 = 6;
			iVar7 = 4;
			break;
		
		case 31:
			iVar6 = 7;
			iVar7 = 0;
			break;
		
		case 32:
			iVar6 = 7;
			iVar7 = 1;
			break;
		
		case 33:
			iVar6 = 7;
			iVar7 = 2;
			break;
		
		case 34:
			iVar6 = 7;
			iVar7 = 3;
			break;
		
		case 35:
			iVar6 = 7;
			iVar7 = 4;
			break;
	}
	if (iParam0 >= 36)
	{
		Global_69518[0 /*14*/].f_5 = 4;
		func_649(iVar10, iParam0, 36);
		return;
	}
	func_641(&(Global_69518[0 /*14*/]), iVar10, iParam0, &sVar2, iVar6, iVar7, iVar1, iVar0, iVar8, iVar9, 0);
}

void func_660(int iParam0)//Position - 0x5631A
{
	int iVar0;
	int iVar1;
	struct<2> Var2;
	int iVar6;
	int iVar7;
	int iVar8;
	int iVar9;
	int iVar10;
	int iVar11;
	int iVar12;
	
	iVar0 = false;
	iVar1 = 10;
	iVar6 = 0;
	iVar7 = 0;
	iVar8 = -1;
	iVar9 = 2;
	iVar10 = 8;
	switch (iParam0)
	{
		case 0:
			StringCopy(&Var2, "U_FMF_0_0", 16);
			iVar6 = 0;
			iVar7 = 0;
			iVar1 = 250;
			break;
		
		case 1:
			StringCopy(&Var2, "U_FMF_0_1", 16);
			iVar6 = 0;
			iVar7 = 1;
			iVar1 = 225;
			break;
		
		case 2:
			StringCopy(&Var2, "U_FMF_0_2", 16);
			iVar6 = 0;
			iVar7 = 2;
			iVar1 = 50;
			break;
		
		case 3:
			StringCopy(&Var2, "U_FMF_0_3", 16);
			iVar6 = 0;
			iVar7 = 3;
			iVar1 = 40;
			break;
		
		case 4:
			StringCopy(&Var2, "U_FMF_0_4", 16);
			iVar6 = 0;
			iVar7 = 4;
			iVar1 = 40;
			break;
		
		case 5:
			StringCopy(&Var2, "U_FMF_0_5", 16);
			iVar6 = 0;
			iVar7 = 5;
			iVar1 = 40;
			break;
		
		case 6:
			StringCopy(&Var2, "U_FMF_0_6", 16);
			iVar6 = 0;
			iVar7 = 6;
			iVar1 = 40;
			break;
		
		case 7:
			StringCopy(&Var2, "U_FMF_0_7", 16);
			iVar6 = 0;
			iVar7 = 7;
			iVar1 = 45;
			break;
		
		case 8:
			StringCopy(&Var2, "U_FMF_0_8", 16);
			iVar6 = 0;
			iVar7 = 8;
			iVar1 = 40;
			break;
		
		case 9:
			StringCopy(&Var2, "U_FMF_0_9", 16);
			iVar6 = 0;
			iVar7 = 9;
			iVar1 = 40;
			break;
		
		case 10:
			StringCopy(&Var2, "U_FMF_0_10", 16);
			iVar6 = 0;
			iVar7 = 10;
			iVar1 = 135;
			break;
		
		case 11:
			StringCopy(&Var2, "U_FMF_0_11", 16);
			iVar6 = 0;
			iVar7 = 11;
			iVar1 = 60;
			break;
		
		case 12:
			StringCopy(&Var2, "U_FMF_0_12", 16);
			iVar6 = 0;
			iVar7 = 12;
			iVar1 = 220;
			break;
		
		case 13:
			StringCopy(&Var2, "U_FMF_0_13", 16);
			iVar6 = 0;
			iVar7 = 13;
			iVar1 = 45;
			break;
		
		case 14:
			StringCopy(&Var2, "U_FMF_0_14", 16);
			iVar6 = 0;
			iVar7 = 14;
			iVar1 = 45;
			break;
		
		case 15:
			StringCopy(&Var2, "U_FMF_0_15", 16);
			iVar6 = 0;
			iVar7 = 15;
			iVar1 = 125;
			break;
		
		case 16:
			StringCopy(&Var2, "U_FMF_0_0", 16);
			iVar6 = 1;
			iVar7 = 0;
			iVar1 = 250;
			break;
		
		case 17:
			StringCopy(&Var2, "U_FMF_0_1", 16);
			iVar6 = 1;
			iVar7 = 1;
			iVar1 = 60;
			break;
		
		case 18:
			StringCopy(&Var2, "U_FMF_0_2", 16);
			iVar6 = 1;
			iVar7 = 2;
			iVar1 = 50;
			break;
		
		case 19:
			StringCopy(&Var2, "U_FMF_0_3", 16);
			iVar6 = 1;
			iVar7 = 3;
			iVar1 = 40;
			break;
		
		case 20:
			StringCopy(&Var2, "U_FMF_0_4", 16);
			iVar6 = 1;
			iVar7 = 4;
			iVar1 = 40;
			break;
		
		case 21:
			StringCopy(&Var2, "U_FMF_0_5", 16);
			iVar6 = 1;
			iVar7 = 5;
			iVar1 = 40;
			break;
		
		case 22:
			StringCopy(&Var2, "U_FMF_0_6", 16);
			iVar6 = 1;
			iVar7 = 6;
			iVar1 = 40;
			break;
		
		case 23:
			StringCopy(&Var2, "U_FMF_0_7", 16);
			iVar6 = 1;
			iVar7 = 7;
			iVar1 = 45;
			break;
		
		case 24:
			StringCopy(&Var2, "U_FMF_0_8", 16);
			iVar6 = 1;
			iVar7 = 8;
			iVar1 = 40;
			break;
		
		case 25:
			StringCopy(&Var2, "U_FMF_0_9", 16);
			iVar6 = 1;
			iVar7 = 9;
			iVar1 = 40;
			break;
		
		case 26:
			StringCopy(&Var2, "U_FMF_0_10", 16);
			iVar6 = 1;
			iVar7 = 10;
			iVar1 = 135;
			break;
		
		case 27:
			StringCopy(&Var2, "U_FMF_0_11", 16);
			iVar6 = 1;
			iVar7 = 11;
			iVar1 = 60;
			break;
		
		case 28:
			StringCopy(&Var2, "U_FMF_0_12", 16);
			iVar6 = 1;
			iVar7 = 12;
			iVar1 = 220;
			break;
		
		case 29:
			StringCopy(&Var2, "U_FMF_0_13", 16);
			iVar6 = 1;
			iVar7 = 13;
			iVar1 = 45;
			break;
		
		case 30:
			StringCopy(&Var2, "U_FMF_0_14", 16);
			iVar6 = 1;
			iVar7 = 14;
			iVar1 = 45;
			break;
		
		case 31:
			StringCopy(&Var2, "U_FMF_0_15", 16);
			iVar6 = 1;
			iVar7 = 15;
			iVar1 = 125;
			break;
		
		case 32:
			iVar6 = 2;
			iVar7 = 0;
			break;
		
		case 33:
			iVar6 = 3;
			iVar7 = 0;
			break;
		
		case 34:
			StringCopy(&Var2, "U_FMF_4_0", 16);
			iVar6 = 4;
			iVar7 = 0;
			iVar0 = true;
			break;
		
		case 35:
			StringCopy(&Var2, "U_FMF_4_1", 16);
			iVar6 = 4;
			iVar7 = 1;
			iVar0 = true;
			break;
		
		case 36:
			StringCopy(&Var2, "U_FMF_4_2", 16);
			iVar6 = 4;
			iVar7 = 2;
			iVar0 = true;
			break;
		
		case 37:
			StringCopy(&Var2, "U_FMF_4_3", 16);
			iVar6 = 4;
			iVar7 = 3;
			iVar0 = true;
			break;
		
		case 38:
			StringCopy(&Var2, "U_FMF_4_4", 16);
			iVar6 = 4;
			iVar7 = 4;
			iVar0 = true;
			break;
		
		case 39:
			StringCopy(&Var2, "U_FMF_4_5", 16);
			iVar6 = 4;
			iVar7 = 5;
			iVar0 = true;
			break;
		
		case 40:
			StringCopy(&Var2, "U_FMF_4_6", 16);
			iVar6 = 4;
			iVar7 = 6;
			iVar0 = true;
			break;
		
		case 41:
			StringCopy(&Var2, "U_FMF_4_7", 16);
			iVar6 = 4;
			iVar7 = 7;
			iVar0 = true;
			break;
		
		case 42:
			StringCopy(&Var2, "U_FMF_4_8", 16);
			iVar6 = 4;
			iVar7 = 8;
			iVar0 = true;
			break;
		
		case 43:
			StringCopy(&Var2, "U_FMF_4_9", 16);
			iVar6 = 4;
			iVar7 = 9;
			iVar0 = true;
			break;
		
		case 44:
			StringCopy(&Var2, "U_FMF_4_10", 16);
			iVar6 = 4;
			iVar7 = 10;
			iVar0 = true;
			break;
		
		case 45:
			StringCopy(&Var2, "U_FMF_4_11", 16);
			iVar6 = 4;
			iVar7 = 11;
			iVar0 = true;
			break;
		
		case 46:
			StringCopy(&Var2, "U_FMF_4_12", 16);
			iVar6 = 4;
			iVar7 = 12;
			iVar0 = true;
			break;
		
		case 47:
			StringCopy(&Var2, "U_FMF_4_13", 16);
			iVar6 = 4;
			iVar7 = 13;
			iVar1 = 40;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_1500[77]));
			break;
		
		case 48:
			StringCopy(&Var2, "U_FMF_4_14", 16);
			iVar6 = 4;
			iVar7 = 14;
			iVar1 = 40;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_1500[78]));
			break;
		
		case 49:
			StringCopy(&Var2, "U_FMF_4_15", 16);
			iVar6 = 4;
			iVar7 = 15;
			iVar0 = true;
			break;
		
		case 50:
			StringCopy(&Var2, "U_FMF_5_0", 16);
			iVar6 = 5;
			iVar7 = 0;
			iVar1 = 45;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_1500[80]));
			break;
		
		case 51:
			StringCopy(&Var2, "U_FMF_5_1", 16);
			iVar6 = 5;
			iVar7 = 1;
			iVar1 = 60;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_1500[81]));
			break;
		
		case 52:
			StringCopy(&Var2, "U_FMF_5_2", 16);
			iVar6 = 5;
			iVar7 = 2;
			iVar0 = true;
			break;
		
		case 53:
			StringCopy(&Var2, "U_FMF_5_3", 16);
			iVar6 = 5;
			iVar7 = 3;
			iVar0 = true;
			break;
		
		case 54:
			StringCopy(&Var2, "U_FMF_5_4", 16);
			iVar6 = 5;
			iVar7 = 4;
			iVar0 = true;
			break;
		
		case 55:
			StringCopy(&Var2, "U_FMF_5_5", 16);
			iVar6 = 5;
			iVar7 = 5;
			iVar0 = true;
			break;
		
		case 56:
			StringCopy(&Var2, "U_FMF_5_6", 16);
			iVar6 = 5;
			iVar7 = 6;
			iVar0 = true;
			break;
		
		case 57:
			StringCopy(&Var2, "U_FMF_5_7", 16);
			iVar6 = 5;
			iVar7 = 7;
			iVar1 = 375;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_1500[87]));
			break;
		
		case 58:
			StringCopy(&Var2, "U_FMF_5_8", 16);
			iVar6 = 5;
			iVar7 = 8;
			iVar0 = true;
			break;
		
		case 59:
			StringCopy(&Var2, "U_FMF_5_9", 16);
			iVar6 = 5;
			iVar7 = 9;
			iVar1 = 90;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_1500[89]));
			break;
		
		case 60:
			StringCopy(&Var2, "U_FMF_5_10", 16);
			iVar6 = 5;
			iVar7 = 10;
			iVar0 = true;
			break;
		
		case 61:
			StringCopy(&Var2, "U_FMF_5_11", 16);
			iVar6 = 5;
			iVar7 = 11;
			iVar0 = true;
			break;
		
		case 62:
			StringCopy(&Var2, "U_FMF_5_12", 16);
			iVar6 = 5;
			iVar7 = 12;
			iVar0 = true;
			break;
		
		case 63:
			StringCopy(&Var2, "U_FMF_5_13", 16);
			iVar6 = 5;
			iVar7 = 13;
			iVar0 = true;
			break;
		
		case 64:
			StringCopy(&Var2, "U_FMF_5_14", 16);
			iVar6 = 5;
			iVar7 = 14;
			iVar0 = true;
			break;
		
		case 65:
			StringCopy(&Var2, "U_FMF_5_15", 16);
			iVar6 = 5;
			iVar7 = 15;
			iVar0 = true;
			break;
		
		case 66:
			iVar6 = 6;
			iVar7 = 0;
			break;
		
		case 67:
			iVar6 = 7;
			iVar7 = 0;
			break;
		
		case 68:
			iVar6 = 8;
			iVar7 = 0;
			break;
		
		case 69:
			iVar6 = 9;
			iVar7 = 0;
			break;
		
		case 70:
			iVar6 = 10;
			iVar7 = 0;
			break;
		
		case 71:
			StringCopy(&Var2, "U_FMF_11_0", 16);
			iVar6 = 11;
			iVar7 = 0;
			iVar1 = 90;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_1500[176]));
			break;
		
		case 72:
			StringCopy(&Var2, "U_FMF_11_1", 16);
			iVar6 = 11;
			iVar7 = 1;
			iVar1 = 95;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_1500[177]));
			break;
		
		case 73:
			StringCopy(&Var2, "U_FMF_11_2", 16);
			iVar6 = 11;
			iVar7 = 2;
			iVar1 = 95;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_1500[178]));
			break;
		
		case 74:
			StringCopy(&Var2, "U_FMF_11_3", 16);
			iVar6 = 11;
			iVar7 = 3;
			iVar0 = true;
			break;
		
		case 75:
			StringCopy(&Var2, "U_FMF_11_4", 16);
			iVar6 = 11;
			iVar7 = 4;
			iVar0 = true;
			break;
		
		case 76:
			StringCopy(&Var2, "U_FMF_11_5", 16);
			iVar6 = 11;
			iVar7 = 5;
			iVar0 = true;
			break;
		
		case 77:
			StringCopy(&Var2, "U_FMF_11_6", 16);
			iVar6 = 11;
			iVar7 = 6;
			iVar0 = true;
			break;
		
		case 78:
			StringCopy(&Var2, "U_FMF_11_7", 16);
			iVar6 = 11;
			iVar7 = 7;
			iVar0 = true;
			break;
		
		case 79:
			StringCopy(&Var2, "U_FMF_11_8", 16);
			iVar6 = 11;
			iVar7 = 8;
			iVar0 = true;
			break;
		
		case 80:
			StringCopy(&Var2, "U_FMF_11_9", 16);
			iVar6 = 11;
			iVar7 = 9;
			iVar0 = true;
			break;
		
		case 81:
			StringCopy(&Var2, "U_FMF_11_10", 16);
			iVar6 = 11;
			iVar7 = 10;
			iVar1 = 150;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_1500[186]));
			break;
		
		case 82:
			StringCopy(&Var2, "U_FMF_11_11", 16);
			iVar6 = 11;
			iVar7 = 11;
			iVar1 = 65;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_1500[187]));
			break;
		
		case 83:
			StringCopy(&Var2, "U_FMF_11_12", 16);
			iVar6 = 11;
			iVar7 = 12;
			iVar0 = true;
			break;
		
		case 84:
			StringCopy(&Var2, "U_FMF_11_13", 16);
			iVar6 = 11;
			iVar7 = 13;
			iVar0 = true;
			break;
		
		case 85:
			StringCopy(&Var2, "U_FMF_11_14", 16);
			iVar6 = 11;
			iVar7 = 14;
			iVar0 = true;
			break;
		
		case 86:
			StringCopy(&Var2, "U_FMF_11_15", 16);
			iVar6 = 11;
			iVar7 = 15;
			iVar1 = 145;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_1500[191]));
			break;
		
		case 87:
			StringCopy(&Var2, "U_FMF_12_0", 16);
			iVar6 = 12;
			iVar7 = 0;
			iVar0 = true;
			break;
		
		case 88:
			StringCopy(&Var2, "U_FMF_12_1", 16);
			iVar6 = 12;
			iVar7 = 1;
			iVar0 = true;
			break;
		
		case 89:
			StringCopy(&Var2, "U_FMF_12_2", 16);
			iVar6 = 12;
			iVar7 = 2;
			iVar0 = true;
			break;
		
		case 90:
			StringCopy(&Var2, "U_FMF_12_3", 16);
			iVar6 = 12;
			iVar7 = 3;
			iVar0 = true;
			break;
		
		case 91:
			StringCopy(&Var2, "U_FMF_12_4", 16);
			iVar6 = 12;
			iVar7 = 4;
			iVar0 = true;
			break;
		
		case 92:
			StringCopy(&Var2, "U_FMF_12_5", 16);
			iVar6 = 12;
			iVar7 = 5;
			iVar0 = true;
			break;
		
		case 93:
			StringCopy(&Var2, "U_FMF_12_6", 16);
			iVar6 = 12;
			iVar7 = 6;
			iVar0 = true;
			break;
		
		case 94:
			StringCopy(&Var2, "U_FMF_12_7", 16);
			iVar6 = 12;
			iVar7 = 7;
			iVar1 = 1560;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_1500[199]));
			break;
		
		case 95:
			StringCopy(&Var2, "U_FMF_12_8", 16);
			iVar6 = 12;
			iVar7 = 8;
			iVar1 = 195;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_1500[200]));
			break;
		
		case 96:
			StringCopy(&Var2, "U_FMF_12_9", 16);
			iVar6 = 12;
			iVar7 = 9;
			iVar1 = 200;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_1500[201]));
			break;
		
		case 97:
			StringCopy(&Var2, "U_FMF_12_10", 16);
			iVar6 = 12;
			iVar7 = 10;
			iVar0 = true;
			break;
		
		case 98:
			StringCopy(&Var2, "U_FMF_12_11", 16);
			iVar6 = 12;
			iVar7 = 11;
			iVar0 = true;
			break;
		
		case 99:
			StringCopy(&Var2, "U_FMF_12_12", 16);
			iVar6 = 12;
			iVar7 = 12;
			iVar0 = true;
			break;
		
		case 100:
			StringCopy(&Var2, "U_FMF_12_13", 16);
			iVar6 = 12;
			iVar7 = 13;
			iVar0 = true;
			break;
		
		case 101:
			StringCopy(&Var2, "U_FMF_12_14", 16);
			iVar6 = 12;
			iVar7 = 14;
			iVar0 = true;
			break;
		
		case 102:
			StringCopy(&Var2, "U_FMF_12_15", 16);
			iVar6 = 12;
			iVar7 = 15;
			iVar0 = true;
			break;
		
		case 103:
			StringCopy(&Var2, "U_FMF_13_0", 16);
			iVar6 = 13;
			iVar7 = 0;
			iVar1 = 975;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_1500[208]));
			break;
		
		case 104:
			StringCopy(&Var2, "U_FMF_13_1", 16);
			iVar6 = 13;
			iVar7 = 1;
			iVar1 = 2670;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_1500[209]));
			break;
		
		case 105:
			StringCopy(&Var2, "U_FMF_13_2", 16);
			iVar6 = 13;
			iVar7 = 2;
			iVar1 = 480;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_1500[210]));
			break;
		
		case 106:
			StringCopy(&Var2, "U_FMF_13_3", 16);
			iVar6 = 13;
			iVar7 = 3;
			iVar1 = 400;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_1500[211]));
			break;
		
		case 107:
			StringCopy(&Var2, "U_FMF_13_4", 16);
			iVar6 = 13;
			iVar7 = 4;
			iVar1 = 2500;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_1500[212]));
			break;
		
		case 108:
			StringCopy(&Var2, "U_FMF_13_5", 16);
			iVar6 = 13;
			iVar7 = 5;
			iVar1 = 2060;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_1500[213]));
			break;
		
		case 109:
			StringCopy(&Var2, "U_FMF_13_6", 16);
			iVar6 = 13;
			iVar7 = 6;
			iVar1 = 2620;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_1500[214]));
			break;
		
		case 110:
			StringCopy(&Var2, "U_FMF_13_7", 16);
			iVar6 = 13;
			iVar7 = 7;
			iVar1 = 475;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_1500[215]));
			break;
		
		case 111:
			StringCopy(&Var2, "U_FMF_13_8", 16);
			iVar6 = 13;
			iVar7 = 8;
			iVar1 = 490;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_1500[216]));
			break;
		
		case 112:
			StringCopy(&Var2, "U_FMF_13_9", 16);
			iVar6 = 13;
			iVar7 = 9;
			iVar1 = 2280;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_1500[217]));
			break;
		
		case 113:
			StringCopy(&Var2, "U_FMF_13_10", 16);
			iVar6 = 13;
			iVar7 = 10;
			iVar1 = 485;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_1500[218]));
			break;
		
		case 114:
			StringCopy(&Var2, "U_FMF_13_11", 16);
			iVar6 = 13;
			iVar7 = 11;
			iVar1 = 2390;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_1500[219]));
			break;
		
		case 115:
			StringCopy(&Var2, "U_FMF_13_12", 16);
			iVar6 = 13;
			iVar7 = 12;
			iVar1 = 2610;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_1500[220]));
			break;
		
		case 116:
			StringCopy(&Var2, "U_FMF_13_13", 16);
			iVar6 = 13;
			iVar7 = 13;
			iVar1 = 1450;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_1500[221]));
			break;
		
		case 117:
			StringCopy(&Var2, "U_FMF_13_14", 16);
			iVar6 = 13;
			iVar7 = 14;
			iVar1 = 2720;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_1500[222]));
			break;
		
		case 118:
			StringCopy(&Var2, "U_FMF_13_15", 16);
			iVar6 = 13;
			iVar7 = 15;
			iVar1 = 4995;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_1500[223]));
			break;
		
		case 119:
			iVar6 = 14;
			iVar7 = 0;
			break;
		
		case 120:
			StringCopy(&Var2, "U_FMF_15_0", 16);
			iVar6 = 15;
			iVar7 = 0;
			iVar1 = 325;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_1500[240]));
			break;
		
		case 121:
			StringCopy(&Var2, "U_FMF_15_1", 16);
			iVar6 = 15;
			iVar7 = 1;
			iVar0 = true;
			break;
		
		case 122:
			StringCopy(&Var2, "U_FMF_15_2", 16);
			iVar6 = 15;
			iVar7 = 2;
			iVar0 = true;
			break;
		
		case 123:
			StringCopy(&Var2, "U_FMF_15_3", 16);
			iVar6 = 15;
			iVar7 = 3;
			iVar1 = 130;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_1500[243]));
			break;
		
		case 124:
			StringCopy(&Var2, "U_FMF_15_4", 16);
			iVar6 = 15;
			iVar7 = 4;
			iVar0 = true;
			break;
		
		case 125:
			StringCopy(&Var2, "U_FMF_15_5", 16);
			iVar6 = 15;
			iVar7 = 5;
			iVar0 = true;
			break;
		
		case 126:
			StringCopy(&Var2, "U_FMF_15_6", 16);
			iVar6 = 15;
			iVar7 = 6;
			iVar0 = true;
			break;
		
		case 127:
			StringCopy(&Var2, "U_FMF_15_7", 16);
			iVar6 = 15;
			iVar7 = 7;
			iVar0 = true;
			break;
		
		case 128:
			StringCopy(&Var2, "U_FMF_15_8", 16);
			iVar6 = 15;
			iVar7 = 8;
			iVar0 = true;
			break;
		
		case 129:
			StringCopy(&Var2, "U_FMF_15_9", 16);
			iVar6 = 15;
			iVar7 = 9;
			iVar0 = true;
			break;
		
		case 130:
			StringCopy(&Var2, "U_FMF_15_10", 16);
			iVar6 = 15;
			iVar7 = 10;
			iVar1 = 450;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_1500[250]));
			break;
		
		case 131:
			StringCopy(&Var2, "U_FMF_15_11", 16);
			iVar6 = 15;
			iVar7 = 11;
			iVar1 = 465;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_1500[251]));
			break;
		
		case 132:
			StringCopy(&Var2, "U_FMF_15_12", 16);
			iVar6 = 15;
			iVar7 = 12;
			iVar0 = true;
			break;
		
		case 133:
			StringCopy(&Var2, "U_FMF_15_13", 16);
			iVar6 = 15;
			iVar7 = 13;
			iVar0 = true;
			break;
		
		case 134:
			StringCopy(&Var2, "U_FMF_15_14", 16);
			iVar6 = 15;
			iVar7 = 14;
			iVar0 = true;
			break;
		
		case 135:
			StringCopy(&Var2, "U_FMF_15_15", 16);
			iVar6 = 15;
			iVar7 = 15;
			iVar0 = true;
			break;
		
		default:
			Global_69518[0 /*14*/].f_5 = 4;
			func_649(iVar10, iParam0, 136);
			if (Global_69518[0 /*14*/].f_7 > 0)
			{
				Global_69518[0 /*14*/].f_7 = system::round((system::to_float(Global_69518[0 /*14*/].f_7) * Global_279748.f_24));
			}
			return;
			break;
	}
	if (iParam0 == 4 || iParam0 == 20)
	{
		if (func_585(89, -1))
		{
			StringCopy(&Var2, "REW_RS", 16);
			iVar1 = system::round((system::to_float(1250) * Global_262145.f_2977));
		}
		else
		{
			iVar1 = system::round((system::to_float(40) * Global_262145.f_1500[4]));
		}
	}
	else if (iParam0 == 7 || iParam0 == 23)
	{
		if (func_585(88, -1))
		{
			StringCopy(&Var2, "REW_LSB", 16);
			iVar1 = system::round((system::to_float(450) * Global_262145.f_2976));
		}
		else
		{
			iVar1 = system::round((system::to_float(45) * Global_262145.f_1500[7]));
		}
	}
	else if (iParam0 == 9 || iParam0 == 25)
	{
		if (func_585(87, -1))
		{
			StringCopy(&Var2, "REW_REDSK", 16);
			iVar1 = system::round((system::to_float(500) * Global_262145.f_2975));
		}
		else
		{
			iVar1 = system::round((system::to_float(40) * Global_262145.f_1500[9]));
		}
	}
	else if (iParam0 >= 0 && iParam0 < 16)
	{
		iVar11 = iParam0;
		if (iVar11 >= 0 && iVar11 < 256)
		{
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_1500[iVar11]));
		}
	}
	else if (iParam0 >= 16 && iParam0 < 32)
	{
		iVar12 = (iParam0 - 16);
		if (iVar12 >= 0 && iVar12 < 256)
		{
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_1500[iVar12]));
		}
	}
	iVar1 = system::round((system::to_float(iVar1) * Global_279748.f_24));
	func_641(&(Global_69518[0 /*14*/]), iVar10, iParam0, &Var2, iVar6, iVar7, iVar1, iVar0, iVar8, iVar9, 0);
}

void func_661(int iParam0)//Position - 0x576DE
{
	int iVar0;
	int iVar1;
	struct<2> Var2;
	int iVar6;
	int iVar7;
	int iVar8;
	int iVar9;
	int iVar10;
	int iVar11;
	
	iVar0 = false;
	iVar1 = 10;
	iVar6 = 0;
	iVar7 = 0;
	iVar8 = -1;
	iVar9 = 2;
	iVar10 = 11;
	switch (iParam0)
	{
		case 0:
			iVar6 = 0;
			iVar7 = 0;
			iVar1 = 250;
			break;
		
		case 1:
			iVar6 = 0;
			iVar7 = 1;
			iVar1 = 225;
			break;
		
		case 2:
			iVar6 = 0;
			iVar7 = 2;
			iVar1 = 50;
			break;
		
		case 3:
			iVar6 = 0;
			iVar7 = 3;
			iVar1 = 40;
			break;
		
		case 4:
			iVar6 = 0;
			iVar7 = 4;
			iVar1 = 40;
			break;
		
		case 5:
			iVar6 = 0;
			iVar7 = 5;
			iVar1 = 40;
			break;
		
		case 6:
			iVar6 = 0;
			iVar7 = 6;
			iVar1 = 40;
			break;
		
		case 7:
			iVar6 = 0;
			iVar7 = 7;
			iVar1 = 45;
			break;
		
		case 8:
			iVar6 = 0;
			iVar7 = 8;
			iVar1 = 40;
			break;
		
		case 9:
			iVar6 = 0;
			iVar7 = 9;
			iVar1 = 40;
			break;
		
		case 10:
			iVar6 = 0;
			iVar7 = 10;
			iVar1 = 135;
			break;
		
		case 11:
			iVar6 = 0;
			iVar7 = 11;
			iVar1 = 60;
			break;
		
		case 12:
			iVar6 = 0;
			iVar7 = 12;
			iVar1 = 220;
			break;
		
		case 13:
			iVar6 = 0;
			iVar7 = 13;
			iVar1 = 45;
			break;
		
		case 14:
			iVar6 = 0;
			iVar7 = 14;
			iVar1 = 45;
			break;
		
		case 15:
			iVar6 = 0;
			iVar7 = 15;
			iVar1 = 125;
			break;
	}
	switch (iParam0)
	{
		case 16:
			iVar6 = 1;
			iVar7 = 0;
			iVar1 = 390;
			break;
		
		case 17:
			iVar6 = 1;
			iVar7 = 1;
			iVar1 = 230;
			break;
		
		case 18:
			iVar6 = 1;
			iVar7 = 2;
			iVar1 = 355;
			break;
		
		case 19:
			iVar6 = 1;
			iVar7 = 3;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 20:
			iVar6 = 1;
			iVar7 = 4;
			iVar1 = 5000;
			break;
		
		case 21:
			iVar6 = 1;
			iVar7 = 5;
			iVar1 = 2725;
			break;
		
		case 22:
			iVar6 = 1;
			iVar7 = 6;
			iVar1 = 3265;
			break;
		
		case 23:
			iVar6 = 1;
			iVar7 = 7;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 24:
			iVar6 = 1;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 25:
			iVar6 = 1;
			iVar7 = 9;
			iVar1 = 3625;
			break;
		
		case 26:
			iVar6 = 1;
			iVar7 = 10;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 27:
			iVar6 = 1;
			iVar7 = 11;
			iVar1 = 4220;
			break;
		
		case 28:
			iVar6 = 1;
			iVar7 = 12;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 29:
			iVar6 = 1;
			iVar7 = 13;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 30:
			iVar6 = 1;
			iVar7 = 14;
			iVar1 = 310;
			break;
		
		case 31:
			iVar6 = 1;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
	}
	switch (iParam0)
	{
		case 32:
			iVar6 = 2;
			iVar7 = 0;
			iVar1 = 45;
			break;
		
		case 33:
			iVar6 = 2;
			iVar7 = 1;
			iVar1 = 210;
			break;
		
		case 34:
			iVar6 = 2;
			iVar7 = 2;
			iVar1 = 75;
			break;
		
		case 35:
			iVar6 = 2;
			iVar7 = 3;
			iVar1 = 50;
			break;
		
		case 36:
			iVar6 = 2;
			iVar7 = 4;
			iVar1 = 60;
			break;
		
		case 37:
			iVar6 = 2;
			iVar7 = 5;
			iVar1 = 50;
			break;
		
		case 38:
			iVar6 = 2;
			iVar7 = 6;
			iVar1 = 295;
			break;
		
		case 39:
			iVar6 = 2;
			iVar7 = 7;
			iVar1 = 80;
			break;
		
		case 40:
			iVar6 = 2;
			iVar7 = 8;
			iVar1 = 75;
			break;
		
		case 41:
			iVar6 = 2;
			iVar7 = 9;
			iVar1 = 2250;
			break;
		
		case 42:
			iVar6 = 2;
			iVar7 = 10;
			iVar1 = 275;
			break;
		
		case 43:
			iVar6 = 2;
			iVar7 = 11;
			iVar1 = 445;
			break;
		
		case 44:
			iVar6 = 2;
			iVar7 = 12;
			iVar1 = 50;
			break;
		
		case 45:
			iVar6 = 2;
			iVar7 = 13;
			iVar1 = 40;
			break;
		
		case 46:
			iVar6 = 2;
			iVar7 = 14;
			iVar1 = 45;
			break;
		
		case 47:
			iVar6 = 2;
			iVar7 = 15;
			iVar1 = 470;
			break;
	}
	switch (iParam0)
	{
		case 48:
			iVar6 = 3;
			iVar7 = 0;
			iVar1 = 95;
			break;
		
		case 49:
			iVar6 = 3;
			iVar7 = 1;
			iVar1 = 95;
			break;
		
		case 50:
			iVar6 = 3;
			iVar7 = 2;
			iVar1 = 360;
			break;
		
		case 51:
			iVar6 = 3;
			iVar7 = 3;
			iVar1 = 100;
			break;
		
		case 52:
			iVar6 = 3;
			iVar7 = 4;
			iVar1 = 60;
			break;
		
		case 53:
			iVar6 = 3;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 54:
			iVar6 = 3;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 55:
			iVar6 = 3;
			iVar7 = 7;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 56:
			iVar6 = 3;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 57:
			iVar6 = 3;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 58:
			iVar6 = 3;
			iVar7 = 10;
			iVar1 = 295;
			break;
		
		case 59:
			iVar6 = 3;
			iVar7 = 11;
			iVar1 = 460;
			break;
		
		case 60:
			iVar6 = 3;
			iVar7 = 12;
			iVar1 = 1980;
			break;
		
		case 61:
			iVar6 = 3;
			iVar7 = 13;
			iVar1 = 2110;
			break;
		
		case 62:
			iVar6 = 3;
			iVar7 = 14;
			iVar1 = 95;
			break;
		
		case 63:
			iVar6 = 3;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
	}
	switch (iParam0)
	{
		case 64:
			iVar6 = 4;
			iVar7 = 0;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 65:
			iVar6 = 4;
			iVar7 = 1;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 66:
			iVar6 = 4;
			iVar7 = 2;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 67:
			iVar6 = 4;
			iVar7 = 3;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 68:
			iVar6 = 4;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 69:
			iVar6 = 4;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 70:
			iVar6 = 4;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 71:
			iVar6 = 4;
			iVar7 = 7;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 72:
			iVar6 = 4;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 73:
			iVar6 = 4;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 74:
			iVar6 = 4;
			iVar7 = 10;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 75:
			iVar6 = 4;
			iVar7 = 11;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 76:
			iVar6 = 4;
			iVar7 = 12;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 77:
			iVar6 = 4;
			iVar7 = 13;
			iVar1 = 40;
			break;
		
		case 78:
			iVar6 = 4;
			iVar7 = 14;
			iVar1 = 40;
			break;
		
		case 79:
			iVar6 = 4;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
	}
	switch (iParam0)
	{
		case 80:
			iVar6 = 5;
			iVar7 = 0;
			iVar1 = 45;
			break;
		
		case 81:
			iVar6 = 5;
			iVar7 = 1;
			iVar1 = 60;
			break;
		
		case 82:
			iVar6 = 5;
			iVar7 = 2;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 83:
			iVar6 = 5;
			iVar7 = 3;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 84:
			iVar6 = 5;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 85:
			iVar6 = 5;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 86:
			iVar6 = 5;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 87:
			iVar6 = 5;
			iVar7 = 7;
			iVar1 = 375;
			break;
		
		case 88:
			iVar6 = 5;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 89:
			iVar6 = 5;
			iVar7 = 9;
			iVar1 = 90;
			break;
		
		case 90:
			iVar6 = 5;
			iVar7 = 10;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 91:
			iVar6 = 5;
			iVar7 = 11;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 92:
			iVar6 = 5;
			iVar7 = 12;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 93:
			iVar6 = 5;
			iVar7 = 13;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 94:
			iVar6 = 5;
			iVar7 = 14;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 95:
			iVar6 = 5;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
	}
	switch (iParam0)
	{
		case 96:
			iVar6 = 6;
			iVar7 = 0;
			iVar1 = 900;
			break;
		
		case 97:
			iVar6 = 6;
			iVar7 = 1;
			iVar1 = 1000;
			break;
		
		case 98:
			iVar6 = 6;
			iVar7 = 2;
			iVar1 = 1050;
			break;
		
		case 99:
			iVar6 = 6;
			iVar7 = 3;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 100:
			iVar6 = 6;
			iVar7 = 4;
			iVar1 = 1000;
			break;
		
		case 101:
			iVar6 = 6;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 102:
			iVar6 = 6;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 103:
			iVar6 = 6;
			iVar7 = 7;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 104:
			iVar6 = 6;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 105:
			iVar6 = 6;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 106:
			iVar6 = 6;
			iVar7 = 10;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 107:
			iVar6 = 6;
			iVar7 = 11;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 108:
			iVar6 = 6;
			iVar7 = 12;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 109:
			iVar6 = 6;
			iVar7 = 13;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 110:
			iVar6 = 6;
			iVar7 = 14;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 111:
			iVar6 = 6;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
	}
	switch (iParam0)
	{
		case 112:
			iVar6 = 7;
			iVar7 = 0;
			iVar1 = 2975;
			break;
		
		case 113:
			iVar6 = 7;
			iVar7 = 1;
			iVar1 = 1100;
			break;
		
		case 114:
			iVar6 = 7;
			iVar7 = 2;
			iVar1 = 1825;
			break;
		
		case 115:
			iVar6 = 7;
			iVar7 = 3;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 116:
			iVar6 = 7;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 117:
			iVar6 = 7;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 118:
			iVar6 = 7;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 119:
			iVar6 = 7;
			iVar7 = 7;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 120:
			iVar6 = 7;
			iVar7 = 8;
			iVar1 = 1750;
			break;
		
		case 121:
			iVar6 = 7;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 122:
			iVar6 = 7;
			iVar7 = 10;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 123:
			iVar6 = 7;
			iVar7 = 11;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 124:
			iVar6 = 7;
			iVar7 = 12;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 125:
			iVar6 = 7;
			iVar7 = 13;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 126:
			iVar6 = 7;
			iVar7 = 14;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 127:
			iVar6 = 7;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
	}
	switch (iParam0)
	{
		case 128:
			iVar6 = 8;
			iVar7 = 0;
			iVar1 = 1025;
			break;
		
		case 129:
			iVar6 = 8;
			iVar7 = 1;
			iVar1 = 1075;
			break;
		
		case 130:
			iVar6 = 8;
			iVar7 = 2;
			iVar1 = 2805;
			break;
		
		case 131:
			iVar6 = 8;
			iVar7 = 3;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 132:
			iVar6 = 8;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 133:
			iVar6 = 8;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 134:
			iVar6 = 8;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 135:
			iVar6 = 8;
			iVar7 = 7;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 136:
			iVar6 = 8;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 137:
			iVar6 = 8;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 138:
			iVar6 = 8;
			iVar7 = 10;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 139:
			iVar6 = 8;
			iVar7 = 11;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 140:
			iVar6 = 8;
			iVar7 = 12;
			iVar1 = 2250;
			break;
		
		case 141:
			iVar6 = 8;
			iVar7 = 13;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 142:
			iVar6 = 8;
			iVar7 = 14;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 143:
			iVar6 = 8;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
	}
	switch (iParam0)
	{
		case 144:
			iVar6 = 9;
			iVar7 = 0;
			iVar1 = 495;
			break;
		
		case 145:
			iVar6 = 9;
			iVar7 = 1;
			iVar1 = 95;
			break;
		
		case 146:
			iVar6 = 9;
			iVar7 = 2;
			iVar1 = 95;
			break;
		
		case 147:
			iVar6 = 9;
			iVar7 = 3;
			iVar1 = 525;
			break;
		
		case 148:
			iVar6 = 9;
			iVar7 = 4;
			iVar1 = 100;
			break;
		
		case 149:
			iVar6 = 9;
			iVar7 = 5;
			iVar1 = 110;
			break;
		
		case 150:
			iVar6 = 9;
			iVar7 = 6;
			iVar1 = 100;
			break;
		
		case 151:
			iVar6 = 9;
			iVar7 = 7;
			iVar1 = 110;
			break;
		
		case 152:
			iVar6 = 9;
			iVar7 = 8;
			iVar1 = 130;
			break;
		
		case 153:
			iVar6 = 9;
			iVar7 = 9;
			iVar1 = 560;
			break;
		
		case 154:
			iVar6 = 9;
			iVar7 = 10;
			iVar1 = 295;
			break;
		
		case 155:
			iVar6 = 9;
			iVar7 = 11;
			iVar1 = 975;
			break;
		
		case 156:
			iVar6 = 9;
			iVar7 = 12;
			iVar1 = 160;
			break;
		
		case 157:
			iVar6 = 9;
			iVar7 = 13;
			iVar1 = 100;
			break;
		
		case 158:
			iVar6 = 9;
			iVar7 = 14;
			iVar1 = 1700;
			break;
		
		case 159:
			iVar6 = 9;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
	}
	switch (iParam0)
	{
		case 160:
			iVar6 = 10;
			iVar7 = 0;
			iVar1 = 380;
			break;
		
		case 161:
			iVar6 = 10;
			iVar7 = 1;
			iVar1 = 95;
			break;
		
		case 162:
			iVar6 = 10;
			iVar7 = 2;
			iVar1 = 95;
			break;
		
		case 163:
			iVar6 = 10;
			iVar7 = 3;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 164:
			iVar6 = 10;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 165:
			iVar6 = 10;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 166:
			iVar6 = 10;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 167:
			iVar6 = 10;
			iVar7 = 7;
			iVar1 = 110;
			break;
		
		case 168:
			iVar6 = 10;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 169:
			iVar6 = 10;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 170:
			iVar6 = 10;
			iVar7 = 10;
			iVar1 = 95;
			break;
		
		case 171:
			iVar6 = 10;
			iVar7 = 11;
			iVar1 = 90;
			break;
		
		case 172:
			iVar6 = 10;
			iVar7 = 12;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 173:
			iVar6 = 10;
			iVar7 = 13;
			iVar1 = 85;
			break;
		
		case 174:
			iVar6 = 10;
			iVar7 = 14;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 175:
			iVar6 = 10;
			iVar7 = 15;
			iVar1 = 215;
			break;
	}
	switch (iParam0)
	{
		case 176:
			iVar6 = 11;
			iVar7 = 0;
			iVar1 = 90;
			break;
		
		case 177:
			iVar6 = 11;
			iVar7 = 1;
			iVar1 = 95;
			break;
		
		case 178:
			iVar6 = 11;
			iVar7 = 2;
			iVar1 = 95;
			break;
		
		case 179:
			iVar6 = 11;
			iVar7 = 3;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 180:
			iVar6 = 11;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 181:
			iVar6 = 11;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 182:
			iVar6 = 11;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 183:
			iVar6 = 11;
			iVar7 = 7;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 184:
			iVar6 = 11;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 185:
			iVar6 = 11;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 186:
			iVar6 = 11;
			iVar7 = 10;
			iVar1 = 150;
			break;
		
		case 187:
			iVar6 = 11;
			iVar7 = 11;
			iVar1 = 65;
			break;
		
		case 188:
			iVar6 = 11;
			iVar7 = 12;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 189:
			iVar6 = 11;
			iVar7 = 13;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 190:
			iVar6 = 11;
			iVar7 = 14;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 191:
			iVar6 = 11;
			iVar7 = 15;
			iVar1 = 145;
			break;
	}
	switch (iParam0)
	{
		case 192:
			iVar6 = 12;
			iVar7 = 0;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 193:
			iVar6 = 12;
			iVar7 = 1;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 194:
			iVar6 = 12;
			iVar7 = 2;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 195:
			iVar6 = 12;
			iVar7 = 3;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 196:
			iVar6 = 12;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 197:
			iVar6 = 12;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 198:
			iVar6 = 12;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 199:
			iVar6 = 12;
			iVar7 = 7;
			iVar1 = 1560;
			break;
		
		case 200:
			iVar6 = 12;
			iVar7 = 8;
			iVar1 = 195;
			break;
		
		case 201:
			iVar6 = 12;
			iVar7 = 9;
			iVar1 = 200;
			break;
		
		case 202:
			iVar6 = 12;
			iVar7 = 10;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 203:
			iVar6 = 12;
			iVar7 = 11;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 204:
			iVar6 = 12;
			iVar7 = 12;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 205:
			iVar6 = 12;
			iVar7 = 13;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 206:
			iVar6 = 12;
			iVar7 = 14;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 207:
			iVar6 = 12;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
	}
	switch (iParam0)
	{
		case 208:
			iVar6 = 13;
			iVar7 = 0;
			iVar1 = 975;
			break;
		
		case 209:
			iVar6 = 13;
			iVar7 = 1;
			iVar1 = 2670;
			break;
		
		case 210:
			iVar6 = 13;
			iVar7 = 2;
			iVar1 = 480;
			break;
		
		case 211:
			iVar6 = 13;
			iVar7 = 3;
			iVar1 = 400;
			break;
		
		case 212:
			iVar6 = 13;
			iVar7 = 4;
			iVar1 = 2500;
			break;
		
		case 213:
			iVar6 = 13;
			iVar7 = 5;
			iVar1 = 2060;
			break;
		
		case 214:
			iVar6 = 13;
			iVar7 = 6;
			iVar1 = 2620;
			break;
		
		case 215:
			iVar6 = 13;
			iVar7 = 7;
			iVar1 = 475;
			break;
		
		case 216:
			iVar6 = 13;
			iVar7 = 8;
			iVar1 = 490;
			break;
		
		case 217:
			iVar6 = 13;
			iVar7 = 9;
			iVar1 = 2280;
			break;
		
		case 218:
			iVar6 = 13;
			iVar7 = 10;
			iVar1 = 485;
			break;
		
		case 219:
			iVar6 = 13;
			iVar7 = 11;
			iVar1 = 2390;
			break;
		
		case 220:
			iVar6 = 13;
			iVar7 = 12;
			iVar1 = 2610;
			break;
		
		case 221:
			iVar6 = 13;
			iVar7 = 13;
			iVar1 = 1450;
			break;
		
		case 222:
			iVar6 = 13;
			iVar7 = 14;
			iVar1 = 2720;
			break;
		
		case 223:
			iVar6 = 13;
			iVar7 = 15;
			iVar1 = 4995;
			break;
	}
	switch (iParam0)
	{
		case 224:
			iVar6 = 14;
			iVar7 = 0;
			iVar1 = 265;
			break;
		
		case 225:
			iVar6 = 14;
			iVar7 = 1;
			iVar1 = 385;
			break;
		
		case 226:
			iVar6 = 14;
			iVar7 = 2;
			iVar1 = 345;
			break;
		
		case 227:
			iVar6 = 14;
			iVar7 = 3;
			iVar1 = 330;
			break;
		
		case 228:
			iVar6 = 14;
			iVar7 = 4;
			iVar1 = 430;
			break;
		
		case 229:
			iVar6 = 14;
			iVar7 = 5;
			iVar1 = 375;
			break;
		
		case 230:
			iVar6 = 14;
			iVar7 = 6;
			iVar1 = 375;
			break;
		
		case 231:
			iVar6 = 14;
			iVar7 = 7;
			iVar1 = 295;
			break;
		
		case 232:
			iVar6 = 14;
			iVar7 = 8;
			iVar1 = 360;
			break;
		
		case 233:
			iVar6 = 14;
			iVar7 = 9;
			iVar1 = 325;
			break;
		
		case 234:
			iVar6 = 14;
			iVar7 = 10;
			iVar1 = 340;
			break;
		
		case 235:
			iVar6 = 14;
			iVar7 = 11;
			iVar1 = 435;
			break;
		
		case 236:
			iVar6 = 14;
			iVar7 = 12;
			iVar1 = 300;
			break;
		
		case 237:
			iVar6 = 14;
			iVar7 = 13;
			iVar1 = 315;
			break;
		
		case 238:
			iVar6 = 14;
			iVar7 = 14;
			iVar1 = 415;
			break;
		
		case 239:
			iVar6 = 14;
			iVar7 = 15;
			iVar1 = 420;
			break;
	}
	switch (iParam0)
	{
		case 240:
			iVar6 = 15;
			iVar7 = 0;
			iVar1 = 325;
			break;
		
		case 241:
			iVar6 = 15;
			iVar7 = 1;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 242:
			iVar6 = 15;
			iVar7 = 2;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 243:
			iVar6 = 15;
			iVar7 = 3;
			iVar1 = 130;
			break;
		
		case 244:
			iVar6 = 15;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 245:
			iVar6 = 15;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 246:
			iVar6 = 15;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 247:
			iVar6 = 15;
			iVar7 = 7;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 248:
			iVar6 = 15;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 249:
			iVar6 = 15;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 250:
			iVar6 = 15;
			iVar7 = 10;
			iVar1 = 450;
			break;
		
		case 251:
			iVar6 = 15;
			iVar7 = 11;
			iVar1 = 465;
			break;
		
		case 252:
			iVar6 = 15;
			iVar7 = 12;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 253:
			iVar6 = 15;
			iVar7 = 13;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 254:
			iVar6 = 15;
			iVar7 = 14;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 255:
			iVar6 = 15;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
	}
	StringCopy(&Var2, "U_FMF_", 16);
	StringIntConCat(&Var2, iVar6, 16);
	StringConCat(&Var2, "_", 16);
	StringIntConCat(&Var2, iVar7, 16);
	if (iParam0 == 4)
	{
		if (func_585(89, -1))
		{
			StringCopy(&Var2, "REW_RS", 16);
			iVar1 = system::round(((system::to_float(1250) * Global_262145.f_2977) * Global_279748.f_24));
		}
		else
		{
			iVar1 = system::round(((system::to_float(40) * Global_262145.f_1500[4]) * Global_279748.f_24));
		}
	}
	else if (iParam0 == 7)
	{
		if (func_585(88, -1))
		{
			StringCopy(&Var2, "REW_LSB", 16);
			iVar1 = system::round(((system::to_float(450) * Global_262145.f_2976) * Global_279748.f_24));
		}
		else
		{
			iVar1 = system::round(((system::to_float(45) * Global_262145.f_1500[7]) * Global_279748.f_24));
		}
	}
	else if (iParam0 == 9)
	{
		if (func_585(87, -1))
		{
			StringCopy(&Var2, "REW_REDSK", 16);
			iVar1 = system::round(((system::to_float(500) * Global_262145.f_2975) * Global_279748.f_24));
		}
		else
		{
			iVar1 = system::round(((system::to_float(40) * Global_262145.f_1500[9]) * Global_279748.f_24));
		}
	}
	else
	{
		iVar11 = iParam0;
		if (iVar11 >= 0 && iVar11 < 256)
		{
			iVar1 = system::round(((system::to_float(iVar1) * Global_262145.f_1500[iVar11]) * Global_279748.f_24));
		}
	}
	if (iParam0 >= 256)
	{
		Global_69518[0 /*14*/].f_5 = 4;
		func_649(iVar10, iParam0, 256);
		if (Global_69518[0 /*14*/].f_7 > 0)
		{
			Global_69518[0 /*14*/].f_7 = system::round((system::to_float(Global_69518[0 /*14*/].f_7) * Global_279748.f_24));
		}
	}
	else
	{
		func_641(&(Global_69518[0 /*14*/]), iVar10, iParam0, &Var2, iVar6, iVar7, iVar1, iVar0, iVar8, iVar9, 0);
	}
}

void func_662(int iParam0)//Position - 0x58E6C
{
	int iVar0;
	int iVar1;
	struct<2> Var2;
	int iVar6;
	int iVar7;
	int iVar8;
	int iVar9;
	int iVar10;
	
	iVar0 = false;
	iVar1 = 10;
	iVar6 = 0;
	iVar7 = 0;
	iVar8 = -1;
	iVar9 = 2;
	iVar10 = 2;
	switch (iParam0)
	{
		case 0:
			iVar6 = 0;
			iVar7 = 0;
			iVar1 = 500;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[0]));
			break;
		
		case 1:
			iVar6 = 1;
			iVar7 = 0;
			iVar1 = 500;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[1]));
			break;
		
		case 2:
			iVar6 = 1;
			iVar7 = 1;
			iVar1 = 495;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[2]));
			break;
		
		case 3:
			iVar6 = 1;
			iVar7 = 2;
			iVar1 = 490;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[3]));
			break;
		
		case 4:
			iVar6 = 1;
			iVar7 = 3;
			iVar1 = 485;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[4]));
			break;
		
		case 5:
			iVar6 = 1;
			iVar7 = 4;
			iVar1 = 480;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[5]));
			break;
		
		case 6:
			iVar6 = 1;
			iVar7 = 5;
			iVar1 = 0;
			break;
		
		case 7:
			iVar6 = 2;
			iVar7 = 0;
			iVar1 = 440;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[6]));
			break;
		
		case 8:
			iVar6 = 2;
			iVar7 = 1;
			iVar1 = 435;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[7]));
			break;
		
		case 9:
			iVar6 = 2;
			iVar7 = 2;
			iVar1 = 430;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[8]));
			break;
		
		case 10:
			iVar6 = 2;
			iVar7 = 3;
			iVar1 = 425;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[9]));
			break;
		
		case 11:
			iVar6 = 2;
			iVar7 = 4;
			iVar1 = 420;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[10]));
			break;
		
		case 12:
			iVar6 = 2;
			iVar7 = 5;
			iVar1 = 0;
			break;
		
		case 13:
			iVar6 = 3;
			iVar7 = 0;
			iVar1 = 190;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[11]));
			break;
		
		case 14:
			iVar6 = 3;
			iVar7 = 1;
			iVar1 = 185;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[12]));
			break;
		
		case 15:
			iVar6 = 3;
			iVar7 = 2;
			iVar1 = 180;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[13]));
			break;
		
		case 16:
			iVar6 = 3;
			iVar7 = 3;
			iVar1 = 175;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[14]));
			break;
		
		case 17:
			iVar6 = 3;
			iVar7 = 4;
			iVar1 = 170;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[15]));
			break;
		
		case 18:
			iVar6 = 4;
			iVar7 = 0;
			iVar1 = 295;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[16]));
			break;
		
		case 19:
			iVar6 = 4;
			iVar7 = 1;
			iVar1 = 290;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[17]));
			break;
		
		case 20:
			iVar6 = 4;
			iVar7 = 2;
			iVar1 = 285;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[18]));
			break;
		
		case 21:
			iVar6 = 4;
			iVar7 = 3;
			iVar1 = 280;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[19]));
			break;
		
		case 22:
			iVar6 = 4;
			iVar7 = 4;
			iVar1 = 275;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[20]));
			break;
		
		case 23:
			iVar6 = 4;
			iVar7 = 5;
			iVar1 = 0;
			break;
		
		case 24:
			iVar6 = 5;
			iVar7 = 0;
			iVar1 = 2000;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[21]));
			break;
		
		case 25:
			iVar6 = 5;
			iVar7 = 1;
			iVar1 = 1995;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[22]));
			break;
		
		case 26:
			iVar6 = 5;
			iVar7 = 2;
			iVar1 = 1990;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[23]));
			break;
		
		case 27:
			iVar6 = 5;
			iVar7 = 3;
			iVar1 = 1985;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[24]));
			break;
		
		case 28:
			iVar6 = 5;
			iVar7 = 4;
			iVar1 = 1980;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[25]));
			break;
		
		case 29:
			iVar6 = 5;
			iVar7 = 5;
			iVar1 = 0;
			break;
		
		case 30:
			iVar6 = 6;
			iVar7 = 0;
			iVar1 = 1150;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[26]));
			break;
		
		case 31:
			iVar6 = 6;
			iVar7 = 1;
			iVar1 = 1145;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[27]));
			break;
		
		case 32:
			iVar6 = 6;
			iVar7 = 2;
			iVar1 = 1140;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[28]));
			break;
		
		case 33:
			iVar6 = 6;
			iVar7 = 3;
			iVar1 = 1135;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[29]));
			break;
		
		case 34:
			iVar6 = 6;
			iVar7 = 4;
			iVar1 = 1130;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[30]));
			break;
		
		case 35:
			iVar6 = 7;
			iVar7 = 0;
			iVar1 = 550;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[31]));
			break;
		
		case 36:
			iVar6 = 7;
			iVar7 = 1;
			iVar1 = 545;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[32]));
			break;
		
		case 37:
			iVar6 = 7;
			iVar7 = 2;
			iVar1 = 540;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[33]));
			break;
		
		case 38:
			iVar6 = 7;
			iVar7 = 3;
			iVar1 = 535;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[34]));
			break;
		
		case 39:
			iVar6 = 7;
			iVar7 = 4;
			iVar1 = 530;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[35]));
			break;
		
		case 40:
			iVar6 = 7;
			iVar7 = 5;
			iVar1 = 0;
			break;
		
		case 41:
			iVar6 = 8;
			iVar7 = 0;
			iVar1 = 580;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[36]));
			break;
		
		case 42:
			iVar6 = 8;
			iVar7 = 1;
			iVar1 = 575;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[37]));
			break;
		
		case 43:
			iVar6 = 8;
			iVar7 = 2;
			iVar1 = 570;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[38]));
			break;
		
		case 44:
			iVar6 = 8;
			iVar7 = 3;
			iVar1 = 565;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[39]));
			break;
		
		case 45:
			iVar6 = 8;
			iVar7 = 4;
			iVar1 = 560;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[40]));
			break;
		
		case 46:
			iVar6 = 8;
			iVar7 = 5;
			iVar1 = 0;
			break;
		
		case 47:
			iVar6 = 9;
			iVar7 = 0;
			iVar1 = 1100;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[41]));
			break;
		
		case 48:
			iVar6 = 9;
			iVar7 = 1;
			iVar1 = 1095;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[42]));
			break;
		
		case 49:
			iVar6 = 9;
			iVar7 = 2;
			iVar1 = 1090;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[43]));
			break;
		
		case 50:
			iVar6 = 9;
			iVar7 = 3;
			iVar1 = 1085;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[44]));
			break;
		
		case 51:
			iVar6 = 9;
			iVar7 = 4;
			iVar1 = 1080;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[45]));
			break;
		
		case 52:
			iVar6 = 9;
			iVar7 = 5;
			iVar1 = 0;
			break;
		
		case 53:
			iVar6 = 10;
			iVar7 = 0;
			iVar1 = 520;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[46]));
			break;
		
		case 54:
			iVar6 = 10;
			iVar7 = 1;
			iVar1 = 515;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[47]));
			break;
		
		case 55:
			iVar6 = 10;
			iVar7 = 2;
			iVar1 = 510;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[48]));
			break;
		
		case 56:
			iVar6 = 10;
			iVar7 = 3;
			iVar1 = 505;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[49]));
			break;
		
		case 57:
			iVar6 = 10;
			iVar7 = 4;
			iVar1 = 500;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[50]));
			break;
		
		case 58:
			iVar6 = 10;
			iVar7 = 5;
			iVar1 = 0;
			break;
		
		case 59:
			iVar6 = 10;
			iVar7 = 6;
			iVar1 = 0;
			break;
		
		case 60:
			iVar6 = 11;
			iVar7 = 0;
			iVar1 = 395;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[51]));
			break;
		
		case 61:
			iVar6 = 11;
			iVar7 = 1;
			iVar1 = 390;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[52]));
			break;
		
		case 62:
			iVar6 = 11;
			iVar7 = 2;
			iVar1 = 385;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[53]));
			break;
		
		case 63:
			iVar6 = 11;
			iVar7 = 3;
			iVar1 = 380;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[54]));
			break;
		
		case 64:
			iVar6 = 11;
			iVar7 = 4;
			iVar1 = 375;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[55]));
			break;
		
		case 65:
			iVar6 = 11;
			iVar7 = 5;
			iVar1 = 0;
			break;
		
		case 66:
			iVar6 = 11;
			iVar7 = 6;
			iVar1 = 0;
			break;
		
		case 67:
			iVar6 = 12;
			iVar7 = 0;
			iVar1 = 1050;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[56]));
			break;
		
		case 68:
			iVar6 = 12;
			iVar7 = 1;
			iVar1 = 1045;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[57]));
			break;
		
		case 69:
			iVar6 = 12;
			iVar7 = 2;
			iVar1 = 1040;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[58]));
			break;
		
		case 70:
			iVar6 = 12;
			iVar7 = 3;
			iVar1 = 1035;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[59]));
			break;
		
		case 71:
			iVar6 = 12;
			iVar7 = 4;
			iVar1 = 1030;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[60]));
			break;
		
		case 72:
			iVar6 = 12;
			iVar7 = 5;
			iVar1 = 0;
			break;
		
		case 73:
			iVar6 = 13;
			iVar7 = 0;
			iVar1 = 1200;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[61]));
			break;
		
		case 74:
			iVar6 = 13;
			iVar7 = 1;
			iVar1 = 1195;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[62]));
			break;
		
		case 75:
			iVar6 = 13;
			iVar7 = 2;
			iVar1 = 1190;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[63]));
			break;
		
		case 76:
			iVar6 = 13;
			iVar7 = 3;
			iVar1 = 1185;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[64]));
			break;
		
		case 77:
			iVar6 = 13;
			iVar7 = 4;
			iVar1 = 1180;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[65]));
			break;
		
		case 78:
			iVar6 = 13;
			iVar7 = 5;
			iVar1 = 0;
			break;
		
		case 79:
			iVar6 = 14;
			iVar7 = 0;
			iVar1 = 475;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[66]));
			break;
		
		case 80:
			iVar6 = 14;
			iVar7 = 1;
			iVar1 = 470;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[67]));
			break;
		
		case 81:
			iVar6 = 14;
			iVar7 = 2;
			iVar1 = 465;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[68]));
			break;
		
		case 82:
			iVar6 = 14;
			iVar7 = 3;
			iVar1 = 460;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[69]));
			break;
		
		case 83:
			iVar6 = 14;
			iVar7 = 4;
			iVar1 = 455;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[70]));
			break;
		
		case 84:
			iVar6 = 14;
			iVar7 = 5;
			iVar1 = 0;
			break;
		
		case 85:
			iVar6 = 15;
			iVar7 = 0;
			iVar1 = 950;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[71]));
			break;
		
		case 86:
			iVar6 = 15;
			iVar7 = 1;
			iVar1 = 945;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[72]));
			break;
		
		case 87:
			iVar6 = 15;
			iVar7 = 2;
			iVar1 = 940;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[73]));
			break;
		
		case 88:
			iVar6 = 15;
			iVar7 = 3;
			iVar1 = 935;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[74]));
			break;
		
		case 89:
			iVar6 = 15;
			iVar7 = 4;
			iVar1 = 930;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2453[75]));
			break;
		
		case 90:
			iVar6 = 15;
			iVar7 = 5;
			iVar1 = 0;
			break;
		
		case 91:
			iVar6 = 15;
			iVar7 = 6;
			iVar1 = 0;
			break;
		
		default:
			Global_69518[0 /*14*/].f_5 = 4;
			func_649(iVar10, iParam0, 92);
			return;
			break;
	}
	StringCopy(&Var2, "H_FMF_", 16);
	StringIntConCat(&Var2, iVar6, 16);
	StringConCat(&Var2, "_", 16);
	StringIntConCat(&Var2, iVar7, 16);
	func_641(&(Global_69518[0 /*14*/]), iVar10, iParam0, &Var2, iVar6, iVar7, iVar1, iVar0, iVar8, iVar9, 0);
}

void func_663(int iParam0, int iParam1)//Position - 0x59D3B
{
	switch (iParam0)
	{
		case 2:
			func_678(iParam1);
			break;
		
		case 11:
			func_677(iParam1);
			break;
		
		case 8:
			func_676(iParam1);
			break;
		
		case 9:
			func_675(iParam1);
			break;
		
		case 3:
			func_674(iParam1);
			break;
		
		case 4:
			func_673(iParam1);
			break;
		
		case 6:
			func_672(iParam1);
			break;
		
		case 1:
			func_671(iParam1);
			break;
		
		case 7:
			func_670(iParam1);
			break;
		
		case 10:
			func_669(iParam1);
			break;
		
		case 14:
			func_668(iParam1);
			break;
		
		case 12:
			func_667(iParam1);
			break;
		
		case 5:
			func_666(iParam1);
			break;
		
		case 0:
			func_665(iParam1);
			break;
		
		case 13:
			func_664(iParam1);
			break;
	}
}

void func_664(int iParam0)//Position - 0x59E2B
{
	int iVar0;
	int iVar1;
	char* sVar2;
	int iVar6;
	int iVar7;
	int iVar8;
	int iVar9;
	int iVar10;
	
	iVar0 = false;
	iVar1 = 10;
	iVar6 = 0;
	iVar7 = 0;
	iVar8 = -1;
	iVar9 = 2;
	iVar10 = 13;
	switch (iParam0)
	{
		case 31:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 0:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 1:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 2:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 3:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 4:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 5:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 6:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 7:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 8:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 9:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 10:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 11:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 12:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 13:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 14:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 15:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 16:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 17:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 18:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 19:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 20:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 21:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 22:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 23:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 24:
			iVar6 = 0;
			iVar7 = 0;
			break;
	}
	func_641(&(Global_69518[0 /*14*/]), iVar10, iParam0, &sVar2, iVar6, iVar7, iVar1, iVar0, iVar8, iVar9, 0);
}

void func_665(int iParam0)//Position - 0x59FF5
{
	int iVar0;
	
	iVar0 = 0;
	Global_69518[0 /*14*/].f_5 = 3;
	func_649(iVar0, iParam0, 0);
}

void func_666(int iParam0)//Position - 0x5A013
{
	int iVar0;
	int iVar1;
	struct<2> Var2;
	int iVar6;
	int iVar7;
	int iVar8;
	int iVar9;
	int iVar10;
	
	iVar0 = false;
	iVar1 = 10;
	iVar6 = 0;
	iVar7 = 0;
	iVar8 = -1;
	iVar9 = 2;
	iVar10 = 5;
	switch (iParam0)
	{
		case 0:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 1:
			iVar6 = 1;
			iVar7 = 0;
			break;
		
		case 2:
			iVar6 = 2;
			iVar7 = 0;
			break;
		
		case 3:
			iVar6 = 3;
			iVar7 = 0;
			break;
		
		case 4:
			iVar6 = 4;
			iVar7 = 0;
			break;
		
		case 5:
			iVar6 = 5;
			iVar7 = 0;
			break;
		
		case 6:
			iVar6 = 6;
			iVar7 = 0;
			break;
		
		case 7:
			iVar6 = 7;
			iVar7 = 0;
			break;
		
		case 8:
			iVar6 = 8;
			iVar7 = 0;
			break;
		
		default:
			Global_69518[0 /*14*/].f_5 = 3;
			func_649(iVar10, iParam0, 9);
			return;
			break;
	}
	StringCopy(&Var2, "HA_FMM_", 16);
	StringIntConCat(&Var2, iVar6, 16);
	StringConCat(&Var2, "_", 16);
	StringIntConCat(&Var2, iVar7, 16);
	func_641(&(Global_69518[0 /*14*/]), iVar10, iParam0, &Var2, iVar6, iVar7, iVar1, iVar0, iVar8, iVar9, 0);
}

void func_667(int iParam0)//Position - 0x5A114
{
	int iVar0;
	int iVar1;
	struct<2> Var2;
	int iVar6;
	int iVar7;
	int iVar8;
	int iVar9;
	int iVar10;
	
	iVar0 = false;
	iVar1 = 10;
	iVar6 = 0;
	iVar7 = 0;
	iVar8 = -1;
	iVar9 = 2;
	iVar10 = 12;
	switch (iParam0)
	{
		case 0:
			iVar6 = 0;
			iVar7 = 0;
			iVar0 = true;
			break;
		
		case 1:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMM_S1", 16);
			break;
		
		case 2:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMM_S2", 16);
			break;
		
		case 3:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMM_S3", 16);
			break;
		
		case 4:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMM_S4", 16);
			break;
		
		case 5:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMM_S5", 16);
			break;
		
		case 6:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMM_S6", 16);
			break;
		
		case 7:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMM_S7", 16);
			break;
		
		case 8:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMM_S8", 16);
			break;
		
		case 9:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMM_S9", 16);
			break;
		
		case 10:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMM_P1", 16);
			break;
		
		case 11:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMM_P2", 16);
			break;
		
		case 12:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMM_P3", 16);
			break;
		
		case 13:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMM_P4", 16);
			break;
		
		case 14:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMM_P5", 16);
			break;
		
		case 15:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMM_P6", 16);
			break;
		
		case 16:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMM_P7", 16);
			break;
		
		case 17:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMM_P8", 16);
			break;
		
		case 18:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMM_B1", 16);
			break;
		
		case 19:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMM_B2", 16);
			break;
		
		case 20:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMM_B3", 16);
			break;
		
		case 21:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMM_B4", 16);
			break;
		
		case 22:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMM_B5", 16);
			break;
		
		case 23:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMM_B6", 16);
			break;
		
		case 24:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMM_B7", 16);
			break;
		
		case 25:
			iVar6 = 0;
			iVar7 = 0;
			StringCopy(&Var2, "O_FMM_B8", 16);
			break;
		
		default:
			Global_69518[0 /*14*/].f_5 = 3;
			func_649(iVar10, iParam0, 26);
			return;
			break;
	}
	func_641(&(Global_69518[0 /*14*/]), iVar10, iParam0, &Var2, iVar6, iVar7, iVar1, iVar0, iVar8, iVar9, 0);
}

void func_668(int iParam0)//Position - 0x5A3C3
{
	int iVar0;
	int iVar1;
	struct<2> Var2;
	int iVar6;
	int iVar7;
	int iVar8;
	int iVar9;
	int iVar10;
	int iVar11;
	int iVar12;
	int iVar13;
	int iVar14;
	int iVar15;
	
	iVar0 = false;
	iVar1 = 10;
	iVar6 = 0;
	iVar7 = 0;
	iVar8 = -1;
	iVar9 = 2;
	iVar10 = 14;
	iVar11 = 0;
	switch (iParam0)
	{
		case 0:
			iVar6 = -1;
			iVar7 = 0;
			iVar1 = 0;
			iVar8 = 0;
			break;
		
		case 1:
			iVar6 = -1;
			iVar7 = 0;
			iVar1 = 0;
			iVar8 = 1;
			break;
		
		case 2:
			iVar6 = -1;
			iVar7 = 0;
			iVar1 = 0;
			iVar8 = 2;
			break;
		
		case 3:
			iVar6 = -1;
			iVar7 = 0;
			iVar1 = 0;
			iVar8 = 3;
			break;
		
		case 4:
			iVar6 = -1;
			iVar7 = 0;
			iVar1 = 0;
			iVar8 = 4;
			break;
		
		case 5:
			iVar6 = -1;
			iVar7 = 0;
			iVar1 = 0;
			iVar8 = 5;
			break;
		
		case 6:
			iVar6 = -1;
			iVar7 = 0;
			iVar1 = 0;
			iVar8 = 6;
			break;
		
		case 7:
			iVar6 = -1;
			iVar7 = 0;
			iVar1 = 0;
			iVar8 = 7;
			break;
		
		case 8:
			iVar6 = -1;
			iVar7 = 0;
			iVar1 = 0;
			iVar8 = 8;
			break;
		
		case 10:
			StringCopy(&Var2, "HT_FMM_0_0", 16);
			iVar6 = 0;
			iVar7 = 0;
			iVar1 = 65;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 11:
			StringCopy(&Var2, "HT_FMM_0_1", 16);
			iVar6 = 0;
			iVar7 = 1;
			iVar1 = 65;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 12:
			StringCopy(&Var2, "HT_FMM_0_2", 16);
			iVar6 = 0;
			iVar7 = 2;
			iVar1 = 85;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 13:
			StringCopy(&Var2, "HT_FMM_0_3", 16);
			iVar6 = 0;
			iVar7 = 3;
			iVar1 = 75;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 14:
			StringCopy(&Var2, "HT_FMM_0_4", 16);
			iVar6 = 0;
			iVar7 = 4;
			iVar1 = 235;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 15:
			StringCopy(&Var2, "HT_FMM_0_5", 16);
			iVar6 = 0;
			iVar7 = 5;
			iVar1 = 80;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 16:
			StringCopy(&Var2, "HT_FMM_0_6", 16);
			iVar6 = 0;
			iVar7 = 6;
			iVar1 = 85;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 17:
			StringCopy(&Var2, "HT_FMM_0_7", 16);
			iVar6 = 0;
			iVar7 = 7;
			iVar1 = 90;
			iVar8 = 0;
			iVar11 = 1;
			break;
	}
	switch (iParam0)
	{
		case 18:
			StringCopy(&Var2, "HT_FMM_1_0", 16);
			iVar6 = 1;
			iVar7 = 0;
			iVar8 = 0;
			break;
		
		case 19:
			StringCopy(&Var2, "HT_FMM_2_0", 16);
			iVar6 = 2;
			iVar7 = 0;
			iVar1 = 35;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 20:
			StringCopy(&Var2, "HT_FMM_2_1", 16);
			iVar6 = 2;
			iVar7 = 1;
			iVar1 = 30;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 21:
			StringCopy(&Var2, "HT_FMM_2_2", 16);
			iVar6 = 2;
			iVar7 = 2;
			iVar1 = 35;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 22:
			StringCopy(&Var2, "HT_FMM_2_3", 16);
			iVar6 = 2;
			iVar7 = 3;
			iVar1 = 320;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 23:
			StringCopy(&Var2, "HT_FMM_2_4", 16);
			iVar6 = 2;
			iVar7 = 4;
			iVar1 = 185;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 24:
			StringCopy(&Var2, "HT_FMM_2_5", 16);
			iVar6 = 2;
			iVar7 = 5;
			iVar1 = 245;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 25:
			StringCopy(&Var2, "HT_FMM_2_6", 16);
			iVar6 = 2;
			iVar7 = 6;
			iVar1 = 35;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 26:
			StringCopy(&Var2, "HT_FMM_2_7", 16);
			iVar6 = 2;
			iVar7 = 7;
			iVar1 = 40;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 27:
			StringCopy(&Var2, "HT_FMM_3_0", 16);
			iVar6 = 3;
			iVar7 = 0;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 28:
			StringCopy(&Var2, "HT_FMM_3_1", 16);
			iVar6 = 3;
			iVar7 = 1;
			iVar1 = 60;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 29:
			StringCopy(&Var2, "HT_FMM_3_2", 16);
			iVar6 = 3;
			iVar7 = 2;
			iVar1 = 65;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 30:
			StringCopy(&Var2, "HT_FMM_3_3", 16);
			iVar6 = 3;
			iVar7 = 3;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 31:
			StringCopy(&Var2, "HT_FMM_3_4", 16);
			iVar6 = 3;
			iVar7 = 4;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 32:
			StringCopy(&Var2, "HT_FMM_3_5", 16);
			iVar6 = 3;
			iVar7 = 5;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 33:
			StringCopy(&Var2, "HT_FMM_3_6", 16);
			iVar6 = 3;
			iVar7 = 6;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 34:
			StringCopy(&Var2, "HT_FMM_3_7", 16);
			iVar6 = 3;
			iVar7 = 7;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 35:
			StringCopy(&Var2, "HT_FMM_4_0", 16);
			iVar6 = 4;
			iVar7 = 0;
			iVar1 = 415;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 36:
			StringCopy(&Var2, "HT_FMM_4_1", 16);
			iVar6 = 4;
			iVar7 = 1;
			iVar1 = 315;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 37:
			StringCopy(&Var2, "HT_FMM_4_2", 16);
			iVar6 = 4;
			iVar7 = 2;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 38:
			StringCopy(&Var2, "HT_FMM_4_3", 16);
			iVar6 = 4;
			iVar7 = 3;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 39:
			StringCopy(&Var2, "HT_FMM_4_4", 16);
			iVar6 = 4;
			iVar7 = 4;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 40:
			StringCopy(&Var2, "HT_FMM_4_5", 16);
			iVar6 = 4;
			iVar7 = 5;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 41:
			StringCopy(&Var2, "HT_FMM_4_6", 16);
			iVar6 = 4;
			iVar7 = 6;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 42:
			StringCopy(&Var2, "HT_FMM_4_7", 16);
			iVar6 = 4;
			iVar7 = 7;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 43:
			StringCopy(&Var2, "HT_FMM_5_0", 16);
			iVar6 = 5;
			iVar7 = 0;
			iVar1 = 75;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 44:
			StringCopy(&Var2, "HT_FMM_5_1", 16);
			iVar6 = 5;
			iVar7 = 1;
			iVar1 = 60;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 45:
			StringCopy(&Var2, "HT_FMM_5_2", 16);
			iVar6 = 5;
			iVar7 = 2;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 46:
			StringCopy(&Var2, "HT_FMM_5_3", 16);
			iVar6 = 5;
			iVar7 = 3;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 47:
			StringCopy(&Var2, "HT_FMM_5_4", 16);
			iVar6 = 5;
			iVar7 = 4;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 48:
			StringCopy(&Var2, "HT_FMM_5_5", 16);
			iVar6 = 5;
			iVar7 = 5;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 49:
			StringCopy(&Var2, "HT_FMM_5_6", 16);
			iVar6 = 5;
			iVar7 = 6;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 50:
			StringCopy(&Var2, "HT_FMM_5_7", 16);
			iVar6 = 5;
			iVar7 = 7;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 51:
			StringCopy(&Var2, "HT_FMM_6_0", 16);
			iVar6 = 6;
			iVar7 = 0;
			iVar1 = 160;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 52:
			StringCopy(&Var2, "HT_FMM_6_1", 16);
			iVar6 = 6;
			iVar7 = 1;
			iVar1 = 265;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 53:
			StringCopy(&Var2, "HT_FMM_6_2", 16);
			iVar6 = 6;
			iVar7 = 2;
			iVar1 = 170;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 54:
			StringCopy(&Var2, "HT_FMM_6_3", 16);
			iVar6 = 6;
			iVar7 = 3;
			iVar1 = 135;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 55:
			StringCopy(&Var2, "HT_FMM_6_4", 16);
			iVar6 = 6;
			iVar7 = 4;
			iVar1 = 570;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 56:
			StringCopy(&Var2, "HT_FMM_6_5", 16);
			iVar6 = 6;
			iVar7 = 5;
			iVar1 = 560;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 57:
			StringCopy(&Var2, "HT_FMM_6_6", 16);
			iVar6 = 6;
			iVar7 = 6;
			iVar1 = 140;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 58:
			StringCopy(&Var2, "HT_FMM_6_7", 16);
			iVar6 = 6;
			iVar7 = 7;
			iVar1 = 130;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 59:
			StringCopy(&Var2, "HT_FMM_7_0", 16);
			iVar6 = 7;
			iVar7 = 0;
			iVar1 = 260;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 60:
			StringCopy(&Var2, "HT_FMM_7_1", 16);
			iVar6 = 7;
			iVar7 = 1;
			iVar1 = 215;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 61:
			StringCopy(&Var2, "HT_FMM_7_2", 16);
			iVar6 = 7;
			iVar7 = 2;
			iVar1 = 430;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 62:
			StringCopy(&Var2, "HT_FMM_7_3", 16);
			iVar6 = 7;
			iVar7 = 3;
			iVar1 = 160;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 63:
			StringCopy(&Var2, "HT_FMM_7_4", 16);
			iVar6 = 7;
			iVar7 = 4;
			iVar1 = 200;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 64:
			StringCopy(&Var2, "HT_FMM_7_5", 16);
			iVar6 = 7;
			iVar7 = 5;
			iVar1 = 155;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 65:
			StringCopy(&Var2, "HT_FMM_7_6", 16);
			iVar6 = 7;
			iVar7 = 6;
			iVar1 = 155;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 66:
			StringCopy(&Var2, "HT_FMM_7_7", 16);
			iVar6 = 7;
			iVar7 = 7;
			iVar1 = 165;
			iVar8 = 0;
			iVar11 = 1;
			break;
	}
	switch (iParam0)
	{
		case 67:
			StringCopy(&Var2, "HT_FMM_8_0", 16);
			iVar6 = 8;
			iVar7 = 0;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 68:
			StringCopy(&Var2, "HT_FMM_8_1", 16);
			iVar6 = 8;
			iVar7 = 1;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 69:
			StringCopy(&Var2, "HT_FMM_8_2", 16);
			iVar6 = 8;
			iVar7 = 2;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 70:
			StringCopy(&Var2, "HT_FMM_8_3", 16);
			iVar6 = 8;
			iVar7 = 3;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 71:
			StringCopy(&Var2, "HT_FMM_8_4", 16);
			iVar6 = 8;
			iVar7 = 4;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 72:
			StringCopy(&Var2, "HT_FMM_8_5", 16);
			iVar6 = 8;
			iVar7 = 5;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 73:
			StringCopy(&Var2, "HT_FMM_8_6", 16);
			iVar6 = 8;
			iVar7 = 6;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 74:
			StringCopy(&Var2, "HT_FMM_8_7", 16);
			iVar6 = 8;
			iVar7 = 7;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 75:
			StringCopy(&Var2, "HT_FMM_9_0", 16);
			iVar6 = 9;
			iVar7 = 0;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 76:
			StringCopy(&Var2, "HT_FMM_9_1", 16);
			iVar6 = 9;
			iVar7 = 1;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 77:
			StringCopy(&Var2, "HT_FMM_9_2", 16);
			iVar6 = 9;
			iVar7 = 2;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 78:
			StringCopy(&Var2, "HT_FMM_9_3", 16);
			iVar6 = 9;
			iVar7 = 3;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 79:
			StringCopy(&Var2, "HT_FMM_9_4", 16);
			iVar6 = 9;
			iVar7 = 4;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 80:
			StringCopy(&Var2, "HT_FMM_9_5", 16);
			iVar6 = 9;
			iVar7 = 5;
			iVar1 = 100;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 81:
			StringCopy(&Var2, "HT_FMM_9_6", 16);
			iVar6 = 9;
			iVar7 = 6;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 82:
			StringCopy(&Var2, "HT_FMM_9_7", 16);
			iVar6 = 9;
			iVar7 = 7;
			iVar1 = 65;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 83:
			StringCopy(&Var2, "HT_FMM_10_0", 16);
			iVar6 = 10;
			iVar7 = 0;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 84:
			StringCopy(&Var2, "HT_FMM_10_1", 16);
			iVar6 = 10;
			iVar7 = 1;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 85:
			StringCopy(&Var2, "HT_FMM_10_2", 16);
			iVar6 = 10;
			iVar7 = 2;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 86:
			StringCopy(&Var2, "HT_FMM_10_3", 16);
			iVar6 = 10;
			iVar7 = 3;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 87:
			StringCopy(&Var2, "HT_FMM_10_4", 16);
			iVar6 = 10;
			iVar7 = 4;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 88:
			StringCopy(&Var2, "HT_FMM_10_5", 16);
			iVar6 = 10;
			iVar7 = 5;
			iVar1 = 65;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 89:
			StringCopy(&Var2, "HT_FMM_10_6", 16);
			iVar6 = 10;
			iVar7 = 6;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 90:
			StringCopy(&Var2, "HT_FMM_10_7", 16);
			iVar6 = 10;
			iVar7 = 7;
			iVar1 = 65;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 91:
			StringCopy(&Var2, "HT_FMM_11_0", 16);
			iVar6 = 11;
			iVar7 = 0;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 92:
			StringCopy(&Var2, "HT_FMM_11_1", 16);
			iVar6 = 11;
			iVar7 = 1;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 93:
			StringCopy(&Var2, "HT_FMM_11_2", 16);
			iVar6 = 11;
			iVar7 = 2;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 94:
			StringCopy(&Var2, "HT_FMM_11_3", 16);
			iVar6 = 11;
			iVar7 = 3;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 95:
			StringCopy(&Var2, "HT_FMM_11_4", 16);
			iVar6 = 11;
			iVar7 = 4;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 96:
			StringCopy(&Var2, "HT_FMM_11_5", 16);
			iVar6 = 11;
			iVar7 = 5;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 97:
			StringCopy(&Var2, "HT_FMM_11_6", 16);
			iVar6 = 11;
			iVar7 = 6;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 98:
			StringCopy(&Var2, "HT_FMM_11_7", 16);
			iVar6 = 11;
			iVar7 = 7;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 99:
			StringCopy(&Var2, "HT_FMM_12_0", 16);
			iVar6 = 12;
			iVar7 = 0;
			iVar1 = 1715;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 100:
			StringCopy(&Var2, "HT_FMM_12_1", 16);
			iVar6 = 12;
			iVar7 = 1;
			iVar1 = 3900;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 101:
			StringCopy(&Var2, "HT_FMM_12_2", 16);
			iVar6 = 12;
			iVar7 = 2;
			iVar1 = 1550;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 102:
			StringCopy(&Var2, "HT_FMM_12_3", 16);
			iVar6 = 12;
			iVar7 = 3;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 103:
			StringCopy(&Var2, "HT_FMM_12_4", 16);
			iVar6 = 12;
			iVar7 = 4;
			iVar1 = 4250;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 104:
			StringCopy(&Var2, "HT_FMM_12_5", 16);
			iVar6 = 12;
			iVar7 = 5;
			iVar1 = 0;
			iVar8 = 0;
			iVar11 = 1;
			iVar0 = true;
			break;
		
		case 105:
			StringCopy(&Var2, "HT_FMM_12_6", 16);
			iVar6 = 12;
			iVar7 = 6;
			iVar1 = 4460;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 106:
			StringCopy(&Var2, "HT_FMM_12_7", 16);
			iVar6 = 12;
			iVar7 = 7;
			iVar1 = 4970;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 107:
			StringCopy(&Var2, "HT_FMM_13_0", 16);
			iVar6 = 13;
			iVar7 = 0;
			iVar1 = 290;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 108:
			StringCopy(&Var2, "HT_FMM_13_1", 16);
			iVar6 = 13;
			iVar7 = 1;
			iVar1 = 305;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 109:
			StringCopy(&Var2, "HT_FMM_13_2", 16);
			iVar6 = 13;
			iVar7 = 2;
			iVar1 = 4170;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 110:
			StringCopy(&Var2, "HT_FMM_13_3", 16);
			iVar6 = 13;
			iVar7 = 3;
			iVar1 = 335;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 111:
			StringCopy(&Var2, "HT_FMM_13_4", 16);
			iVar6 = 13;
			iVar7 = 4;
			iVar1 = 4940;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 112:
			StringCopy(&Var2, "HT_FMM_13_5", 16);
			iVar6 = 13;
			iVar7 = 5;
			iVar1 = 275;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 113:
			StringCopy(&Var2, "HT_FMM_13_6", 16);
			iVar6 = 13;
			iVar7 = 6;
			iVar1 = 5000;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 114:
			StringCopy(&Var2, "HT_FMM_13_7", 16);
			iVar6 = 13;
			iVar7 = 7;
			iVar1 = 3620;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 115:
			StringCopy(&Var2, "HT_FMM_14_0", 16);
			iVar6 = 14;
			iVar7 = 0;
			iVar1 = 30;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 116:
			StringCopy(&Var2, "HT_FMM_14_1", 16);
			iVar6 = 14;
			iVar7 = 1;
			iVar1 = 25;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 117:
			StringCopy(&Var2, "HT_FMM_14_2", 16);
			iVar6 = 14;
			iVar7 = 2;
			iVar1 = 30;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 118:
			StringCopy(&Var2, "HT_FMM_14_3", 16);
			iVar6 = 14;
			iVar7 = 3;
			iVar1 = 30;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 119:
			StringCopy(&Var2, "HT_FMM_14_4", 16);
			iVar6 = 14;
			iVar7 = 4;
			iVar1 = 35;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 120:
			StringCopy(&Var2, "HT_FMM_14_5", 16);
			iVar6 = 14;
			iVar7 = 5;
			iVar1 = 30;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 121:
			StringCopy(&Var2, "HT_FMM_14_6", 16);
			iVar6 = 14;
			iVar7 = 6;
			iVar1 = 350;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 122:
			StringCopy(&Var2, "HT_FMM_14_7", 16);
			iVar6 = 14;
			iVar7 = 7;
			iVar1 = 35;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 123:
			StringCopy(&Var2, "HT_FMM_15_0", 16);
			iVar6 = 15;
			iVar7 = 0;
			iVar1 = 365;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 124:
			StringCopy(&Var2, "HT_FMM_15_1", 16);
			iVar6 = 15;
			iVar7 = 1;
			iVar1 = 380;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 125:
			StringCopy(&Var2, "HT_FMM_15_2", 16);
			iVar6 = 15;
			iVar7 = 2;
			iVar1 = 595;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 126:
			StringCopy(&Var2, "HT_FMM_15_3", 16);
			iVar6 = 15;
			iVar7 = 3;
			iVar1 = 595;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 127:
			StringCopy(&Var2, "HT_FMM_15_4", 16);
			iVar6 = 15;
			iVar7 = 4;
			iVar1 = 600;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 128:
			StringCopy(&Var2, "HT_FMM_15_5", 16);
			iVar6 = 15;
			iVar7 = 5;
			iVar1 = 590;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 129:
			StringCopy(&Var2, "HT_FMM_15_6", 16);
			iVar6 = 15;
			iVar7 = 6;
			iVar1 = 395;
			iVar8 = 0;
			iVar11 = 1;
			break;
		
		case 130:
			StringCopy(&Var2, "HT_FMM_15_7", 16);
			iVar6 = 15;
			iVar7 = 7;
			iVar1 = 555;
			iVar8 = 0;
			iVar11 = 1;
			break;
	}
	switch (iParam0)
	{
		case 131:
			StringCopy(&Var2, "HE_FMM_16_0", 16);
			iVar6 = 16;
			iVar7 = 0;
			iVar1 = 1060;
			iVar8 = 0;
			iVar11 = 2;
			break;
		
		case 132:
			StringCopy(&Var2, "HE_FMM_16_1", 16);
			iVar6 = 16;
			iVar7 = 1;
			iVar1 = 1400;
			iVar8 = 0;
			iVar11 = 2;
			break;
		
		case 133:
			StringCopy(&Var2, "HE_FMM_16_2", 16);
			iVar6 = 16;
			iVar7 = 2;
			iVar1 = 1315;
			iVar8 = 0;
			iVar11 = 2;
			break;
		
		case 134:
			StringCopy(&Var2, "HE_FMM_16_3", 16);
			iVar6 = 16;
			iVar7 = 3;
			iVar1 = 1230;
			iVar8 = 0;
			iVar11 = 2;
			break;
		
		case 135:
			StringCopy(&Var2, "HE_FMM_16_4", 16);
			iVar6 = 16;
			iVar7 = 4;
			iVar1 = 1145;
			iVar8 = 0;
			iVar11 = 2;
			break;
		
		case 136:
			StringCopy(&Var2, "HE_FMM_16_5", 16);
			iVar6 = 16;
			iVar7 = 5;
			iVar1 = 8450;
			iVar8 = 0;
			iVar11 = 2;
			break;
		
		case 137:
			StringCopy(&Var2, "HE_FMM_16_6", 16);
			iVar6 = 16;
			iVar7 = 6;
			iVar1 = 675;
			iVar8 = 0;
			iVar11 = 2;
			break;
		
		case 138:
			StringCopy(&Var2, "HE_FMM_16_7", 16);
			iVar6 = 16;
			iVar7 = 7;
			iVar1 = 8750;
			iVar8 = 0;
			iVar11 = 2;
			break;
		
		case 139:
			StringCopy(&Var2, "HE_FMM_17_0", 16);
			iVar6 = 17;
			iVar7 = 0;
			iVar1 = 975;
			iVar8 = 0;
			iVar11 = 2;
			break;
		
		case 140:
			StringCopy(&Var2, "HE_FMM_17_1", 16);
			iVar6 = 17;
			iVar7 = 1;
			iVar1 = 750;
			iVar8 = 0;
			iVar11 = 2;
			break;
		
		case 141:
			StringCopy(&Var2, "HE_FMM_17_2", 16);
			iVar6 = 17;
			iVar7 = 2;
			iVar1 = 865;
			iVar8 = 0;
			iVar11 = 2;
			break;
		
		case 142:
			StringCopy(&Var2, "HE_FMM_17_3", 16);
			iVar6 = 17;
			iVar7 = 3;
			iVar1 = 890;
			iVar8 = 0;
			iVar11 = 2;
			break;
		
		case 143:
			StringCopy(&Var2, "HE_FMM_17_4", 16);
			iVar6 = 17;
			iVar7 = 4;
			iVar1 = 730;
			iVar8 = 0;
			iVar11 = 2;
			break;
		
		case 144:
			StringCopy(&Var2, "HE_FMM_17_5", 16);
			iVar6 = 17;
			iVar7 = 5;
			iVar1 = 650;
			iVar8 = 0;
			iVar11 = 2;
			break;
		
		case 145:
			StringCopy(&Var2, "HE_FMM_17_6", 16);
			iVar6 = 17;
			iVar7 = 6;
			iVar1 = 645;
			iVar8 = 0;
			iVar11 = 2;
			break;
		
		case 146:
			StringCopy(&Var2, "HE_FMM_17_7", 16);
			iVar6 = 17;
			iVar7 = 7;
			iVar1 = 755;
			iVar8 = 0;
			iVar11 = 2;
			break;
		
		case 147:
			StringCopy(&Var2, "HE_FMM_18_0", 16);
			iVar6 = 18;
			iVar7 = 0;
			iVar1 = 13850;
			iVar8 = 0;
			iVar11 = 2;
			break;
		
		case 148:
			StringCopy(&Var2, "HE_FMM_18_1", 16);
			iVar6 = 18;
			iVar7 = 1;
			iVar1 = 2900;
			iVar8 = 0;
			iVar11 = 2;
			break;
		
		case 149:
			StringCopy(&Var2, "HE_FMM_18_2", 16);
			iVar6 = 18;
			iVar7 = 2;
			iVar1 = 2895;
			iVar8 = 0;
			iVar11 = 2;
			break;
		
		case 150:
			StringCopy(&Var2, "HE_FMM_18_3", 16);
			iVar6 = 18;
			iVar7 = 3;
			iVar1 = 12500;
			iVar8 = 0;
			iVar11 = 2;
			break;
		
		case 151:
			StringCopy(&Var2, "HE_FMM_18_4", 16);
			iVar6 = 18;
			iVar7 = 4;
			iVar1 = 15000;
			iVar8 = 0;
			iVar11 = 2;
			break;
		
		case 152:
			StringCopy(&Var2, "HE_FMM_18_5", 16);
			iVar6 = 18;
			iVar7 = 5;
			iVar1 = 14750;
			iVar8 = 0;
			iVar11 = 2;
			break;
		
		case 153:
			StringCopy(&Var2, "HE_FMM_18_6", 16);
			iVar6 = 18;
			iVar7 = 6;
			iVar1 = 13150;
			iVar8 = 0;
			iVar11 = 2;
			break;
		
		case 154:
			StringCopy(&Var2, "HE_FMM_18_7", 16);
			iVar6 = 18;
			iVar7 = 7;
			iVar1 = 2925;
			iVar8 = 0;
			iVar11 = 2;
			break;
	}
	switch (iParam0)
	{
		case 155:
			StringCopy(&Var2, "G_FMM_0_0", 16);
			iVar6 = 0;
			iVar7 = 0;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 156:
			StringCopy(&Var2, "G_FMM_0_1", 16);
			iVar6 = 0;
			iVar7 = 1;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 157:
			StringCopy(&Var2, "G_FMM_0_2", 16);
			iVar6 = 0;
			iVar7 = 2;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 158:
			StringCopy(&Var2, "G_FMM_0_3", 16);
			iVar6 = 0;
			iVar7 = 3;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 159:
			StringCopy(&Var2, "G_FMM_0_4", 16);
			iVar6 = 0;
			iVar7 = 4;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 160:
			StringCopy(&Var2, "G_FMM_0_5", 16);
			iVar6 = 0;
			iVar7 = 5;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 161:
			StringCopy(&Var2, "G_FMM_0_6", 16);
			iVar6 = 0;
			iVar7 = 6;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 162:
			StringCopy(&Var2, "G_FMM_0_7", 16);
			iVar6 = 0;
			iVar7 = 7;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 163:
			StringCopy(&Var2, "G_FMM_0_8", 16);
			iVar6 = 0;
			iVar7 = 8;
			iVar1 = 50;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 164:
			StringCopy(&Var2, "G_FMM_0_9", 16);
			iVar6 = 0;
			iVar7 = 9;
			iVar1 = 50;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 165:
			StringCopy(&Var2, "G_FMM_0_10", 16);
			iVar6 = 0;
			iVar7 = 10;
			iVar1 = 50;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 166:
			StringCopy(&Var2, "G_FMM_1_0", 16);
			iVar6 = 1;
			iVar7 = 0;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 167:
			StringCopy(&Var2, "G_FMM_1_1", 16);
			iVar6 = 1;
			iVar7 = 1;
			iVar1 = 180;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 168:
			StringCopy(&Var2, "G_FMM_1_2", 16);
			iVar6 = 1;
			iVar7 = 2;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 169:
			StringCopy(&Var2, "G_FMM_1_3", 16);
			iVar6 = 1;
			iVar7 = 3;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 170:
			StringCopy(&Var2, "G_FMM_1_4", 16);
			iVar6 = 1;
			iVar7 = 4;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 171:
			StringCopy(&Var2, "G_FMM_1_5", 16);
			iVar6 = 1;
			iVar7 = 5;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 172:
			StringCopy(&Var2, "G_FMM_1_6", 16);
			iVar6 = 1;
			iVar7 = 6;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 173:
			StringCopy(&Var2, "G_FMM_1_7", 16);
			iVar6 = 1;
			iVar7 = 7;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 174:
			StringCopy(&Var2, "G_FMM_2_0", 16);
			iVar6 = 2;
			iVar7 = 0;
			iVar1 = 110;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 175:
			StringCopy(&Var2, "G_FMM_2_1", 16);
			iVar6 = 2;
			iVar7 = 1;
			iVar1 = 140;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 176:
			StringCopy(&Var2, "G_FMM_2_2", 16);
			iVar6 = 2;
			iVar7 = 2;
			iVar1 = 380;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 177:
			StringCopy(&Var2, "G_FMM_2_3", 16);
			iVar6 = 2;
			iVar7 = 3;
			iVar1 = 135;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 178:
			StringCopy(&Var2, "G_FMM_2_4", 16);
			iVar6 = 2;
			iVar7 = 4;
			iVar1 = 130;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 179:
			StringCopy(&Var2, "G_FMM_2_5", 16);
			iVar6 = 2;
			iVar7 = 5;
			iVar1 = 110;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 180:
			StringCopy(&Var2, "G_FMM_2_6", 16);
			iVar6 = 2;
			iVar7 = 6;
			iVar1 = 140;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 181:
			StringCopy(&Var2, "G_FMM_2_7", 16);
			iVar6 = 2;
			iVar7 = 7;
			iVar1 = 390;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 182:
			StringCopy(&Var2, "CLO_EXM_G_2_8", 16);
			iVar6 = 2;
			iVar7 = 8;
			iVar1 = 950;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 183:
			StringCopy(&Var2, "CLO_EXM_G_2_9", 16);
			iVar6 = 2;
			iVar7 = 9;
			iVar1 = 565;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 184:
			StringCopy(&Var2, "CLO_EXM_G_2_10", 16);
			iVar6 = 2;
			iVar7 = 10;
			iVar1 = 630;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 185:
			StringCopy(&Var2, "G_FMM_3_0", 16);
			iVar6 = 3;
			iVar7 = 0;
			iVar1 = 70;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 186:
			StringCopy(&Var2, "G_FMM_3_1", 16);
			iVar6 = 3;
			iVar7 = 1;
			iVar1 = 60;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 187:
			StringCopy(&Var2, "G_FMM_3_2", 16);
			iVar6 = 3;
			iVar7 = 2;
			iVar1 = 65;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 188:
			StringCopy(&Var2, "G_FMM_3_3", 16);
			iVar6 = 3;
			iVar7 = 3;
			iVar1 = 95;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 189:
			StringCopy(&Var2, "G_FMM_3_4", 16);
			iVar6 = 3;
			iVar7 = 4;
			iVar1 = 85;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 190:
			StringCopy(&Var2, "G_FMM_3_5", 16);
			iVar6 = 3;
			iVar7 = 5;
			iVar1 = 75;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 191:
			StringCopy(&Var2, "G_FMM_3_6", 16);
			iVar6 = 3;
			iVar7 = 6;
			iVar1 = 75;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 192:
			StringCopy(&Var2, "G_FMM_3_7", 16);
			iVar6 = 3;
			iVar7 = 7;
			iVar1 = 90;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 193:
			StringCopy(&Var2, "CLO_EXM_G_3_8", 16);
			iVar6 = 3;
			iVar7 = 8;
			iVar1 = 650;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 194:
			StringCopy(&Var2, "CLO_EXM_G_3_9", 16);
			iVar6 = 3;
			iVar7 = 9;
			iVar1 = 265;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 195:
			StringCopy(&Var2, "CLO_EXM_G_3_10", 16);
			iVar6 = 3;
			iVar7 = 10;
			iVar1 = 330;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 196:
			StringCopy(&Var2, "G_FMM_4_0", 16);
			iVar6 = 4;
			iVar7 = 0;
			iVar1 = 245;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 197:
			StringCopy(&Var2, "G_FMM_4_1", 16);
			iVar6 = 4;
			iVar7 = 1;
			iVar1 = 250;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 198:
			StringCopy(&Var2, "G_FMM_4_2", 16);
			iVar6 = 4;
			iVar7 = 2;
			iVar1 = 210;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 199:
			StringCopy(&Var2, "G_FMM_4_3", 16);
			iVar6 = 4;
			iVar7 = 3;
			iVar1 = 245;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 200:
			StringCopy(&Var2, "G_FMM_4_4", 16);
			iVar6 = 4;
			iVar7 = 4;
			iVar1 = 205;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 201:
			StringCopy(&Var2, "G_FMM_4_5", 16);
			iVar6 = 4;
			iVar7 = 5;
			iVar1 = 205;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 202:
			StringCopy(&Var2, "G_FMM_4_6", 16);
			iVar6 = 4;
			iVar7 = 6;
			iVar1 = 215;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 203:
			StringCopy(&Var2, "G_FMM_4_7", 16);
			iVar6 = 4;
			iVar7 = 7;
			iVar1 = 215;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 204:
			StringCopy(&Var2, "CLO_EXM_G_4_8", 16);
			iVar6 = 4;
			iVar7 = 8;
			iVar1 = 995;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 205:
			StringCopy(&Var2, "CLO_EXM_G_4_9", 16);
			iVar6 = 4;
			iVar7 = 9;
			iVar1 = 610;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 206:
			StringCopy(&Var2, "CLO_EXM_G_4_10", 16);
			iVar6 = 4;
			iVar7 = 10;
			iVar1 = 675;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 207:
			StringCopy(&Var2, "G_FMM_5_0", 16);
			iVar6 = 5;
			iVar7 = 0;
			iVar1 = 4050;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 208:
			StringCopy(&Var2, "G_FMM_5_1", 16);
			iVar6 = 5;
			iVar7 = 1;
			iVar1 = 4060;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 209:
			StringCopy(&Var2, "G_FMM_5_2", 16);
			iVar6 = 5;
			iVar7 = 2;
			iVar1 = 170;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 210:
			StringCopy(&Var2, "G_FMM_5_3", 16);
			iVar6 = 5;
			iVar7 = 3;
			iVar1 = 135;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 211:
			StringCopy(&Var2, "G_FMM_5_4", 16);
			iVar6 = 5;
			iVar7 = 4;
			iVar1 = 120;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 212:
			StringCopy(&Var2, "G_FMM_5_5", 16);
			iVar6 = 5;
			iVar7 = 5;
			iVar1 = 110;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 213:
			StringCopy(&Var2, "G_FMM_5_6", 16);
			iVar6 = 5;
			iVar7 = 6;
			iVar1 = 140;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 214:
			StringCopy(&Var2, "G_FMM_5_7", 16);
			iVar6 = 5;
			iVar7 = 7;
			iVar1 = 130;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 215:
			StringCopy(&Var2, "CLO_EXM_G_5_8", 16);
			iVar6 = 5;
			iVar7 = 8;
			iVar1 = 1760;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 216:
			StringCopy(&Var2, "CLO_EXM_G_5_9", 16);
			iVar6 = 5;
			iVar7 = 9;
			iVar1 = 1375;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 217:
			StringCopy(&Var2, "CLO_EXM_G_5_10", 16);
			iVar6 = 5;
			iVar7 = 10;
			iVar1 = 1440;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 218:
			StringCopy(&Var2, "G_FMM_6_0", 16);
			iVar6 = 6;
			iVar7 = 0;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 219:
			StringCopy(&Var2, "G_FMM_6_1", 16);
			iVar6 = 6;
			iVar7 = 1;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 220:
			StringCopy(&Var2, "G_FMM_6_2", 16);
			iVar6 = 6;
			iVar7 = 2;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 221:
			StringCopy(&Var2, "G_FMM_6_3", 16);
			iVar6 = 6;
			iVar7 = 3;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 222:
			StringCopy(&Var2, "G_FMM_6_4", 16);
			iVar6 = 6;
			iVar7 = 4;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 223:
			StringCopy(&Var2, "G_FMM_6_5", 16);
			iVar6 = 6;
			iVar7 = 5;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 224:
			StringCopy(&Var2, "G_FMM_6_6", 16);
			iVar6 = 6;
			iVar7 = 6;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 225:
			StringCopy(&Var2, "G_FMM_6_7", 16);
			iVar6 = 6;
			iVar7 = 7;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 226:
			StringCopy(&Var2, "G_FMM_7_0", 16);
			iVar6 = 7;
			iVar7 = 0;
			iVar1 = 180;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 227:
			StringCopy(&Var2, "G_FMM_7_1", 16);
			iVar6 = 7;
			iVar7 = 1;
			iVar1 = 500;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 228:
			StringCopy(&Var2, "G_FMM_7_2", 16);
			iVar6 = 7;
			iVar7 = 2;
			iVar1 = 115;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 229:
			StringCopy(&Var2, "G_FMM_7_3", 16);
			iVar6 = 7;
			iVar7 = 3;
			iVar1 = 220;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 230:
			StringCopy(&Var2, "G_FMM_7_4", 16);
			iVar6 = 7;
			iVar7 = 4;
			iVar1 = 185;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 231:
			StringCopy(&Var2, "G_FMM_7_5", 16);
			iVar6 = 7;
			iVar7 = 5;
			iVar1 = 1445;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 232:
			StringCopy(&Var2, "G_FMM_7_6", 16);
			iVar6 = 7;
			iVar7 = 6;
			iVar1 = 530;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 233:
			StringCopy(&Var2, "G_FMM_7_7", 16);
			iVar6 = 7;
			iVar7 = 7;
			iVar1 = 650;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 234:
			StringCopy(&Var2, "CLO_EXM_G_7_8", 16);
			iVar6 = 7;
			iVar7 = 8;
			iVar1 = 1170;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 235:
			StringCopy(&Var2, "CLO_EXM_G_7_9", 16);
			iVar6 = 7;
			iVar7 = 9;
			iVar1 = 785;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 236:
			StringCopy(&Var2, "CLO_EXM_G_7_10", 16);
			iVar6 = 7;
			iVar7 = 10;
			iVar1 = 850;
			iVar8 = 1;
			iVar11 = 3;
			break;
	}
	switch (iParam0)
	{
		case 237:
			StringCopy(&Var2, "G_FMM_8_0", 16);
			iVar6 = 8;
			iVar7 = 0;
			iVar1 = 4260;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 238:
			StringCopy(&Var2, "G_FMM_8_1", 16);
			iVar6 = 8;
			iVar7 = 1;
			iVar1 = 4310;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 239:
			StringCopy(&Var2, "G_FMM_8_2", 16);
			iVar6 = 8;
			iVar7 = 2;
			iVar1 = 4130;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 240:
			StringCopy(&Var2, "G_FMM_8_3", 16);
			iVar6 = 8;
			iVar7 = 3;
			iVar1 = 135;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 241:
			StringCopy(&Var2, "G_FMM_8_4", 16);
			iVar6 = 8;
			iVar7 = 4;
			iVar1 = 120;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 242:
			StringCopy(&Var2, "G_FMM_8_5", 16);
			iVar6 = 8;
			iVar7 = 5;
			iVar1 = 110;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 243:
			StringCopy(&Var2, "G_FMM_8_6", 16);
			iVar6 = 8;
			iVar7 = 6;
			iVar1 = 140;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 244:
			StringCopy(&Var2, "G_FMM_8_7", 16);
			iVar6 = 8;
			iVar7 = 7;
			iVar1 = 130;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 245:
			StringCopy(&Var2, "CLO_EXM_G_8_8", 16);
			iVar6 = 8;
			iVar7 = 8;
			iVar1 = 1885;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 246:
			StringCopy(&Var2, "CLO_EXM_G_8_9", 16);
			iVar6 = 8;
			iVar7 = 9;
			iVar1 = 1500;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 247:
			StringCopy(&Var2, "CLO_EXM_G_8_10", 16);
			iVar6 = 8;
			iVar7 = 10;
			iVar1 = 1565;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 248:
			StringCopy(&Var2, "G_FMM_9_0", 16);
			iVar6 = 9;
			iVar7 = 0;
			iVar1 = 65;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 249:
			StringCopy(&Var2, "G_FMM_9_1", 16);
			iVar6 = 9;
			iVar7 = 1;
			iVar1 = 65;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 250:
			StringCopy(&Var2, "G_FMM_9_2", 16);
			iVar6 = 9;
			iVar7 = 2;
			iVar1 = 85;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 251:
			StringCopy(&Var2, "G_FMM_9_3", 16);
			iVar6 = 9;
			iVar7 = 3;
			iVar1 = 75;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 252:
			StringCopy(&Var2, "G_FMM_9_4", 16);
			iVar6 = 9;
			iVar7 = 4;
			iVar1 = 85;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 253:
			StringCopy(&Var2, "G_FMM_9_5", 16);
			iVar6 = 9;
			iVar7 = 5;
			iVar1 = 4290;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 254:
			StringCopy(&Var2, "G_FMM_9_6", 16);
			iVar6 = 9;
			iVar7 = 6;
			iVar1 = 4150;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 255:
			StringCopy(&Var2, "G_FMM_9_7", 16);
			iVar6 = 9;
			iVar7 = 7;
			iVar1 = 4295;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 256:
			StringCopy(&Var2, "CLO_EXM_G_9_8", 16);
			iVar6 = 9;
			iVar7 = 8;
			iVar1 = 2315;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 257:
			StringCopy(&Var2, "CLO_EXM_G_9_9", 16);
			iVar6 = 9;
			iVar7 = 9;
			iVar1 = 1930;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 258:
			StringCopy(&Var2, "CLO_EXM_G_9_10", 16);
			iVar6 = 9;
			iVar7 = 10;
			iVar1 = 1995;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 259:
			StringCopy(&Var2, "G_FMM_10_0", 16);
			iVar6 = 10;
			iVar7 = 0;
			iVar1 = 6240;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 260:
			StringCopy(&Var2, "G_FMM_10_1", 16);
			iVar6 = 10;
			iVar7 = 1;
			iVar1 = 4955;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 261:
			StringCopy(&Var2, "G_FMM_10_2", 16);
			iVar6 = 10;
			iVar7 = 2;
			iVar1 = 5590;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 262:
			StringCopy(&Var2, "G_FMM_10_3", 16);
			iVar6 = 10;
			iVar7 = 3;
			iVar1 = 4920;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 263:
			StringCopy(&Var2, "G_FMM_10_4", 16);
			iVar6 = 10;
			iVar7 = 4;
			iVar1 = 4990;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 264:
			StringCopy(&Var2, "G_FMM_10_5", 16);
			iVar6 = 10;
			iVar7 = 5;
			iVar1 = 4780;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 265:
			StringCopy(&Var2, "G_FMM_10_6", 16);
			iVar6 = 10;
			iVar7 = 6;
			iVar1 = 4775;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 266:
			StringCopy(&Var2, "G_FMM_10_7", 16);
			iVar6 = 10;
			iVar7 = 7;
			iVar1 = 4800;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 267:
			StringCopy(&Var2, "CLO_EXM_G_10_8", 16);
			iVar6 = 10;
			iVar7 = 8;
			iVar1 = 2835;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 268:
			StringCopy(&Var2, "CLO_EXM_G_10_9", 16);
			iVar6 = 10;
			iVar7 = 9;
			iVar1 = 2450;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 269:
			StringCopy(&Var2, "CLO_EXM_G_10_10", 16);
			iVar6 = 10;
			iVar7 = 10;
			iVar1 = 2515;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 270:
			StringCopy(&Var2, "G_FMM_11_0", 16);
			iVar6 = 11;
			iVar7 = 0;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 271:
			StringCopy(&Var2, "G_FMM_11_1", 16);
			iVar6 = 11;
			iVar7 = 1;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 272:
			StringCopy(&Var2, "G_FMM_11_2", 16);
			iVar6 = 11;
			iVar7 = 2;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 273:
			StringCopy(&Var2, "G_FMM_11_3", 16);
			iVar6 = 11;
			iVar7 = 3;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 274:
			StringCopy(&Var2, "G_FMM_11_4", 16);
			iVar6 = 11;
			iVar7 = 4;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 275:
			StringCopy(&Var2, "G_FMM_11_5", 16);
			iVar6 = 11;
			iVar7 = 5;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 277:
			StringCopy(&Var2, "G_FMM_11_7", 16);
			iVar6 = 11;
			iVar7 = 7;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 278:
			StringCopy(&Var2, "G_FMM_12_0", 16);
			iVar6 = 12;
			iVar7 = 0;
			iVar1 = 385;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 279:
			StringCopy(&Var2, "G_FMM_12_1", 16);
			iVar6 = 12;
			iVar7 = 1;
			iVar1 = 310;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 280:
			StringCopy(&Var2, "G_FMM_12_2", 16);
			iVar6 = 12;
			iVar7 = 2;
			iVar1 = 3655;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 281:
			StringCopy(&Var2, "G_FMM_12_3", 16);
			iVar6 = 12;
			iVar7 = 3;
			iVar1 = 4055;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 282:
			StringCopy(&Var2, "G_FMM_12_4", 16);
			iVar6 = 12;
			iVar7 = 4;
			iVar1 = 3595;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 283:
			StringCopy(&Var2, "G_FMM_12_5", 16);
			iVar6 = 12;
			iVar7 = 5;
			iVar1 = 3605;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 284:
			StringCopy(&Var2, "G_FMM_12_6", 16);
			iVar6 = 12;
			iVar7 = 6;
			iVar1 = 3645;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 285:
			StringCopy(&Var2, "G_FMM_12_7", 16);
			iVar6 = 12;
			iVar7 = 7;
			iVar1 = 320;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 286:
			StringCopy(&Var2, "CLO_EXM_G_12_8", 16);
			iVar6 = 12;
			iVar7 = 8;
			iVar1 = 2820;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 287:
			StringCopy(&Var2, "CLO_EXM_G_12_9", 16);
			iVar6 = 12;
			iVar7 = 9;
			iVar1 = 2435;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 288:
			StringCopy(&Var2, "CLO_EXM_G_12_10", 16);
			iVar6 = 12;
			iVar7 = 10;
			iVar1 = 2500;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 289:
			StringCopy(&Var2, "G_FMM_13_0", 16);
			iVar6 = 13;
			iVar7 = 0;
			iVar1 = 230;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 290:
			StringCopy(&Var2, "G_FMM_13_1", 16);
			iVar6 = 13;
			iVar7 = 1;
			iVar1 = 1605;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 291:
			StringCopy(&Var2, "G_FMM_13_2", 16);
			iVar6 = 13;
			iVar7 = 2;
			iVar1 = 2230;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 292:
			StringCopy(&Var2, "G_FMM_13_3", 16);
			iVar6 = 13;
			iVar7 = 3;
			iVar1 = 220;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 293:
			StringCopy(&Var2, "G_FMM_13_4", 16);
			iVar6 = 13;
			iVar7 = 4;
			iVar1 = 185;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 294:
			StringCopy(&Var2, "G_FMM_13_5", 16);
			iVar6 = 13;
			iVar7 = 5;
			iVar1 = 2070;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 295:
			StringCopy(&Var2, "G_FMM_13_6", 16);
			iVar6 = 13;
			iVar7 = 6;
			iVar1 = 2205;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 296:
			StringCopy(&Var2, "G_FMM_13_7", 16);
			iVar6 = 13;
			iVar7 = 7;
			iVar1 = 1690;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 297:
			StringCopy(&Var2, "CLO_EXM_G_13_8", 16);
			iVar6 = 13;
			iVar7 = 8;
			iVar1 = 2715;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 298:
			StringCopy(&Var2, "CLO_EXM_G_13_9", 16);
			iVar6 = 13;
			iVar7 = 9;
			iVar1 = 2330;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 299:
			StringCopy(&Var2, "CLO_EXM_G_13_10", 16);
			iVar6 = 13;
			iVar7 = 10;
			iVar1 = 2395;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 300:
			StringCopy(&Var2, "G_FMM_14_0", 16);
			iVar6 = 14;
			iVar7 = 0;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 301:
			StringCopy(&Var2, "G_FMM_14_1", 16);
			iVar6 = 14;
			iVar7 = 1;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 302:
			StringCopy(&Var2, "G_FMM_14_2", 16);
			iVar6 = 14;
			iVar7 = 2;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 303:
			StringCopy(&Var2, "G_FMM_14_3", 16);
			iVar6 = 14;
			iVar7 = 3;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 304:
			StringCopy(&Var2, "G_FMM_14_4", 16);
			iVar6 = 14;
			iVar7 = 4;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 305:
			StringCopy(&Var2, "G_FMM_14_5", 16);
			iVar6 = 14;
			iVar7 = 5;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 306:
			StringCopy(&Var2, "G_FMM_14_6", 16);
			iVar6 = 14;
			iVar7 = 6;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 307:
			StringCopy(&Var2, "G_FMM_14_7", 16);
			iVar6 = 14;
			iVar7 = 7;
			iVar1 = 0;
			iVar8 = 1;
			iVar11 = 3;
			iVar0 = true;
			break;
		
		case 308:
			StringCopy(&Var2, "G_FMM_15_0", 16);
			iVar6 = 15;
			iVar7 = 0;
			iVar1 = 515;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 309:
			StringCopy(&Var2, "G_FMM_15_1", 16);
			iVar6 = 15;
			iVar7 = 1;
			iVar1 = 60;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 310:
			StringCopy(&Var2, "G_FMM_15_2", 16);
			iVar6 = 15;
			iVar7 = 2;
			iVar1 = 65;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 311:
			StringCopy(&Var2, "G_FMM_15_3", 16);
			iVar6 = 15;
			iVar7 = 3;
			iVar1 = 95;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 312:
			StringCopy(&Var2, "G_FMM_15_4", 16);
			iVar6 = 15;
			iVar7 = 4;
			iVar1 = 85;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 313:
			StringCopy(&Var2, "G_FMM_15_5", 16);
			iVar6 = 15;
			iVar7 = 5;
			iVar1 = 75;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 314:
			StringCopy(&Var2, "G_FMM_15_6", 16);
			iVar6 = 15;
			iVar7 = 6;
			iVar1 = 485;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 315:
			StringCopy(&Var2, "G_FMM_15_7", 16);
			iVar6 = 15;
			iVar7 = 7;
			iVar1 = 545;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 316:
			StringCopy(&Var2, "CLO_EXM_G_15_8", 16);
			iVar6 = 15;
			iVar7 = 8;
			iVar1 = 645;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 317:
			StringCopy(&Var2, "CLO_EXM_G_15_9", 16);
			iVar6 = 15;
			iVar7 = 9;
			iVar1 = 260;
			iVar8 = 1;
			iVar11 = 3;
			break;
		
		case 318:
			StringCopy(&Var2, "CLO_EXM_G_15_10", 16);
			iVar6 = 15;
			iVar7 = 10;
			iVar1 = 325;
			iVar8 = 1;
			iVar11 = 3;
			break;
	}
	switch (iParam0)
	{
		case 319:
			StringCopy(&Var2, "W_FMM_0_0", 16);
			iVar6 = 0;
			iVar7 = 0;
			iVar1 = 5000;
			iVar8 = 6;
			iVar11 = 4;
			break;
		
		case 320:
			StringCopy(&Var2, "W_FMM_0_1", 16);
			iVar6 = 0;
			iVar7 = 1;
			iVar1 = 0;
			iVar8 = 6;
			iVar11 = 4;
			iVar0 = true;
			break;
		
		case 321:
			StringCopy(&Var2, "W_FMM_0_2", 16);
			iVar6 = 0;
			iVar7 = 2;
			iVar1 = 0;
			iVar8 = 6;
			iVar11 = 4;
			iVar0 = true;
			break;
		
		case 322:
			StringCopy(&Var2, "W_FMM_0_3", 16);
			iVar6 = 0;
			iVar7 = 3;
			iVar1 = 0;
			iVar8 = 6;
			iVar11 = 4;
			iVar0 = true;
			break;
		
		case 323:
			StringCopy(&Var2, "W_FMM_0_4", 16);
			iVar6 = 0;
			iVar7 = 4;
			iVar1 = 0;
			iVar8 = 6;
			iVar11 = 4;
			iVar0 = true;
			break;
		
		case 324:
			StringCopy(&Var2, "W_FMM_1_0", 16);
			iVar6 = 1;
			iVar7 = 0;
			iVar1 = 695;
			iVar8 = 6;
			iVar11 = 4;
			break;
		
		case 325:
			StringCopy(&Var2, "W_FMM_1_1", 16);
			iVar6 = 1;
			iVar7 = 1;
			iVar1 = 0;
			iVar8 = 6;
			iVar11 = 4;
			iVar0 = true;
			break;
		
		case 326:
			StringCopy(&Var2, "W_FMM_1_2", 16);
			iVar6 = 1;
			iVar7 = 2;
			iVar1 = 0;
			iVar8 = 6;
			iVar11 = 4;
			iVar0 = true;
			break;
	}
	if (iVar11 == 1)
	{
		iVar12 = (iParam0 - 10);
		if (iVar12 >= 0 && iVar12 < 121)
		{
			if (iVar12 > 8)
			{
				iVar12 = (iVar12 - 1);
			}
			iVar1 = system::round(((system::to_float(iVar1) * Global_262145.f_952[iVar12]) * Global_279748.f_18));
		}
	}
	else if (iVar11 == 2)
	{
		iVar13 = (iParam0 - 131);
		if (iVar13 >= 0 && iVar13 < 24)
		{
			iVar1 = system::round(((system::to_float(iVar1) * Global_262145.f_1073[iVar13]) * Global_279748.f_19));
		}
	}
	else if (iVar11 == 3)
	{
		iVar14 = (iParam0 - 155);
		if (iVar14 >= 0 && iVar14 < 128)
		{
			iVar1 = system::round(((system::to_float(iVar1) * Global_262145.f_1098[iVar14]) * Global_279748.f_20));
		}
	}
	else if (iVar11 == 4)
	{
		iVar15 = (iParam0 - 319);
		if (iVar15 >= 0 && iVar15 < 15)
		{
			iVar1 = system::round(((system::to_float(iVar1) * Global_262145.f_1227[iVar15]) * Global_279748.f_21));
		}
	}
	if (iParam0 >= 327)
	{
		Global_69518[0 /*14*/].f_5 = 3;
		func_649(iVar10, iParam0, 327);
		if (Global_69518[0 /*14*/].f_7 > 0)
		{
			if (dlc1::_0x341DE7ED1D2A1BFD(Global_2621444, -1757550583, 1))
			{
				Global_69518[0 /*14*/].f_7 = system::round((system::to_float(Global_69518[0 /*14*/].f_7) * Global_279748.f_18));
			}
			else if (dlc1::_0x341DE7ED1D2A1BFD(Global_2621444, 97230661, 1))
			{
				Global_69518[0 /*14*/].f_7 = system::round((system::to_float(Global_69518[0 /*14*/].f_7) * Global_279748.f_20));
			}
			else if (dlc1::_0x341DE7ED1D2A1BFD(Global_2621444, 1147826474, 1))
			{
				Global_69518[0 /*14*/].f_7 = system::round((system::to_float(Global_69518[0 /*14*/].f_7) * Global_279748.f_21));
			}
		}
	}
	else
	{
		func_641(&(Global_69518[0 /*14*/]), iVar10, iParam0, &Var2, iVar6, iVar7, iVar1, iVar0, iVar8, iVar9, 0);
	}
}

void func_669(int iParam0)//Position - 0x5D181
{
	int iVar0;
	int iVar1;
	struct<2> Var2;
	int iVar6;
	int iVar7;
	int iVar8;
	int iVar9;
	int iVar10;
	
	iVar0 = false;
	iVar1 = 10;
	iVar6 = 0;
	iVar7 = 0;
	iVar8 = -1;
	iVar9 = 2;
	iVar10 = 10;
	switch (iParam0)
	{
		case 0:
			StringCopy(&Var2, "D_FMM_0_0", 16);
			iVar6 = 0;
			iVar7 = 0;
			iVar1 = 0;
			break;
		
		case 1:
			StringCopy(&Var2, "D_FMM_1_0", 16);
			iVar6 = 1;
			iVar7 = 0;
			iVar1 = 5000;
			break;
		
		case 2:
			StringCopy(&Var2, "D_FMM_2_0", 16);
			iVar6 = 2;
			iVar7 = 0;
			iVar1 = 10000;
			break;
		
		case 3:
			StringCopy(&Var2, "D_FMM_1_0", 16);
			iVar6 = 3;
			iVar7 = 0;
			iVar1 = 5000;
			break;
		
		case 4:
			StringCopy(&Var2, "D_FMM_2_0", 16);
			iVar6 = 4;
			iVar7 = 0;
			iVar1 = 10000;
			break;
		
		case 5:
			StringCopy(&Var2, "D_FMM_1_0", 16);
			iVar6 = 5;
			iVar7 = 0;
			iVar1 = 5000;
			break;
		
		case 6:
			StringCopy(&Var2, "D_FMM_2_0", 16);
			iVar6 = 6;
			iVar7 = 0;
			iVar1 = 10000;
			break;
		
		default:
			Global_69518[0 /*14*/].f_5 = 3;
			func_649(iVar10, iParam0, 7);
			return;
			break;
	}
	func_641(&(Global_69518[0 /*14*/]), iVar10, iParam0, &Var2, iVar6, iVar7, iVar1, iVar0, iVar8, iVar9, 0);
}

void func_670(int iParam0)//Position - 0x5D2A0
{
	int iVar0;
	int iVar1;
	struct<2> Var2;
	int iVar6;
	int iVar7;
	int iVar8;
	int iVar9;
	int iVar10;
	
	iVar0 = false;
	iVar1 = 10;
	iVar6 = 0;
	iVar7 = 0;
	iVar8 = -1;
	iVar9 = 2;
	iVar10 = 7;
	switch (iParam0)
	{
		case 0:
			iVar6 = 0;
			iVar7 = 0;
			iVar1 = 0;
			break;
		
		case 1:
			iVar6 = 1;
			iVar7 = 0;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 2:
			iVar6 = 1;
			iVar7 = 1;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 3:
			iVar6 = 1;
			iVar7 = 2;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 4:
			iVar6 = 2;
			iVar7 = 0;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 5:
			iVar6 = 2;
			iVar7 = 1;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 6:
			iVar6 = 2;
			iVar7 = 2;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 7:
			iVar6 = 3;
			iVar7 = 0;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 8:
			iVar6 = 3;
			iVar7 = 1;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 9:
			iVar6 = 3;
			iVar7 = 2;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 10:
			iVar6 = 4;
			iVar7 = 0;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 11:
			iVar6 = 4;
			iVar7 = 1;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 12:
			iVar6 = 4;
			iVar7 = 2;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 13:
			iVar6 = 4;
			iVar7 = 3;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 14:
			iVar6 = 4;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 15:
			iVar6 = 4;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 16:
			iVar6 = 4;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 17:
			iVar6 = 4;
			iVar7 = 7;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 18:
			iVar6 = 4;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 19:
			iVar6 = 4;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 20:
			iVar6 = 4;
			iVar7 = 10;
			iVar0 = true;
			break;
		
		case 21:
			iVar6 = 4;
			iVar7 = 11;
			iVar0 = true;
			break;
		
		case 22:
			iVar6 = 4;
			iVar7 = 12;
			iVar0 = true;
			break;
		
		case 23:
			iVar6 = 4;
			iVar7 = 13;
			iVar0 = true;
			break;
		
		case 24:
			iVar6 = 4;
			iVar7 = 14;
			iVar0 = true;
			break;
		
		case 25:
			iVar6 = 4;
			iVar7 = 15;
			iVar0 = true;
			break;
		
		case 26:
			iVar6 = 5;
			iVar7 = 0;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 27:
			iVar6 = 5;
			iVar7 = 1;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 28:
			iVar6 = 5;
			iVar7 = 2;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 29:
			iVar6 = 5;
			iVar7 = 3;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 30:
			iVar6 = 5;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 31:
			iVar6 = 5;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 32:
			iVar6 = 6;
			iVar7 = 0;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 33:
			iVar6 = 6;
			iVar7 = 1;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 34:
			iVar6 = 6;
			iVar7 = 2;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 35:
			iVar6 = 6;
			iVar7 = 3;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 36:
			iVar6 = 6;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 37:
			iVar6 = 6;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 38:
			iVar6 = 7;
			iVar7 = 0;
			break;
		
		case 39:
			iVar6 = 8;
			iVar7 = 0;
			break;
		
		case 40:
			iVar6 = 9;
			iVar7 = 0;
			break;
		
		case 41:
			iVar6 = 10;
			iVar7 = 0;
			if (Global_262145.f_4169 != -1)
			{
				iVar1 = Global_262145.f_4169;
			}
			else
			{
				iVar1 = 115;
			}
			break;
		
		case 42:
			iVar6 = 10;
			iVar7 = 1;
			if (Global_262145.f_4170 != -1)
			{
				iVar1 = Global_262145.f_4170;
			}
			else
			{
				iVar1 = 125;
			}
			break;
		
		case 43:
			iVar6 = 10;
			iVar7 = 2;
			if (Global_262145.f_4171 != -1)
			{
				iVar1 = Global_262145.f_4171;
			}
			else
			{
				iVar1 = 130;
			}
			break;
		
		case 44:
			iVar6 = 10;
			iVar7 = 3;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 45:
			iVar6 = 10;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 46:
			iVar6 = 10;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 47:
			iVar6 = 10;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 48:
			iVar6 = 10;
			iVar7 = 7;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 49:
			iVar6 = 10;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 50:
			iVar6 = 10;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 51:
			iVar6 = 10;
			iVar7 = 10;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 52:
			iVar6 = 10;
			iVar7 = 11;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 53:
			iVar6 = 10;
			iVar7 = 12;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 54:
			iVar6 = 10;
			iVar7 = 13;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 55:
			iVar6 = 10;
			iVar7 = 14;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 56:
			iVar6 = 10;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 57:
			iVar6 = 11;
			iVar7 = 0;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 58:
			iVar6 = 11;
			iVar7 = 1;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 59:
			iVar6 = 11;
			iVar7 = 2;
			if (Global_262145.f_4175 != -1)
			{
				iVar1 = Global_262145.f_4175;
			}
			else
			{
				iVar1 = 725;
			}
			break;
		
		case 60:
			iVar6 = 11;
			iVar7 = 3;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 61:
			iVar6 = 11;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 62:
			iVar6 = 11;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 63:
			iVar6 = 11;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 64:
			iVar6 = 11;
			iVar7 = 7;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 65:
			iVar6 = 11;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 66:
			iVar6 = 11;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 67:
			iVar6 = 11;
			iVar7 = 10;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 68:
			iVar6 = 11;
			iVar7 = 11;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 69:
			iVar6 = 11;
			iVar7 = 12;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 70:
			iVar6 = 11;
			iVar7 = 13;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 71:
			iVar6 = 11;
			iVar7 = 14;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 72:
			iVar6 = 11;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 73:
			iVar6 = 12;
			iVar7 = 0;
			if (Global_262145.f_4172 != -1)
			{
				iVar1 = Global_262145.f_4172;
			}
			else
			{
				iVar1 = 65;
			}
			break;
		
		case 74:
			iVar6 = 12;
			iVar7 = 1;
			if (Global_262145.f_4173 != -1)
			{
				iVar1 = Global_262145.f_4173;
			}
			else
			{
				iVar1 = 65;
			}
			break;
		
		case 75:
			iVar6 = 12;
			iVar7 = 2;
			if (Global_262145.f_4174 != -1)
			{
				iVar1 = Global_262145.f_4174;
			}
			else
			{
				iVar1 = 95;
			}
			break;
		
		case 76:
			iVar6 = 12;
			iVar7 = 3;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 77:
			iVar6 = 12;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 78:
			iVar6 = 12;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 79:
			iVar6 = 12;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 80:
			iVar6 = 12;
			iVar7 = 7;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 81:
			iVar6 = 12;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 82:
			iVar6 = 12;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 83:
			iVar6 = 12;
			iVar7 = 10;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 84:
			iVar6 = 12;
			iVar7 = 11;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 85:
			iVar6 = 12;
			iVar7 = 12;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 86:
			iVar6 = 12;
			iVar7 = 13;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 87:
			iVar6 = 12;
			iVar7 = 14;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 88:
			iVar6 = 12;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 89:
			iVar6 = 13;
			iVar7 = 0;
			break;
		
		case 90:
			iVar6 = 14;
			iVar7 = 0;
			break;
		
		case 91:
			iVar6 = 15;
			iVar7 = 0;
			break;
		
		default:
			Global_69518[0 /*14*/].f_5 = 3;
			func_649(iVar10, iParam0, 92);
			if (Global_69518[0 /*14*/].f_7 > 0)
			{
				Global_69518[0 /*14*/].f_7 = system::round((system::to_float(Global_69518[0 /*14*/].f_7) * Global_279748.f_57));
			}
			return;
			break;
	}
	iVar1 = system::round((system::to_float(iVar1) * Global_279748.f_57));
	StringCopy(&Var2, "T_FMM_", 16);
	StringIntConCat(&Var2, iVar6, 16);
	StringConCat(&Var2, "_", 16);
	StringIntConCat(&Var2, iVar7, 16);
	func_641(&(Global_69518[0 /*14*/]), iVar10, iParam0, &Var2, iVar6, iVar7, iVar1, iVar0, iVar8, iVar9, 0);
}

void func_671(int iParam0)//Position - 0x5DB96
{
	int iVar0;
	int iVar1;
	struct<2> Var2;
	int iVar6;
	int iVar7;
	int iVar8;
	int iVar9;
	int iVar10;
	int iVar11;
	
	iVar0 = false;
	iVar1 = 10;
	iVar6 = 0;
	iVar7 = 0;
	iVar8 = -1;
	iVar9 = 2;
	iVar10 = 1;
	switch (iParam0)
	{
		case 0:
			iVar6 = 0;
			iVar7 = 0;
			iVar1 = 0;
			break;
		
		case 1:
			iVar6 = 1;
			iVar7 = 0;
			iVar1 = 965;
			break;
		
		case 2:
			iVar6 = 1;
			iVar7 = 1;
			iVar1 = 960;
			break;
		
		case 3:
			iVar6 = 1;
			iVar7 = 2;
			iVar1 = 9500;
			break;
		
		case 4:
			iVar6 = 1;
			iVar7 = 3;
			iVar1 = 975;
			break;
		
		case 5:
			iVar6 = 2;
			iVar7 = 0;
			iVar1 = 1185;
			break;
		
		case 6:
			iVar6 = 2;
			iVar7 = 1;
			iVar1 = 15000;
			break;
		
		case 7:
			iVar6 = 2;
			iVar7 = 2;
			iVar1 = 1115;
			break;
		
		case 8:
			iVar6 = 2;
			iVar7 = 3;
			iVar1 = 1105;
			break;
		
		case 9:
			iVar6 = 3;
			iVar7 = 0;
			iVar1 = 25000;
			break;
		
		case 10:
			iVar6 = 4;
			iVar7 = 0;
			iVar1 = 510;
			break;
		
		case 11:
			iVar6 = 4;
			iVar7 = 1;
			iVar1 = 530;
			break;
		
		case 12:
			iVar6 = 4;
			iVar7 = 2;
			iVar1 = 5500;
			break;
		
		case 13:
			iVar6 = 4;
			iVar7 = 3;
			iVar1 = 535;
			break;
		
		case 14:
			iVar6 = 5;
			iVar7 = 0;
			iVar1 = 1510;
			break;
		
		case 15:
			iVar6 = 5;
			iVar7 = 1;
			iVar1 = 1530;
			break;
		
		case 16:
			iVar6 = 5;
			iVar7 = 2;
			iVar1 = 14500;
			break;
		
		case 17:
			iVar6 = 5;
			iVar7 = 3;
			iVar1 = 13000;
			break;
		
		case 18:
			iVar6 = 6;
			iVar7 = 0;
			iVar1 = 8000;
			break;
		
		case 19:
			iVar6 = 6;
			iVar7 = 1;
			iVar1 = 1265;
			break;
		
		case 20:
			iVar6 = 6;
			iVar7 = 2;
			iVar1 = 8500;
			break;
		
		case 21:
			iVar6 = 6;
			iVar7 = 3;
			iVar1 = 1210;
			break;
		
		case 22:
			iVar6 = 7;
			iVar7 = 0;
			iVar1 = 2360;
			break;
		
		case 23:
			iVar6 = 7;
			iVar7 = 1;
			iVar1 = 22500;
			break;
		
		case 24:
			iVar6 = 7;
			iVar7 = 2;
			iVar1 = 2375;
			break;
		
		case 25:
			iVar6 = 7;
			iVar7 = 3;
			iVar1 = 2485;
			break;
		
		default:
			Global_69518[0 /*14*/].f_5 = 3;
			func_649(iVar10, iParam0, 26);
			return;
			break;
	}
	StringCopy(&Var2, "M_FMM_", 16);
	StringIntConCat(&Var2, iVar6, 16);
	StringConCat(&Var2, "_", 16);
	StringIntConCat(&Var2, iVar7, 16);
	iVar11 = (iParam0 - 1);
	if (iVar11 >= 0 && iVar11 < 26)
	{
		iVar1 = system::round(((system::to_float(iVar1) * Global_262145.f_925[iVar11]) * Global_279748.f_22));
	}
	func_641(&(Global_69518[0 /*14*/]), iVar10, iParam0, &Var2, iVar6, iVar7, iVar1, iVar0, iVar8, iVar9, 0);
}

void func_672(int iParam0)//Position - 0x5DE4B
{
	int iVar0;
	int iVar1;
	struct<2> Var2;
	int iVar6;
	int iVar7;
	int iVar8;
	int iVar9;
	int iVar10;
	int iVar11;
	
	iVar0 = false;
	iVar1 = 10;
	iVar6 = 0;
	iVar7 = 0;
	iVar8 = -1;
	iVar9 = 2;
	iVar10 = 6;
	switch (iParam0)
	{
		case 0:
			iVar6 = 0;
			iVar7 = 0;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 1:
			iVar6 = 0;
			iVar7 = 1;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 2:
			iVar6 = 0;
			iVar7 = 2;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 3:
			iVar6 = 0;
			iVar7 = 3;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 4:
			iVar6 = 0;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 5:
			iVar6 = 0;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 6:
			iVar6 = 0;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 7:
			iVar6 = 0;
			iVar7 = 7;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 8:
			iVar6 = 0;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 9:
			iVar6 = 0;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 10:
			iVar6 = 0;
			iVar7 = 10;
			iVar1 = 300;
			break;
		
		case 11:
			iVar6 = 0;
			iVar7 = 11;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 12:
			iVar6 = 0;
			iVar7 = 12;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 13:
			iVar6 = 0;
			iVar7 = 13;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 14:
			iVar6 = 0;
			iVar7 = 14;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 15:
			iVar6 = 0;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 16:
			iVar6 = 1;
			iVar7 = 0;
			iVar1 = 285;
			break;
		
		case 17:
			iVar6 = 1;
			iVar7 = 1;
			iVar1 = 180;
			break;
		
		case 18:
			iVar6 = 1;
			iVar7 = 2;
			iVar1 = 190;
			break;
		
		case 19:
			iVar6 = 1;
			iVar7 = 3;
			iVar1 = 190;
			break;
		
		case 20:
			iVar6 = 1;
			iVar7 = 4;
			iVar1 = 165;
			break;
		
		case 21:
			iVar6 = 1;
			iVar7 = 5;
			iVar1 = 200;
			break;
		
		case 22:
			iVar6 = 1;
			iVar7 = 6;
			iVar1 = 480;
			break;
		
		case 23:
			iVar6 = 1;
			iVar7 = 7;
			iVar1 = 155;
			break;
		
		case 24:
			iVar6 = 1;
			iVar7 = 8;
			iVar1 = 350;
			break;
		
		case 25:
			iVar6 = 1;
			iVar7 = 9;
			iVar1 = 290;
			break;
		
		case 26:
			iVar6 = 1;
			iVar7 = 10;
			iVar1 = 165;
			break;
		
		case 27:
			iVar6 = 1;
			iVar7 = 11;
			iVar1 = 165;
			break;
		
		case 28:
			iVar6 = 1;
			iVar7 = 12;
			iVar1 = 170;
			break;
		
		case 29:
			iVar6 = 1;
			iVar7 = 13;
			iVar1 = 155;
			break;
		
		case 30:
			iVar6 = 1;
			iVar7 = 14;
			iVar1 = 165;
			break;
		
		case 31:
			iVar6 = 1;
			iVar7 = 15;
			iVar1 = 165;
			break;
	}
	switch (iParam0)
	{
		case 32:
			iVar6 = 2;
			iVar7 = 0;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 33:
			iVar6 = 2;
			iVar7 = 1;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 34:
			iVar6 = 2;
			iVar7 = 2;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 35:
			iVar6 = 2;
			iVar7 = 3;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 36:
			iVar6 = 2;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 37:
			iVar6 = 2;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 38:
			iVar6 = 2;
			iVar7 = 6;
			iVar1 = 160;
			break;
		
		case 39:
			iVar6 = 2;
			iVar7 = 7;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 40:
			iVar6 = 2;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 41:
			iVar6 = 2;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 42:
			iVar6 = 2;
			iVar7 = 10;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 43:
			iVar6 = 2;
			iVar7 = 11;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 44:
			iVar6 = 2;
			iVar7 = 12;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 45:
			iVar6 = 2;
			iVar7 = 13;
			iVar1 = 205;
			break;
		
		case 46:
			iVar6 = 2;
			iVar7 = 14;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 47:
			iVar6 = 2;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 48:
			iVar6 = 3;
			iVar7 = 0;
			iVar1 = 560;
			break;
		
		case 49:
			iVar6 = 3;
			iVar7 = 1;
			iVar1 = 275;
			break;
		
		case 50:
			iVar6 = 3;
			iVar7 = 2;
			iVar1 = 290;
			break;
		
		case 51:
			iVar6 = 3;
			iVar7 = 3;
			iVar1 = 300;
			break;
		
		case 52:
			iVar6 = 3;
			iVar7 = 4;
			iVar1 = 360;
			break;
		
		case 53:
			iVar6 = 3;
			iVar7 = 5;
			iVar1 = 270;
			break;
		
		case 54:
			iVar6 = 3;
			iVar7 = 6;
			iVar1 = 265;
			break;
		
		case 55:
			iVar6 = 3;
			iVar7 = 7;
			iVar1 = 295;
			break;
		
		case 56:
			iVar6 = 3;
			iVar7 = 8;
			iVar1 = 355;
			break;
		
		case 57:
			iVar6 = 3;
			iVar7 = 9;
			iVar1 = 340;
			break;
		
		case 58:
			iVar6 = 3;
			iVar7 = 10;
			iVar1 = 285;
			break;
		
		case 59:
			iVar6 = 3;
			iVar7 = 11;
			iVar1 = 310;
			break;
		
		case 60:
			iVar6 = 3;
			iVar7 = 12;
			iVar1 = 350;
			break;
		
		case 61:
			iVar6 = 3;
			iVar7 = 13;
			iVar1 = 305;
			break;
		
		case 62:
			iVar6 = 3;
			iVar7 = 14;
			iVar1 = 280;
			break;
		
		case 63:
			iVar6 = 3;
			iVar7 = 15;
			iVar1 = 320;
			break;
	}
	switch (iParam0)
	{
		case 64:
			iVar6 = 4;
			iVar7 = 0;
			iVar1 = 115;
			break;
		
		case 65:
			iVar6 = 4;
			iVar7 = 1;
			iVar1 = 115;
			break;
		
		case 66:
			iVar6 = 4;
			iVar7 = 2;
			iVar1 = 110;
			break;
		
		case 67:
			iVar6 = 4;
			iVar7 = 3;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 68:
			iVar6 = 4;
			iVar7 = 4;
			iVar1 = 125;
			break;
		
		case 69:
			iVar6 = 4;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 70:
			iVar6 = 4;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 71:
			iVar6 = 4;
			iVar7 = 7;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 72:
			iVar6 = 4;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 73:
			iVar6 = 4;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 74:
			iVar6 = 4;
			iVar7 = 10;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 75:
			iVar6 = 4;
			iVar7 = 11;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 76:
			iVar6 = 4;
			iVar7 = 12;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 77:
			iVar6 = 4;
			iVar7 = 13;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 78:
			iVar6 = 4;
			iVar7 = 14;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 79:
			iVar6 = 4;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 80:
			iVar6 = 5;
			iVar7 = 0;
			iVar1 = 50;
			break;
		
		case 81:
			iVar6 = 5;
			iVar7 = 1;
			iVar1 = 35;
			break;
		
		case 82:
			iVar6 = 5;
			iVar7 = 2;
			iVar1 = 50;
			break;
		
		case 83:
			iVar6 = 5;
			iVar7 = 3;
			iVar1 = 50;
			break;
		
		case 84:
			iVar6 = 5;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 85:
			iVar6 = 5;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 86:
			iVar6 = 5;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 87:
			iVar6 = 5;
			iVar7 = 7;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 88:
			iVar6 = 5;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 89:
			iVar6 = 5;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 90:
			iVar6 = 5;
			iVar7 = 10;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 91:
			iVar6 = 5;
			iVar7 = 11;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 92:
			iVar6 = 5;
			iVar7 = 12;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 93:
			iVar6 = 5;
			iVar7 = 13;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 94:
			iVar6 = 5;
			iVar7 = 14;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 95:
			iVar6 = 5;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
	}
	switch (iParam0)
	{
		case 96:
			iVar6 = 6;
			iVar7 = 0;
			iVar1 = 65;
			break;
		
		case 97:
			iVar6 = 6;
			iVar7 = 1;
			iVar1 = 65;
			break;
		
		case 98:
			iVar6 = 6;
			iVar7 = 2;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 99:
			iVar6 = 6;
			iVar7 = 3;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 100:
			iVar6 = 6;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 101:
			iVar6 = 6;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 102:
			iVar6 = 6;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 103:
			iVar6 = 6;
			iVar7 = 7;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 104:
			iVar6 = 6;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 105:
			iVar6 = 6;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 106:
			iVar6 = 6;
			iVar7 = 10;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 107:
			iVar6 = 6;
			iVar7 = 11;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 108:
			iVar6 = 6;
			iVar7 = 12;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 109:
			iVar6 = 6;
			iVar7 = 13;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 110:
			iVar6 = 6;
			iVar7 = 14;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 111:
			iVar6 = 6;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 112:
			iVar6 = 7;
			iVar7 = 0;
			iVar1 = 165;
			break;
		
		case 113:
			iVar6 = 7;
			iVar7 = 1;
			iVar1 = 165;
			break;
		
		case 114:
			iVar6 = 7;
			iVar7 = 2;
			iVar1 = 185;
			break;
		
		case 115:
			iVar6 = 7;
			iVar7 = 3;
			iVar1 = 175;
			break;
		
		case 116:
			iVar6 = 7;
			iVar7 = 4;
			iVar1 = 185;
			break;
		
		case 117:
			iVar6 = 7;
			iVar7 = 5;
			iVar1 = 460;
			break;
		
		case 118:
			iVar6 = 7;
			iVar7 = 6;
			iVar1 = 185;
			break;
		
		case 119:
			iVar6 = 7;
			iVar7 = 7;
			iVar1 = 190;
			break;
		
		case 120:
			iVar6 = 7;
			iVar7 = 8;
			iVar1 = 165;
			break;
		
		case 121:
			iVar6 = 7;
			iVar7 = 9;
			iVar1 = 165;
			break;
		
		case 122:
			iVar6 = 7;
			iVar7 = 10;
			iVar1 = 185;
			break;
		
		case 123:
			iVar6 = 7;
			iVar7 = 11;
			iVar1 = 175;
			break;
		
		case 124:
			iVar6 = 7;
			iVar7 = 12;
			iVar1 = 235;
			break;
		
		case 125:
			iVar6 = 7;
			iVar7 = 13;
			iVar1 = 445;
			break;
		
		case 126:
			iVar6 = 7;
			iVar7 = 14;
			iVar1 = 185;
			break;
		
		case 127:
			iVar6 = 7;
			iVar7 = 15;
			iVar1 = 190;
			break;
	}
	switch (iParam0)
	{
		case 128:
			iVar6 = 8;
			iVar7 = 0;
			iVar1 = 175;
			break;
		
		case 129:
			iVar6 = 8;
			iVar7 = 1;
			iVar1 = 215;
			break;
		
		case 130:
			iVar6 = 8;
			iVar7 = 2;
			iVar1 = 225;
			break;
		
		case 131:
			iVar6 = 8;
			iVar7 = 3;
			iVar1 = 230;
			break;
		
		case 132:
			iVar6 = 8;
			iVar7 = 4;
			iVar1 = 235;
			break;
		
		case 133:
			iVar6 = 8;
			iVar7 = 5;
			iVar1 = 215;
			break;
		
		case 134:
			iVar6 = 8;
			iVar7 = 6;
			iVar1 = 205;
			break;
		
		case 135:
			iVar6 = 8;
			iVar7 = 7;
			iVar1 = 245;
			break;
		
		case 136:
			iVar6 = 8;
			iVar7 = 8;
			iVar1 = 225;
			break;
		
		case 137:
			iVar6 = 8;
			iVar7 = 9;
			iVar1 = 215;
			break;
		
		case 138:
			iVar6 = 8;
			iVar7 = 10;
			iVar1 = 225;
			break;
		
		case 139:
			iVar6 = 8;
			iVar7 = 11;
			iVar1 = 230;
			break;
		
		case 140:
			iVar6 = 8;
			iVar7 = 12;
			iVar1 = 235;
			break;
		
		case 141:
			iVar6 = 8;
			iVar7 = 13;
			iVar1 = 215;
			break;
		
		case 142:
			iVar6 = 8;
			iVar7 = 14;
			iVar1 = 425;
			break;
		
		case 143:
			iVar6 = 8;
			iVar7 = 15;
			iVar1 = 245;
			break;
		
		case 144:
			iVar6 = 9;
			iVar7 = 0;
			iVar1 = 225;
			break;
		
		case 145:
			iVar6 = 9;
			iVar7 = 1;
			iVar1 = 135;
			break;
		
		case 146:
			iVar6 = 9;
			iVar7 = 2;
			iVar1 = 130;
			break;
		
		case 147:
			iVar6 = 9;
			iVar7 = 3;
			iVar1 = 110;
			break;
		
		case 148:
			iVar6 = 9;
			iVar7 = 4;
			iVar1 = 140;
			break;
		
		case 149:
			iVar6 = 9;
			iVar7 = 5;
			iVar1 = 95;
			break;
		
		case 150:
			iVar6 = 9;
			iVar7 = 6;
			iVar1 = 100;
			break;
		
		case 151:
			iVar6 = 9;
			iVar7 = 7;
			iVar1 = 110;
			break;
		
		case 152:
			iVar6 = 9;
			iVar7 = 8;
			iVar1 = 95;
			break;
		
		case 153:
			iVar6 = 9;
			iVar7 = 9;
			iVar1 = 105;
			break;
		
		case 154:
			iVar6 = 9;
			iVar7 = 10;
			iVar1 = 105;
			break;
		
		case 155:
			iVar6 = 9;
			iVar7 = 11;
			iVar1 = 115;
			break;
		
		case 156:
			iVar6 = 9;
			iVar7 = 12;
			iVar1 = 115;
			break;
		
		case 157:
			iVar6 = 9;
			iVar7 = 13;
			iVar1 = 115;
			break;
		
		case 158:
			iVar6 = 9;
			iVar7 = 14;
			iVar1 = 500;
			break;
		
		case 159:
			iVar6 = 9;
			iVar7 = 15;
			iVar1 = 440;
			break;
	}
	switch (iParam0)
	{
		case 160:
			iVar6 = 10;
			iVar7 = 0;
			iVar1 = 1090;
			break;
		
		case 161:
			iVar6 = 10;
			iVar7 = 1;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 162:
			iVar6 = 10;
			iVar7 = 2;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 163:
			iVar6 = 10;
			iVar7 = 3;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 164:
			iVar6 = 10;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 165:
			iVar6 = 10;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 166:
			iVar6 = 10;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 167:
			iVar6 = 10;
			iVar7 = 7;
			iVar1 = 600;
			break;
		
		case 168:
			iVar6 = 10;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 169:
			iVar6 = 10;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 170:
			iVar6 = 10;
			iVar7 = 10;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 171:
			iVar6 = 10;
			iVar7 = 11;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 172:
			iVar6 = 10;
			iVar7 = 12;
			iVar1 = 1865;
			break;
		
		case 173:
			iVar6 = 10;
			iVar7 = 13;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 174:
			iVar6 = 10;
			iVar7 = 14;
			iVar1 = 490;
			break;
		
		case 175:
			iVar6 = 10;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 176:
			iVar6 = 11;
			iVar7 = 0;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 177:
			iVar6 = 11;
			iVar7 = 1;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 178:
			iVar6 = 11;
			iVar7 = 2;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 179:
			iVar6 = 11;
			iVar7 = 3;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 180:
			iVar6 = 11;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 181:
			iVar6 = 11;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 182:
			iVar6 = 11;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 183:
			iVar6 = 11;
			iVar7 = 7;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 184:
			iVar6 = 11;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 185:
			iVar6 = 11;
			iVar7 = 9;
			iVar1 = 470;
			break;
		
		case 186:
			iVar6 = 11;
			iVar7 = 10;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 187:
			iVar6 = 11;
			iVar7 = 11;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 188:
			iVar6 = 11;
			iVar7 = 12;
			iVar1 = 1795;
			break;
		
		case 189:
			iVar6 = 11;
			iVar7 = 13;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 190:
			iVar6 = 11;
			iVar7 = 14;
			iVar1 = 1830;
			break;
		
		case 191:
			iVar6 = 11;
			iVar7 = 15;
			iVar1 = 455;
			break;
	}
	switch (iParam0)
	{
		case 192:
			iVar6 = 12;
			iVar7 = 0;
			iVar1 = 455;
			break;
		
		case 193:
			iVar6 = 12;
			iVar7 = 1;
			iVar1 = 2110;
			break;
		
		case 194:
			iVar6 = 12;
			iVar7 = 2;
			iVar1 = 380;
			break;
		
		case 195:
			iVar6 = 12;
			iVar7 = 3;
			iVar1 = 1655;
			break;
		
		case 196:
			iVar6 = 12;
			iVar7 = 4;
			iVar1 = 2500;
			break;
		
		case 197:
			iVar6 = 12;
			iVar7 = 5;
			iVar1 = 415;
			break;
		
		case 198:
			iVar6 = 12;
			iVar7 = 6;
			iVar1 = 730;
			break;
		
		case 199:
			iVar6 = 12;
			iVar7 = 7;
			iVar1 = 445;
			break;
		
		case 200:
			iVar6 = 12;
			iVar7 = 8;
			iVar1 = 425;
			break;
		
		case 201:
			iVar6 = 12;
			iVar7 = 9;
			iVar1 = 410;
			break;
		
		case 202:
			iVar6 = 12;
			iVar7 = 10;
			iVar1 = 480;
			break;
		
		case 203:
			iVar6 = 12;
			iVar7 = 11;
			iVar1 = 485;
			break;
		
		case 204:
			iVar6 = 12;
			iVar7 = 12;
			iVar1 = 480;
			break;
		
		case 205:
			iVar6 = 12;
			iVar7 = 13;
			iVar1 = 395;
			break;
		
		case 206:
			iVar6 = 12;
			iVar7 = 14;
			iVar1 = 495;
			break;
		
		case 207:
			iVar6 = 12;
			iVar7 = 15;
			iVar1 = 2090;
			break;
		
		case 208:
			iVar6 = 13;
			iVar7 = 0;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 209:
			iVar6 = 13;
			iVar7 = 1;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 210:
			iVar6 = 13;
			iVar7 = 2;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 211:
			iVar6 = 13;
			iVar7 = 3;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 212:
			iVar6 = 13;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 213:
			iVar6 = 13;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 214:
			iVar6 = 13;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 215:
			iVar6 = 13;
			iVar7 = 7;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 216:
			iVar6 = 13;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 217:
			iVar6 = 13;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 218:
			iVar6 = 13;
			iVar7 = 10;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 219:
			iVar6 = 13;
			iVar7 = 11;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 220:
			iVar6 = 13;
			iVar7 = 12;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 221:
			iVar6 = 13;
			iVar7 = 13;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 222:
			iVar6 = 13;
			iVar7 = 14;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 223:
			iVar6 = 13;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
	}
	switch (iParam0)
	{
		case 224:
			iVar6 = 14;
			iVar7 = 0;
			iVar1 = 450;
			break;
		
		case 225:
			iVar6 = 14;
			iVar7 = 1;
			iVar1 = 685;
			break;
		
		case 226:
			iVar6 = 14;
			iVar7 = 2;
			iVar1 = 420;
			break;
		
		case 227:
			iVar6 = 14;
			iVar7 = 3;
			iVar1 = 365;
			break;
		
		case 228:
			iVar6 = 14;
			iVar7 = 4;
			iVar1 = 465;
			break;
		
		case 229:
			iVar6 = 14;
			iVar7 = 5;
			iVar1 = 405;
			break;
		
		case 230:
			iVar6 = 14;
			iVar7 = 6;
			iVar1 = 400;
			break;
		
		case 231:
			iVar6 = 14;
			iVar7 = 7;
			iVar1 = 440;
			break;
		
		case 232:
			iVar6 = 14;
			iVar7 = 8;
			iVar1 = 385;
			break;
		
		case 233:
			iVar6 = 14;
			iVar7 = 9;
			iVar1 = 435;
			break;
		
		case 234:
			iVar6 = 14;
			iVar7 = 10;
			iVar1 = 375;
			break;
		
		case 235:
			iVar6 = 14;
			iVar7 = 11;
			iVar1 = 390;
			break;
		
		case 236:
			iVar6 = 14;
			iVar7 = 12;
			iVar1 = 475;
			break;
		
		case 237:
			iVar6 = 14;
			iVar7 = 13;
			iVar1 = 430;
			break;
		
		case 238:
			iVar6 = 14;
			iVar7 = 14;
			iVar1 = 490;
			break;
		
		case 239:
			iVar6 = 14;
			iVar7 = 15;
			iVar1 = 490;
			break;
		
		case 240:
			iVar6 = 15;
			iVar7 = 0;
			iVar1 = 615;
			break;
		
		case 241:
			iVar6 = 15;
			iVar7 = 1;
			iVar1 = 315;
			break;
		
		case 242:
			iVar6 = 15;
			iVar7 = 2;
			iVar1 = 415;
			break;
		
		case 243:
			iVar6 = 15;
			iVar7 = 3;
			iVar1 = 425;
			break;
		
		case 244:
			iVar6 = 15;
			iVar7 = 4;
			iVar1 = 435;
			break;
		
		case 245:
			iVar6 = 15;
			iVar7 = 5;
			iVar1 = 445;
			break;
		
		case 246:
			iVar6 = 15;
			iVar7 = 6;
			iVar1 = 640;
			break;
		
		case 247:
			iVar6 = 15;
			iVar7 = 7;
			iVar1 = 460;
			break;
		
		case 248:
			iVar6 = 15;
			iVar7 = 8;
			iVar1 = 465;
			break;
		
		case 249:
			iVar6 = 15;
			iVar7 = 9;
			iVar1 = 745;
			break;
		
		case 250:
			iVar6 = 15;
			iVar7 = 10;
			iVar1 = 845;
			break;
		
		case 251:
			iVar6 = 15;
			iVar7 = 11;
			iVar1 = 1420;
			break;
		
		case 252:
			iVar6 = 15;
			iVar7 = 12;
			iVar1 = 475;
			break;
		
		case 253:
			iVar6 = 15;
			iVar7 = 13;
			iVar1 = 470;
			break;
		
		case 254:
			iVar6 = 15;
			iVar7 = 14;
			iVar1 = 1000;
			break;
		
		case 255:
			iVar6 = 15;
			iVar7 = 15;
			iVar1 = 690;
			break;
	}
	iVar11 = iParam0;
	if (iVar11 >= 0 && iVar11 < 256)
	{
		iVar1 = system::round(((system::to_float(iVar1) * Global_262145.f_668[iVar11]) * Global_279748.f_17));
	}
	StringCopy(&Var2, "F_FMM_", 16);
	StringIntConCat(&Var2, iVar6, 16);
	StringConCat(&Var2, "_", 16);
	StringIntConCat(&Var2, iVar7, 16);
	if (iParam0 >= 256)
	{
		Global_69518[0 /*14*/].f_5 = 3;
		func_649(iVar10, iParam0, 256);
		if (Global_69518[0 /*14*/].f_7 > 0)
		{
			Global_69518[0 /*14*/].f_7 = system::round((system::to_float(Global_69518[0 /*14*/].f_7) * Global_279748.f_17));
		}
	}
	else
	{
		func_641(&(Global_69518[0 /*14*/]), iVar10, iParam0, &Var2, iVar6, iVar7, iVar1, iVar0, iVar8, iVar9, 0);
	}
}

void func_673(int iParam0)//Position - 0x5F486
{
	int iVar0;
	int iVar1;
	struct<2> Var2;
	int iVar6;
	int iVar7;
	int iVar8;
	int iVar9;
	int iVar10;
	int iVar11;
	
	iVar0 = false;
	iVar1 = 10;
	iVar6 = 0;
	iVar7 = 0;
	iVar8 = -1;
	iVar9 = 2;
	iVar10 = 4;
	switch (iParam0)
	{
		case 0:
			iVar6 = 0;
			iVar7 = 0;
			iVar1 = 335;
			break;
		
		case 1:
			iVar6 = 0;
			iVar7 = 1;
			iVar1 = 460;
			break;
		
		case 2:
			iVar6 = 0;
			iVar7 = 2;
			iVar1 = 455;
			break;
		
		case 3:
			iVar6 = 0;
			iVar7 = 3;
			iVar1 = 470;
			break;
		
		case 4:
			iVar6 = 0;
			iVar7 = 4;
			iVar1 = 650;
			break;
		
		case 5:
			iVar6 = 0;
			iVar7 = 5;
			iVar1 = 385;
			break;
		
		case 6:
			iVar6 = 0;
			iVar7 = 6;
			iVar1 = 455;
			break;
		
		case 7:
			iVar6 = 0;
			iVar7 = 7;
			iVar1 = 2150;
			break;
		
		case 8:
			iVar6 = 0;
			iVar7 = 8;
			iVar1 = 375;
			break;
		
		case 9:
			iVar6 = 0;
			iVar7 = 9;
			iVar1 = 2190;
			break;
		
		case 10:
			iVar6 = 0;
			iVar7 = 10;
			iVar1 = 285;
			break;
		
		case 11:
			iVar6 = 0;
			iVar7 = 11;
			iVar1 = 295;
			break;
		
		case 12:
			iVar6 = 0;
			iVar7 = 12;
			iVar1 = 445;
			break;
		
		case 13:
			iVar6 = 0;
			iVar7 = 13;
			iVar1 = 2240;
			break;
		
		case 14:
			iVar6 = 0;
			iVar7 = 14;
			iVar1 = 465;
			break;
		
		case 15:
			iVar6 = 0;
			iVar7 = 15;
			iVar1 = 1740;
			break;
		
		case 16:
			iVar6 = 1;
			iVar7 = 0;
			iVar1 = 1415;
			break;
		
		case 17:
			iVar6 = 1;
			iVar7 = 1;
			iVar1 = 325;
			break;
		
		case 18:
			iVar6 = 1;
			iVar7 = 2;
			iVar1 = 345;
			break;
		
		case 19:
			iVar6 = 1;
			iVar7 = 3;
			iVar1 = 355;
			break;
		
		case 20:
			iVar6 = 1;
			iVar7 = 4;
			iVar1 = 395;
			break;
		
		case 21:
			iVar6 = 1;
			iVar7 = 5;
			iVar1 = 315;
			break;
		
		case 22:
			iVar6 = 1;
			iVar7 = 6;
			iVar1 = 275;
			break;
		
		case 23:
			iVar6 = 1;
			iVar7 = 7;
			iVar1 = 265;
			break;
		
		case 24:
			iVar6 = 1;
			iVar7 = 8;
			iVar1 = 305;
			break;
		
		case 25:
			iVar6 = 1;
			iVar7 = 9;
			iVar1 = 255;
			break;
		
		case 26:
			iVar6 = 1;
			iVar7 = 10;
			iVar1 = 235;
			break;
		
		case 27:
			iVar6 = 1;
			iVar7 = 11;
			iVar1 = 245;
			break;
		
		case 28:
			iVar6 = 1;
			iVar7 = 12;
			iVar1 = 215;
			break;
		
		case 29:
			iVar6 = 1;
			iVar7 = 13;
			iVar1 = 1865;
			break;
		
		case 30:
			iVar6 = 1;
			iVar7 = 14;
			iVar1 = 450;
			break;
		
		case 31:
			iVar6 = 1;
			iVar7 = 15;
			iVar1 = 415;
			break;
		
		case 32:
			iVar6 = 2;
			iVar7 = 0;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 33:
			iVar6 = 2;
			iVar7 = 1;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 34:
			iVar6 = 2;
			iVar7 = 2;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 35:
			iVar6 = 2;
			iVar7 = 3;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 36:
			iVar6 = 2;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 37:
			iVar6 = 2;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 38:
			iVar6 = 2;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 39:
			iVar6 = 2;
			iVar7 = 7;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 40:
			iVar6 = 2;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 41:
			iVar6 = 2;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 42:
			iVar6 = 2;
			iVar7 = 10;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 43:
			iVar6 = 2;
			iVar7 = 11;
			iVar1 = 100;
			break;
		
		case 44:
			iVar6 = 2;
			iVar7 = 12;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 45:
			iVar6 = 2;
			iVar7 = 13;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 46:
			iVar6 = 2;
			iVar7 = 14;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 47:
			iVar6 = 2;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
	}
	switch (iParam0)
	{
		case 48:
			iVar6 = 3;
			iVar7 = 0;
			iVar1 = 55;
			break;
		
		case 49:
			iVar6 = 3;
			iVar7 = 1;
			iVar1 = 60;
			break;
		
		case 50:
			iVar6 = 3;
			iVar7 = 2;
			iVar1 = 100;
			break;
		
		case 51:
			iVar6 = 3;
			iVar7 = 3;
			iVar1 = 65;
			break;
		
		case 52:
			iVar6 = 3;
			iVar7 = 4;
			iVar1 = 65;
			break;
		
		case 53:
			iVar6 = 3;
			iVar7 = 5;
			iVar1 = 100;
			break;
		
		case 54:
			iVar6 = 3;
			iVar7 = 6;
			iVar1 = 100;
			break;
		
		case 55:
			iVar6 = 3;
			iVar7 = 7;
			iVar1 = 65;
			break;
		
		case 56:
			iVar6 = 3;
			iVar7 = 8;
			iVar1 = 90;
			break;
		
		case 57:
			iVar6 = 3;
			iVar7 = 9;
			iVar1 = 75;
			break;
		
		case 58:
			iVar6 = 3;
			iVar7 = 10;
			iVar1 = 65;
			break;
		
		case 59:
			iVar6 = 3;
			iVar7 = 11;
			iVar1 = 100;
			break;
		
		case 60:
			iVar6 = 3;
			iVar7 = 12;
			iVar1 = 100;
			break;
		
		case 61:
			iVar6 = 3;
			iVar7 = 13;
			iVar1 = 225;
			break;
		
		case 62:
			iVar6 = 3;
			iVar7 = 14;
			iVar1 = 205;
			break;
		
		case 63:
			iVar6 = 3;
			iVar7 = 15;
			iVar1 = 215;
			break;
		
		case 64:
			iVar6 = 4;
			iVar7 = 0;
			iVar1 = 490;
			break;
		
		case 65:
			iVar6 = 4;
			iVar7 = 1;
			iVar1 = 485;
			break;
		
		case 66:
			iVar6 = 4;
			iVar7 = 2;
			iVar1 = 2500;
			break;
		
		case 67:
			iVar6 = 4;
			iVar7 = 3;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 68:
			iVar6 = 4;
			iVar7 = 4;
			iVar1 = 485;
			break;
		
		case 69:
			iVar6 = 4;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 70:
			iVar6 = 4;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 71:
			iVar6 = 4;
			iVar7 = 7;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 72:
			iVar6 = 4;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 73:
			iVar6 = 4;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 74:
			iVar6 = 4;
			iVar7 = 10;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 75:
			iVar6 = 4;
			iVar7 = 11;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 76:
			iVar6 = 4;
			iVar7 = 12;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 77:
			iVar6 = 4;
			iVar7 = 13;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 78:
			iVar6 = 4;
			iVar7 = 14;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 79:
			iVar6 = 4;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
	}
	switch (iParam0)
	{
		case 80:
			iVar6 = 5;
			iVar7 = 0;
			iVar1 = 100;
			break;
		
		case 81:
			iVar6 = 5;
			iVar7 = 1;
			iVar1 = 105;
			break;
		
		case 82:
			iVar6 = 5;
			iVar7 = 2;
			iVar1 = 80;
			break;
		
		case 83:
			iVar6 = 5;
			iVar7 = 3;
			iVar1 = 90;
			break;
		
		case 84:
			iVar6 = 5;
			iVar7 = 4;
			iVar1 = 100;
			break;
		
		case 85:
			iVar6 = 5;
			iVar7 = 5;
			iVar1 = 95;
			break;
		
		case 86:
			iVar6 = 5;
			iVar7 = 6;
			iVar1 = 100;
			break;
		
		case 87:
			iVar6 = 5;
			iVar7 = 7;
			iVar1 = 90;
			break;
		
		case 88:
			iVar6 = 5;
			iVar7 = 8;
			iVar1 = 85;
			break;
		
		case 89:
			iVar6 = 5;
			iVar7 = 9;
			iVar1 = 80;
			break;
		
		case 90:
			iVar6 = 5;
			iVar7 = 10;
			iVar1 = 80;
			break;
		
		case 91:
			iVar6 = 5;
			iVar7 = 11;
			iVar1 = 100;
			break;
		
		case 92:
			iVar6 = 5;
			iVar7 = 12;
			iVar1 = 95;
			break;
		
		case 93:
			iVar6 = 5;
			iVar7 = 13;
			iVar1 = 440;
			break;
		
		case 94:
			iVar6 = 5;
			iVar7 = 14;
			iVar1 = 380;
			break;
		
		case 95:
			iVar6 = 5;
			iVar7 = 15;
			iVar1 = 80;
			break;
		
		case 96:
			iVar6 = 6;
			iVar7 = 0;
			iVar1 = 115;
			break;
		
		case 97:
			iVar6 = 6;
			iVar7 = 1;
			iVar1 = 140;
			break;
		
		case 98:
			iVar6 = 6;
			iVar7 = 2;
			iVar1 = 135;
			break;
		
		case 99:
			iVar6 = 6;
			iVar7 = 3;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 100:
			iVar6 = 6;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 101:
			iVar6 = 6;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 102:
			iVar6 = 6;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 103:
			iVar6 = 6;
			iVar7 = 7;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 104:
			iVar6 = 6;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 105:
			iVar6 = 6;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 106:
			iVar6 = 6;
			iVar7 = 10;
			iVar1 = 255;
			break;
		
		case 107:
			iVar6 = 6;
			iVar7 = 11;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 108:
			iVar6 = 6;
			iVar7 = 12;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 109:
			iVar6 = 6;
			iVar7 = 13;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 110:
			iVar6 = 6;
			iVar7 = 14;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 111:
			iVar6 = 6;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
	}
	switch (iParam0)
	{
		case 112:
			iVar6 = 7;
			iVar7 = 0;
			iVar1 = 325;
			break;
		
		case 113:
			iVar6 = 7;
			iVar7 = 1;
			iVar1 = 115;
			break;
		
		case 114:
			iVar6 = 7;
			iVar7 = 2;
			iVar1 = 135;
			break;
		
		case 115:
			iVar6 = 7;
			iVar7 = 3;
			iVar1 = 125;
			break;
		
		case 116:
			iVar6 = 7;
			iVar7 = 4;
			iVar1 = 120;
			break;
		
		case 117:
			iVar6 = 7;
			iVar7 = 5;
			iVar1 = 130;
			break;
		
		case 118:
			iVar6 = 7;
			iVar7 = 6;
			iVar1 = 110;
			break;
		
		case 119:
			iVar6 = 7;
			iVar7 = 7;
			iVar1 = 345;
			break;
		
		case 120:
			iVar6 = 7;
			iVar7 = 8;
			iVar1 = 745;
			break;
		
		case 121:
			iVar6 = 7;
			iVar7 = 9;
			iVar1 = 120;
			break;
		
		case 122:
			iVar6 = 7;
			iVar7 = 10;
			iVar1 = 135;
			break;
		
		case 123:
			iVar6 = 7;
			iVar7 = 11;
			iVar1 = 345;
			break;
		
		case 124:
			iVar6 = 7;
			iVar7 = 12;
			iVar1 = 130;
			break;
		
		case 125:
			iVar6 = 7;
			iVar7 = 13;
			iVar1 = 140;
			break;
		
		case 126:
			iVar6 = 7;
			iVar7 = 14;
			iVar1 = 130;
			break;
		
		case 127:
			iVar6 = 7;
			iVar7 = 15;
			iVar1 = 660;
			break;
		
		case 128:
			iVar6 = 8;
			iVar7 = 0;
			iVar1 = 150;
			break;
		
		case 129:
			iVar6 = 8;
			iVar7 = 1;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 130:
			iVar6 = 8;
			iVar7 = 2;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 131:
			iVar6 = 8;
			iVar7 = 3;
			iVar1 = 150;
			break;
		
		case 132:
			iVar6 = 8;
			iVar7 = 4;
			iVar1 = 150;
			break;
		
		case 133:
			iVar6 = 8;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 134:
			iVar6 = 8;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 135:
			iVar6 = 8;
			iVar7 = 7;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 136:
			iVar6 = 8;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 137:
			iVar6 = 8;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 138:
			iVar6 = 8;
			iVar7 = 10;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 139:
			iVar6 = 8;
			iVar7 = 11;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 140:
			iVar6 = 8;
			iVar7 = 12;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 141:
			iVar6 = 8;
			iVar7 = 13;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 142:
			iVar6 = 8;
			iVar7 = 14;
			iVar1 = 150;
			break;
		
		case 143:
			iVar6 = 8;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
	}
	switch (iParam0)
	{
		case 144:
			iVar6 = 9;
			iVar7 = 0;
			iVar1 = 75;
			break;
		
		case 145:
			iVar6 = 9;
			iVar7 = 1;
			iVar1 = 90;
			break;
		
		case 146:
			iVar6 = 9;
			iVar7 = 2;
			iVar1 = 145;
			break;
		
		case 147:
			iVar6 = 9;
			iVar7 = 3;
			iVar1 = 150;
			break;
		
		case 148:
			iVar6 = 9;
			iVar7 = 4;
			iVar1 = 110;
			break;
		
		case 149:
			iVar6 = 9;
			iVar7 = 5;
			iVar1 = 95;
			break;
		
		case 150:
			iVar6 = 9;
			iVar7 = 6;
			iVar1 = 155;
			break;
		
		case 151:
			iVar6 = 9;
			iVar7 = 7;
			iVar1 = 255;
			break;
		
		case 152:
			iVar6 = 9;
			iVar7 = 8;
			iVar1 = 165;
			break;
		
		case 153:
			iVar6 = 9;
			iVar7 = 9;
			iVar1 = 1150;
			break;
		
		case 154:
			iVar6 = 9;
			iVar7 = 10;
			iVar1 = 1150;
			break;
		
		case 155:
			iVar6 = 9;
			iVar7 = 11;
			iVar1 = 1210;
			break;
		
		case 156:
			iVar6 = 9;
			iVar7 = 12;
			iVar1 = 1125;
			break;
		
		case 157:
			iVar6 = 9;
			iVar7 = 13;
			iVar1 = 1135;
			break;
		
		case 158:
			iVar6 = 9;
			iVar7 = 14;
			iVar1 = 1145;
			break;
		
		case 159:
			iVar6 = 9;
			iVar7 = 15;
			iVar1 = 1145;
			break;
		
		case 160:
			iVar6 = 10;
			iVar7 = 0;
			iVar1 = 845;
			break;
		
		case 161:
			iVar6 = 10;
			iVar7 = 1;
			iVar1 = 480;
			break;
		
		case 162:
			iVar6 = 10;
			iVar7 = 2;
			iVar1 = 475;
			break;
		
		case 163:
			iVar6 = 10;
			iVar7 = 3;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 164:
			iVar6 = 10;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 165:
			iVar6 = 10;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 166:
			iVar6 = 10;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 167:
			iVar6 = 10;
			iVar7 = 7;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 168:
			iVar6 = 10;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 169:
			iVar6 = 10;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 170:
			iVar6 = 10;
			iVar7 = 10;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 171:
			iVar6 = 10;
			iVar7 = 11;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 172:
			iVar6 = 10;
			iVar7 = 12;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 173:
			iVar6 = 10;
			iVar7 = 13;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 174:
			iVar6 = 10;
			iVar7 = 14;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 175:
			iVar6 = 10;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
	}
	switch (iParam0)
	{
		case 176:
			iVar6 = 11;
			iVar7 = 0;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 177:
			iVar6 = 11;
			iVar7 = 1;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 178:
			iVar6 = 11;
			iVar7 = 2;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 179:
			iVar6 = 11;
			iVar7 = 3;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 180:
			iVar6 = 11;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 181:
			iVar6 = 11;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 182:
			iVar6 = 11;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 183:
			iVar6 = 11;
			iVar7 = 7;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 184:
			iVar6 = 11;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 185:
			iVar6 = 11;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 186:
			iVar6 = 11;
			iVar7 = 10;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 187:
			iVar6 = 11;
			iVar7 = 11;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 188:
			iVar6 = 11;
			iVar7 = 12;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 189:
			iVar6 = 11;
			iVar7 = 13;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 190:
			iVar6 = 11;
			iVar7 = 14;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 191:
			iVar6 = 11;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 192:
			iVar6 = 12;
			iVar7 = 0;
			iVar1 = 220;
			break;
		
		case 193:
			iVar6 = 12;
			iVar7 = 1;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 194:
			iVar6 = 12;
			iVar7 = 2;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 195:
			iVar6 = 12;
			iVar7 = 3;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 196:
			iVar6 = 12;
			iVar7 = 4;
			iVar1 = 100;
			break;
		
		case 197:
			iVar6 = 12;
			iVar7 = 5;
			iVar1 = 65;
			break;
		
		case 198:
			iVar6 = 12;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 199:
			iVar6 = 12;
			iVar7 = 7;
			iVar1 = 50;
			break;
		
		case 200:
			iVar6 = 12;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 201:
			iVar6 = 12;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 202:
			iVar6 = 12;
			iVar7 = 10;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 203:
			iVar6 = 12;
			iVar7 = 11;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 204:
			iVar6 = 12;
			iVar7 = 12;
			iVar1 = 100;
			break;
		
		case 205:
			iVar6 = 12;
			iVar7 = 13;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 206:
			iVar6 = 12;
			iVar7 = 14;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 207:
			iVar6 = 12;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
	}
	switch (iParam0)
	{
		case 208:
			iVar6 = 13;
			iVar7 = 0;
			iVar1 = 460;
			break;
		
		case 209:
			iVar6 = 13;
			iVar7 = 1;
			iVar1 = 475;
			break;
		
		case 210:
			iVar6 = 13;
			iVar7 = 2;
			iVar1 = 470;
			break;
		
		case 211:
			iVar6 = 13;
			iVar7 = 3;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 212:
			iVar6 = 13;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 213:
			iVar6 = 13;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 214:
			iVar6 = 13;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 215:
			iVar6 = 13;
			iVar7 = 7;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 216:
			iVar6 = 13;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 217:
			iVar6 = 13;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 218:
			iVar6 = 13;
			iVar7 = 10;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 219:
			iVar6 = 13;
			iVar7 = 11;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 220:
			iVar6 = 13;
			iVar7 = 12;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 221:
			iVar6 = 13;
			iVar7 = 13;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 222:
			iVar6 = 13;
			iVar7 = 14;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 223:
			iVar6 = 13;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 224:
			iVar6 = 14;
			iVar7 = 0;
			iVar1 = 50;
			break;
		
		case 225:
			iVar6 = 14;
			iVar7 = 1;
			iVar1 = 100;
			break;
		
		case 226:
			iVar6 = 14;
			iVar7 = 2;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 227:
			iVar6 = 14;
			iVar7 = 3;
			iVar1 = 100;
			break;
		
		case 228:
			iVar6 = 14;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 229:
			iVar6 = 14;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 230:
			iVar6 = 14;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 231:
			iVar6 = 14;
			iVar7 = 7;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 232:
			iVar6 = 14;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 233:
			iVar6 = 14;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 234:
			iVar6 = 14;
			iVar7 = 10;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 235:
			iVar6 = 14;
			iVar7 = 11;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 236:
			iVar6 = 14;
			iVar7 = 12;
			iVar1 = 100;
			break;
		
		case 237:
			iVar6 = 14;
			iVar7 = 13;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 238:
			iVar6 = 14;
			iVar7 = 14;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 239:
			iVar6 = 14;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
	}
	switch (iParam0)
	{
		case 240:
			iVar6 = 15;
			iVar7 = 0;
			iVar1 = 90;
			break;
		
		case 241:
			iVar6 = 15;
			iVar7 = 1;
			iVar1 = 105;
			break;
		
		case 242:
			iVar6 = 15;
			iVar7 = 2;
			iVar1 = 100;
			break;
		
		case 243:
			iVar6 = 15;
			iVar7 = 3;
			iVar1 = 240;
			break;
		
		case 244:
			iVar6 = 15;
			iVar7 = 4;
			iVar1 = 95;
			break;
		
		case 245:
			iVar6 = 15;
			iVar7 = 5;
			iVar1 = 95;
			break;
		
		case 246:
			iVar6 = 15;
			iVar7 = 6;
			iVar1 = 100;
			break;
		
		case 247:
			iVar6 = 15;
			iVar7 = 7;
			iVar1 = 105;
			break;
		
		case 248:
			iVar6 = 15;
			iVar7 = 8;
			iVar1 = 100;
			break;
		
		case 249:
			iVar6 = 15;
			iVar7 = 9;
			iVar1 = 295;
			break;
		
		case 250:
			iVar6 = 15;
			iVar7 = 10;
			iVar1 = 250;
			break;
		
		case 251:
			iVar6 = 15;
			iVar7 = 11;
			iVar1 = 285;
			break;
		
		case 252:
			iVar6 = 15;
			iVar7 = 12;
			iVar1 = 275;
			break;
		
		case 253:
			iVar6 = 15;
			iVar7 = 13;
			iVar1 = 105;
			break;
		
		case 254:
			iVar6 = 15;
			iVar7 = 14;
			iVar1 = 100;
			break;
		
		case 255:
			iVar6 = 15;
			iVar7 = 15;
			iVar1 = 95;
			break;
	}
	StringCopy(&Var2, "L_FMM_", 16);
	StringIntConCat(&Var2, iVar6, 16);
	StringConCat(&Var2, "_", 16);
	StringIntConCat(&Var2, iVar7, 16);
	iVar11 = iParam0;
	if (iVar11 >= 0 && iVar11 < 256)
	{
		iVar1 = system::round(((system::to_float(iVar1) * Global_262145.f_173[iVar11]) * Global_279748.f_15));
	}
	if (iParam0 >= 256)
	{
		Global_69518[0 /*14*/].f_5 = 3;
		func_649(iVar10, iParam0, 256);
		if (Global_69518[0 /*14*/].f_7 > 0)
		{
			Global_69518[0 /*14*/].f_7 = system::round((system::to_float(Global_69518[0 /*14*/].f_7) * Global_279748.f_15));
		}
	}
	else
	{
		func_641(&(Global_69518[0 /*14*/]), iVar10, iParam0, &Var2, iVar6, iVar7, iVar1, iVar0, iVar8, iVar9, 0);
	}
}

void func_674(int iParam0)//Position - 0x60AB8
{
	int iVar0;
	int iVar1;
	char* sVar2;
	int iVar6;
	int iVar7;
	int iVar8;
	int iVar9;
	int iVar10;
	
	iVar0 = false;
	iVar1 = 10;
	iVar6 = 0;
	iVar7 = 0;
	iVar8 = -1;
	iVar9 = 2;
	iVar10 = 3;
	switch (iParam0)
	{
		case 0:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 1:
			iVar6 = 1;
			iVar7 = 0;
			break;
		
		case 2:
			iVar6 = 2;
			iVar7 = 0;
			break;
		
		case 3:
			iVar6 = 3;
			iVar7 = 0;
			break;
		
		case 4:
			iVar6 = 4;
			iVar7 = 0;
			break;
		
		case 5:
			iVar6 = 5;
			iVar7 = 0;
			break;
		
		case 6:
			iVar6 = 6;
			iVar7 = 0;
			break;
		
		case 7:
			iVar6 = 7;
			iVar7 = 0;
			break;
		
		case 8:
			iVar6 = 8;
			iVar7 = 0;
			break;
		
		case 9:
			iVar6 = 9;
			iVar7 = 0;
			break;
		
		case 10:
			iVar6 = 10;
			iVar7 = 0;
			break;
		
		case 11:
			iVar6 = 11;
			iVar7 = 0;
			break;
		
		case 12:
			iVar6 = 12;
			iVar7 = 0;
			break;
		
		case 13:
			iVar6 = 13;
			iVar7 = 0;
			break;
		
		case 14:
			iVar6 = 14;
			iVar7 = 0;
			break;
		
		case 15:
			iVar6 = 15;
			iVar7 = 0;
			break;
		
		default:
			Global_69518[0 /*14*/].f_5 = 3;
			func_649(iVar10, iParam0, 16);
			return;
			break;
	}
	func_641(&(Global_69518[0 /*14*/]), iVar10, iParam0, &sVar2, iVar6, iVar7, iVar1, iVar0, iVar8, iVar9, 0);
}

void func_675(int iParam0)//Position - 0x60C0D
{
	int iVar0;
	int iVar1;
	char* sVar2;
	int iVar6;
	int iVar7;
	int iVar8;
	int iVar9;
	int iVar10;
	
	iVar0 = false;
	iVar1 = 10;
	iVar6 = 0;
	iVar7 = 0;
	iVar8 = -1;
	iVar9 = 2;
	iVar10 = 9;
	switch (iParam0)
	{
		case 0:
			iVar6 = 0;
			iVar7 = 0;
			break;
		
		case 1:
			iVar6 = 1;
			iVar7 = 0;
			break;
		
		case 2:
			iVar6 = 1;
			iVar7 = 1;
			break;
		
		case 3:
			iVar6 = 1;
			iVar7 = 2;
			break;
		
		case 4:
			iVar6 = 1;
			iVar7 = 3;
			break;
		
		case 5:
			iVar6 = 1;
			iVar7 = 4;
			break;
		
		case 6:
			iVar6 = 2;
			iVar7 = 0;
			break;
		
		case 7:
			iVar6 = 2;
			iVar7 = 1;
			break;
		
		case 8:
			iVar6 = 2;
			iVar7 = 2;
			break;
		
		case 9:
			iVar6 = 2;
			iVar7 = 3;
			break;
		
		case 10:
			iVar6 = 2;
			iVar7 = 4;
			break;
		
		case 11:
			iVar6 = 3;
			iVar7 = 0;
			break;
		
		case 12:
			iVar6 = 3;
			iVar7 = 1;
			break;
		
		case 13:
			iVar6 = 3;
			iVar7 = 2;
			break;
		
		case 14:
			iVar6 = 3;
			iVar7 = 3;
			break;
		
		case 15:
			iVar6 = 3;
			iVar7 = 4;
			break;
		
		case 16:
			iVar6 = 4;
			iVar7 = 0;
			break;
		
		case 17:
			iVar6 = 4;
			iVar7 = 1;
			break;
		
		case 18:
			iVar6 = 4;
			iVar7 = 2;
			break;
		
		case 19:
			iVar6 = 4;
			iVar7 = 3;
			break;
		
		case 20:
			iVar6 = 4;
			iVar7 = 4;
			break;
		
		case 21:
			iVar6 = 5;
			iVar7 = 0;
			break;
		
		case 22:
			iVar6 = 5;
			iVar7 = 1;
			break;
		
		case 23:
			iVar6 = 5;
			iVar7 = 2;
			break;
		
		case 24:
			iVar6 = 5;
			iVar7 = 3;
			break;
		
		case 25:
			iVar6 = 5;
			iVar7 = 4;
			break;
		
		case 26:
			iVar6 = 6;
			iVar7 = 0;
			break;
		
		case 27:
			iVar6 = 6;
			iVar7 = 1;
			break;
		
		case 28:
			iVar6 = 6;
			iVar7 = 2;
			break;
		
		case 29:
			iVar6 = 6;
			iVar7 = 3;
			break;
		
		case 30:
			iVar6 = 6;
			iVar7 = 4;
			break;
		
		case 31:
			iVar6 = 7;
			iVar7 = 0;
			break;
		
		case 32:
			iVar6 = 7;
			iVar7 = 1;
			break;
		
		case 33:
			iVar6 = 7;
			iVar7 = 2;
			break;
		
		case 34:
			iVar6 = 7;
			iVar7 = 3;
			break;
		
		case 35:
			iVar6 = 7;
			iVar7 = 4;
			break;
		
		case 36:
			iVar6 = 8;
			iVar7 = 0;
			break;
		
		case 37:
			iVar6 = 8;
			iVar7 = 1;
			break;
		
		case 38:
			iVar6 = 8;
			iVar7 = 2;
			break;
		
		case 39:
			iVar6 = 8;
			iVar7 = 3;
			break;
		
		case 40:
			iVar6 = 8;
			iVar7 = 4;
			break;
		
		case 41:
			iVar6 = 9;
			iVar7 = 0;
			break;
		
		case 42:
			iVar6 = 9;
			iVar7 = 1;
			break;
		
		case 43:
			iVar6 = 9;
			iVar7 = 2;
			break;
		
		case 44:
			iVar6 = 9;
			iVar7 = 3;
			break;
		
		case 45:
			iVar6 = 9;
			iVar7 = 4;
			break;
		
		default:
			Global_69518[0 /*14*/].f_5 = 3;
			func_649(iVar10, iParam0, 46);
			return;
			break;
	}
	func_641(&(Global_69518[0 /*14*/]), iVar10, iParam0, &sVar2, iVar6, iVar7, iVar1, iVar0, iVar8, iVar9, 0);
}

void func_676(int iParam0)//Position - 0x60F27
{
	int iVar0;
	int iVar1;
	struct<2> Var2;
	int iVar6;
	int iVar7;
	int iVar8;
	int iVar9;
	int iVar10;
	int iVar11;
	int iVar12;
	int iVar13;
	int iVar14;
	
	iVar0 = false;
	iVar1 = 10;
	iVar6 = 0;
	iVar7 = 0;
	iVar8 = -1;
	iVar9 = 2;
	iVar10 = 8;
	switch (iParam0)
	{
		case 0:
			StringCopy(&Var2, "U_FMM_0_0", 16);
			iVar6 = 0;
			iVar7 = 0;
			iVar1 = 250;
			break;
		
		case 1:
			StringCopy(&Var2, "U_FMM_0_1", 16);
			iVar6 = 0;
			iVar7 = 1;
			iVar1 = 210;
			break;
		
		case 2:
			StringCopy(&Var2, "U_FMM_0_2", 16);
			iVar6 = 0;
			iVar7 = 2;
			iVar1 = 50;
			break;
		
		case 3:
			StringCopy(&Var2, "U_FMM_0_3", 16);
			iVar6 = 0;
			iVar7 = 3;
			iVar1 = 90;
			break;
		
		case 4:
			StringCopy(&Var2, "U_FMM_0_4", 16);
			iVar6 = 0;
			iVar7 = 4;
			iVar1 = 210;
			break;
		
		case 5:
			StringCopy(&Var2, "U_FMM_0_5", 16);
			iVar6 = 0;
			iVar7 = 5;
			iVar1 = 200;
			break;
		
		case 6:
			StringCopy(&Var2, "U_FMM_0_6", 16);
			iVar6 = 0;
			iVar7 = 6;
			iVar0 = true;
			break;
		
		case 7:
			StringCopy(&Var2, "U_FMM_0_7", 16);
			iVar6 = 0;
			iVar7 = 7;
			iVar1 = 130;
			break;
		
		case 8:
			StringCopy(&Var2, "U_FMM_0_8", 16);
			iVar6 = 0;
			iVar7 = 8;
			iVar1 = 220;
			break;
		
		case 9:
			StringCopy(&Var2, "U_FMM_0_9", 16);
			iVar6 = 0;
			iVar7 = 9;
			iVar0 = true;
			break;
		
		case 10:
			StringCopy(&Var2, "U_FMM_0_10", 16);
			iVar6 = 0;
			iVar7 = 10;
			iVar0 = true;
			break;
		
		case 11:
			StringCopy(&Var2, "U_FMM_0_11", 16);
			iVar6 = 0;
			iVar7 = 11;
			iVar1 = 220;
			break;
		
		case 12:
			StringCopy(&Var2, "U_FMM_0_12", 16);
			iVar6 = 0;
			iVar7 = 12;
			iVar0 = true;
			break;
		
		case 13:
			StringCopy(&Var2, "U_FMM_0_13", 16);
			iVar6 = 0;
			iVar7 = 13;
			iVar0 = true;
			break;
		
		case 14:
			StringCopy(&Var2, "U_FMM_0_14", 16);
			iVar6 = 0;
			iVar7 = 14;
			iVar0 = true;
			break;
		
		case 15:
			StringCopy(&Var2, "U_FMM_0_15", 16);
			iVar6 = 0;
			iVar7 = 15;
			iVar0 = true;
			break;
		
		case 16:
			StringCopy(&Var2, "U_FMM_1_0", 16);
			iVar6 = 1;
			iVar7 = 0;
			iVar1 = 45;
			break;
		
		case 17:
			StringCopy(&Var2, "U_FMM_1_1", 16);
			iVar6 = 1;
			iVar7 = 1;
			iVar1 = 60;
			break;
		
		case 18:
			StringCopy(&Var2, "U_FMM_1_2", 16);
			iVar6 = 1;
			iVar7 = 2;
			iVar0 = true;
			break;
		
		case 19:
			StringCopy(&Var2, "U_FMM_1_3", 16);
			iVar6 = 1;
			iVar7 = 3;
			iVar1 = 40;
			break;
		
		case 20:
			StringCopy(&Var2, "U_FMM_1_4", 16);
			iVar6 = 1;
			iVar7 = 4;
			iVar1 = 315;
			break;
		
		case 21:
			StringCopy(&Var2, "U_FMM_1_5", 16);
			iVar6 = 1;
			iVar7 = 5;
			iVar1 = 215;
			break;
		
		case 22:
			StringCopy(&Var2, "U_FMM_1_6", 16);
			iVar6 = 1;
			iVar7 = 6;
			iVar1 = 265;
			break;
		
		case 23:
			StringCopy(&Var2, "U_FMM_1_7", 16);
			iVar6 = 1;
			iVar7 = 7;
			iVar1 = 45;
			break;
		
		case 24:
			StringCopy(&Var2, "U_FMM_1_8", 16);
			iVar6 = 1;
			iVar7 = 8;
			iVar1 = 205;
			break;
		
		case 25:
			StringCopy(&Var2, "U_FMM_1_9", 16);
			iVar6 = 1;
			iVar7 = 9;
			iVar0 = true;
			break;
		
		case 26:
			StringCopy(&Var2, "U_FMM_1_10", 16);
			iVar6 = 1;
			iVar7 = 10;
			iVar0 = true;
			break;
		
		case 27:
			StringCopy(&Var2, "U_FMM_1_11", 16);
			iVar6 = 1;
			iVar7 = 11;
			iVar1 = 60;
			break;
		
		case 28:
			StringCopy(&Var2, "U_FMM_1_12", 16);
			iVar6 = 1;
			iVar7 = 12;
			iVar1 = 55;
			break;
		
		case 29:
			StringCopy(&Var2, "U_FMM_1_13", 16);
			iVar6 = 1;
			iVar7 = 13;
			iVar0 = true;
			break;
		
		case 30:
			StringCopy(&Var2, "U_FMM_1_14", 16);
			iVar6 = 1;
			iVar7 = 14;
			iVar1 = 170;
			break;
		
		case 31:
			StringCopy(&Var2, "U_FMM_1_15", 16);
			iVar6 = 1;
			iVar7 = 15;
			iVar0 = true;
			break;
	}
	switch (iParam0)
	{
		case 32:
			StringCopy(&Var2, "U_FMM_0_0", 16);
			iVar6 = 2;
			iVar7 = 0;
			iVar1 = 250;
			break;
		
		case 33:
			StringCopy(&Var2, "U_FMM_0_1", 16);
			iVar6 = 2;
			iVar7 = 1;
			iVar1 = 210;
			break;
		
		case 34:
			StringCopy(&Var2, "U_FMM_0_2", 16);
			iVar6 = 2;
			iVar7 = 2;
			iVar1 = 50;
			break;
		
		case 35:
			StringCopy(&Var2, "U_FMM_0_3", 16);
			iVar6 = 2;
			iVar7 = 3;
			iVar1 = 90;
			break;
		
		case 36:
			StringCopy(&Var2, "U_FMM_0_4", 16);
			iVar6 = 2;
			iVar7 = 4;
			iVar1 = 210;
			break;
		
		case 37:
			StringCopy(&Var2, "U_FMM_0_5", 16);
			iVar6 = 2;
			iVar7 = 5;
			iVar1 = 200;
			break;
		
		case 38:
			StringCopy(&Var2, "U_FMM_0_6", 16);
			iVar6 = 2;
			iVar7 = 6;
			iVar0 = true;
			break;
		
		case 39:
			StringCopy(&Var2, "U_FMM_0_7", 16);
			iVar6 = 2;
			iVar7 = 7;
			iVar1 = 130;
			break;
		
		case 40:
			StringCopy(&Var2, "U_FMM_0_8", 16);
			iVar6 = 2;
			iVar7 = 8;
			iVar1 = 220;
			break;
		
		case 41:
			StringCopy(&Var2, "U_FMM_0_9", 16);
			iVar6 = 2;
			iVar7 = 9;
			iVar0 = true;
			break;
		
		case 42:
			StringCopy(&Var2, "U_FMM_0_10", 16);
			iVar6 = 2;
			iVar7 = 10;
			iVar0 = true;
			break;
		
		case 43:
			StringCopy(&Var2, "U_FMM_0_11", 16);
			iVar6 = 2;
			iVar7 = 11;
			iVar1 = 220;
			break;
		
		case 44:
			StringCopy(&Var2, "U_FMM_0_12", 16);
			iVar6 = 2;
			iVar7 = 12;
			iVar0 = true;
			break;
		
		case 45:
			StringCopy(&Var2, "U_FMM_0_13", 16);
			iVar6 = 2;
			iVar7 = 13;
			iVar0 = true;
			break;
		
		case 46:
			StringCopy(&Var2, "U_FMM_0_14", 16);
			iVar6 = 2;
			iVar7 = 14;
			iVar0 = true;
			break;
		
		case 47:
			StringCopy(&Var2, "U_FMM_0_15", 16);
			iVar6 = 2;
			iVar7 = 15;
			iVar0 = true;
			break;
		
		case 48:
			StringCopy(&Var2, "SP_FMM_3_0", 16);
			iVar6 = 3;
			iVar7 = 0;
			if (Global_262145.f_4178 != -1)
			{
				iVar1 = Global_262145.f_4178;
			}
			else
			{
				iVar1 = 165;
			}
			break;
		
		case 49:
			StringCopy(&Var2, "SP_FMM_3_1", 16);
			iVar6 = 3;
			iVar7 = 1;
			if (Global_262145.f_4186 != -1)
			{
				iVar1 = Global_262145.f_4186;
			}
			else
			{
				iVar1 = 120;
			}
			break;
		
		case 50:
			StringCopy(&Var2, "SP_FMM_3_2", 16);
			iVar6 = 3;
			iVar7 = 2;
			if (Global_262145.f_4181 != -1)
			{
				iVar1 = Global_262145.f_4181;
			}
			else
			{
				iVar1 = 115;
			}
			break;
		
		case 51:
			StringCopy(&Var2, "SP_FMM_3_3", 16);
			iVar6 = 3;
			iVar7 = 3;
			iVar0 = true;
			break;
		
		case 52:
			StringCopy(&Var2, "SP_FMM_3_4", 16);
			iVar6 = 3;
			iVar7 = 4;
			iVar0 = true;
			break;
		
		case 53:
			StringCopy(&Var2, "SP_FMM_3_5", 16);
			iVar6 = 3;
			iVar7 = 5;
			iVar0 = true;
			break;
		
		case 54:
			StringCopy(&Var2, "SP_FMM_3_6", 16);
			iVar6 = 3;
			iVar7 = 6;
			iVar0 = true;
			break;
		
		case 55:
			StringCopy(&Var2, "SP_FMM_3_7", 16);
			iVar6 = 3;
			iVar7 = 7;
			iVar0 = true;
			break;
		
		case 56:
			StringCopy(&Var2, "SP_FMM_3_8", 16);
			iVar6 = 3;
			iVar7 = 8;
			iVar0 = true;
			break;
		
		case 57:
			StringCopy(&Var2, "SP_FMM_3_9", 16);
			iVar6 = 3;
			iVar7 = 9;
			iVar0 = true;
			break;
		
		case 58:
			StringCopy(&Var2, "SP_FMM_3_10", 16);
			iVar6 = 3;
			iVar7 = 10;
			iVar0 = true;
			break;
		
		case 59:
			StringCopy(&Var2, "SP_FMM_3_11", 16);
			iVar6 = 3;
			iVar7 = 11;
			iVar0 = true;
			break;
		
		case 60:
			StringCopy(&Var2, "SP_FMM_3_12", 16);
			iVar6 = 3;
			iVar7 = 12;
			iVar0 = true;
			break;
		
		case 61:
			StringCopy(&Var2, "SP_FMM_3_13", 16);
			iVar6 = 3;
			iVar7 = 13;
			iVar0 = true;
			break;
		
		case 62:
			StringCopy(&Var2, "SP_FMM_3_14", 16);
			iVar6 = 3;
			iVar7 = 14;
			iVar0 = true;
			break;
		
		case 63:
			StringCopy(&Var2, "SP_FMM_3_15", 16);
			iVar6 = 3;
			iVar7 = 15;
			iVar0 = true;
			break;
	}
	switch (iParam0)
	{
		case 64:
			StringCopy(&Var2, "SP_FMM_3_0", 16);
			iVar6 = 4;
			iVar7 = 0;
			if (Global_262145.f_4178 != -1)
			{
				iVar1 = Global_262145.f_4178;
			}
			else
			{
				iVar1 = 165;
			}
			break;
		
		case 65:
			StringCopy(&Var2, "SP_FMM_3_1", 16);
			iVar6 = 4;
			iVar7 = 1;
			if (Global_262145.f_4186 != -1)
			{
				iVar1 = Global_262145.f_4186;
			}
			else
			{
				iVar1 = 120;
			}
			break;
		
		case 66:
			StringCopy(&Var2, "SP_FMM_3_2", 16);
			iVar6 = 4;
			iVar7 = 2;
			if (Global_262145.f_4181 != -1)
			{
				iVar1 = Global_262145.f_4181;
			}
			else
			{
				iVar1 = 115;
			}
			break;
		
		case 67:
			StringCopy(&Var2, "SP_FMM_3_3", 16);
			iVar6 = 4;
			iVar7 = 3;
			iVar0 = true;
			break;
		
		case 68:
			StringCopy(&Var2, "SP_FMM_3_4", 16);
			iVar6 = 4;
			iVar7 = 4;
			iVar0 = true;
			break;
		
		case 69:
			StringCopy(&Var2, "SP_FMM_3_5", 16);
			iVar6 = 4;
			iVar7 = 5;
			iVar0 = true;
			break;
		
		case 70:
			StringCopy(&Var2, "SP_FMM_3_6", 16);
			iVar6 = 4;
			iVar7 = 6;
			iVar0 = true;
			break;
		
		case 71:
			StringCopy(&Var2, "SP_FMM_3_7", 16);
			iVar6 = 4;
			iVar7 = 7;
			iVar0 = true;
			break;
		
		case 72:
			StringCopy(&Var2, "SP_FMM_3_8", 16);
			iVar6 = 4;
			iVar7 = 8;
			iVar0 = true;
			break;
		
		case 73:
			StringCopy(&Var2, "SP_FMM_3_9", 16);
			iVar6 = 4;
			iVar7 = 9;
			iVar0 = true;
			break;
		
		case 74:
			StringCopy(&Var2, "SP_FMM_3_10", 16);
			iVar6 = 4;
			iVar7 = 10;
			iVar0 = true;
			break;
		
		case 75:
			StringCopy(&Var2, "SP_FMM_3_11", 16);
			iVar6 = 4;
			iVar7 = 11;
			iVar0 = true;
			break;
		
		case 76:
			StringCopy(&Var2, "SP_FMM_3_12", 16);
			iVar6 = 4;
			iVar7 = 12;
			iVar0 = true;
			break;
		
		case 77:
			StringCopy(&Var2, "SP_FMM_3_13", 16);
			iVar6 = 4;
			iVar7 = 13;
			iVar0 = true;
			break;
		
		case 78:
			StringCopy(&Var2, "SP_FMM_3_14", 16);
			iVar6 = 4;
			iVar7 = 14;
			iVar0 = true;
			break;
		
		case 79:
			StringCopy(&Var2, "SP_FMM_3_15", 16);
			iVar6 = 4;
			iVar7 = 15;
			iVar0 = true;
			break;
		
		case 80:
			StringCopy(&Var2, "U_FMM_5_0", 16);
			iVar6 = 5;
			iVar7 = 0;
			iVar1 = 80;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_430[80]));
			break;
		
		case 81:
			StringCopy(&Var2, "U_FMM_5_1", 16);
			iVar6 = 5;
			iVar7 = 1;
			iVar1 = 45;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_430[81]));
			break;
		
		case 82:
			StringCopy(&Var2, "U_FMM_5_2", 16);
			iVar6 = 5;
			iVar7 = 2;
			iVar1 = 50;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_430[82]));
			break;
		
		case 83:
			StringCopy(&Var2, "U_FMM_5_3", 16);
			iVar6 = 5;
			iVar7 = 3;
			iVar0 = true;
			break;
		
		case 84:
			StringCopy(&Var2, "U_FMM_5_4", 16);
			iVar6 = 5;
			iVar7 = 4;
			iVar0 = true;
			break;
		
		case 85:
			StringCopy(&Var2, "U_FMM_5_5", 16);
			iVar6 = 5;
			iVar7 = 5;
			iVar0 = true;
			break;
		
		case 86:
			StringCopy(&Var2, "U_FMM_5_6", 16);
			iVar6 = 5;
			iVar7 = 6;
			iVar0 = true;
			break;
		
		case 87:
			StringCopy(&Var2, "U_FMM_5_7", 16);
			iVar6 = 5;
			iVar7 = 7;
			iVar1 = 50;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_430[87]));
			break;
		
		case 88:
			StringCopy(&Var2, "U_FMM_5_8", 16);
			iVar6 = 5;
			iVar7 = 8;
			iVar0 = true;
			break;
		
		case 89:
			StringCopy(&Var2, "U_FMM_5_9", 16);
			iVar6 = 5;
			iVar7 = 9;
			iVar0 = true;
			break;
		
		case 90:
			StringCopy(&Var2, "U_FMM_5_10", 16);
			iVar6 = 5;
			iVar7 = 10;
			iVar0 = true;
			break;
		
		case 91:
			StringCopy(&Var2, "U_FMM_5_11", 16);
			iVar6 = 5;
			iVar7 = 11;
			iVar0 = true;
			break;
		
		case 92:
			StringCopy(&Var2, "U_FMM_5_12", 16);
			iVar6 = 5;
			iVar7 = 12;
			iVar0 = true;
			break;
		
		case 93:
			StringCopy(&Var2, "U_FMM_5_13", 16);
			iVar6 = 5;
			iVar7 = 13;
			iVar0 = true;
			break;
		
		case 94:
			StringCopy(&Var2, "U_FMM_5_14", 16);
			iVar6 = 5;
			iVar7 = 14;
			iVar0 = true;
			break;
		
		case 95:
			StringCopy(&Var2, "U_FMM_5_15", 16);
			iVar6 = 5;
			iVar7 = 15;
			iVar0 = true;
			break;
	}
	switch (iParam0)
	{
		case 96:
			StringCopy(&Var2, "SP_FMM_6_0", 16);
			iVar6 = 6;
			iVar7 = 0;
			if (Global_262145.f_4199 != -1)
			{
				iVar1 = Global_262145.f_4199;
			}
			else
			{
				iVar1 = 420;
			}
			break;
		
		case 97:
			StringCopy(&Var2, "SP_FMM_6_1", 16);
			iVar6 = 6;
			iVar7 = 1;
			if (Global_262145.f_4197 != -1)
			{
				iVar1 = Global_262145.f_4197;
			}
			else
			{
				iVar1 = 415;
			}
			break;
		
		case 98:
			StringCopy(&Var2, "SP_FMM_6_2", 16);
			iVar6 = 6;
			iVar7 = 2;
			if (Global_262145.f_4177 != -1)
			{
				iVar1 = Global_262145.f_4177;
			}
			else
			{
				iVar1 = 440;
			}
			break;
		
		case 99:
			StringCopy(&Var2, "SP_FMM_6_3", 16);
			iVar6 = 6;
			iVar7 = 3;
			if (Global_262145.f_4191 != -1)
			{
				iVar1 = Global_262145.f_4191;
			}
			else
			{
				iVar1 = 400;
			}
			break;
		
		case 100:
			StringCopy(&Var2, "SP_FMM_6_4", 16);
			iVar6 = 6;
			iVar7 = 4;
			if (Global_262145.f_4176 != -1)
			{
				iVar1 = Global_262145.f_4176;
			}
			else
			{
				iVar1 = 400;
			}
			break;
		
		case 101:
			StringCopy(&Var2, "SP_FMM_6_5", 16);
			iVar6 = 6;
			iVar7 = 5;
			if (Global_262145.f_4193 != -1)
			{
				iVar1 = Global_262145.f_4193;
			}
			else
			{
				iVar1 = 410;
			}
			break;
		
		case 102:
			StringCopy(&Var2, "SP_FMM_6_6", 16);
			iVar6 = 6;
			iVar7 = 6;
			if (Global_262145.f_4196 != -1)
			{
				iVar1 = Global_262145.f_4196;
			}
			else
			{
				iVar1 = 435;
			}
			break;
		
		case 103:
			StringCopy(&Var2, "SP_FMM_6_7", 16);
			iVar6 = 6;
			iVar7 = 7;
			if (Global_262145.f_4192 != -1)
			{
				iVar1 = Global_262145.f_4192;
			}
			else
			{
				iVar1 = 425;
			}
			break;
		
		case 104:
			StringCopy(&Var2, "SP_FMM_6_8", 16);
			iVar6 = 6;
			iVar7 = 8;
			if (Global_262145.f_4185 != -1)
			{
				iVar1 = Global_262145.f_4185;
			}
			else
			{
				iVar1 = 435;
			}
			break;
		
		case 105:
			StringCopy(&Var2, "SP_FMM_6_9", 16);
			iVar6 = 6;
			iVar7 = 9;
			if (Global_262145.f_4190 != -1)
			{
				iVar1 = Global_262145.f_4190;
			}
			else
			{
				iVar1 = 420;
			}
			break;
		
		case 106:
			StringCopy(&Var2, "SP_FMM_6_10", 16);
			iVar6 = 6;
			iVar7 = 10;
			if (Global_262145.f_4188 != -1)
			{
				iVar1 = Global_262145.f_4188;
			}
			else
			{
				iVar1 = 425;
			}
			break;
		
		case 107:
			StringCopy(&Var2, "SP_FMM_6_11", 16);
			iVar6 = 6;
			iVar7 = 11;
			if (Global_262145.f_4198 != -1)
			{
				iVar1 = Global_262145.f_4198;
			}
			else
			{
				iVar1 = 425;
			}
			break;
		
		case 108:
			StringCopy(&Var2, "SP_FMM_6_12", 16);
			iVar6 = 6;
			iVar7 = 12;
			if (Global_262145.f_4184 != -1)
			{
				iVar1 = Global_262145.f_4184;
			}
			else
			{
				iVar1 = 435;
			}
			break;
		
		case 109:
			StringCopy(&Var2, "SP_FMM_6_13", 16);
			iVar6 = 6;
			iVar7 = 13;
			if (Global_262145.f_4179 != -1)
			{
				iVar1 = Global_262145.f_4179;
			}
			else
			{
				iVar1 = 750;
			}
			break;
		
		case 110:
			StringCopy(&Var2, "SP_FMM_6_14", 16);
			iVar6 = 6;
			iVar7 = 14;
			if (Global_262145.f_4194 != -1)
			{
				iVar1 = Global_262145.f_4194;
			}
			else
			{
				iVar1 = 400;
			}
			break;
		
		case 111:
			StringCopy(&Var2, "SP_FMM_6_15", 16);
			iVar6 = 6;
			iVar7 = 15;
			if (Global_262145.f_4187 != -1)
			{
				iVar1 = Global_262145.f_4187;
			}
			else
			{
				iVar1 = 435;
			}
			break;
		
		case 112:
			StringCopy(&Var2, "SP_FMM_6_0", 16);
			iVar6 = 7;
			iVar7 = 0;
			if (Global_262145.f_4199 != -1)
			{
				iVar1 = Global_262145.f_4199;
			}
			else
			{
				iVar1 = 420;
			}
			break;
		
		case 113:
			StringCopy(&Var2, "SP_FMM_6_1", 16);
			iVar6 = 7;
			iVar7 = 1;
			if (Global_262145.f_4197 != -1)
			{
				iVar1 = Global_262145.f_4197;
			}
			else
			{
				iVar1 = 415;
			}
			break;
		
		case 114:
			StringCopy(&Var2, "SP_FMM_6_2", 16);
			iVar6 = 7;
			iVar7 = 2;
			if (Global_262145.f_4177 != -1)
			{
				iVar1 = Global_262145.f_4177;
			}
			else
			{
				iVar1 = 440;
			}
			break;
		
		case 115:
			StringCopy(&Var2, "SP_FMM_6_3", 16);
			iVar6 = 7;
			iVar7 = 3;
			if (Global_262145.f_4191 != -1)
			{
				iVar1 = Global_262145.f_4191;
			}
			else
			{
				iVar1 = 400;
			}
			break;
		
		case 116:
			StringCopy(&Var2, "SP_FMM_6_4", 16);
			iVar6 = 7;
			iVar7 = 4;
			if (Global_262145.f_4176 != -1)
			{
				iVar1 = Global_262145.f_4176;
			}
			else
			{
				iVar1 = 400;
			}
			break;
		
		case 117:
			StringCopy(&Var2, "SP_FMM_6_5", 16);
			iVar6 = 7;
			iVar7 = 5;
			if (Global_262145.f_4193 != -1)
			{
				iVar1 = Global_262145.f_4193;
			}
			else
			{
				iVar1 = 410;
			}
			break;
		
		case 118:
			StringCopy(&Var2, "SP_FMM_6_6", 16);
			iVar6 = 7;
			iVar7 = 6;
			if (Global_262145.f_4196 != -1)
			{
				iVar1 = Global_262145.f_4196;
			}
			else
			{
				iVar1 = 435;
			}
			break;
		
		case 119:
			StringCopy(&Var2, "SP_FMM_6_7", 16);
			iVar6 = 7;
			iVar7 = 7;
			if (Global_262145.f_4192 != -1)
			{
				iVar1 = Global_262145.f_4192;
			}
			else
			{
				iVar1 = 425;
			}
			break;
		
		case 120:
			StringCopy(&Var2, "SP_FMM_6_8", 16);
			iVar6 = 7;
			iVar7 = 8;
			if (Global_262145.f_4185 != -1)
			{
				iVar1 = Global_262145.f_4185;
			}
			else
			{
				iVar1 = 435;
			}
			break;
		
		case 121:
			StringCopy(&Var2, "SP_FMM_6_9", 16);
			iVar6 = 7;
			iVar7 = 9;
			if (Global_262145.f_4190 != -1)
			{
				iVar1 = Global_262145.f_4190;
			}
			else
			{
				iVar1 = 420;
			}
			break;
		
		case 122:
			StringCopy(&Var2, "SP_FMM_6_10", 16);
			iVar6 = 7;
			iVar7 = 10;
			if (Global_262145.f_4188 != -1)
			{
				iVar1 = Global_262145.f_4188;
			}
			else
			{
				iVar1 = 425;
			}
			break;
		
		case 123:
			StringCopy(&Var2, "SP_FMM_6_11", 16);
			iVar6 = 7;
			iVar7 = 11;
			if (Global_262145.f_4198 != -1)
			{
				iVar1 = Global_262145.f_4198;
			}
			else
			{
				iVar1 = 425;
			}
			break;
		
		case 124:
			StringCopy(&Var2, "SP_FMM_6_12", 16);
			iVar6 = 7;
			iVar7 = 12;
			if (Global_262145.f_4184 != -1)
			{
				iVar1 = Global_262145.f_4184;
			}
			else
			{
				iVar1 = 435;
			}
			break;
		
		case 125:
			StringCopy(&Var2, "SP_FMM_6_13", 16);
			iVar6 = 7;
			iVar7 = 13;
			if (Global_262145.f_4179 != -1)
			{
				iVar1 = Global_262145.f_4179;
			}
			else
			{
				iVar1 = 750;
			}
			break;
		
		case 126:
			StringCopy(&Var2, "SP_FMM_6_14", 16);
			iVar6 = 7;
			iVar7 = 14;
			if (Global_262145.f_4194 != -1)
			{
				iVar1 = Global_262145.f_4194;
			}
			else
			{
				iVar1 = 400;
			}
			break;
		
		case 127:
			StringCopy(&Var2, "SP_FMM_6_15", 16);
			iVar6 = 7;
			iVar7 = 15;
			if (Global_262145.f_4187 != -1)
			{
				iVar1 = Global_262145.f_4187;
			}
			else
			{
				iVar1 = 435;
			}
			break;
	}
	switch (iParam0)
	{
		case 128:
			StringCopy(&Var2, "U_FMM_8_0", 16);
			iVar6 = 8;
			iVar7 = 0;
			iVar1 = 45;
			break;
		
		case 129:
			StringCopy(&Var2, "U_FMM_8_1", 16);
			iVar6 = 8;
			iVar7 = 1;
			iVar0 = true;
			break;
		
		case 130:
			StringCopy(&Var2, "U_FMM_8_2", 16);
			iVar6 = 8;
			iVar7 = 2;
			iVar0 = true;
			break;
		
		case 131:
			StringCopy(&Var2, "U_FMM_8_3", 16);
			iVar6 = 8;
			iVar7 = 3;
			iVar0 = true;
			break;
		
		case 132:
			StringCopy(&Var2, "U_FMM_8_4", 16);
			iVar6 = 8;
			iVar7 = 4;
			iVar0 = true;
			break;
		
		case 133:
			StringCopy(&Var2, "U_FMM_8_5", 16);
			iVar6 = 8;
			iVar7 = 5;
			iVar0 = true;
			break;
		
		case 134:
			StringCopy(&Var2, "U_FMM_8_6", 16);
			iVar6 = 8;
			iVar7 = 6;
			iVar0 = true;
			break;
		
		case 135:
			StringCopy(&Var2, "U_FMM_8_7", 16);
			iVar6 = 8;
			iVar7 = 7;
			iVar0 = true;
			break;
		
		case 136:
			StringCopy(&Var2, "U_FMM_8_8", 16);
			iVar6 = 8;
			iVar7 = 8;
			iVar0 = true;
			break;
		
		case 137:
			StringCopy(&Var2, "U_FMM_8_9", 16);
			iVar6 = 8;
			iVar7 = 9;
			iVar0 = true;
			break;
		
		case 138:
			StringCopy(&Var2, "U_FMM_8_10", 16);
			iVar6 = 8;
			iVar7 = 10;
			iVar1 = 65;
			break;
		
		case 139:
			StringCopy(&Var2, "U_FMM_8_11", 16);
			iVar6 = 8;
			iVar7 = 11;
			iVar0 = true;
			break;
		
		case 140:
			StringCopy(&Var2, "U_FMM_8_12", 16);
			iVar6 = 8;
			iVar7 = 12;
			iVar0 = true;
			break;
		
		case 141:
			StringCopy(&Var2, "U_FMM_8_13", 16);
			iVar6 = 8;
			iVar7 = 13;
			iVar1 = 40;
			break;
		
		case 142:
			StringCopy(&Var2, "U_FMM_8_14", 16);
			iVar6 = 8;
			iVar7 = 14;
			iVar1 = 45;
			break;
		
		case 143:
			StringCopy(&Var2, "U_FMM_8_15", 16);
			iVar6 = 8;
			iVar7 = 15;
			iVar0 = true;
			break;
		
		case 144:
			StringCopy(&Var2, "U_FMM_9_0", 16);
			iVar6 = 9;
			iVar7 = 0;
			iVar1 = 265;
			break;
		
		case 145:
			StringCopy(&Var2, "U_FMM_9_1", 16);
			iVar6 = 9;
			iVar7 = 1;
			iVar1 = 340;
			break;
		
		case 146:
			StringCopy(&Var2, "U_FMM_9_2", 16);
			iVar6 = 9;
			iVar7 = 2;
			iVar1 = 335;
			break;
		
		case 147:
			StringCopy(&Var2, "U_FMM_9_3", 16);
			iVar6 = 9;
			iVar7 = 3;
			iVar1 = 330;
			break;
		
		case 148:
			StringCopy(&Var2, "U_FMM_9_4", 16);
			iVar6 = 9;
			iVar7 = 4;
			iVar1 = 345;
			break;
		
		case 149:
			StringCopy(&Var2, "U_FMM_9_5", 16);
			iVar6 = 9;
			iVar7 = 5;
			iVar1 = 550;
			break;
		
		case 150:
			StringCopy(&Var2, "U_FMM_9_6", 16);
			iVar6 = 9;
			iVar7 = 6;
			iVar1 = 340;
			break;
		
		case 151:
			StringCopy(&Var2, "U_FMM_9_7", 16);
			iVar6 = 9;
			iVar7 = 7;
			iVar1 = 295;
			break;
		
		case 152:
			StringCopy(&Var2, "U_FMM_9_8", 16);
			iVar6 = 9;
			iVar7 = 8;
			iVar0 = true;
			break;
		
		case 153:
			StringCopy(&Var2, "U_FMM_9_9", 16);
			iVar6 = 9;
			iVar7 = 9;
			iVar0 = true;
			break;
		
		case 154:
			StringCopy(&Var2, "U_FMM_9_10", 16);
			iVar6 = 9;
			iVar7 = 10;
			iVar1 = 545;
			break;
		
		case 155:
			StringCopy(&Var2, "U_FMM_9_11", 16);
			iVar6 = 9;
			iVar7 = 11;
			iVar1 = 345;
			break;
		
		case 156:
			StringCopy(&Var2, "U_FMM_9_12", 16);
			iVar6 = 9;
			iVar7 = 12;
			iVar1 = 315;
			break;
		
		case 157:
			StringCopy(&Var2, "U_FMM_9_13", 16);
			iVar6 = 9;
			iVar7 = 13;
			iVar1 = 520;
			break;
		
		case 158:
			StringCopy(&Var2, "U_FMM_9_14", 16);
			iVar6 = 9;
			iVar7 = 14;
			iVar1 = 325;
			break;
		
		case 159:
			StringCopy(&Var2, "U_FMM_9_15", 16);
			iVar6 = 9;
			iVar7 = 15;
			iVar1 = 330;
			break;
	}
	switch (iParam0)
	{
		case 160:
			StringCopy(&Var2, "SP_FMM_10_0", 16);
			iVar6 = 10;
			iVar7 = 0;
			if (Global_262145.f_4199 != -1)
			{
				iVar1 = Global_262145.f_4199;
			}
			else
			{
				iVar1 = 405;
			}
			break;
		
		case 161:
			StringCopy(&Var2, "SP_FMM_10_1", 16);
			iVar6 = 10;
			iVar7 = 1;
			if (Global_262145.f_4197 != -1)
			{
				iVar1 = Global_262145.f_4197;
			}
			else
			{
				iVar1 = 400;
			}
			break;
		
		case 162:
			StringCopy(&Var2, "SP_FMM_10_2", 16);
			iVar6 = 10;
			iVar7 = 2;
			if (Global_262145.f_4183 != -1)
			{
				iVar1 = Global_262145.f_4183;
			}
			else
			{
				iVar1 = 425;
			}
			break;
		
		case 163:
			StringCopy(&Var2, "SP_FMM_10_3", 16);
			iVar6 = 10;
			iVar7 = 3;
			if (Global_262145.f_4191 != -1)
			{
				iVar1 = Global_262145.f_4191;
			}
			else
			{
				iVar1 = 385;
			}
			break;
		
		case 164:
			StringCopy(&Var2, "SP_FMM_10_4", 16);
			iVar6 = 10;
			iVar7 = 4;
			if (Global_262145.f_4176 != -1)
			{
				iVar1 = Global_262145.f_4176;
			}
			else
			{
				iVar1 = 385;
			}
			break;
		
		case 165:
			StringCopy(&Var2, "SP_FMM_10_5", 16);
			iVar6 = 10;
			iVar7 = 5;
			if (Global_262145.f_4193 != -1)
			{
				iVar1 = Global_262145.f_4193;
			}
			else
			{
				iVar1 = 395;
			}
			break;
		
		case 166:
			StringCopy(&Var2, "SP_FMM_10_6", 16);
			iVar6 = 10;
			iVar7 = 6;
			if (Global_262145.f_4182 != -1)
			{
				iVar1 = Global_262145.f_4182;
			}
			else
			{
				iVar1 = 500;
			}
			break;
		
		case 167:
			StringCopy(&Var2, "SP_FMM_10_7", 16);
			iVar6 = 10;
			iVar7 = 7;
			if (Global_262145.f_4196 != -1)
			{
				iVar1 = Global_262145.f_4196;
			}
			else
			{
				iVar1 = 420;
			}
			break;
		
		case 168:
			StringCopy(&Var2, "SP_FMM_10_8", 16);
			iVar6 = 10;
			iVar7 = 8;
			if (Global_262145.f_4192 != -1)
			{
				iVar1 = Global_262145.f_4192;
			}
			else
			{
				iVar1 = 410;
			}
			break;
		
		case 169:
			StringCopy(&Var2, "SP_FMM_10_9", 16);
			iVar6 = 10;
			iVar7 = 9;
			if (Global_262145.f_4185 != -1)
			{
				iVar1 = Global_262145.f_4185;
			}
			else
			{
				iVar1 = 420;
			}
			break;
		
		case 170:
			StringCopy(&Var2, "SP_FMM_10_10", 16);
			iVar6 = 10;
			iVar7 = 10;
			if (Global_262145.f_4190 != -1)
			{
				iVar1 = Global_262145.f_4190;
			}
			else
			{
				iVar1 = 405;
			}
			break;
		
		case 171:
			StringCopy(&Var2, "SP_FMM_10_11", 16);
			iVar6 = 10;
			iVar7 = 11;
			if (Global_262145.f_4188 != -1)
			{
				iVar1 = Global_262145.f_4188;
			}
			else
			{
				iVar1 = 410;
			}
			break;
		
		case 172:
			StringCopy(&Var2, "SP_FMM_10_12", 16);
			iVar6 = 10;
			iVar7 = 12;
			if (Global_262145.f_4180 != -1)
			{
				iVar1 = Global_262145.f_4180;
			}
			else
			{
				iVar1 = 420;
			}
			break;
		
		case 173:
			StringCopy(&Var2, "SP_FMM_10_13", 16);
			iVar6 = 10;
			iVar7 = 13;
			if (Global_262145.f_4195 != -1)
			{
				iVar1 = Global_262145.f_4195;
			}
			else
			{
				iVar1 = 420;
			}
			break;
		
		case 174:
			StringCopy(&Var2, "SP_FMM_10_14", 16);
			iVar6 = 10;
			iVar7 = 14;
			if (Global_262145.f_4198 != -1)
			{
				iVar1 = Global_262145.f_4198;
			}
			else
			{
				iVar1 = 410;
			}
			break;
		
		case 175:
			StringCopy(&Var2, "SP_FMM_10_15", 16);
			iVar6 = 10;
			iVar7 = 15;
			if (Global_262145.f_4189 != -1)
			{
				iVar1 = Global_262145.f_4189;
			}
			else
			{
				iVar1 = 460;
			}
			break;
		
		case 176:
			StringCopy(&Var2, "SP_FMM_10_0", 16);
			iVar6 = 11;
			iVar7 = 0;
			if (Global_262145.f_4199 != -1)
			{
				iVar1 = Global_262145.f_4199;
			}
			else
			{
				iVar1 = 405;
			}
			break;
		
		case 177:
			StringCopy(&Var2, "SP_FMM_10_1", 16);
			iVar6 = 11;
			iVar7 = 1;
			if (Global_262145.f_4197 != -1)
			{
				iVar1 = Global_262145.f_4197;
			}
			else
			{
				iVar1 = 400;
			}
			break;
		
		case 178:
			StringCopy(&Var2, "SP_FMM_10_2", 16);
			iVar6 = 11;
			iVar7 = 2;
			if (Global_262145.f_4183 != -1)
			{
				iVar1 = Global_262145.f_4183;
			}
			else
			{
				iVar1 = 425;
			}
			break;
		
		case 179:
			StringCopy(&Var2, "SP_FMM_10_3", 16);
			iVar6 = 11;
			iVar7 = 3;
			if (Global_262145.f_4191 != -1)
			{
				iVar1 = Global_262145.f_4191;
			}
			else
			{
				iVar1 = 385;
			}
			break;
		
		case 180:
			StringCopy(&Var2, "SP_FMM_10_4", 16);
			iVar6 = 11;
			iVar7 = 4;
			if (Global_262145.f_4176 != -1)
			{
				iVar1 = Global_262145.f_4176;
			}
			else
			{
				iVar1 = 385;
			}
			break;
		
		case 181:
			StringCopy(&Var2, "SP_FMM_10_5", 16);
			iVar6 = 11;
			iVar7 = 5;
			if (Global_262145.f_4193 != -1)
			{
				iVar1 = Global_262145.f_4193;
			}
			else
			{
				iVar1 = 395;
			}
			break;
		
		case 182:
			StringCopy(&Var2, "SP_FMM_10_6", 16);
			iVar6 = 11;
			iVar7 = 6;
			if (Global_262145.f_4182 != -1)
			{
				iVar1 = Global_262145.f_4182;
			}
			else
			{
				iVar1 = 500;
			}
			break;
		
		case 183:
			StringCopy(&Var2, "SP_FMM_10_7", 16);
			iVar6 = 11;
			iVar7 = 7;
			if (Global_262145.f_4196 != -1)
			{
				iVar1 = Global_262145.f_4196;
			}
			else
			{
				iVar1 = 420;
			}
			break;
		
		case 184:
			StringCopy(&Var2, "SP_FMM_10_8", 16);
			iVar6 = 11;
			iVar7 = 8;
			if (Global_262145.f_4192 != -1)
			{
				iVar1 = Global_262145.f_4192;
			}
			else
			{
				iVar1 = 410;
			}
			break;
		
		case 185:
			StringCopy(&Var2, "SP_FMM_10_9", 16);
			iVar6 = 11;
			iVar7 = 9;
			if (Global_262145.f_4185 != -1)
			{
				iVar1 = Global_262145.f_4185;
			}
			else
			{
				iVar1 = 420;
			}
			break;
		
		case 186:
			StringCopy(&Var2, "SP_FMM_10_10", 16);
			iVar6 = 11;
			iVar7 = 10;
			if (Global_262145.f_4190 != -1)
			{
				iVar1 = Global_262145.f_4190;
			}
			else
			{
				iVar1 = 405;
			}
			break;
		
		case 187:
			StringCopy(&Var2, "SP_FMM_10_11", 16);
			iVar6 = 11;
			iVar7 = 11;
			if (Global_262145.f_4188 != -1)
			{
				iVar1 = Global_262145.f_4188;
			}
			else
			{
				iVar1 = 410;
			}
			break;
		
		case 188:
			StringCopy(&Var2, "SP_FMM_10_12", 16);
			iVar6 = 11;
			iVar7 = 12;
			if (Global_262145.f_4180 != -1)
			{
				iVar1 = Global_262145.f_4180;
			}
			else
			{
				iVar1 = 420;
			}
			break;
		
		case 189:
			StringCopy(&Var2, "SP_FMM_10_13", 16);
			iVar6 = 11;
			iVar7 = 13;
			if (Global_262145.f_4195 != -1)
			{
				iVar1 = Global_262145.f_4195;
			}
			else
			{
				iVar1 = 420;
			}
			break;
		
		case 190:
			StringCopy(&Var2, "SP_FMM_10_14", 16);
			iVar6 = 11;
			iVar7 = 14;
			if (Global_262145.f_4198 != -1)
			{
				iVar1 = Global_262145.f_4198;
			}
			else
			{
				iVar1 = 410;
			}
			break;
		
		case 191:
			StringCopy(&Var2, "SP_FMM_10_15", 16);
			iVar6 = 11;
			iVar7 = 15;
			if (Global_262145.f_4189 != -1)
			{
				iVar1 = Global_262145.f_4189;
			}
			else
			{
				iVar1 = 460;
			}
			break;
	}
	switch (iParam0)
	{
		case 192:
			StringCopy(&Var2, "U_FMM_12_0", 16);
			iVar6 = 12;
			iVar7 = 0;
			iVar1 = 420;
			break;
		
		case 193:
			StringCopy(&Var2, "U_FMM_12_1", 16);
			iVar6 = 12;
			iVar7 = 1;
			iVar1 = 415;
			break;
		
		case 194:
			StringCopy(&Var2, "U_FMM_12_2", 16);
			iVar6 = 12;
			iVar7 = 2;
			iVar1 = 695;
			break;
		
		case 195:
			StringCopy(&Var2, "U_FMM_12_3", 16);
			iVar6 = 12;
			iVar7 = 3;
			iVar1 = 385;
			break;
		
		case 196:
			StringCopy(&Var2, "U_FMM_12_4", 16);
			iVar6 = 12;
			iVar7 = 4;
			iVar1 = 330;
			break;
		
		case 197:
			StringCopy(&Var2, "U_FMM_12_5", 16);
			iVar6 = 12;
			iVar7 = 5;
			iVar1 = 345;
			break;
		
		case 198:
			StringCopy(&Var2, "U_FMM_12_6", 16);
			iVar6 = 12;
			iVar7 = 6;
			iVar1 = 340;
			break;
		
		case 199:
			StringCopy(&Var2, "U_FMM_12_7", 16);
			iVar6 = 12;
			iVar7 = 7;
			iVar1 = 450;
			break;
		
		case 200:
			StringCopy(&Var2, "U_FMM_12_8", 16);
			iVar6 = 12;
			iVar7 = 8;
			iVar1 = 295;
			break;
		
		case 201:
			StringCopy(&Var2, "U_FMM_12_9", 16);
			iVar6 = 12;
			iVar7 = 9;
			iVar1 = 340;
			break;
		
		case 202:
			StringCopy(&Var2, "U_FMM_12_10", 16);
			iVar6 = 12;
			iVar7 = 10;
			iVar1 = 1060;
			break;
		
		case 203:
			StringCopy(&Var2, "U_FMM_12_11", 16);
			iVar6 = 12;
			iVar7 = 11;
			iVar1 = 1040;
			break;
		
		case 204:
			StringCopy(&Var2, "U_FMM_12_12", 16);
			iVar6 = 12;
			iVar7 = 12;
			iVar0 = true;
			break;
		
		case 205:
			StringCopy(&Var2, "U_FMM_12_13", 16);
			iVar6 = 12;
			iVar7 = 13;
			iVar0 = true;
			break;
		
		case 206:
			StringCopy(&Var2, "U_FMM_12_14", 16);
			iVar6 = 12;
			iVar7 = 14;
			iVar0 = true;
			break;
		
		case 207:
			StringCopy(&Var2, "U_FMM_12_15", 16);
			iVar6 = 12;
			iVar7 = 15;
			iVar0 = true;
			break;
		
		case 208:
			StringCopy(&Var2, "U_FMM_13_0", 16);
			iVar6 = 13;
			iVar7 = 0;
			iVar1 = 420;
			break;
		
		case 209:
			StringCopy(&Var2, "U_FMM_13_1", 16);
			iVar6 = 13;
			iVar7 = 1;
			iVar1 = 415;
			break;
		
		case 210:
			StringCopy(&Var2, "U_FMM_13_2", 16);
			iVar6 = 13;
			iVar7 = 2;
			iVar1 = 680;
			break;
		
		case 211:
			StringCopy(&Var2, "U_FMM_13_3", 16);
			iVar6 = 13;
			iVar7 = 3;
			iVar1 = 385;
			break;
		
		case 212:
			StringCopy(&Var2, "U_FMM_13_4", 16);
			iVar6 = 13;
			iVar7 = 4;
			iVar0 = true;
			break;
		
		case 213:
			StringCopy(&Var2, "U_FMM_13_5", 16);
			iVar6 = 13;
			iVar7 = 5;
			iVar1 = 345;
			break;
		
		case 214:
			StringCopy(&Var2, "U_FMM_13_6", 16);
			iVar6 = 13;
			iVar7 = 6;
			iVar0 = true;
			break;
		
		case 215:
			StringCopy(&Var2, "U_FMM_13_7", 16);
			iVar6 = 13;
			iVar7 = 7;
			iVar0 = true;
			break;
		
		case 216:
			StringCopy(&Var2, "U_FMM_13_8", 16);
			iVar6 = 13;
			iVar7 = 8;
			iVar0 = true;
			break;
		
		case 217:
			StringCopy(&Var2, "U_FMM_13_9", 16);
			iVar6 = 13;
			iVar7 = 9;
			iVar0 = true;
			break;
		
		case 218:
			StringCopy(&Var2, "U_FMM_13_10", 16);
			iVar6 = 13;
			iVar7 = 10;
			iVar0 = true;
			break;
		
		case 219:
			StringCopy(&Var2, "U_FMM_13_11", 16);
			iVar6 = 13;
			iVar7 = 11;
			iVar0 = true;
			break;
		
		case 220:
			StringCopy(&Var2, "U_FMM_13_12", 16);
			iVar6 = 13;
			iVar7 = 12;
			iVar0 = true;
			break;
		
		case 221:
			StringCopy(&Var2, "U_FMM_13_13", 16);
			iVar6 = 13;
			iVar7 = 13;
			iVar1 = 1065;
			break;
		
		case 222:
			StringCopy(&Var2, "U_FMM_13_14", 16);
			iVar6 = 13;
			iVar7 = 14;
			iVar0 = true;
			break;
		
		case 223:
			StringCopy(&Var2, "U_FMM_13_15", 16);
			iVar6 = 13;
			iVar7 = 15;
			iVar0 = true;
			break;
	}
	switch (iParam0)
	{
		case 224:
			StringCopy(&Var2, "U_FMM_1_0", 16);
			iVar6 = 14;
			iVar7 = 0;
			iVar1 = 45;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_430[16]));
			break;
		
		case 225:
			StringCopy(&Var2, "U_FMM_1_1", 16);
			iVar6 = 14;
			iVar7 = 1;
			iVar1 = 60;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_430[17]));
			break;
		
		case 226:
			StringCopy(&Var2, "U_FMM_1_2", 16);
			iVar6 = 14;
			iVar7 = 2;
			iVar0 = true;
			break;
		
		case 227:
			StringCopy(&Var2, "U_FMM_1_3", 16);
			iVar6 = 14;
			iVar7 = 3;
			iVar1 = 40;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_430[19]));
			break;
		
		case 228:
			StringCopy(&Var2, "U_FMM_1_4", 16);
			iVar6 = 14;
			iVar7 = 4;
			iVar1 = 315;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_430[20]));
			break;
		
		case 229:
			StringCopy(&Var2, "U_FMM_1_5", 16);
			iVar6 = 14;
			iVar7 = 5;
			iVar1 = 215;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_430[21]));
			break;
		
		case 230:
			StringCopy(&Var2, "U_FMM_1_6", 16);
			iVar6 = 14;
			iVar7 = 6;
			iVar1 = 265;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_430[22]));
			break;
		
		case 231:
			StringCopy(&Var2, "U_FMM_1_7", 16);
			iVar6 = 14;
			iVar7 = 7;
			iVar1 = 45;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_430[23]));
			break;
		
		case 232:
			StringCopy(&Var2, "U_FMM_1_8", 16);
			iVar6 = 14;
			iVar7 = 8;
			iVar1 = 205;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_430[24]));
			break;
		
		case 233:
			StringCopy(&Var2, "U_FMM_1_9", 16);
			iVar6 = 14;
			iVar7 = 9;
			iVar0 = true;
			break;
		
		case 234:
			StringCopy(&Var2, "U_FMM_1_10", 16);
			iVar6 = 14;
			iVar7 = 10;
			iVar0 = true;
			break;
		
		case 235:
			StringCopy(&Var2, "U_FMM_1_11", 16);
			iVar6 = 14;
			iVar7 = 11;
			iVar1 = 60;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_430[27]));
			break;
		
		case 236:
			StringCopy(&Var2, "U_FMM_1_12", 16);
			iVar6 = 14;
			iVar7 = 12;
			iVar1 = 55;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_430[28]));
			break;
		
		case 237:
			StringCopy(&Var2, "U_FMM_1_13", 16);
			iVar6 = 14;
			iVar7 = 13;
			iVar0 = true;
			break;
		
		case 238:
			StringCopy(&Var2, "U_FMM_1_14", 16);
			iVar6 = 14;
			iVar7 = 14;
			iVar1 = 170;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_430[30]));
			break;
		
		case 239:
			StringCopy(&Var2, "U_FMM_1_15", 16);
			iVar6 = 14;
			iVar7 = 15;
			iVar0 = true;
			break;
		
		case 240:
			StringCopy(&Var2, "U_FMM_15_0", 16);
			iVar6 = 15;
			iVar7 = 0;
			iVar1 = 0;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_430[32]));
			break;
	}
	if (iParam0 == 23 || iParam0 == 231)
	{
		if (func_585(89, -1))
		{
			StringCopy(&Var2, "REW_RS", 16);
			iVar1 = system::round((system::to_float(1250) * Global_262145.f_2977));
		}
		else
		{
			iVar1 = system::round((system::to_float(45) * Global_262145.f_430[23]));
		}
	}
	else if (iParam0 == 17 || iParam0 == 225)
	{
		if (func_585(88, -1))
		{
			StringCopy(&Var2, "REW_LSB", 16);
			iVar1 = system::round((system::to_float(450) * Global_262145.f_2976));
		}
		else
		{
			iVar1 = system::round((system::to_float(60) * Global_262145.f_430[17]));
		}
	}
	else if (iParam0 == 28 || iParam0 == 236)
	{
		if (func_585(87, -1))
		{
			StringCopy(&Var2, "REW_REDSK", 16);
			iVar1 = system::round((system::to_float(500) * Global_262145.f_2975));
		}
		else
		{
			iVar1 = system::round((system::to_float(55) * Global_262145.f_430[28]));
		}
	}
	else if (iParam0 >= 0 && iParam0 < 32)
	{
		iVar11 = iParam0;
		if (iVar11 >= 0 && iVar11 < 237)
		{
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_430[iVar11]));
		}
	}
	else if (iParam0 >= 32 && iParam0 < 48)
	{
		iVar12 = (iParam0 - 32);
		if (iVar12 >= 0 && iVar12 < 237)
		{
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_430[iVar12]));
		}
	}
	else if (iParam0 >= 128 && iParam0 < 160)
	{
		iVar13 = (iParam0 - 160) + 124;
		if (iVar13 >= 0 && iVar13 < 237)
		{
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_430[iVar13]));
		}
	}
	else if (iParam0 >= 192 && iParam0 < 224)
	{
		iVar14 = (iParam0 - 160) + 188;
		if (iVar14 >= 0 && iVar14 < 237)
		{
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_430[iVar14]));
		}
	}
	iVar1 = system::round((system::to_float(iVar1) * Global_279748.f_16));
	if (iParam0 >= 241)
	{
		Global_69518[0 /*14*/].f_5 = 3;
		func_649(iVar10, iParam0, 241);
		if (Global_69518[0 /*14*/].f_7 > 0)
		{
			Global_69518[0 /*14*/].f_7 = system::round((system::to_float(Global_69518[0 /*14*/].f_7) * Global_279748.f_16));
		}
	}
	else
	{
		func_641(&(Global_69518[0 /*14*/]), iVar10, iParam0, &Var2, iVar6, iVar7, iVar1, iVar0, iVar8, iVar9, 0);
	}
}

void func_677(int iParam0)//Position - 0x6343B
{
	int iVar0;
	int iVar1;
	struct<2> Var2;
	int iVar6;
	int iVar7;
	int iVar8;
	int iVar9;
	int iVar10;
	int iVar11;
	
	iVar0 = false;
	iVar1 = 10;
	iVar6 = 0;
	iVar7 = 0;
	iVar8 = -1;
	iVar9 = 2;
	iVar10 = 11;
	switch (iParam0)
	{
		case 0:
			iVar6 = 0;
			iVar7 = 0;
			iVar1 = 250;
			break;
		
		case 1:
			iVar6 = 0;
			iVar7 = 1;
			iVar1 = 210;
			break;
		
		case 2:
			iVar6 = 0;
			iVar7 = 2;
			iVar1 = 50;
			break;
		
		case 3:
			iVar6 = 0;
			iVar7 = 3;
			iVar1 = 90;
			break;
		
		case 4:
			iVar6 = 0;
			iVar7 = 4;
			iVar1 = 210;
			break;
		
		case 5:
			iVar6 = 0;
			iVar7 = 5;
			iVar1 = 200;
			break;
		
		case 6:
			iVar6 = 0;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 7:
			iVar6 = 0;
			iVar7 = 7;
			iVar1 = 130;
			break;
		
		case 8:
			iVar6 = 0;
			iVar7 = 8;
			iVar1 = 220;
			break;
		
		case 9:
			iVar6 = 0;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 10:
			iVar6 = 0;
			iVar7 = 10;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 11:
			iVar6 = 0;
			iVar7 = 11;
			iVar1 = 220;
			break;
		
		case 12:
			iVar6 = 0;
			iVar7 = 12;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 13:
			iVar6 = 0;
			iVar7 = 13;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 14:
			iVar6 = 0;
			iVar7 = 14;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 15:
			iVar6 = 0;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 16:
			iVar6 = 1;
			iVar7 = 0;
			iVar1 = 45;
			break;
		
		case 17:
			iVar6 = 1;
			iVar7 = 1;
			iVar1 = 60;
			break;
		
		case 18:
			iVar6 = 1;
			iVar7 = 2;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 19:
			iVar6 = 1;
			iVar7 = 3;
			iVar1 = 40;
			break;
		
		case 20:
			iVar6 = 1;
			iVar7 = 4;
			iVar1 = 315;
			break;
		
		case 21:
			iVar6 = 1;
			iVar7 = 5;
			iVar1 = 215;
			break;
		
		case 22:
			iVar6 = 1;
			iVar7 = 6;
			iVar1 = 265;
			break;
		
		case 23:
			iVar6 = 1;
			iVar7 = 7;
			iVar1 = 45;
			break;
		
		case 24:
			iVar6 = 1;
			iVar7 = 8;
			iVar1 = 205;
			break;
		
		case 25:
			iVar6 = 1;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 26:
			iVar6 = 1;
			iVar7 = 10;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 27:
			iVar6 = 1;
			iVar7 = 11;
			iVar1 = 60;
			break;
		
		case 28:
			iVar6 = 1;
			iVar7 = 12;
			iVar1 = 55;
			break;
		
		case 29:
			iVar6 = 1;
			iVar7 = 13;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 30:
			iVar6 = 1;
			iVar7 = 14;
			iVar1 = 170;
			break;
		
		case 31:
			iVar6 = 1;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
	}
	switch (iParam0)
	{
		case 32:
			iVar6 = 2;
			iVar7 = 0;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 33:
			iVar6 = 2;
			iVar7 = 1;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 34:
			iVar6 = 2;
			iVar7 = 2;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 35:
			iVar6 = 2;
			iVar7 = 3;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 36:
			iVar6 = 2;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 37:
			iVar6 = 2;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 38:
			iVar6 = 2;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 39:
			iVar6 = 2;
			iVar7 = 7;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 40:
			iVar6 = 2;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 41:
			iVar6 = 2;
			iVar7 = 9;
			iVar1 = 160;
			break;
		
		case 42:
			iVar6 = 2;
			iVar7 = 10;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 43:
			iVar6 = 2;
			iVar7 = 11;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 44:
			iVar6 = 2;
			iVar7 = 12;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 45:
			iVar6 = 2;
			iVar7 = 13;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 46:
			iVar6 = 2;
			iVar7 = 14;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 47:
			iVar6 = 2;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 48:
			iVar6 = 3;
			iVar7 = 0;
			iVar1 = 205;
			break;
		
		case 49:
			iVar6 = 3;
			iVar7 = 1;
			iVar1 = 110;
			break;
		
		case 50:
			iVar6 = 3;
			iVar7 = 2;
			iVar1 = 150;
			break;
		
		case 51:
			iVar6 = 3;
			iVar7 = 3;
			iVar1 = 115;
			break;
		
		case 52:
			iVar6 = 3;
			iVar7 = 4;
			iVar1 = 115;
			break;
		
		case 53:
			iVar6 = 3;
			iVar7 = 5;
			iVar1 = 150;
			break;
		
		case 54:
			iVar6 = 3;
			iVar7 = 6;
			iVar1 = 150;
			break;
		
		case 55:
			iVar6 = 3;
			iVar7 = 7;
			iVar1 = 115;
			break;
		
		case 56:
			iVar6 = 3;
			iVar7 = 8;
			iVar1 = 140;
			break;
		
		case 57:
			iVar6 = 3;
			iVar7 = 9;
			iVar1 = 125;
			break;
		
		case 58:
			iVar6 = 3;
			iVar7 = 10;
			iVar1 = 115;
			break;
		
		case 59:
			iVar6 = 3;
			iVar7 = 11;
			iVar1 = 150;
			break;
		
		case 60:
			iVar6 = 3;
			iVar7 = 12;
			iVar1 = 150;
			break;
		
		case 61:
			iVar6 = 3;
			iVar7 = 13;
			iVar1 = 275;
			break;
		
		case 62:
			iVar6 = 3;
			iVar7 = 14;
			iVar1 = 460;
			break;
		
		case 63:
			iVar6 = 3;
			iVar7 = 15;
			iVar1 = 260;
			break;
	}
	switch (iParam0)
	{
		case 64:
			iVar6 = 4;
			iVar7 = 0;
			iVar1 = 965;
			break;
		
		case 65:
			iVar6 = 4;
			iVar7 = 1;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 66:
			iVar6 = 4;
			iVar7 = 2;
			iVar1 = 2520;
			break;
		
		case 67:
			iVar6 = 4;
			iVar7 = 3;
			iVar1 = 350;
			break;
		
		case 68:
			iVar6 = 4;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 69:
			iVar6 = 4;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 70:
			iVar6 = 4;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 71:
			iVar6 = 4;
			iVar7 = 7;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 72:
			iVar6 = 4;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 73:
			iVar6 = 4;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 74:
			iVar6 = 4;
			iVar7 = 10;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 75:
			iVar6 = 4;
			iVar7 = 11;
			iVar1 = 150;
			break;
		
		case 76:
			iVar6 = 4;
			iVar7 = 12;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 77:
			iVar6 = 4;
			iVar7 = 13;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 78:
			iVar6 = 4;
			iVar7 = 14;
			iVar1 = 3125;
			break;
		
		case 79:
			iVar6 = 4;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 80:
			iVar6 = 5;
			iVar7 = 0;
			iVar1 = 80;
			break;
		
		case 81:
			iVar6 = 5;
			iVar7 = 1;
			iVar1 = 45;
			break;
		
		case 82:
			iVar6 = 5;
			iVar7 = 2;
			iVar1 = 50;
			break;
		
		case 83:
			iVar6 = 5;
			iVar7 = 3;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 84:
			iVar6 = 5;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 85:
			iVar6 = 5;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 86:
			iVar6 = 5;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 87:
			iVar6 = 5;
			iVar7 = 7;
			iVar1 = 50;
			break;
		
		case 88:
			iVar6 = 5;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 89:
			iVar6 = 5;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 90:
			iVar6 = 5;
			iVar7 = 10;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 91:
			iVar6 = 5;
			iVar7 = 11;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 92:
			iVar6 = 5;
			iVar7 = 12;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 93:
			iVar6 = 5;
			iVar7 = 13;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 94:
			iVar6 = 5;
			iVar7 = 14;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 95:
			iVar6 = 5;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
	}
	switch (iParam0)
	{
		case 96:
			iVar6 = 6;
			iVar7 = 0;
			iVar1 = 2485;
			break;
		
		case 97:
			iVar6 = 6;
			iVar7 = 1;
			iVar1 = 535;
			break;
		
		case 98:
			iVar6 = 6;
			iVar7 = 2;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 99:
			iVar6 = 6;
			iVar7 = 3;
			iVar1 = 2945;
			break;
		
		case 100:
			iVar6 = 6;
			iVar7 = 4;
			iVar1 = 3080;
			break;
		
		case 101:
			iVar6 = 6;
			iVar7 = 5;
			iVar1 = 2990;
			break;
		
		case 102:
			iVar6 = 6;
			iVar7 = 6;
			iVar1 = 3750;
			break;
		
		case 103:
			iVar6 = 6;
			iVar7 = 7;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 104:
			iVar6 = 6;
			iVar7 = 8;
			iVar1 = 515;
			break;
		
		case 105:
			iVar6 = 6;
			iVar7 = 9;
			iVar1 = 530;
			break;
		
		case 106:
			iVar6 = 6;
			iVar7 = 10;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 107:
			iVar6 = 6;
			iVar7 = 11;
			iVar1 = 2810;
			break;
		
		case 108:
			iVar6 = 7;
			iVar7 = 0;
			iVar1 = 150;
			break;
		
		case 109:
			iVar6 = 7;
			iVar7 = 1;
			iVar1 = 155;
			break;
		
		case 110:
			iVar6 = 7;
			iVar7 = 2;
			iVar1 = 320;
			break;
		
		case 111:
			iVar6 = 7;
			iVar7 = 3;
			iVar1 = 140;
			break;
		
		case 112:
			iVar6 = 7;
			iVar7 = 4;
			iVar1 = 150;
			break;
		
		case 113:
			iVar6 = 7;
			iVar7 = 5;
			iVar1 = 145;
			break;
		
		case 114:
			iVar6 = 7;
			iVar7 = 6;
			iVar1 = 150;
			break;
		
		case 115:
			iVar6 = 7;
			iVar7 = 7;
			iVar1 = 140;
			break;
		
		case 116:
			iVar6 = 7;
			iVar7 = 8;
			iVar1 = 135;
			break;
		
		case 117:
			iVar6 = 7;
			iVar7 = 9;
			iVar1 = 130;
			break;
		
		case 118:
			iVar6 = 7;
			iVar7 = 10;
			iVar1 = 130;
			break;
		
		case 119:
			iVar6 = 7;
			iVar7 = 11;
			iVar1 = 150;
			break;
		
		case 120:
			iVar6 = 7;
			iVar7 = 12;
			iVar1 = 145;
			break;
		
		case 121:
			iVar6 = 7;
			iVar7 = 13;
			iVar1 = 740;
			break;
		
		case 122:
			iVar6 = 7;
			iVar7 = 14;
			iVar1 = 790;
			break;
		
		case 123:
			iVar6 = 7;
			iVar7 = 15;
			iVar1 = 130;
			break;
	}
	switch (iParam0)
	{
		case 124:
			iVar6 = 8;
			iVar7 = 0;
			iVar1 = 45;
			break;
		
		case 125:
			iVar6 = 8;
			iVar7 = 1;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 126:
			iVar6 = 8;
			iVar7 = 2;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 127:
			iVar6 = 8;
			iVar7 = 3;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 128:
			iVar6 = 8;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 129:
			iVar6 = 8;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 130:
			iVar6 = 8;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 131:
			iVar6 = 8;
			iVar7 = 7;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 132:
			iVar6 = 8;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 133:
			iVar6 = 8;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 134:
			iVar6 = 8;
			iVar7 = 10;
			iVar1 = 65;
			break;
		
		case 135:
			iVar6 = 8;
			iVar7 = 11;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 136:
			iVar6 = 8;
			iVar7 = 12;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 137:
			iVar6 = 8;
			iVar7 = 13;
			iVar1 = 40;
			break;
		
		case 138:
			iVar6 = 8;
			iVar7 = 14;
			iVar1 = 45;
			break;
		
		case 139:
			iVar6 = 8;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 140:
			iVar6 = 9;
			iVar7 = 0;
			iVar1 = 265;
			break;
		
		case 141:
			iVar6 = 9;
			iVar7 = 1;
			iVar1 = 340;
			break;
		
		case 142:
			iVar6 = 9;
			iVar7 = 2;
			iVar1 = 335;
			break;
		
		case 143:
			iVar6 = 9;
			iVar7 = 3;
			iVar1 = 330;
			break;
		
		case 144:
			iVar6 = 9;
			iVar7 = 4;
			iVar1 = 345;
			break;
		
		case 145:
			iVar6 = 9;
			iVar7 = 5;
			iVar1 = 550;
			break;
		
		case 146:
			iVar6 = 9;
			iVar7 = 6;
			iVar1 = 340;
			break;
		
		case 147:
			iVar6 = 9;
			iVar7 = 7;
			iVar1 = 295;
			break;
		
		case 148:
			iVar6 = 9;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 149:
			iVar6 = 9;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 150:
			iVar6 = 9;
			iVar7 = 10;
			iVar1 = 545;
			break;
		
		case 151:
			iVar6 = 9;
			iVar7 = 11;
			iVar1 = 345;
			break;
		
		case 152:
			iVar6 = 9;
			iVar7 = 12;
			iVar1 = 315;
			break;
		
		case 153:
			iVar6 = 9;
			iVar7 = 13;
			iVar1 = 520;
			break;
		
		case 154:
			iVar6 = 9;
			iVar7 = 14;
			iVar1 = 325;
			break;
		
		case 155:
			iVar6 = 9;
			iVar7 = 15;
			iVar1 = 330;
			break;
	}
	switch (iParam0)
	{
		case 156:
			iVar6 = 10;
			iVar7 = 0;
			iVar1 = 505;
			break;
		
		case 157:
			iVar6 = 10;
			iVar7 = 1;
			iVar1 = 470;
			break;
		
		case 158:
			iVar6 = 10;
			iVar7 = 2;
			iVar1 = 475;
			break;
		
		case 159:
			iVar6 = 10;
			iVar7 = 3;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 160:
			iVar6 = 10;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 161:
			iVar6 = 10;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 162:
			iVar6 = 10;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 163:
			iVar6 = 10;
			iVar7 = 7;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 164:
			iVar6 = 10;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 165:
			iVar6 = 10;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 166:
			iVar6 = 10;
			iVar7 = 10;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 167:
			iVar6 = 10;
			iVar7 = 11;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 168:
			iVar6 = 10;
			iVar7 = 12;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 169:
			iVar6 = 10;
			iVar7 = 13;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 170:
			iVar6 = 10;
			iVar7 = 14;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 171:
			iVar6 = 10;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 172:
			iVar6 = 11;
			iVar7 = 0;
			iVar1 = 120;
			break;
		
		case 173:
			iVar6 = 11;
			iVar7 = 1;
			iVar1 = 360;
			break;
		
		case 174:
			iVar6 = 11;
			iVar7 = 2;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 175:
			iVar6 = 11;
			iVar7 = 3;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 176:
			iVar6 = 11;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 177:
			iVar6 = 11;
			iVar7 = 5;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 178:
			iVar6 = 11;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 179:
			iVar6 = 11;
			iVar7 = 7;
			iVar1 = 90;
			break;
		
		case 180:
			iVar6 = 11;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 181:
			iVar6 = 11;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 182:
			iVar6 = 11;
			iVar7 = 10;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 183:
			iVar6 = 11;
			iVar7 = 11;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 184:
			iVar6 = 11;
			iVar7 = 12;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 185:
			iVar6 = 11;
			iVar7 = 13;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 186:
			iVar6 = 11;
			iVar7 = 14;
			iVar1 = 2450;
			break;
		
		case 187:
			iVar6 = 11;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
	}
	switch (iParam0)
	{
		case 188:
			iVar6 = 12;
			iVar7 = 0;
			iVar1 = 420;
			break;
		
		case 189:
			iVar6 = 12;
			iVar7 = 1;
			iVar1 = 415;
			break;
		
		case 190:
			iVar6 = 12;
			iVar7 = 2;
			iVar1 = 695;
			break;
		
		case 191:
			iVar6 = 12;
			iVar7 = 3;
			iVar1 = 385;
			break;
		
		case 192:
			iVar6 = 12;
			iVar7 = 4;
			iVar1 = 330;
			break;
		
		case 193:
			iVar6 = 12;
			iVar7 = 5;
			iVar1 = 345;
			break;
		
		case 194:
			iVar6 = 12;
			iVar7 = 6;
			iVar1 = 340;
			break;
		
		case 195:
			iVar6 = 12;
			iVar7 = 7;
			iVar1 = 450;
			break;
		
		case 196:
			iVar6 = 12;
			iVar7 = 8;
			iVar1 = 295;
			break;
		
		case 197:
			iVar6 = 12;
			iVar7 = 9;
			iVar1 = 340;
			break;
		
		case 198:
			iVar6 = 12;
			iVar7 = 10;
			iVar1 = 1060;
			break;
		
		case 199:
			iVar6 = 12;
			iVar7 = 11;
			iVar1 = 1040;
			break;
		
		case 200:
			iVar6 = 12;
			iVar7 = 12;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 201:
			iVar6 = 12;
			iVar7 = 13;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 202:
			iVar6 = 12;
			iVar7 = 14;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 203:
			iVar6 = 12;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 204:
			iVar6 = 13;
			iVar7 = 0;
			iVar1 = 420;
			break;
		
		case 205:
			iVar6 = 13;
			iVar7 = 1;
			iVar1 = 415;
			break;
		
		case 206:
			iVar6 = 13;
			iVar7 = 2;
			iVar1 = 680;
			break;
		
		case 207:
			iVar6 = 13;
			iVar7 = 3;
			iVar1 = 385;
			break;
		
		case 208:
			iVar6 = 13;
			iVar7 = 4;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 209:
			iVar6 = 13;
			iVar7 = 5;
			iVar1 = 345;
			break;
		
		case 210:
			iVar6 = 13;
			iVar7 = 6;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 211:
			iVar6 = 13;
			iVar7 = 7;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 212:
			iVar6 = 13;
			iVar7 = 8;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 213:
			iVar6 = 13;
			iVar7 = 9;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 214:
			iVar6 = 13;
			iVar7 = 10;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 215:
			iVar6 = 13;
			iVar7 = 11;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 216:
			iVar6 = 13;
			iVar7 = 12;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 217:
			iVar6 = 13;
			iVar7 = 13;
			iVar1 = 1065;
			break;
		
		case 218:
			iVar6 = 13;
			iVar7 = 14;
			iVar1 = 0;
			iVar0 = true;
			break;
		
		case 219:
			iVar6 = 13;
			iVar7 = 15;
			iVar1 = 0;
			iVar0 = true;
			break;
	}
	switch (iParam0)
	{
		case 220:
			iVar6 = 14;
			iVar7 = 0;
			iVar1 = 420;
			break;
		
		case 221:
			iVar6 = 14;
			iVar7 = 1;
			iVar1 = 415;
			break;
		
		case 222:
			iVar6 = 14;
			iVar7 = 2;
			iVar1 = 440;
			break;
		
		case 223:
			iVar6 = 14;
			iVar7 = 3;
			iVar1 = 385;
			break;
		
		case 224:
			iVar6 = 14;
			iVar7 = 4;
			iVar1 = 330;
			break;
		
		case 225:
			iVar6 = 14;
			iVar7 = 5;
			iVar1 = 445;
			break;
		
		case 226:
			iVar6 = 14;
			iVar7 = 6;
			iVar1 = 340;
			break;
		
		case 227:
			iVar6 = 14;
			iVar7 = 7;
			iVar1 = 440;
			break;
		
		case 228:
			iVar6 = 14;
			iVar7 = 8;
			iVar1 = 295;
			break;
		
		case 229:
			iVar6 = 14;
			iVar7 = 9;
			iVar1 = 340;
			break;
		
		case 230:
			iVar6 = 14;
			iVar7 = 10;
			iVar1 = 325;
			break;
		
		case 231:
			iVar6 = 14;
			iVar7 = 11;
			iVar1 = 435;
			break;
		
		case 232:
			iVar6 = 14;
			iVar7 = 12;
			iVar1 = 445;
			break;
		
		case 233:
			iVar6 = 14;
			iVar7 = 13;
			iVar1 = 440;
			break;
		
		case 234:
			iVar6 = 14;
			iVar7 = 14;
			iVar1 = 325;
			break;
		
		case 235:
			iVar6 = 14;
			iVar7 = 15;
			iVar1 = 325;
			break;
		
		case 236:
			iVar6 = 15;
			iVar7 = 0;
			break;
	}
	StringCopy(&Var2, "U_FMM_", 16);
	StringIntConCat(&Var2, iVar6, 16);
	StringConCat(&Var2, "_", 16);
	StringIntConCat(&Var2, iVar7, 16);
	if (iParam0 == 23)
	{
		if (func_585(89, -1))
		{
			StringCopy(&Var2, "REW_RS", 16);
			iVar1 = system::round(((system::to_float(1250) * Global_262145.f_2977) * Global_279748.f_16));
		}
		else
		{
			iVar1 = system::round(((system::to_float(45) * Global_262145.f_430[23]) * Global_279748.f_16));
		}
	}
	else if (iParam0 == 17)
	{
		if (func_585(88, -1))
		{
			StringCopy(&Var2, "REW_LSB", 16);
			iVar1 = system::round(((system::to_float(450) * Global_262145.f_2976) * Global_279748.f_16));
		}
		else
		{
			iVar1 = system::round(((system::to_float(60) * Global_262145.f_430[17]) * Global_279748.f_16));
		}
	}
	else if (iParam0 == 28)
	{
		if (func_585(87, -1))
		{
			StringCopy(&Var2, "REW_REDSK", 16);
			iVar1 = system::round(((system::to_float(500) * Global_262145.f_2975) * Global_279748.f_16));
		}
		else
		{
			iVar1 = system::round(((system::to_float(55) * Global_262145.f_430[28]) * Global_279748.f_16));
		}
	}
	else
	{
		iVar11 = iParam0;
		if (iVar11 >= 0 && iVar11 < 237)
		{
			iVar1 = system::round(((system::to_float(iVar1) * Global_262145.f_430[iVar11]) * Global_279748.f_16));
		}
	}
	if (iParam0 >= 237)
	{
		Global_69518[0 /*14*/].f_5 = 3;
		func_649(iVar10, iParam0, 237);
		if (Global_69518[0 /*14*/].f_7 > 0)
		{
			Global_69518[0 /*14*/].f_7 = system::round((system::to_float(Global_69518[0 /*14*/].f_7) * Global_279748.f_16));
		}
	}
	else
	{
		func_641(&(Global_69518[0 /*14*/]), iVar10, iParam0, &Var2, iVar6, iVar7, iVar1, iVar0, iVar8, iVar9, 0);
	}
}

void func_678(int iParam0)//Position - 0x649F2
{
	int iVar0;
	int iVar1;
	struct<2> Var2;
	int iVar6;
	int iVar7;
	int iVar8;
	int iVar9;
	int iVar10;
	
	iVar0 = false;
	iVar1 = 10;
	iVar6 = 0;
	iVar7 = 0;
	iVar8 = -1;
	iVar9 = 2;
	iVar10 = 2;
	switch (iParam0)
	{
		case 0:
			iVar6 = 0;
			iVar7 = 0;
			iVar1 = 500;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[0]));
			break;
		
		case 1:
			iVar6 = 1;
			iVar7 = 0;
			iVar1 = 190;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[1]));
			break;
		
		case 2:
			iVar6 = 1;
			iVar7 = 1;
			iVar1 = 185;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[2]));
			break;
		
		case 3:
			iVar6 = 1;
			iVar7 = 2;
			iVar1 = 180;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[3]));
			break;
		
		case 4:
			iVar6 = 1;
			iVar7 = 3;
			iVar1 = 175;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[4]));
			break;
		
		case 5:
			iVar6 = 1;
			iVar7 = 4;
			iVar1 = 170;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[5]));
			break;
		
		case 6:
			iVar6 = 1;
			iVar7 = 5;
			iVar1 = 0;
			break;
		
		case 7:
			iVar6 = 2;
			iVar7 = 0;
			iVar1 = 580;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[6]));
			break;
		
		case 8:
			iVar6 = 2;
			iVar7 = 1;
			iVar1 = 575;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[7]));
			break;
		
		case 9:
			iVar6 = 2;
			iVar7 = 2;
			iVar1 = 570;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[8]));
			break;
		
		case 10:
			iVar6 = 2;
			iVar7 = 3;
			iVar1 = 565;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[9]));
			break;
		
		case 11:
			iVar6 = 2;
			iVar7 = 4;
			iVar1 = 560;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[10]));
			break;
		
		case 12:
			iVar6 = 2;
			iVar7 = 5;
			iVar1 = 0;
			break;
		
		case 13:
			iVar6 = 3;
			iVar7 = 0;
			iVar1 = 1100;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[11]));
			break;
		
		case 14:
			iVar6 = 3;
			iVar7 = 1;
			iVar1 = 1095;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[12]));
			break;
		
		case 15:
			iVar6 = 3;
			iVar7 = 2;
			iVar1 = 1090;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[13]));
			break;
		
		case 16:
			iVar6 = 3;
			iVar7 = 3;
			iVar1 = 1085;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[14]));
			break;
		
		case 17:
			iVar6 = 3;
			iVar7 = 4;
			iVar1 = 1080;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[15]));
			break;
		
		case 18:
			iVar6 = 3;
			iVar7 = 5;
			iVar1 = 0;
			break;
		
		case 19:
			iVar6 = 4;
			iVar7 = 0;
			iVar1 = 520;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[16]));
			break;
		
		case 20:
			iVar6 = 4;
			iVar7 = 1;
			iVar1 = 515;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[17]));
			break;
		
		case 21:
			iVar6 = 4;
			iVar7 = 2;
			iVar1 = 510;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[18]));
			break;
		
		case 22:
			iVar6 = 4;
			iVar7 = 3;
			iVar1 = 505;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[19]));
			break;
		
		case 23:
			iVar6 = 4;
			iVar7 = 4;
			iVar1 = 500;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[20]));
			break;
		
		case 24:
			iVar6 = 4;
			iVar7 = 5;
			iVar1 = 0;
			break;
		
		case 25:
			iVar6 = 4;
			iVar7 = 6;
			iVar1 = 0;
			break;
		
		case 26:
			iVar6 = 5;
			iVar7 = 0;
			iVar1 = 295;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[21]));
			break;
		
		case 27:
			iVar6 = 5;
			iVar7 = 1;
			iVar1 = 290;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[22]));
			break;
		
		case 28:
			iVar6 = 5;
			iVar7 = 2;
			iVar1 = 285;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[23]));
			break;
		
		case 29:
			iVar6 = 5;
			iVar7 = 3;
			iVar1 = 280;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[24]));
			break;
		
		case 30:
			iVar6 = 5;
			iVar7 = 4;
			iVar1 = 275;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[25]));
			break;
		
		case 31:
			iVar6 = 5;
			iVar7 = 5;
			iVar1 = 0;
			break;
		
		case 32:
			iVar6 = 6;
			iVar7 = 0;
			iVar1 = 950;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[26]));
			break;
		
		case 33:
			iVar6 = 6;
			iVar7 = 1;
			iVar1 = 945;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[27]));
			break;
		
		case 34:
			iVar6 = 6;
			iVar7 = 2;
			iVar1 = 940;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[28]));
			break;
		
		case 35:
			iVar6 = 6;
			iVar7 = 3;
			iVar1 = 935;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[29]));
			break;
		
		case 36:
			iVar6 = 6;
			iVar7 = 4;
			iVar1 = 930;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[30]));
			break;
		
		case 37:
			iVar6 = 6;
			iVar7 = 5;
			iVar1 = 0;
			break;
		
		case 38:
			iVar6 = 7;
			iVar7 = 0;
			iVar1 = 440;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[31]));
			break;
		
		case 39:
			iVar6 = 7;
			iVar7 = 1;
			iVar1 = 435;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[32]));
			break;
		
		case 40:
			iVar6 = 7;
			iVar7 = 2;
			iVar1 = 430;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[33]));
			break;
		
		case 41:
			iVar6 = 7;
			iVar7 = 3;
			iVar1 = 425;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[34]));
			break;
		
		case 42:
			iVar6 = 7;
			iVar7 = 4;
			iVar1 = 420;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[35]));
			break;
		
		case 43:
			iVar6 = 7;
			iVar7 = 5;
			iVar1 = 0;
			break;
		
		case 44:
			iVar6 = 7;
			iVar7 = 6;
			iVar1 = 0;
			break;
		
		case 45:
			iVar6 = 8;
			iVar7 = 0;
			iVar1 = 1150;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[36]));
			break;
		
		case 46:
			iVar6 = 8;
			iVar7 = 1;
			iVar1 = 1145;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[37]));
			break;
		
		case 47:
			iVar6 = 8;
			iVar7 = 2;
			iVar1 = 1140;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[38]));
			break;
		
		case 48:
			iVar6 = 8;
			iVar7 = 3;
			iVar1 = 1135;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[39]));
			break;
		
		case 49:
			iVar6 = 8;
			iVar7 = 4;
			iVar1 = 1130;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[40]));
			break;
		
		case 50:
			iVar6 = 9;
			iVar7 = 0;
			iVar1 = 395;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[41]));
			break;
		
		case 51:
			iVar6 = 9;
			iVar7 = 1;
			iVar1 = 390;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[42]));
			break;
		
		case 52:
			iVar6 = 9;
			iVar7 = 2;
			iVar1 = 385;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[43]));
			break;
		
		case 53:
			iVar6 = 9;
			iVar7 = 3;
			iVar1 = 380;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[44]));
			break;
		
		case 54:
			iVar6 = 9;
			iVar7 = 4;
			iVar1 = 375;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[45]));
			break;
		
		case 55:
			iVar6 = 9;
			iVar7 = 5;
			iVar1 = 0;
			break;
		
		case 56:
			iVar6 = 9;
			iVar7 = 6;
			iVar1 = 0;
			break;
		
		case 57:
			iVar6 = 10;
			iVar7 = 0;
			iVar1 = 500;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[46]));
			break;
		
		case 58:
			iVar6 = 10;
			iVar7 = 1;
			iVar1 = 495;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[47]));
			break;
		
		case 59:
			iVar6 = 10;
			iVar7 = 2;
			iVar1 = 490;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[48]));
			break;
		
		case 60:
			iVar6 = 10;
			iVar7 = 3;
			iVar1 = 485;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[49]));
			break;
		
		case 61:
			iVar6 = 10;
			iVar7 = 4;
			iVar1 = 480;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[50]));
			break;
		
		case 62:
			iVar6 = 10;
			iVar7 = 5;
			iVar1 = 0;
			break;
		
		case 63:
			iVar6 = 11;
			iVar7 = 0;
			iVar1 = 1050;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[51]));
			break;
		
		case 64:
			iVar6 = 11;
			iVar7 = 1;
			iVar1 = 1045;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[52]));
			break;
		
		case 65:
			iVar6 = 11;
			iVar7 = 2;
			iVar1 = 1040;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[53]));
			break;
		
		case 66:
			iVar6 = 11;
			iVar7 = 3;
			iVar1 = 1035;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[54]));
			break;
		
		case 67:
			iVar6 = 11;
			iVar7 = 4;
			iVar1 = 1030;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[55]));
			break;
		
		case 68:
			iVar6 = 11;
			iVar7 = 5;
			iVar1 = 0;
			break;
		
		case 69:
			iVar6 = 12;
			iVar7 = 0;
			iVar1 = 550;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[56]));
			break;
		
		case 70:
			iVar6 = 12;
			iVar7 = 1;
			iVar1 = 545;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[57]));
			break;
		
		case 71:
			iVar6 = 12;
			iVar7 = 2;
			iVar1 = 540;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[58]));
			break;
		
		case 72:
			iVar6 = 12;
			iVar7 = 3;
			iVar1 = 535;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[59]));
			break;
		
		case 73:
			iVar6 = 12;
			iVar7 = 4;
			iVar1 = 530;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[60]));
			break;
		
		case 74:
			iVar6 = 13;
			iVar7 = 0;
			iVar1 = 1200;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[61]));
			break;
		
		case 75:
			iVar6 = 13;
			iVar7 = 1;
			iVar1 = 1195;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[62]));
			break;
		
		case 76:
			iVar6 = 13;
			iVar7 = 2;
			iVar1 = 1190;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[63]));
			break;
		
		case 77:
			iVar6 = 13;
			iVar7 = 3;
			iVar1 = 1185;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[64]));
			break;
		
		case 78:
			iVar6 = 13;
			iVar7 = 4;
			iVar1 = 1180;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[65]));
			break;
		
		case 79:
			iVar6 = 13;
			iVar7 = 5;
			iVar1 = 0;
			break;
		
		case 80:
			iVar6 = 14;
			iVar7 = 0;
			iVar1 = 2000;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[66]));
			break;
		
		case 81:
			iVar6 = 14;
			iVar7 = 1;
			iVar1 = 1995;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[67]));
			break;
		
		case 82:
			iVar6 = 14;
			iVar7 = 2;
			iVar1 = 1990;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[68]));
			break;
		
		case 83:
			iVar6 = 14;
			iVar7 = 3;
			iVar1 = 1985;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[69]));
			break;
		
		case 84:
			iVar6 = 14;
			iVar7 = 4;
			iVar1 = 1980;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[70]));
			break;
		
		case 85:
			iVar6 = 15;
			iVar7 = 0;
			iVar1 = 475;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[71]));
			break;
		
		case 86:
			iVar6 = 15;
			iVar7 = 1;
			iVar1 = 470;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[72]));
			break;
		
		case 87:
			iVar6 = 15;
			iVar7 = 2;
			iVar1 = 465;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[73]));
			break;
		
		case 88:
			iVar6 = 15;
			iVar7 = 3;
			iVar1 = 460;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[74]));
			break;
		
		case 89:
			iVar6 = 15;
			iVar7 = 4;
			iVar1 = 455;
			iVar1 = system::round((system::to_float(iVar1) * Global_262145.f_2530[75]));
			break;
		
		case 90:
			iVar6 = 15;
			iVar7 = 5;
			iVar1 = 0;
			break;
		
		default:
			Global_69518[0 /*14*/].f_5 = 3;
			func_649(iVar10, iParam0, 91);
			return;
			break;
	}
	StringCopy(&Var2, "H_FMM_", 16);
	StringIntConCat(&Var2, iVar6, 16);
	StringConCat(&Var2, "_", 16);
	StringIntConCat(&Var2, iVar7, 16);
	func_641(&(Global_69518[0 /*14*/]), iVar10, iParam0, &Var2, iVar6, iVar7, iVar1, iVar0, iVar8, iVar9, 0);
}

void func_679()//Position - 0x658AA
{
	Global_69518[0 /*14*/].f_1 = -1;
	Global_69518[0 /*14*/].f_2 = -1;
	Global_69518[0 /*14*/].f_5 = -1;
	Global_69518[0 /*14*/].f_3 = -1;
	Global_69518[0 /*14*/].f_4 = -1;
	Global_69518[0 /*14*/].f_7 = 0;
	Global_69518[0 /*14*/].f_6 = 0;
	Global_69518[0 /*14*/].f_13 = -1;
	Global_69518[0 /*14*/].f_12 = 0;
	Global_69518[0 /*14*/] = 0;
	StringCopy(&(Global_69518[0 /*14*/].f_8), "NO_LABEL", 16);
}

int func_680()//Position - 0x65923
{
	return entity::get_entity_model(player::player_ped_id());
}

bool func_681(int iParam0, int iParam1, int iParam2, int iParam3)//Position - 0x65933
{
	switch (iParam0)
	{
		case joaat("mp_m_freemode_01"):
			switch (iParam1)
			{
				case 14:
					if (iParam3 == -1)
					{
						iParam3 = func_604(iParam0, iParam2, 14, 3);
					}
					if ((iParam2 >= 131 && iParam2 <= 154) || (iParam2 >= 327 && dlc1::_0x341DE7ED1D2A1BFD(iParam3, -1033433901, 1)))
					{
						return true;
					}
					break;
			}
			break;
		
		case joaat("mp_f_freemode_01"):
			switch (iParam1)
			{
				case 14:
					if (iParam3 == -1)
					{
						iParam3 = func_604(iParam0, iParam2, 14, 4);
					}
					if ((iParam2 >= 131 && iParam2 <= 154) || (iParam2 >= 327 && dlc1::_0x341DE7ED1D2A1BFD(iParam3, -1033433901, 1)))
					{
						return true;
					}
					break;
			}
			break;
	}
	return false;
}

bool func_682(int iParam0)//Position - 0x65A01
{
	if ((iParam0 == joaat("blazer") || iParam0 == joaat("sanchez")) || iParam0 == joaat("sanchez2"))
	{
		return true;
	}
	if (vehicle::is_this_model_a_bike(iParam0) || vehicle::is_this_model_a_bicycle(iParam0))
	{
		return true;
	}
	return false;
}

bool func_683(int iParam0, int iParam1)//Position - 0x65A4E
{
	int iVar0;
	
	if (ped::is_ped_in_vehicle(iParam0, iParam1, 0))
	{
		return true;
	}
	else
	{
		iVar0 = ai::get_script_task_status(iParam0, -1794415470);
		if (iVar0 == 0)
		{
			return true;
		}
	}
	return false;
}

bool func_684(vector3 vParam0, float fParam3, int iParam4)//Position - 0x65A81
{
	int iVar0;
	int iVar1;
	int iVar2;
	int iVar3;
	
	if (func_165(player::player_id()))
	{
	}
	iVar0 = func_912();
	entity::freeze_entity_position(player::player_ped_id(), false);
	entity::set_entity_collision(player::player_ped_id(), true, 0);
	ped::set_ped_reset_flag(player::player_ped_id(), 150, true);
	Global_2404994.f_43.f_173 = 0;
	if (func_894())
	{
		if (func_892())
		{
			if (func_889(&iVar2))
			{
				if (func_888(iVar2))
				{
					func_502(player::player_ped_id(), ped::get_vehicle_ped_is_in(player::get_player_ped(iVar2), 0), 0);
					return true;
				}
				else
				{
					return false;
				}
			}
		}
	}
	if (Global_2404994.f_43.f_68)
	{
		if (func_885(iVar0))
		{
			if ((func_1085() && entity::get_entity_model(iVar0) == Global_2404994.f_43.f_67) || !func_1085())
			{
				if (!func_884(entity::get_entity_coords(iVar0, 1), 30f, 1, 1, 0, 0, 0, 0))
				{
					if (iParam4)
					{
						entity::set_entity_coords(iVar0, func_883(Global_2404994.f_43.f_69.f_66, vParam0), 1, false, 0, 1);
						entity::set_entity_heading(iVar0, fParam3);
					}
					func_903(iVar0);
					return true;
				}
			}
		}
	}
	if (Global_1574255)
	{
		func_911(&iVar0);
	}
	if (func_899())
	{
		func_911(&(Global_2404994.f_43.f_171));
		if (func_882())
		{
			if (func_734(func_883(Global_2404994.f_43.f_69.f_66, vParam0), fParam3, 1, func_881(), 0, 1, 0))
			{
				func_686(func_733());
				return true;
			}
		}
		else if (func_685(&iVar1, Global_2404994.f_43.f_69.f_66, func_883(Global_2404994.f_43.f_69.f_66, vParam0), fParam3, 0, 1, 1, 0, 1, 1, 0))
		{
			if (Global_2404994.f_43.f_174)
			{
				vehicle::set_vehicle_strong(network::net_to_veh(iVar1), true);
			}
			if (Global_2404994.f_43.f_175)
			{
				vehicle::set_vehicle_tyres_can_burst(network::net_to_veh(iVar1), false);
			}
			if (Global_2404994.f_43.f_176)
			{
				if (decorator::decor_is_registered_as_type("Not_Allow_As_Saved_Veh", 3))
				{
					decorator::decor_set_int(network::net_to_veh(iVar1), "Not_Allow_As_Saved_Veh", 1);
				}
			}
			if (Global_2404994.f_43.f_177 > -1)
			{
				vehicle::set_vehicle_colours(network::net_to_veh(iVar1), Global_2404994.f_43.f_177, Global_2404994.f_43.f_177);
				vehicle::set_vehicle_extra_colours(network::net_to_veh(iVar1), Global_2404994.f_43.f_177, Global_2404994.f_43.f_177);
			}
			func_686(network::net_to_veh(iVar1));
			if (func_140(player::player_id()) == 189)
			{
				if (decorator::decor_is_registered_as_type("MPBitset", 3))
				{
					if (decorator::decor_exist_on(network::net_to_veh(iVar1), "MPBitset"))
					{
						iVar3 = decorator::decor_get_int(network::net_to_veh(iVar1), "MPBitset");
					}
					gameplay::set_bit(&iVar3, 11);
					decorator::decor_set_int(network::net_to_veh(iVar1), "MPBitset", iVar3);
				}
			}
			return true;
		}
	}
	return false;
}

bool func_685(var uParam0, int iParam1, vector3 vParam2, float fParam5, int iParam6, int iParam7, int iParam8, int iParam9, int iParam10, int iParam11, int iParam12)//Position - 0x65D17
{
	int iVar0;
	
	if (!network::can_register_mission_vehicles(1))
	{
		return false;
	}
	if (iParam11)
	{
		gameplay::clear_area_of_vehicles(vParam2, 1f, 0, 0, 1, 1, true);
	}
	iVar0 = vehicle::create_vehicle(iParam1, vParam2, fParam5, iParam7, iParam6);
	*uParam0 = network::veh_to_net(iVar0);
	if (network::network_does_network_id_exist(*uParam0))
	{
		entity::_0x3910051CCECDB00C(iVar0, iParam10);
		if (network::_0xC7827959479DCC78(iVar0))
		{
			if (iParam8)
			{
				network::set_network_id_exists_on_all_machines(*uParam0, 1);
			}
			else
			{
				network::set_network_id_exists_on_all_machines(*uParam0, 0);
			}
		}
		vehicle::set_vehicle_is_stolen(iVar0, iParam9);
		unk_0xB2E0C0D6922D31F2(iVar0, 1);
		if (iParam12)
		{
			unk_0xFC40CBF7B90CA77C(iVar0);
			vehicle::set_vehicle_door_control(iVar0, 5, 5, 1f);
		}
		return true;
	}
	return false;
}

void func_686(int iParam0)//Position - 0x65DB5
{
	if (entity::does_entity_exist(iParam0))
	{
	}
	if (!entity::is_entity_a_mission_entity(iParam0))
	{
		if (network::network_get_entity_is_local(iParam0))
		{
			entity::set_entity_as_mission_entity(iParam0, false, 1);
		}
	}
	entity::set_entity_visible(iParam0, false, 0);
	entity::freeze_entity_position(iParam0, true);
	func_903(iParam0);
	Global_2404994.f_43.f_171 = iParam0;
	if (Global_2404994.f_43.f_170)
	{
		func_704(iParam0, 1);
	}
	else
	{
		func_687(iParam0, func_272(player::player_id()));
	}
	if (entity::does_entity_exist(iParam0))
	{
	}
	Global_2404994.f_43.f_173 = 1;
}

void func_687(int iParam0, struct<13> Param1)//Position - 0x65E3E
{
	if (entity::does_entity_exist(iParam0))
	{
		if (vehicle::is_vehicle_driveable(iParam0, 0))
		{
			func_688(iParam0, &(Global_2404994.f_43.f_69));
			Global_2404994.f_43.f_170 = 1;
			Global_2404994.f_43.f_69.f_80 = { Param1 };
		}
	}
}

void func_688(int iParam0, var uParam1)//Position - 0x65E88
{
	int iVar0;
	
	func_700(iParam0, uParam1);
	gameplay::clear_bit(&(uParam1->f_94), 0);
	if (gameplay::is_bit_set(uParam1->f_77, 11))
	{
		gameplay::set_bit(&(uParam1->f_94), 0);
	}
	if (func_698(iParam0))
	{
		gameplay::set_bit(&(uParam1->f_94), 0);
	}
	if (func_696(iParam0))
	{
		gameplay::set_bit(&(uParam1->f_94), 0);
	}
	if (uParam1->f_70 == 0)
	{
		uParam1->f_70 = 1;
	}
	uParam1->f_78 = audio::get_vehicle_default_horn(iParam0);
	uParam1->f_79 = vehicle::_get_vehicle_paint_fade(iParam0);
	unk_0x7D1464D472D32136(iParam0, &(uParam1->f_96));
	unk_0xB7635E80A5C31BFF(iParam0, &(uParam1->f_98));
	uParam1->f_97 = unk_0x60190048C0764A26(iParam0);
	iVar0 = func_690(iParam0, &(uParam1->f_93), &(uParam1->f_95));
	gameplay::clear_bit(&(uParam1->f_94), 3);
	if (!iVar0 == func_9())
	{
		network::network_handle_from_player(iVar0, &(uParam1->f_80), 13);
		gameplay::set_bit(&(uParam1->f_94), 1);
	}
	else
	{
		gameplay::clear_bit(&(uParam1->f_94), 1);
	}
	if (iVar0 == player::player_id())
	{
		gameplay::set_bit(&(uParam1->f_94), 2);
		if (uParam1->f_93 == 1)
		{
			if (func_689(iParam0))
			{
				gameplay::set_bit(&(uParam1->f_94), 3);
			}
		}
	}
	else
	{
		gameplay::clear_bit(&(uParam1->f_94), 2);
	}
}

bool func_689(int iParam0)//Position - 0x65F97
{
	if (Global_2494149.f_275 == iParam0)
	{
		return true;
	}
	return false;
}

int func_690(int iParam0, var uParam1, var uParam2)//Position - 0x65FB0
{
	int iVar0;
	
	if (func_695(iParam0))
	{
		*uParam1 = 1;
		if (decorator::decor_is_registered_as_type("PV_Slot", 3))
		{
			if (decorator::decor_exist_on(iParam0, "PV_Slot"))
			{
				*uParam2 = decorator::decor_get_int(iParam0, "PV_Slot");
			}
		}
		return func_694(iParam0);
	}
	else if (func_693(iParam0))
	{
		*uParam1 = 2;
		return func_691(iParam0);
	}
	else if (!vehicle::is_vehicle_seat_free(iParam0, -1, 0))
	{
		iVar0 = vehicle::get_ped_in_vehicle_seat(iParam0, -1, 0);
		if (ped::is_ped_a_player(iVar0))
		{
			*uParam1 = 3;
			return network::_network_get_ped_player(iVar0);
		}
	}
	*uParam1 = 4;
	return player::player_id();
}

int func_691(int iParam0)//Position - 0x66044
{
	int iVar0;
	
	iVar0 = decorator::decor_get_int(iParam0, "Veh_Modded_By_Player");
	return func_692(iVar0, 0);
}

int func_692(int iParam0, int iParam1)//Position - 0x6605F
{
	int iVar0;
	int iVar1;
	
	iVar1 = 0;
	while (iVar1 < 32)
	{
		iVar0 = player::int_to_playerindex(iVar1);
		if (func_387(iVar0, 0, 1) || (iParam1 && network::network_is_player_connected(iVar0)))
		{
			if (iParam0 == gameplay::get_hash_key(player::get_player_name(iVar0)) || iParam0 == network::_0xBC1D768F2F5D6C05(iVar0))
			{
				return iVar0;
			}
		}
		iVar1++;
	}
	return func_9();
}

bool func_693(int iParam0)//Position - 0x660C8
{
	if (Global_69697)
	{
		if (decorator::decor_exist_on(iParam0, "Veh_Modded_By_Player"))
		{
			return true;
		}
	}
	return false;
}

int func_694(int iParam0)//Position - 0x660E9
{
	int iVar0;
	
	iVar0 = decorator::decor_get_int(iParam0, "Player_Vehicle");
	return func_692(iVar0, 0);
}

bool func_695(int iParam0)//Position - 0x66104
{
	if (Global_69697)
	{
		if (decorator::decor_exist_on(iParam0, "Player_Vehicle"))
		{
			return true;
		}
	}
	return false;
}

bool func_696(int iParam0)//Position - 0x66125
{
	int iVar0;
	int iVar1;
	int iVar2;
	int iVar3;
	
	iVar0 = 0;
	if (!entity::is_entity_dead(iParam0, 0))
	{
		iVar0 = graphics::_0xFE26117A5841B2FF(iParam0, 0);
	}
	if (iVar0 == 1 || iVar0 == 2)
	{
		if (iVar0 == 1)
		{
			if (network::network_is_game_in_progress())
			{
				iVar1 = network::get_network_time();
			}
			else
			{
				iVar1 = gameplay::get_game_timer();
			}
			iVar2 = gameplay::absi(network::get_time_difference(iVar1, Global_1318082));
			iVar3 = 20000;
			if (Global_1574255)
			{
				iVar3 = 2000;
			}
			if (iVar2 > iVar3)
			{
				unk_0x82ACC484FFA3B05F(iParam0);
				func_697(iParam0);
				return false;
			}
		}
		return true;
	}
	return false;
}

void func_697(int iParam0)//Position - 0x661B2
{
	int iVar0;
	
	if (decorator::decor_is_registered_as_type("MPBitset", 3))
	{
		if (decorator::decor_exist_on(iParam0, "MPBitset"))
		{
			iVar0 = decorator::decor_get_int(iParam0, "MPBitset");
		}
	}
	if (!gameplay::is_bit_set(iVar0, 16))
	{
		gameplay::set_bit(&iVar0, 16);
		decorator::decor_set_int(iParam0, "MPBitset", iVar0);
	}
}

bool func_698(int iParam0)//Position - 0x66200
{
	if (graphics::_does_vehicle_have_decal(iParam0, 0) || func_699(iParam0))
	{
		return true;
	}
	return false;
}

int func_699(int iParam0)//Position - 0x66223
{
	int iVar0;
	
	if (decorator::decor_is_registered_as_type("MPBitset", 3))
	{
		if (decorator::decor_exist_on(iParam0, "MPBitset"))
		{
			iVar0 = decorator::decor_get_int(iParam0, "MPBitset");
			return gameplay::is_bit_set(iVar0, 16);
		}
	}
	return false;
}

void func_700(int iParam0, var uParam1)//Position - 0x6625C
{
	int iVar0;
	
	if (vehicle::is_vehicle_driveable(iParam0, 0))
	{
		func_703(uParam1);
		uParam1->f_66 = entity::get_entity_model(iParam0);
		StringCopy(&(uParam1->f_1), vehicle::get_vehicle_number_plate_text(iParam0), 16);
		*uParam1 = vehicle::get_vehicle_number_plate_text_index(iParam0);
		vehicle::get_vehicle_colours(iParam0, &(uParam1->f_5), &(uParam1->f_6));
		vehicle::get_vehicle_extra_colours(iParam0, &(uParam1->f_7), &(uParam1->f_8));
		vehicle::get_vehicle_tyre_smoke_color(iParam0, &(uParam1->f_62), &(uParam1->f_63), &(uParam1->f_64));
		uParam1->f_65 = vehicle::get_vehicle_window_tint(iParam0);
		uParam1->f_67 = vehicle::get_vehicle_livery(iParam0);
		uParam1->f_69 = vehicle::get_vehicle_wheel_type(iParam0);
		uParam1->f_70 = vehicle::get_vehicle_door_lock_status(iParam0);
		vehicle::get_vehicle_custom_secondary_colour(iParam0, &(uParam1->f_71), &(uParam1->f_72), &(uParam1->f_73));
		vehicle::_get_vehicle_neon_lights_colour(iParam0, &(uParam1->f_74), &(uParam1->f_75), &(uParam1->f_76));
		if (vehicle::_is_vehicle_neon_light_enabled(iParam0, 2))
		{
			gameplay::set_bit(&(uParam1->f_77), 28);
		}
		if (vehicle::_is_vehicle_neon_light_enabled(iParam0, 3))
		{
			gameplay::set_bit(&(uParam1->f_77), 29);
		}
		if (vehicle::_is_vehicle_neon_light_enabled(iParam0, 0))
		{
			gameplay::set_bit(&(uParam1->f_77), 30);
		}
		if (vehicle::_is_vehicle_neon_light_enabled(iParam0, 1))
		{
			gameplay::set_bit(&(uParam1->f_77), 31);
		}
		if (uParam1->f_65 == -1 && uParam1->f_66 != joaat("granger"))
		{
			uParam1->f_65 = 0;
		}
		if (vehicle::is_vehicle_a_convertible(iParam0, 0))
		{
			uParam1->f_68 = vehicle::get_convertible_roof_state(iParam0);
		}
		if (vehicle::is_this_model_a_plane(uParam1->f_66))
		{
			if (vehicle::_0x4198AB0022B15F87(iParam0))
			{
				switch (vehicle::get_landing_gear_state(iParam0))
				{
					case 2:
					case 0:
						gameplay::clear_bit(&(uParam1->f_77), 23);
						gameplay::set_bit(&(uParam1->f_77), 22);
						break;
					
					case 3:
					case 1:
						gameplay::clear_bit(&(uParam1->f_77), 23);
						gameplay::clear_bit(&(uParam1->f_77), 22);
						break;
					
					case 4:
						gameplay::set_bit(&(uParam1->f_77), 23);
						break;
				}
			}
			else
			{
				gameplay::set_bit(&(uParam1->f_77), 23);
			}
		}
		if (!vehicle::get_vehicle_tyres_can_burst(iParam0))
		{
			gameplay::set_bit(&(uParam1->f_77), 9);
		}
		if (vehicle::is_vehicle_stolen(iParam0))
		{
			gameplay::set_bit(&(uParam1->f_77), 10);
		}
		if (vehicle::get_is_vehicle_primary_colour_custom(iParam0))
		{
			gameplay::set_bit(&(uParam1->f_77), 13);
			vehicle::get_vehicle_custom_primary_colour(iParam0, &(uParam1->f_71), &(uParam1->f_72), &(uParam1->f_73));
		}
		if (vehicle::get_is_vehicle_secondary_colour_custom(iParam0))
		{
			gameplay::set_bit(&(uParam1->f_77), 12);
		}
		func_702(&iParam0, &(uParam1->f_9), &(uParam1->f_59));
		iVar0 = 0;
		while (iVar0 <= 11)
		{
			if (vehicle::is_vehicle_extra_turned_on(iParam0, iVar0 + 1))
			{
				gameplay::set_bit(&(uParam1->f_77), func_701(iVar0 + 1));
			}
			iVar0++;
		}
		if (graphics::_does_vehicle_have_decal(iParam0, 0))
		{
			gameplay::set_bit(&(uParam1->f_77), 11);
		}
		else
		{
			gameplay::clear_bit(&(uParam1->f_77), 11);
		}
		if (decorator::decor_exist_on(iParam0, "IgnoredByQuickSave") && decorator::decor_get_bool(iParam0, "IgnoredByQuickSave"))
		{
			gameplay::set_bit(&(uParam1->f_77), 27);
		}
		else
		{
			gameplay::clear_bit(&(uParam1->f_77), 27);
		}
	}
}

int func_701(int iParam0)//Position - 0x66508
{
	switch (iParam0)
	{
		case 1:
			return 0;
			break;
		
		case 2:
			return 1;
			break;
		
		case 3:
			return 2;
			break;
		
		case 4:
			return 3;
			break;
		
		case 5:
			return 4;
			break;
		
		case 6:
			return 5;
			break;
		
		case 7:
			return 6;
			break;
		
		case 8:
			return 7;
			break;
		
		case 9:
			return 8;
			break;
		
		case 10:
			return 24;
			break;
		
		case 11:
			return 25;
			break;
		
		case 12:
			return 26;
			break;
	}
	return 0;
}

bool func_702(int iParam0, var uParam1, var uParam2)//Position - 0x665B8
{
	int iVar0;
	int iVar1;
	
	if (!vehicle::is_vehicle_driveable(*iParam0, 0))
	{
		return false;
	}
	if (vehicle::get_num_mod_kits(*iParam0) == 0)
	{
		return false;
	}
	iVar0 = 0;
	while (iVar0 < *uParam1)
	{
		iVar1 = iVar0;
		if (((((iVar1 == 17 || iVar1 == 18) || iVar1 == 19) || iVar1 == 20) || iVar1 == 21) || iVar1 == 22)
		{
			(*uParam1)[iVar0] = 0;
			if (vehicle::is_toggle_mod_on(*iParam0, iVar1))
			{
				(*uParam1)[iVar0] = 1;
			}
		}
		else
		{
			(*uParam1)[iVar0] = vehicle::get_vehicle_mod(*iParam0, iVar0) + 1;
			if (iVar0 == 23)
			{
				(*uParam2)[0] = vehicle::get_vehicle_mod_variation(*iParam0, iVar0);
			}
			else if (iVar0 == 24)
			{
				(*uParam2)[1] = vehicle::get_vehicle_mod_variation(*iParam0, iVar0);
			}
		}
		iVar0++;
	}
	return true;
}

void func_703(var uParam0)//Position - 0x66692
{
	int iVar0;
	
	uParam0->f_66 = 0;
	uParam0->f_77 = 0;
	uParam0->f_65 = 0;
	uParam0->f_62 = 0;
	uParam0->f_63 = 0;
	uParam0->f_64 = 0;
	uParam0->f_74 = 0;
	uParam0->f_75 = 0;
	uParam0->f_76 = 0;
	*uParam0 = 0;
	StringCopy(&(uParam0->f_1), "", 16);
	uParam0->f_5 = 0;
	uParam0->f_6 = 0;
	uParam0->f_7 = 0;
	uParam0->f_8 = 0;
	iVar0 = 0;
	while (iVar0 < 49)
	{
		uParam0->f_9[iVar0] = 0;
		iVar0++;
	}
	iVar0 = 0;
	while (iVar0 < 2)
	{
		uParam0->f_59[iVar0] = 0;
		iVar0++;
	}
	uParam0->f_67 = 0;
	uParam0->f_68 = 0;
	uParam0->f_69 = 0;
	uParam0->f_70 = 1;
	uParam0->f_71 = 0;
	uParam0->f_72 = 0;
	uParam0->f_73 = 0;
}

void func_704(int iParam0, int iParam1)//Position - 0x66741
{
	if (entity::does_entity_exist(iParam0))
	{
		func_705(iParam0, &(Global_2404994.f_43.f_69), iParam1, 1, 0);
	}
}

void func_705(int iParam0, var uParam1, int iParam2, int iParam3, int iParam4)//Position - 0x66767
{
	char* sVar0;
	
	if (player::player_id() != func_9())
	{
		uParam1->f_99 = player::player_id();
	}
	if (uParam1->f_70 == 0)
	{
		uParam1->f_70 = 1;
	}
	func_725(iParam0, uParam1, iParam2, iParam3);
	if (!uParam1->f_78 == -1)
	{
		if (uParam1->f_9[14] == -1)
		{
			audio::override_veh_horn(iParam0, 1, uParam1->f_78);
		}
	}
	vehicle::_set_vehicle_paint_fade(iParam0, uParam1->f_79);
	unk_0xF40DD601A65F7F19(iParam0, uParam1->f_96);
	unk_0x6089CDF6A57F326C(iParam0, uParam1->f_98);
	if (unk_0x5ECB40269053C0D4(iParam0) > 1 && uParam1->f_97 >= 0)
	{
		unk_0xA6D3A8750DC73270(iParam0, uParam1->f_97);
	}
	if (gameplay::is_bit_set(uParam1->f_94, 0))
	{
		func_715(iParam0, &(uParam1->f_80));
	}
	if (!func_709(4) && !iParam4)
	{
		func_707(iParam0);
	}
	switch (uParam1->f_93)
	{
		case 0:
			break;
		
		case 1:
			if (gameplay::is_bit_set(uParam1->f_94, 1) && gameplay::is_bit_set(uParam1->f_94, 2))
			{
				if (gameplay::is_bit_set(uParam1->f_94, 3))
				{
				}
			}
			else if (decorator::decor_is_registered_as_type("Player_Vehicle", 3))
			{
				decorator::decor_set_int(iParam0, "Player_Vehicle", -1);
			}
			break;
		
		case 2:
			if (gameplay::is_bit_set(uParam1->f_94, 1) && gameplay::is_bit_set(uParam1->f_94, 2))
			{
				if (decorator::decor_is_registered_as_type("Veh_Modded_By_Player", 3))
				{
					decorator::decor_set_int(iParam0, "Veh_Modded_By_Player", gameplay::get_hash_key(player::get_player_name(player::player_id())));
				}
			}
			else if (decorator::decor_is_registered_as_type("Veh_Modded_By_Player", 3))
			{
				if (func_706(uParam1->f_80) && network::network_is_gamer_in_my_session(&(uParam1->f_80)))
				{
					sVar0 = network::network_member_id_from_gamer_handle(&(uParam1->f_80));
					decorator::decor_set_int(iParam0, "Veh_Modded_By_Player", gameplay::get_hash_key(sVar0));
				}
				else
				{
					decorator::decor_set_int(iParam0, "Veh_Modded_By_Player", -1);
				}
			}
			break;
		
		case 3:
			break;
		
		case 4:
			break;
	}
}

int func_706(var uParam0, var uParam1, var uParam2, var uParam3, var uParam4, var uParam5, var uParam6, var uParam7, var uParam8, var uParam9, var uParam10, var uParam11, var uParam12)//Position - 0x66933
{
	return network::network_is_handle_valid(&uParam0, 13);
}

void func_707(int iParam0)//Position - 0x66943
{
	vector3 vVar0;
	
	if (entity::does_entity_exist(iParam0))
	{
		if (network::_0xC7827959479DCC78(iParam0))
		{
			vVar0.x = entity::get_entity_model(iParam0);
			vVar0.y = gameplay::get_hash_key(vehicle::get_vehicle_number_plate_text(iParam0));
			vVar0.z = gameplay::get_random_int_in_range(0, 65535);
			if (decorator::decor_is_registered_as_type("RandomID", 3))
			{
				if (!decorator::decor_exist_on(iParam0, "RandomID"))
				{
					decorator::decor_set_int(iParam0, "RandomID", vVar0.y);
				}
			}
			func_708(vVar0);
		}
	}
}

void func_708(vector3 vParam0)//Position - 0x669B4
{
	vector3 vVar0;
	
	vVar0.x = 551;
	vVar0.y = player::player_id();
	vVar0.z = vParam0.x;
	vVar0.f_2.f_1 = vParam0.y;
	vVar0.f_2.f_2 = vParam0.y;
	script::trigger_script_event(1, &vVar0, 5, func_123(1, 1));
}

bool func_709(int iParam0)//Position - 0x669F1
{
	int iVar0;
	
	if (func_714())
	{
		iVar0 = 0;
		while (iVar0 < 46)
		{
			if (func_713(iVar0) == iParam0)
			{
				if (func_710(iVar0))
				{
					return true;
				}
			}
			iVar0++;
		}
	}
	return false;
}

int func_710(int iParam0)//Position - 0x66A2C
{
	return func_711(iParam0, 6, 1);
}

int func_711(int iParam0, int iParam1, int iParam2)//Position - 0x66A3C
{
	if (iParam2)
	{
		return gameplay::is_bit_set(Global_91538.f_1308[iParam0], iParam1);
	}
	else if (network::network_is_game_in_progress())
	{
		if (func_574() == 0)
		{
			return gameplay::is_bit_set(func_241(func_712(iParam0), -1, 0), iParam1);
		}
	}
	else
	{
		return gameplay::is_bit_set(Global_101652.f_668[iParam0], iParam1);
	}
	return false;
}

int func_712(int iParam0)//Position - 0x66A9C
{
	switch (iParam0)
	{
		case 0:
			return 822;
			break;
		
		case 1:
			return 823;
			break;
		
		case 2:
			return 824;
			break;
		
		case 3:
			return 825;
			break;
		
		case 4:
			return 826;
			break;
		
		case 5:
			return 827;
			break;
		
		case 6:
			return 828;
			break;
		
		case 7:
			return 829;
			break;
		
		case 8:
			return 830;
			break;
		
		case 9:
			return 831;
			break;
		
		case 10:
			return 832;
			break;
		
		case 11:
			return 833;
			break;
		
		case 12:
			return 834;
			break;
		
		case 13:
			return 835;
			break;
		
		case 14:
			return 836;
			break;
		
		case 15:
			return 838;
			break;
		
		case 16:
			return 839;
			break;
		
		case 17:
			return 840;
			break;
		
		case 18:
			return 841;
			break;
		
		case 19:
			return 842;
			break;
		
		case 20:
			return 843;
			break;
		
		case 21:
			return 844;
			break;
		
		case 22:
			return 845;
			break;
		
		case 23:
			return 846;
			break;
		
		case 24:
			return 847;
			break;
		
		case 25:
			return 848;
			break;
		
		case 26:
			return 849;
			break;
		
		case 27:
			return 850;
			break;
		
		case 28:
			return 851;
			break;
		
		case 29:
			return 852;
			break;
		
		case 30:
			return 853;
			break;
		
		case 31:
			return 854;
			break;
		
		case 32:
			return 855;
			break;
		
		case 33:
			return 856;
			break;
		
		case 34:
			return 857;
			break;
		
		case 35:
			return 858;
			break;
		
		case 36:
			return 859;
			break;
		
		case 37:
			return 860;
			break;
		
		case 38:
			return 861;
			break;
		
		case 39:
			return 862;
			break;
		
		case 40:
			return 866;
			break;
		
		case 41:
			return 867;
			break;
		
		case 42:
			return 868;
			break;
		
		case 43:
			return 869;
			break;
		
		case 44:
			return 5847;
			break;
		
		case 45:
			return 3780;
			break;
		
		default:
			break;
	}
	return 6022;
}

int func_713(int iParam0)//Position - 0x66D63
{
	switch (iParam0)
	{
		case -1:
			return 6;
			break;
		
		case 0:
			return 0;
			break;
		
		case 1:
			return 0;
			break;
		
		case 2:
			return 0;
			break;
		
		case 3:
			return 0;
			break;
		
		case 4:
			return 0;
			break;
		
		case 5:
			return 0;
			break;
		
		case 6:
			return 0;
			break;
		
		case 7:
			return 1;
			break;
		
		case 8:
			return 1;
			break;
		
		case 9:
			return 1;
			break;
		
		case 10:
			return 1;
			break;
		
		case 11:
			return 1;
			break;
		
		case 12:
			return 1;
			break;
		
		case 13:
			return 1;
			break;
		
		case 14:
			return 1;
			break;
		
		case 15:
			return 1;
			break;
		
		case 16:
			return 1;
			break;
		
		case 17:
			return 1;
			break;
		
		case 18:
			return 1;
			break;
		
		case 19:
			return 1;
			break;
		
		case 20:
			return 1;
			break;
		
		case 21:
			return 1;
			break;
		
		case 22:
			return 2;
			break;
		
		case 23:
			return 2;
			break;
		
		case 24:
			return 2;
			break;
		
		case 25:
			return 2;
			break;
		
		case 26:
			return 2;
			break;
		
		case 27:
			return 2;
			break;
		
		case 28:
			return 3;
			break;
		
		case 29:
			return 3;
			break;
		
		case 30:
			return 3;
			break;
		
		case 31:
			return 3;
			break;
		
		case 32:
			return 3;
			break;
		
		case 33:
			return 3;
			break;
		
		case 34:
			return 3;
			break;
		
		case 35:
			return 3;
			break;
		
		case 36:
			return 3;
			break;
		
		case 37:
			return 3;
			break;
		
		case 38:
			return 3;
			break;
		
		case 39:
			return 4;
			break;
		
		case 40:
			return 4;
			break;
		
		case 41:
			return 4;
			break;
		
		case 42:
			return 4;
			break;
		
		case 43:
			return 4;
			break;
		
		case 44:
			return 4;
			break;
		
		case 45:
			return 5;
			break;
	}
	return 6;
}

int func_714()//Position - 0x66FD6
{
	return Global_91538.f_304 > 0;
}

bool func_715(int iParam0, var uParam1)//Position - 0x66FE7
{
	int iVar0;
	int iVar1;
	
	if (!func_720(iParam0, uParam1))
	{
		return true;
	}
	iVar0 = 0;
	if (!entity::is_entity_dead(iParam0, 0))
	{
		iVar0 = graphics::_0xFE26117A5841B2FF(iParam0, 0);
	}
	if (iVar0 == 0)
	{
		if (!func_698(iParam0))
		{
			iVar1 = network::network_get_player_from_gamer_handle(uParam1);
			if (func_716(&iParam0, iVar1))
			{
			}
			else
			{
				return true;
			}
		}
		else
		{
			return true;
		}
	}
	else if (iVar0 >= 3)
	{
		return true;
	}
	else if (func_696(iParam0))
	{
	}
	return false;
}

bool func_716(int iParam0, int iParam1)//Position - 0x67064
{
	func_719();
	if (Global_1312462.f_18 != 0 || unk_0x8533CAFDE1F0F336(*iParam0))
	{
		Global_1760659.f_11 = vehicle::_get_vehicle_suspension_height(*iParam0);
		if (Global_1760659.f_11 < 0f)
		{
			Global_1760659.f_11 = 0f;
		}
	}
	func_718(*iParam0, &Global_1760659, &(Global_1760659.f_1), &(Global_1760659.f_4), &(Global_1760659.f_7), &(Global_1760659.f_10));
	Global_1760659.f_1.f_2 = (Global_1760659.f_1.f_2 - Global_1760659.f_11);
	if (Global_1760659.f_4.f_2 < 0f)
	{
		Global_1760659.f_12 = 1;
	}
	Global_1760659.f_13 = 200;
	if (entity::get_entity_model(*iParam0) == joaat("windsor"))
	{
		Global_1760659.f_13 = 255;
	}
	if (Global_1760659.f_12)
	{
		if (func_717(iParam0, iParam1, Global_1760659, Global_1760659.f_1, Global_1760659.f_4, Global_1760659.f_7, Global_1760659.f_10, 0, Global_1760659.f_13))
		{
			if (network::network_is_game_in_progress())
			{
				Global_1318082 = network::get_network_time();
			}
			else
			{
				Global_1318082 = gameplay::get_game_timer();
			}
			return true;
		}
	}
	else
	{
		Global_1760659.f_14 = { Global_1760659.f_1 };
		Global_1760659.f_14 = (Global_1760659.f_14 * -1f);
		Global_1760659.f_17 = { Global_1760659.f_4 };
		Global_1760659.f_17 = (Global_1760659.f_17 * -1f);
		Global_1760659.f_20 = { Global_1760659.f_7 };
		Global_1760659.f_20.f_1 = (Global_1760659.f_20.f_1 * -1f);
		Global_1760659.f_20.f_2 = (Global_1760659.f_20.f_2 * -1f);
		if (!graphics::_does_vehicle_have_decal(*iParam0, 0))
		{
			Global_1760659.f_23 = graphics::_0xFE26117A5841B2FF(*iParam0, 0);
		}
		else
		{
			Global_1760659.f_23 = 3;
		}
		Global_1760659.f_24 = graphics::_0xFE26117A5841B2FF(*iParam0, 1);
		if (!graphics::_does_vehicle_have_decal(*iParam0, 1))
		{
			Global_1760659.f_24 = graphics::_0xFE26117A5841B2FF(*iParam0, 1);
		}
		else
		{
			Global_1760659.f_24 = 3;
		}
		if (((Global_1760659.f_23 == 0 && func_717(iParam0, iParam1, Global_1760659, Global_1760659.f_1, Global_1760659.f_4, Global_1760659.f_7, Global_1760659.f_10, 0, Global_1760659.f_13)) || Global_1760659.f_23 != 0) && ((Global_1760659.f_24 == 0 && func_717(iParam0, iParam1, Global_1760659, Global_1760659.f_14, Global_1760659.f_17, Global_1760659.f_20, Global_1760659.f_10, 1, Global_1760659.f_13)) || Global_1760659.f_24 != 0))
		{
			if (network::network_is_game_in_progress())
			{
				Global_1318082 = network::get_network_time();
			}
			else
			{
				Global_1318082 = gameplay::get_game_timer();
			}
			return true;
		}
	}
	return false;
}

var func_717(var uParam0, int iParam1, var uParam2, vector3 vParam3, vector3 vParam6, vector3 vParam9, var uParam12, int iParam13, var uParam14)//Position - 0x672FB
{
	return graphics::_add_clan_decal_to_vehicle(*uParam0, player::get_player_ped(iParam1), uParam2, vParam3, vParam6, vParam9, uParam12, iParam13, uParam14);
}

bool func_718(int iParam0, var uParam1, var uParam2, var uParam3, var uParam4, var uParam5)//Position - 0x67324
{
	if (!entity::does_entity_exist(iParam0) || !vehicle::is_vehicle_driveable(iParam0, 0))
	{
		return false;
	}
	*uParam1 = entity::get_entity_bone_index_by_name(iParam0, "chassis_dummy");
	switch (entity::get_entity_model(iParam0))
	{
		case joaat("dominator"):
			*uParam1 = entity::get_entity_bone_index_by_name(iParam0, "chassis_dummy");
			*uParam2 = { 0f, 1.4f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("feltzer2"):
			*uParam1 = entity::get_entity_bone_index_by_name(iParam0, "chassis_dummy");
			*uParam2 = { 0f, 1.4f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("adder"):
			*uParam2 = { 0f, 1.54f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("akuma"):
			*uParam2 = { 0f, 0.06f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.18f;
			break;
		
		case joaat("asea"):
			*uParam2 = { 0f, 1.5f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("asterope"):
			*uParam2 = { 0f, 1.7f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("bagger"):
			*uParam2 = { -1f, 0.16f, 0.283f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.09f;
			break;
		
		case joaat("baller"):
			*uParam2 = { 0f, 1.4f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("baller2"):
			*uParam2 = { 0f, 1.55f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("banshee"):
			*uParam2 = { 0f, 0.94f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.4f;
			break;
		
		case joaat("bati"):
			*uParam2 = { 0f, 0.2f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.15f;
			break;
		
		case joaat("bati2"):
			*uParam2 = { 0f, 0.2f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.15f;
			break;
		
		case joaat("bfinjection"):
			*uParam2 = { -1f, 0.08f, 0.19f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("bison"):
			*uParam2 = { 0f, 1.99f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("bjxl"):
			*uParam2 = { 0f, 1.2f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.4f;
			break;
		
		case joaat("blista"):
			*uParam2 = { 0f, 1.49f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.29f;
			break;
		
		case joaat("bobcatxl"):
			*uParam2 = { 0f, 1.68f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.65f;
			break;
		
		case joaat("bodhi2"):
			*uParam2 = { 0f, 1.95f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("buccaneer"):
			*uParam2 = { 0f, 2.01f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.37f;
			break;
		
		case joaat("buffalo"):
			*uParam2 = { 0f, 1.6f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("buffalo2"):
			*uParam2 = { 0f, 2.24f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.2f;
			break;
		
		case joaat("bullet"):
			*uParam2 = { -1.57f, 0.07f, 0.16f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.3f;
			break;
		
		case joaat("carbonrs"):
			*uParam2 = { 0f, 0.09f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.18f;
			break;
		
		case joaat("carbonizzare"):
			*uParam2 = { 0f, 1.45f, 1f };
			*uParam3 = { 0f, -0.11f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("cavalcade"):
			*uParam2 = { 0f, 1.51f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.55f;
			break;
		
		case joaat("cavalcade2"):
			*uParam2 = { 0f, 1.59f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("cheetah"):
			*uParam2 = { -1.61f, 0.26f, 0.17f };
			*uParam3 = { 0.9f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.35f;
			break;
		
		case joaat("cogcabrio"):
			*uParam2 = { 0f, 1.42f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("comet2"):
			*uParam2 = { 0f, 1.35f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("coquette"):
			*uParam2 = { 0f, 0.96f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.22f;
			break;
		
		case joaat("daemon"):
			*uParam2 = { 0f, 0.06f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.15f;
			break;
		
		case joaat("dilettante"):
			*uParam2 = { 0f, 1.59f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("dloader"):
			*uParam2 = { 0f, 1.52f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("double"):
			*uParam2 = { 0f, 0.08f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.2f;
			break;
		
		case joaat("dubsta"):
			*uParam2 = { -1.71f, 0.31f, 0.27f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("dubsta2"):
			*uParam2 = { 0f, 1.4f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.75f;
			break;
		
		case joaat("elegy2"):
			*uParam2 = { 0f, 1.14f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.35f;
			break;
		
		case joaat("emperor"):
			*uParam2 = { 0f, 1.31f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("emperor2"):
			*uParam2 = { 0f, 1.31f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("entityxf"):
			*uParam2 = { -1.52f, 0.41f, 0.15f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.3f;
			break;
		
		case joaat("exemplar"):
			*uParam2 = { 0f, 1.32f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("f620"):
			*uParam2 = { 0f, 1.28f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.45f;
			break;
		
		case joaat("faggio2"):
			*uParam2 = { -1f, -0.48f, -0.11f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.15f;
			break;
		
		case joaat("felon"):
			*uParam2 = { 0f, 1.24f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.35f;
			break;
		
		case joaat("felon2"):
			*uParam2 = { 0f, 1.24f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.35f;
			break;
		
		case joaat("fq2"):
			*uParam2 = { 0f, 1.4f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("fugitive"):
			*uParam2 = { 0f, 1.62f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("fusilade"):
			*uParam2 = { 0f, 0.98f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.2f;
			break;
		
		case joaat("futo"):
			*uParam2 = { 0f, 1.28f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.45f;
			break;
		
		case joaat("gauntlet"):
			*uParam2 = { 0f, 1.735f, 1.05f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.33f;
			break;
		
		case joaat("granger"):
			*uParam2 = { 0f, 2.07f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("gresley"):
			*uParam2 = { 0f, 1.75f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("habanero"):
			*uParam2 = { 0f, 1.69f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("hexer"):
			*uParam2 = { 0f, -0.46f, 1f };
			*uParam3 = { 0f, 1f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.14f;
			break;
		
		case joaat("hotknife"):
			*uParam2 = { -1.43f, -0.14f, 0.18f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("infernus"):
			*uParam2 = { -1f, 0.33f, 0.08f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0.06f };
			*uParam5 = 0.25f;
			break;
		
		case joaat("ingot"):
			*uParam2 = { 0f, 1.58f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("intruder"):
			*uParam2 = { 0f, 1.623f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("issi2"):
			*uParam2 = { 0f, 1.21f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.3f;
			break;
		
		case joaat("jackal"):
			*uParam2 = { 0f, 1.36f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.4f;
			break;
		
		case joaat("jb700"):
			*uParam2 = { 0f, 1.2f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.37f;
			break;
		
		case joaat("khamelion"):
			*uParam2 = { 0f, 1.46f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.475f;
			break;
		
		case joaat("landstalker"):
			*uParam2 = { 0f, 1.83f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("manana"):
			*uParam2 = { 0f, 0.86f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.37f;
			break;
		
		case joaat("mesa"):
			*uParam2 = { 0f, 1.47f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("mesa3"):
			*uParam2 = { 0f, 1.47f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("minivan"):
			*uParam2 = { 0f, 1.95f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("monroe"):
			*uParam2 = { 0f, 1.23f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.43f;
			break;
		
		case joaat("nemesis"):
			*uParam2 = { 0f, 0.14f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.1f;
			break;
		
		case joaat("ninef"):
			*uParam2 = { 0f, 1.7f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("ninef2"):
			*uParam2 = { 0f, 1.7f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("oracle"):
			*uParam2 = { 0f, 1.6f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("oracle2"):
			*uParam2 = { 0f, 1.7f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("patriot"):
			*uParam2 = { 0f, 1.75f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("pcj"):
			*uParam2 = { 0f, 0.02f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.15f;
			break;
		
		case joaat("penumbra"):
			*uParam2 = { 0f, 1.46f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("peyote"):
			*uParam2 = { -1f, -0.36f, 0.2125f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("phoenix"):
			*uParam2 = { 0f, 1.833f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.44f;
			break;
		
		case joaat("picador"):
			*uParam2 = { 0f, 1.43f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.515f;
			break;
		
		case joaat("prairie"):
			*uParam2 = { 0f, 1.41f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.31f;
			break;
		
		case joaat("premier"):
			*uParam2 = { 0f, 1.6f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("primo"):
			*uParam2 = { 0f, 1.62f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("radi"):
			*uParam2 = { 0f, 1.74f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("rancherxl"):
			*uParam2 = { 0f, 1.54f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("rapidgt"):
			*uParam2 = { 0f, 1.263f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("rapidgt2"):
			*uParam2 = { 0f, 1.263f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("ratloader"):
			*uParam2 = { -1.78f, 0.52f, 0.52f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.45f;
			break;
		
		case joaat("rebel"):
			*uParam2 = { -1.22f, 0.6f, 0.44f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("rebel2"):
			*uParam2 = { 0f, 1.623f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("regina"):
			*uParam2 = { 0f, 1.473f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("rocoto"):
			*uParam2 = { 0f, 1.623f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("romero"):
			*uParam2 = { 0f, 1.83f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("ruffian"):
			*uParam2 = { 0f, -0.02f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.19f;
			break;
		
		case joaat("ruiner"):
			*uParam2 = { 0f, 1.34f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("sabregt"):
			*uParam2 = { -1f, 0f, 0.14f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0.015f };
			*uParam5 = 0.35f;
			break;
		
		case joaat("sadler"):
			*uParam2 = { 0f, 2.26f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("sandking"):
			*uParam2 = { 0f, 2.496f, 1.55f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("sandking2"):
			*uParam2 = { 0f, 2.286f, 1.55f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("schafter2"):
			*uParam2 = { 0f, 1.56f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.28f;
			break;
		
		case joaat("schwarzer"):
			*uParam2 = { 0f, 1.43f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.28f;
			break;
		
		case joaat("seminole"):
			*uParam2 = { 0f, 1.45f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("sentinel"):
			*uParam2 = { 0f, 1.52f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("sentinel2"):
			*uParam2 = { 0f, 1.52f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("serrano"):
			*uParam2 = { 0f, 1.68f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.49f;
			break;
		
		case joaat("stanier"):
			*uParam2 = { 0f, 1.55f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("stinger"):
			*uParam2 = { 0f, 1.3f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("stingergt"):
			*uParam2 = { -1f, -0.17f, 0.12f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.35f;
			break;
		
		case joaat("stratum"):
			*uParam2 = { 0f, 1.52f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("sultan"):
			*uParam2 = { 0f, 1.77f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.33f;
			break;
		
		case joaat("superd"):
			*uParam2 = { 0f, 1.62f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("surano"):
			*uParam2 = { 0f, 1.38f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("surfer"):
			*uParam2 = { 0f, 2.48f, 0.26f };
			*uParam3 = { 0f, -1f, -0.212f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.32f;
			break;
		
		case joaat("surfer2"):
			*uParam2 = { 0f, 2.48f, 0.26f };
			*uParam3 = { 0f, -1f, -0.212f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.32f;
			break;
		
		case joaat("surge"):
			*uParam2 = { 0f, 1.69f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("tailgater"):
			*uParam2 = { 0f, 1.783f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.4f;
			break;
		
		case joaat("tornado"):
			*uParam2 = { -1.23f, 0.11f, -0.21f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.4f;
			break;
		
		case joaat("tornado2"):
			*uParam2 = { 0f, 1.44f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("tornado3"):
			*uParam2 = { 0f, 1.44f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("vacca"):
			*uParam2 = { 0f, 1.76f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.35f;
			break;
		
		case joaat("vader"):
			*uParam2 = { 0f, 0.08f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.15f;
			break;
		
		case joaat("vigero"):
			*uParam2 = { -1f, 0.11f, -0.15f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.45f;
			break;
		
		case joaat("voltic"):
			*uParam2 = { 0f, 1.763f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.29f;
			break;
		
		case joaat("voodoo2"):
			*uParam2 = { 0f, 1.48f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("washington"):
			*uParam2 = { 0f, 1.61f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("youga"):
			*uParam2 = { 0f, 2.352f, 1.003f };
			*uParam3 = { 0f, -1f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.175f;
			break;
		
		case joaat("zion"):
			*uParam2 = { 0f, 1.48f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.45f;
			break;
		
		case joaat("zion2"):
			*uParam2 = { 0f, 1.48f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.45f;
			break;
		
		case joaat("ztype"):
			*uParam2 = { -0.96f, -0.69f, 0.35f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.4f;
			break;
		
		default:
			*uParam2 = { -1f, 0f, 0.295f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, 0f, -1f };
			*uParam5 = 0.5f;
			break;
	}
	switch (entity::get_entity_model(iParam0))
	{
		case joaat("kalahari"):
			*uParam2 = { -1f, 0.18f, 0.1f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("paradise"):
			*uParam2 = { 0f, 2.23f, 1f };
			*uParam3 = { 0f, -0.22f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("alpha"):
			*uParam2 = { -1f, 0.18f, -0.05f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("huntley"):
			*uParam2 = { 0f, 1.52f, 0.99f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.4f;
			break;
		
		case joaat("zentorno"):
			*uParam2 = { -1.24f, 0.42f, -0.14f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0.035f };
			*uParam5 = 0.3f;
			break;
		
		case joaat("jester"):
			*uParam2 = { -1f, 0.17f, 0.22f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0.05f };
			*uParam5 = 0.33f;
			break;
		
		case joaat("massacro"):
			*uParam2 = { 0f, 1.37f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.33f;
			break;
		
		case joaat("turismor"):
			*uParam2 = { -1f, 0.3f, 0.27f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.35f;
			break;
		
		case joaat("thrust"):
			*uParam2 = { -1f, 0.405f, 0.4625f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.1625f;
			break;
		
		case joaat("btype"):
			*uParam2 = { 0f, 1.143f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.7125f;
			break;
		
		case joaat("rhapsody"):
			*uParam2 = { -1f, -0.47f, -0.25f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.2625f;
			break;
		
		case joaat("glendale"):
			*uParam2 = { 0f, 1.683f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.775f;
			break;
		
		case joaat("warrener"):
			*uParam2 = { 0f, 1.623f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.775f;
			break;
		
		case joaat("blade"):
			*uParam2 = { -1f, 0.445f, 0.2075f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.325f;
			break;
		
		case joaat("panto"):
			*uParam2 = { -1f, 0f, 0.335f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("dubsta3"):
			*uParam2 = { -1f, 0.34f, 0.2975f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("pigalle"):
			*uParam2 = { 0f, 1.623f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("coquette2"):
			*uParam2 = { -1f, -0.1775f, 0.195f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.35f;
			break;
		
		case joaat("innovation"):
			*uParam2 = { 0f, 0.15f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.18f;
			break;
		
		case joaat("hakuchou"):
			*uParam2 = { 0f, 0.27f, 0.845f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.16f;
			break;
		
		case joaat("furoregt"):
			*uParam2 = { -1f, 0f, 0.2075f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.45f;
			break;
		
		case joaat("ratloader2"):
			*uParam2 = { -1.78f, 0.52f, 0.52f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.45f;
			break;
		
		case joaat("slamvan"):
			*uParam2 = { -1f, 0.275f, 0.195f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("dukes2"):
			*uParam2 = { -1f, 0f, 0f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.375f;
			break;
		
		case joaat("dukes"):
			*uParam2 = { -1f, 0f, 0.0375f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.3875f;
			break;
		
		case joaat("stalion"):
			*uParam2 = { -1f, 0f, 0.0925f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.4375f;
			break;
		
		case joaat("blista2"):
			*uParam2 = { -1f, 0.5325f, 0.245f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.2875f;
			break;
		
		case joaat("casco"):
			*uParam2 = { 0f, 0.94f, 1.03f };
			*uParam3 = { 0f, -0.03f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.3f;
			break;
		
		case joaat("enduro"):
			*uParam2 = { 0f, -0.17f, 1f };
			*uParam3 = { 0f, 0.34f, -0.786f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.15f;
			break;
		
		case joaat("gburrito2"):
			*uParam2 = { 0f, 2.32f, 0.94f };
			*uParam3 = { 0f, -0.182f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.4f;
			break;
		
		case joaat("guardian"):
			*uParam2 = { -1.94f, 1.07f, 0.38f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.35f;
			break;
		
		case joaat("kuruma"):
		case joaat("kuruma2"):
			*uParam2 = { -1f, 0.2475f, -0.175f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.435f;
			break;
		
		case joaat("lectro"):
			*uParam2 = { 0f, 0.3f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.09f;
			break;
		
		case joaat("feltzer3"):
			*uParam1 = entity::get_entity_bone_index_by_name(iParam0, "chassis_dummy");
			*uParam2 = { 0f, 1.4f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("osiris"):
			*uParam2 = { -1f, 0.27f, -0.03f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.3f;
			break;
		
		case joaat("virgo"):
			*uParam2 = { -1.05f, 0f, 0.075f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.45f;
			break;
		
		case joaat("windsor"):
			*uParam2 = { -1.2f, -0.39f, 0.12f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.55f;
			break;
		
		case joaat("brawler"):
			*uParam2 = { -1f, -0.21f, 0f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.45f;
			break;
		
		case joaat("chino"):
			*uParam2 = { -1.05f, 0f, 0.075f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.45f;
			break;
		
		case joaat("coquette3"):
			*uParam2 = { -1f, -0.1775f, 0.195f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.35f;
			break;
		
		case joaat("t20"):
			*uParam2 = { -1f, 0.4f, -0.12f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.2f;
			break;
		
		case joaat("vindicator"):
			*uParam2 = { -1f, 0.21f, 0.24f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.3f;
			break;
		
		case joaat("faction"):
			*uParam2 = { -1f, 0f, 0.15f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("faction2"):
			*uParam2 = { -1f, 0f, 0.15f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("buccaneer2"):
			*uParam2 = { 0f, 2.01f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.37f;
			break;
		
		case joaat("chino2"):
			*uParam2 = { -1.05f, 0f, 0.075f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.45f;
			break;
		
		case joaat("moonbeam"):
			*uParam2 = { 0f, 1.713f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("moonbeam2"):
			*uParam2 = { 0f, 1.713f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("primo2"):
			*uParam2 = { -1f, 0.42f, 0f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("voodoo"):
			*uParam2 = { -1.12f, 0f, 0f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("faction3"):
			*uParam2 = { -1f, 0f, 0.5f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("sabregt2"):
			*uParam2 = { -1f, 0f, 0.14f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0.015f };
			*uParam5 = 0.35f;
			break;
		
		case joaat("tornado5"):
			*uParam2 = { -1f, 0.15f, -0.09f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.45f;
			break;
		
		case joaat("virgo2"):
			*uParam2 = { -1f, 0f, 0.1225f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.375f;
			break;
		
		case joaat("virgo3"):
			*uParam2 = { -1f, 0f, 0.1225f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.375f;
			break;
		
		case joaat("minivan2"):
			*uParam2 = { 0f, 1.95f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("slamvan3"):
			*uParam2 = { -1f, 0.275f, 0.195f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("btype2"):
			*uParam2 = { -1f, -0.1f, 0.4f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("lurcher"):
			*uParam2 = { -1f, 0f, 0.3f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.45f;
			break;
		
		case joaat("baller3"):
			*uParam2 = { 0f, 1.4f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("baller4"):
			*uParam2 = { 0f, 1.4f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("baller5"):
			*uParam2 = { 0f, 1.4f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("baller6"):
			*uParam2 = { 0f, 1.4f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("cog55"):
			*uParam2 = { -1f, 0.37f, 0.13f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.45f;
			break;
		
		case joaat("cog552"):
			*uParam2 = { -1f, 0.37f, 0.13f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.45f;
			break;
		
		case joaat("cognoscenti"):
			*uParam2 = { -1f, 0.37f, 0.13f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.45f;
			break;
		
		case joaat("cognoscenti2"):
			*uParam2 = { -1f, 0.37f, 0.13f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.45f;
			break;
		
		case joaat("mamba"):
			*uParam2 = { -1f, -0.18f, 0.21f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.35f;
			break;
		
		case joaat("nightshade"):
			*uParam2 = { -1f, -0.2f, 0.17f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.45f;
			break;
		
		case joaat("schafter3"):
			*uParam2 = { 0f, 1.56f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.28f;
			break;
		
		case joaat("schafter4"):
			*uParam2 = { 0f, 1.56f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.28f;
			break;
		
		case joaat("schafter5"):
			*uParam2 = { 0f, 1.56f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.28f;
			break;
		
		case joaat("schafter6"):
			*uParam2 = { 0f, 1.56f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.28f;
			break;
		
		case joaat("verlierer2"):
			*uParam2 = { -1f, -0.21f, 0.03f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.4f;
			break;
		
		case joaat("tampa"):
			*uParam2 = { -1f, 0f, 0.12f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.45f;
			break;
		
		case joaat("banshee2"):
			*uParam2 = { -1f, -0.4f, 0.075f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.4f;
			break;
		
		case joaat("sultanrs"):
			*uParam2 = { 0f, 1.77f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.33f;
			break;
		
		case joaat("btype3"):
			*uParam2 = { -1f, -0.1f, 0.4f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("bestiagts"):
			*uParam2 = { -1f, -0.06f, 0.4f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.4f;
			break;
		
		case joaat("seven70"):
			*uParam2 = { -1f, -0.21f, 0.25f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.35f;
			break;
		
		case joaat("fmj"):
			*uParam2 = { -1f, -0.06f, 0.21f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.3f;
			break;
		
		case joaat("pfister811"):
			*uParam2 = { -1f, 0.06f, 0.25f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.45f;
			break;
		
		case joaat("prototipo"):
			*uParam2 = { -1f, 0.3f, 0.27f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.35f;
			break;
		
		case joaat("reaper"):
			*uParam2 = { -1f, 0.48f, 0f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.3f;
			break;
		
		case joaat("rumpo3"):
			*uParam2 = { 0f, 2.103f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("windsor2"):
			*uParam2 = { -1.2f, 0.03f, 0.24f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.55f;
			break;
		
		case joaat("xls"):
			*uParam2 = { -1f, 0.36f, -0.15f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.45f;
			break;
		
		case joaat("xls2"):
			*uParam2 = { -1f, 0.36f, -0.15f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.45f;
			break;
		
		case joaat("brioso"):
			*uParam2 = { -1f, -0.06f, 0.565f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.3f;
			break;
		
		case joaat("contender"):
			*uParam2 = { 0f, 2.33f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("le7b"):
			*uParam2 = { -1f, -0.12f, 0.235f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.3f;
			break;
		
		case joaat("omnis"):
			*uParam2 = { -1f, 0.03f, 0.18f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.45f;
			break;
		
		case joaat("tropos"):
			*uParam2 = { -1f, 0f, 0.24f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.35f;
			break;
		
		case joaat("avarus"):
			*uParam2 = { -1f, 0.27f, 0.25f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.1f;
			break;
		
		case joaat("daemon2"):
			*uParam2 = { -1f, 0.27f, 0.29f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.1f;
			break;
		
		case joaat("defiler"):
			*uParam2 = { -1f, 0f, 0.34f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.125f;
			break;
		
		case joaat("esskey"):
			*uParam2 = { -1f, 0.335f, 0.31f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.09f;
			break;
		
		case joaat("hakuchou2"):
			*uParam2 = { 0f, 0.27f, 0.845f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.15f;
			break;
		
		case joaat("nightblade"):
			*uParam2 = { 0f, -0.133f, 0.61f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.125f;
			break;
		
		case joaat("ratbike"):
			*uParam2 = { -1f, 0.31f, 0.24f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.1f;
			break;
		
		case joaat("shotaro"):
			*uParam2 = { -1f, 0.06f, 0.325f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.1f;
			break;
		
		case joaat("zombiea"):
			*uParam2 = { -1f, 0.3f, 0.25f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.1f;
			break;
		
		case joaat("zombieb"):
			*uParam2 = { -1f, 0.2f, 0.25f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.1f;
			break;
		
		case joaat("vortex"):
			*uParam2 = { -1f, 0.18f, 0.37f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.095f;
			break;
		
		case joaat("tornado6"):
			*uParam2 = { -1f, -0.03f, -0.24f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.3f;
			break;
		
		case joaat("youga2"):
			*uParam2 = { 0f, 2.352f, 0.253f };
			*uParam3 = { 0f, -1f, -0.256f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.175f;
			break;
		
		case joaat("wolfsbane"):
			*uParam2 = { -1f, 0.33f, 0.24f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.1f;
			break;
		
		case joaat("faggio3"):
			*uParam2 = { -1f, -0.54f, -0.11f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.15f;
			break;
		
		case joaat("faggio"):
			*uParam2 = { -0.9875f, -0.0175f, -0.01f };
			*uParam3 = { 0.8975f, -0.26f, -0.0725f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.1625f;
			break;
		
		case joaat("comet3"):
			*uParam2 = { -1f, 0f, 0.295f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.4f;
			break;
		
		case joaat("diablous"):
			*uParam2 = { -1f, 0.006f, 0.382f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.1f;
			break;
		
		case joaat("diablous2"):
			*uParam2 = { -1f, 0.225f, 0.541f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.1f;
			break;
		
		case joaat("elegy"):
			*uParam2 = { 0f, 1.14f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.35f;
			break;
		
		case joaat("fcr"):
			*uParam2 = { -1f, 0.234f, 0.376f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.1f;
			break;
		
		case joaat("fcr2"):
			*uParam2 = { -1f, 0.234f, 0.376f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.1f;
			break;
		
		case joaat("italigtb"):
			*uParam2 = { -1f, -0.024f, 0.187f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.25f;
			break;
		
		case joaat("italigtb2"):
			*uParam2 = { -1f, -0.024f, 0.187f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.25f;
			break;
		
		case joaat("nero"):
			*uParam2 = { -1f, 0.237f, 0.09f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.25f;
			break;
		
		case joaat("nero2"):
			*uParam2 = { -1f, 0.237f, 0.09f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.25f;
			break;
		
		case joaat("penetrator"):
			*uParam2 = { -1f, 0.153f, 0.295f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.35f;
			break;
		
		case joaat("ruiner2"):
			*uParam2 = { 0.363f, 1.34f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.4f;
			break;
		
		case joaat("ruiner3"):
			*uParam2 = { 0.363f, 1.34f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.4f;
			break;
		
		case joaat("specter"):
			*uParam2 = { -1f, -0.273f, -0.02f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.2f;
			break;
		
		case joaat("specter2"):
			*uParam2 = { -1f, -0.273f, 0.286f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.2f;
			break;
		
		case joaat("technical2"):
			*uParam2 = { 0f, 1.623f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.5f;
			break;
		
		case joaat("tempesta"):
			*uParam2 = { -1f, 0f, 0.253f };
			*uParam3 = { 1f, 0f, 0f };
			*uParam4 = { 0f, -1f, 0f };
			*uParam5 = 0.25f;
			break;
		
		case joaat("voltic2"):
			*uParam2 = { 0f, 1.763f, 1f };
			*uParam3 = { 0f, 0f, -1f };
			*uParam4 = { -1f, 0f, 0f };
			*uParam5 = 0.29f;
			break;
	}
	return true;
}

void func_719()//Position - 0x69FA7
{
	Global_1760659 = 0;
	Global_1760659.f_1 = { 0f, 0f, 0f };
	Global_1760659.f_4 = { 0f, 0f, 0f };
	Global_1760659.f_7 = { 0f, 0f, 0f };
	Global_1760659.f_10 = 0f;
	Global_1760659.f_11 = 0f;
	Global_1760659.f_12 = 0;
	Global_1760659.f_13 = 0;
	Global_1760659.f_14 = { 0f, 0f, 0f };
	Global_1760659.f_17 = { 0f, 0f, 0f };
	Global_1760659.f_20 = { 0f, 0f, 0f };
	Global_1760659.f_23 = 0;
	Global_1760659.f_24 = 0;
}

bool func_720(int iParam0, var uParam1)//Position - 0x6A020
{
	int iVar0;
	int iVar1;
	
	if (network::network_is_handle_valid(uParam1, 13) && network::network_is_gamer_in_my_session(uParam1))
	{
		iVar0 = network::network_get_player_from_gamer_handle(uParam1);
	}
	else
	{
		iVar0 = func_9();
	}
	iVar1 = false;
	if (iVar0 == player::player_id())
	{
		if (func_722(15, 0))
		{
			iVar1 = true;
		}
		else if (func_253(1))
		{
			iVar1 = true;
		}
	}
	else
	{
		iVar1 = true;
	}
	if (((((((!(entity::does_entity_exist(iParam0) && !entity::is_entity_dead(iParam0, 0)) || !network::network_has_control_of_entity(iParam0)) || !network::_0x595F028698072DD9(0, -1, 1)) || !((network::network_is_handle_valid(uParam1, 13) && network::_network_player_is_in_clan()) && network::network_clan_player_is_active(uParam1))) || iVar0 == func_9()) || !func_387(iVar0, 0, 0)) || !iVar1) || func_721(iParam0))
	{
		return false;
	}
	return true;
}

bool func_721(int iParam0)//Position - 0x6A107
{
	if (!network::network_is_game_in_progress())
	{
		return true;
	}
	switch (entity::get_entity_model(iParam0))
	{
		case joaat("sanchez"):
		case joaat("sanchez2"):
		case joaat("blazer"):
		case joaat("blazer3"):
		case joaat("surfer"):
		case joaat("surfer2"):
		case joaat("bifta"):
		case joaat("sovereign"):
		case joaat("hexer"):
		case joaat("dune"):
		case joaat("dune2"):
		case joaat("dune4"):
		case joaat("dune5"):
		case joaat("insurgent"):
		case joaat("insurgent2"):
		case joaat("blista3"):
		case joaat("stalion2"):
		case joaat("gauntlet2"):
		case joaat("dominator2"):
		case joaat("buffalo3"):
		case joaat("massacro2"):
		case joaat("jester2"):
		case joaat("omnis"):
		case joaat("bf400"):
		case joaat("tropos"):
		case joaat("brioso"):
		case joaat("trophytruck"):
		case joaat("trophytruck2"):
		case joaat("cliffhanger"):
		case joaat("tampa2"):
		case joaat("gargoyle"):
		case joaat("le7b"):
		case joaat("tyrus"):
		case joaat("lynx"):
		case joaat("sheava"):
		case joaat("chimera"):
		case joaat("sanctus"):
		case joaat("blazer4"):
		case joaat("manchez"):
		case joaat("raptor"):
		case joaat("blazer5"):
			return true;
			break;
		
		case joaat("youga"):
		case joaat("youga2"):
			if (vehicle::get_vehicle_mod(iParam0, 7) != -1)
			{
				return true;
			}
			break;
		
		case joaat("surano"):
			if (vehicle::get_vehicle_mod(iParam0, 5) == 1)
			{
				return true;
			}
			break;
	}
	return false;
}

int func_722(int iParam0, int iParam1)//Position - 0x6A25A
{
	int iVar0;
	int iVar1;
	
	if (iParam1)
	{
		if (iParam0 == 15)
		{
			return true;
		}
	}
	iVar0 = func_723(iParam0);
	iVar1 = iParam0;
	return gameplay::is_bit_set(iVar0, func_570(iVar1));
}

var func_723(int iParam0)//Position - 0x6A28A
{
	var uVar0;
	
	uVar0 = func_241(func_724(iParam0), -1, 0);
	return uVar0;
}

int func_724(var uParam0)//Position - 0x6A2A2
{
	int iVar0;
	int iVar1;
	
	iVar0 = uParam0;
	iVar1 = func_575(iVar0);
	switch (iVar1)
	{
		case 0:
			return 1285;
			break;
	}
	return 1285;
}

void func_725(int iParam0, var uParam1, int iParam2, int iParam3)//Position - 0x6A2CF
{
	int iVar0;
	int iVar1;
	int iVar2;
	
	if (vehicle::is_vehicle_driveable(iParam0, 0))
	{
		if (gameplay::get_hash_key(&(uParam1->f_1)) != 0)
		{
			vehicle::set_vehicle_number_plate_text(iParam0, &(uParam1->f_1));
		}
		if (*uParam1 >= 0 && *uParam1 < vehicle::get_number_of_vehicle_number_plates())
		{
			vehicle::set_vehicle_number_plate_text_index(iParam0, *uParam1);
		}
		if (uParam1->f_66 == joaat("sovereign"))
		{
			uParam1->f_5 = 111;
			uParam1->f_6 = 111;
			uParam1->f_7 = 111;
		}
		else if (uParam1->f_66 == joaat("casco"))
		{
			iVar0 = 1;
			if (gameplay::is_bit_set(uParam1->f_77, func_701(iVar0 + 1)))
			{
			}
			else
			{
				gameplay::set_bit(&(uParam1->f_77), func_701(iVar0 + 1));
			}
		}
		else if (uParam1->f_66 == joaat("sandking") || uParam1->f_66 == joaat("sandking2"))
		{
			iVar1 = 1;
			if (gameplay::is_bit_set(uParam1->f_77, func_701(iVar1 + 1)))
			{
			}
			else
			{
				gameplay::set_bit(&(uParam1->f_77), func_701(iVar1 + 1));
			}
		}
		if (gameplay::is_bit_set(uParam1->f_77, 13))
		{
			vehicle::set_vehicle_custom_primary_colour(iParam0, uParam1->f_71, uParam1->f_72, uParam1->f_73);
		}
		else
		{
			vehicle::clear_vehicle_custom_primary_colour(iParam0);
		}
		if (gameplay::is_bit_set(uParam1->f_77, 12))
		{
			vehicle::set_vehicle_custom_secondary_colour(iParam0, uParam1->f_71, uParam1->f_72, uParam1->f_73);
		}
		else
		{
			vehicle::clear_vehicle_custom_secondary_colour(iParam0);
		}
		vehicle::set_vehicle_colours(iParam0, uParam1->f_5, uParam1->f_6);
		if (uParam1->f_7 < 0)
		{
			uParam1->f_7 = 0;
		}
		if (uParam1->f_8 < 0)
		{
			uParam1->f_8 = 0;
		}
		vehicle::set_vehicle_extra_colours(iParam0, uParam1->f_7, uParam1->f_8);
		if (((gameplay::is_bit_set(uParam1->f_77, 15) || func_732(iParam0)) || (((uParam1->f_62 == 0 && uParam1->f_63 == 0) && uParam1->f_64 == 0) && uParam1->f_9[20] > 0)) && func_731())
		{
			uParam1->f_62 = 0;
			uParam1->f_63 = 0;
			uParam1->f_64 = 0;
		}
		else if ((uParam1->f_62 == 0 && uParam1->f_63 == 0) && uParam1->f_64 == 0)
		{
			uParam1->f_62 = 255;
			uParam1->f_63 = 255;
			uParam1->f_64 = 255;
		}
		vehicle::set_vehicle_tyre_smoke_color(iParam0, uParam1->f_62, uParam1->f_63, uParam1->f_64);
		if (uParam1->f_65 == -1 && uParam1->f_66 != joaat("granger"))
		{
			vehicle::set_vehicle_window_tint(iParam0, 0);
		}
		else
		{
			vehicle::set_vehicle_window_tint(iParam0, 0);
			vehicle::set_vehicle_window_tint(iParam0, uParam1->f_65);
		}
		vehicle::set_vehicle_tyres_can_burst(iParam0, !gameplay::is_bit_set(uParam1->f_77, 9));
		if (iParam2)
		{
			vehicle::set_vehicle_doors_locked(iParam0, uParam1->f_70);
		}
		vehicle::_set_vehicle_neon_lights_colour(iParam0, uParam1->f_74, uParam1->f_75, uParam1->f_76);
		vehicle::_set_vehicle_neon_light_enabled(iParam0, 2, gameplay::is_bit_set(uParam1->f_77, 28));
		vehicle::_set_vehicle_neon_light_enabled(iParam0, 3, gameplay::is_bit_set(uParam1->f_77, 29));
		vehicle::_set_vehicle_neon_light_enabled(iParam0, 0, gameplay::is_bit_set(uParam1->f_77, 30));
		vehicle::_set_vehicle_neon_light_enabled(iParam0, 1, gameplay::is_bit_set(uParam1->f_77, 31));
		vehicle::set_vehicle_is_stolen(iParam0, gameplay::is_bit_set(uParam1->f_77, 10));
		if (vehicle::get_vehicle_livery_count(iParam0) > 1 && uParam1->f_67 >= 0)
		{
			vehicle::set_vehicle_livery(iParam0, uParam1->f_67);
		}
		if (uParam1->f_69 > -1 && uParam1->f_69 < 255)
		{
			if (!vehicle::is_this_model_a_bicycle(entity::get_entity_model(iParam0)))
			{
				if (vehicle::is_this_model_a_bike(entity::get_entity_model(iParam0)))
				{
					if (uParam1->f_69 == 6)
					{
						func_730(iParam0, uParam1->f_69);
					}
				}
				else
				{
					func_730(iParam0, uParam1->f_69);
				}
			}
		}
		if (vehicle::is_vehicle_a_convertible(iParam0, 0))
		{
			if ((uParam1->f_68 == 0 || uParam1->f_68 == 3) || uParam1->f_68 == 5)
			{
				vehicle::raise_convertible_roof(iParam0, 1);
			}
			else
			{
				vehicle::lower_convertible_roof(iParam0, 1);
			}
		}
		if (iParam3)
		{
			func_726(&iParam0, &(uParam1->f_9), &(uParam1->f_59));
		}
		if (!vehicle::is_this_model_a_heli(uParam1->f_66) && !vehicle::is_this_model_a_boat(uParam1->f_66))
		{
			iVar2 = 0;
			while (iVar2 <= 11)
			{
				if (gameplay::is_bit_set(uParam1->f_77, func_701(iVar2 + 1)))
				{
					if (!vehicle::is_vehicle_extra_turned_on(iParam0, iVar2 + 1))
					{
						vehicle::set_vehicle_extra(iParam0, iVar2 + 1, false);
					}
				}
				else if (vehicle::is_vehicle_extra_turned_on(iParam0, iVar2 + 1))
				{
					vehicle::set_vehicle_extra(iParam0, iVar2 + 1, true);
				}
				iVar2++;
			}
		}
		if ((entity::get_entity_model(iParam0) == joaat("sheava") || entity::get_entity_model(iParam0) == joaat("omnis")) || entity::get_entity_model(iParam0) == joaat("le7b"))
		{
			if (vehicle::get_vehicle_mod(iParam0, 0) == -1)
			{
				vehicle::set_vehicle_extra(iParam0, 1, false);
			}
		}
		if (vehicle::is_this_model_a_plane(uParam1->f_66))
		{
			if (!gameplay::is_bit_set(uParam1->f_77, 23))
			{
				if (gameplay::is_bit_set(uParam1->f_77, 22))
				{
					vehicle::_set_vehicle_landing_gear(iParam0, 2);
				}
				else
				{
					vehicle::_set_vehicle_landing_gear(iParam0, 3);
				}
			}
			else
			{
				vehicle::_set_vehicle_landing_gear(iParam0, 4);
			}
		}
		if (gameplay::is_bit_set(uParam1->f_77, 27))
		{
			decorator::decor_set_bool(iParam0, "IgnoredByQuickSave", 1);
		}
		else
		{
			decorator::decor_set_bool(iParam0, "IgnoredByQuickSave", 0);
		}
	}
}

bool func_726(int iParam0, var uParam1, var uParam2)//Position - 0x6A77D
{
	int iVar0;
	int iVar1;
	
	if (!vehicle::is_vehicle_driveable(*iParam0, 0))
	{
		return false;
	}
	if (vehicle::get_num_mod_kits(*iParam0) == 0)
	{
		return false;
	}
	vehicle::set_vehicle_mod_kit(*iParam0, 0);
	iVar0 = 0;
	while (iVar0 < *uParam1)
	{
		iVar1 = iVar0;
		if (((((iVar1 == 17 || iVar1 == 18) || iVar1 == 19) || iVar1 == 20) || iVar1 == 21) || iVar1 == 22)
		{
			vehicle::toggle_vehicle_mod(*iParam0, iVar1, (*uParam1)[iVar0] > 0);
		}
		else if (vehicle::get_vehicle_mod(*iParam0, iVar1) != ((*uParam1)[iVar0] - 1))
		{
			vehicle::remove_vehicle_mod(*iParam0, iVar1);
			if ((*uParam1)[iVar0] > 0)
			{
				if (iVar0 == 23)
				{
					vehicle::set_vehicle_mod(*iParam0, iVar1, ((*uParam1)[iVar0] - 1), (*uParam2)[0] > 0);
				}
				else if (iVar0 == 24)
				{
					vehicle::set_vehicle_mod(*iParam0, iVar1, ((*uParam1)[iVar0] - 1), (*uParam2)[1] > 0);
				}
				else
				{
					vehicle::set_vehicle_mod(*iParam0, iVar1, ((*uParam1)[iVar0] - 1), false);
				}
			}
		}
		iVar0++;
	}
	if (func_729(entity::get_entity_model(*iParam0), 1) && vehicle::get_vehicle_mod(*iParam0, 24) != func_728(*iParam0, ((*uParam1)[38] - 1)))
	{
		vehicle::set_vehicle_mod(*iParam0, 24, func_728(*iParam0, ((*uParam1)[38] - 1)), false);
	}
	if (func_727(*iParam0))
	{
		vehicle::set_vehicle_strong(*iParam0, true);
		vehicle::set_vehicle_has_strong_axles(*iParam0, true);
	}
	return true;
}

bool func_727(int iParam0)//Position - 0x6A8F5
{
	int iVar0;
	int iVar1;
	int iVar2;
	char cVar3[16];
	
	if ((entity::does_entity_exist(iParam0) && vehicle::is_vehicle_driveable(iParam0, 0)) && vehicle::get_num_mod_kits(iParam0) > 0)
	{
		vehicle::set_vehicle_mod_kit(iParam0, 0);
		iVar0 = 0;
		while (iVar0 < 49)
		{
			iVar1 = iVar0;
			if (((((iVar1 == 17 || iVar1 == 18) || iVar1 == 19) || iVar1 == 20) || iVar1 == 21) || iVar1 == 22)
			{
			}
			else if (vehicle::get_vehicle_mod(iParam0, iVar1) != -1)
			{
				StringCopy(&cVar3, vehicle::get_mod_text_label(iParam0, iVar1, vehicle::get_vehicle_mod(iParam0, iVar1)), 16);
				iVar2 = gameplay::get_hash_key(&cVar3);
				if (iVar2 != 0)
				{
					if (iVar2 == gameplay::get_hash_key("MNU_CAGE") || iVar2 == gameplay::get_hash_key("SABRE_CAG"))
					{
						return true;
					}
				}
			}
			iVar0++;
		}
	}
	return false;
}

int func_728(int iParam0, int iParam1)//Position - 0x6A9D1
{
	int iVar0;
	int iVar1;
	float fVar2;
	int iVar3;
	
	if (entity::does_entity_exist(iParam0) && vehicle::is_vehicle_driveable(iParam0, 0))
	{
		switch (entity::get_entity_model(iParam0))
		{
			case joaat("tornado5"):
				switch (iParam1)
				{
					case 0:
						return 0;
						break;
					
					case 1:
						return 1;
						break;
					
					case 2:
						return 2;
						break;
					
					case 3:
						return 3;
						break;
					
					case 4:
						return 4;
						break;
					
					case 5:
						return 4;
						break;
				}
				break;
			
			case joaat("faction3"):
				return 3;
				break;
		}
		iVar0 = vehicle::get_num_vehicle_mods(iParam0, 38);
		iVar1 = vehicle::get_num_vehicle_mods(iParam0, 24);
		fVar2 = (system::to_float(iParam1 + 1) / system::to_float(iVar0));
		iVar3 = (system::floor((system::to_float(iVar1) * fVar2)) - 1);
		if (iVar3 < 0)
		{
			iVar3 = 0;
		}
		if (iVar3 >= iVar0)
		{
			iVar3 = (iVar0 - 1);
		}
		return iVar3;
	}
	return 0;
}

bool func_729(int iParam0, int iParam1)//Position - 0x6AAB6
{
	switch (iParam0)
	{
		case joaat("faction2"):
		case joaat("buccaneer2"):
		case joaat("chino2"):
		case joaat("moonbeam2"):
		case joaat("primo2"):
		case joaat("voodoo"):
			return true;
			break;
		
		case joaat("sabregt2"):
			if (!Global_262145.f_12218)
			{
				return false;
			}
			else
			{
				return true;
			}
			break;
		
		case joaat("tornado5"):
			if (!Global_262145.f_12219)
			{
				return false;
			}
			else
			{
				return true;
			}
			break;
		
		case joaat("virgo2"):
			if (!Global_262145.f_12217)
			{
				return false;
			}
			else
			{
				return true;
			}
			break;
		
		case joaat("minivan2"):
			if (!Global_262145.f_12220)
			{
				return false;
			}
			else
			{
				return true;
			}
			break;
		
		case joaat("slamvan3"):
			if (!Global_262145.f_12222)
			{
				return false;
			}
			else
			{
				return true;
			}
			break;
		
		case joaat("faction3"):
			if (!Global_262145.f_12221)
			{
				return false;
			}
			else
			{
				return true;
			}
			break;
		
		case joaat("sultanrs"):
		case joaat("banshee2"):
			if (iParam1 & 1 != 0)
			{
				return false;
			}
			return true;
			break;
		
		case joaat("comet3"):
			if (Global_262145.f_16659)
			{
				if (iParam1 & 1 != 0)
				{
					return false;
				}
				return true;
			}
			return false;
			break;
		
		case joaat("diablous2"):
			if (Global_262145.f_16661)
			{
				if (iParam1 & 1 != 0)
				{
					return false;
				}
				return true;
			}
			return false;
			break;
		
		case joaat("fcr2"):
			if (Global_262145.f_16665)
			{
				if (iParam1 & 1 != 0)
				{
					return false;
				}
				return true;
			}
			return false;
			break;
		
		case joaat("elegy"):
			if (Global_262145.f_16662)
			{
				if (iParam1 & 1 != 0)
				{
					return false;
				}
				return true;
			}
			return false;
			break;
		
		case joaat("nero2"):
			if (Global_262145.f_16669)
			{
				if (iParam1 & 1 != 0)
				{
					return false;
				}
				return true;
			}
			return false;
			break;
		
		case joaat("italigtb2"):
			if (Global_262145.f_16667)
			{
				if (iParam1 & 1 != 0)
				{
					return false;
				}
				return true;
			}
			return false;
			break;
		
		case joaat("specter2"):
			if (Global_262145.f_16672)
			{
				if (iParam1 & 1 != 0)
				{
					return false;
				}
				return true;
			}
			return false;
			break;
	}
	return false;
}

void func_730(int iParam0, int iParam1)//Position - 0x6ACDB
{
	int iVar0;
	int iVar1;
	
	if (vehicle::get_num_mod_kits(iParam0) > 0)
	{
		vehicle::set_vehicle_mod_kit(iParam0, 0);
		iVar0 = vehicle::get_vehicle_mod(iParam0, 24);
		iVar1 = vehicle::get_vehicle_mod_variation(iParam0, 24);
		vehicle::set_vehicle_wheel_type(iParam0, iParam1);
		if (entity::get_entity_model(iParam0) == joaat("tornado6"))
		{
			return;
		}
		if (iVar0 == -1)
		{
			vehicle::remove_vehicle_mod(iParam0, 24);
		}
		else
		{
			vehicle::set_vehicle_mod(iParam0, 24, iVar0, iVar1 == 1);
		}
	}
}

int func_731()//Position - 0x6AD40
{
	return dlc2::is_dlc_present(-1691188696);
}

int func_732(int iParam0)//Position - 0x6AD51
{
	int iVar0;
	
	if (entity::does_entity_exist(iParam0))
	{
		if (vehicle::is_vehicle_driveable(iParam0, 0))
		{
			if (decorator::decor_is_registered_as_type("MPBitset", 3))
			{
				if (decorator::decor_exist_on(iParam0, "MPBitset"))
				{
					iVar0 = decorator::decor_get_int(iParam0, "MPBitset");
				}
				return gameplay::is_bit_set(iVar0, 4);
			}
		}
	}
	return false;
}

int func_733()//Position - 0x6AD9C
{
	if (gameplay::get_hash_key(script::get_this_script_name()) == joaat("freemode"))
	{
		if (network::network_does_network_id_exist(Global_2421621[player::player_id() /*358*/].f_48) && network::network_does_entity_exist_with_network_id(Global_2421621[player::player_id() /*358*/].f_48))
		{
			return network::net_to_veh(Global_2421621[player::player_id() /*358*/].f_48);
		}
	}
	return Global_2494149.f_275;
}

bool func_734(vector3 vParam0, float fParam3, int iParam4, int iParam5, int iParam6, int iParam7, int iParam8)//Position - 0x6ADF9
{
	int iVar0;
	int iVar1;
	int iVar2;
	int iVar3;
	int iVar4;
	int iVar5;
	int iVar6;
	struct<25> Var7;
	struct<25> Var33;
	struct<25> Var59;
	int iVar85;
	int iVar86;
	
	if (!func_880(8))
	{
		func_879(0, 0, 0, 0, 0, 0, 0);
		func_878(8);
	}
	if (Global_1320588[iParam5 /*140*/].f_66 == 0)
	{
		return true;
	}
	if (gameplay::is_bit_set(Global_1320588[iParam5 /*140*/].f_101, 6))
	{
		if (!func_880(16))
		{
			func_878(16);
		}
	}
	func_878(31);
	if (!func_877())
	{
		if (!func_880(0))
		{
			if (!network::network_does_network_id_exist(func_875(0)))
			{
				if (network::can_register_mission_vehicles(1))
				{
					if (!func_874())
					{
						if (!func_872())
						{
							func_868(iParam5);
							iVar1 = Global_1320588[iParam5 /*140*/].f_66;
							if (!func_867(iVar1) || !func_295(iVar1, 1))
							{
								if (!func_298(iVar1))
								{
								}
								else
								{
									func_864(iParam5, -1);
								}
								return true;
							}
							else if (func_863(iVar1))
							{
								iVar3 = 0;
								if ((network::_get_posix_time() - Global_2433082.f_501.f_28) < 15)
								{
									iVar3 = 1;
								}
								if (func_862())
								{
									iVar3 = 1;
								}
								if (network::get_time_difference(network::_0x89023FBBF9200E9F(), Global_2404994.f_26.f_2) < 15000)
								{
									Global_2404994.f_26.f_2 = network::_0x89023FBBF9200E9F();
									iVar3 = 1;
								}
								if (iParam8)
								{
									iVar3 = 1;
								}
								if (Global_2443860.f_2842.f_147)
								{
									iVar4 = 0;
									iVar3 = 1;
								}
								else
								{
									iVar4 = 1;
								}
								iVar5 = true;
								if (func_861(player::player_id()) || (cam::is_screen_faded_out() || streaming::is_player_switch_in_progress()))
								{
									iVar5 = false;
								}
								if (Global_2443860.f_2842.f_147)
								{
									if (gameplay::is_bit_set(Global_1320588[iParam5 /*140*/].f_101, 11))
									{
										gameplay::clear_bit(&(Global_1320588[iParam5 /*140*/].f_101), 11);
									}
								}
								iVar6 = false;
								if (iParam7)
								{
									iVar6 = true;
								}
								else if (gameplay::is_bit_set(Global_1320588[iParam5 /*140*/].f_101, 11))
								{
									Var7.f_3 = 1125515264;
									Var7.f_4 = 1;
									Var7.f_5 = 1;
									Var7.f_7 = 1082130432;
									Var7.f_8 = 1;
									Var7.f_11 = 1;
									Var7.f_13 = 2;
									Var7.f_20 = 2;
									Var7.f_23 = 1;
									Var7.f_24 = 1;
									Var7.f_3 = 50f;
									Var7.f_4 = 0;
									Var7.f_5 = 0;
									Var7.f_8 = iVar4;
									Var7.f_9 = iVar3;
									Var7.f_10 = 1;
									Var7.f_11 = iVar5;
									Var7.f_12 = 1;
									Var7.f_23 = 0;
									iVar2 = 0;
									while (iVar2 < 2)
									{
										Var7.f_13[iVar2 /*3*/] = { Global_2433082.f_501.f_31[iVar2 /*3*/] };
										Var7.f_20[iVar2] = Global_2433082.f_501.f_38[iVar2];
										iVar2++;
									}
									if (func_788(-145.7451f, -1167.937f, 24.2819f, 0f, 0f, 0f, iVar1, 1, &vParam0, &fParam3, &Var7))
									{
										iVar6 = true;
									}
									else if (func_788(-234.9622f, -1171.113f, 21.8657f, 0f, 0f, 0f, iVar1, 1, &vParam0, &fParam3, &Var7))
									{
										iVar6 = true;
									}
								}
								else if (gameplay::is_bit_set(Global_1320588[iParam5 /*140*/].f_101, 6))
								{
									if (func_780(&vParam0, &fParam3))
									{
										iVar6 = true;
									}
								}
								else
								{
									if (iParam6)
									{
										if (interior::is_valid_interior(interior::get_interior_at_coords(vParam0)))
										{
											iParam6 = false;
										}
									}
									if (!iParam6)
									{
										Var33.f_3 = 1125515264;
										Var33.f_4 = 1;
										Var33.f_5 = 1;
										Var33.f_7 = 1082130432;
										Var33.f_8 = 1;
										Var33.f_11 = 1;
										Var33.f_13 = 2;
										Var33.f_20 = 2;
										Var33.f_23 = 1;
										Var33.f_24 = 1;
										Var33 = 10f;
										Var33.f_8 = iVar4;
										Var33.f_9 = iVar3;
										Var33.f_10 = 1;
										Var33.f_11 = iVar5;
										Var33.f_12 = 1;
										Var33.f_23 = 0;
										iVar2 = 0;
										while (iVar2 < 2)
										{
											Var33.f_13[iVar2 /*3*/] = { Global_2433082.f_501.f_31[iVar2 /*3*/] };
											Var33.f_20[iVar2] = Global_2433082.f_501.f_38[iVar2];
											iVar2++;
										}
										if (func_788(vParam0, 0f, 0f, 0f, iVar1, 1, &vParam0, &fParam3, &Var33))
										{
											iVar6 = true;
										}
									}
									else
									{
										Var59.f_3 = 1125515264;
										Var59.f_4 = 1;
										Var59.f_5 = 1;
										Var59.f_7 = 1082130432;
										Var59.f_8 = 1;
										Var59.f_11 = 1;
										Var59.f_13 = 2;
										Var59.f_20 = 2;
										Var59.f_23 = 1;
										Var59.f_24 = 1;
										Var59.f_2 = iParam6;
										Var59.f_8 = iVar4;
										Var59.f_9 = iVar3;
										Var59.f_10 = 1;
										Var59.f_11 = iVar5;
										Var59.f_12 = 1;
										Var59.f_23 = 0;
										iVar2 = 0;
										while (iVar2 < 2)
										{
											Var59.f_13[iVar2 /*3*/] = { Global_2433082.f_501.f_31[iVar2 /*3*/] };
											Var59.f_20[iVar2] = Global_2433082.f_501.f_38[iVar2];
											iVar2++;
										}
										if (func_788(vParam0, 0f, 0f, 0f, iVar1, 1, &vParam0, &fParam3, &Var59))
										{
											iVar6 = true;
										}
									}
								}
								if (iVar6)
								{
									gameplay::clear_area(vParam0, 2f, 1, 0, 0, false);
									func_685(&(Global_2421621[player::player_id() /*358*/].f_48), iVar1, vParam0, fParam3, 0, 1, 0, 0, 1, 1, 0);
									network::_set_network_id_sync_to_player(Global_2421621[player::player_id() /*358*/].f_48, player::player_id(), 1);
									iVar0 = network::net_to_veh(Global_2421621[player::player_id() /*358*/].f_48);
									entity::_0x3910051CCECDB00C(iVar0, true);
									vehicle::set_vehicle_on_ground_properly(iVar0, 1084227584);
									func_767(&iVar0, iParam5);
									func_765(iVar0, iParam5);
									if (!iVar5)
									{
										network::network_fade_in_entity(iVar0, 1, 1);
									}
									if (gameplay::is_bit_set(Global_1320588[iParam5 /*140*/].f_101, 11))
									{
										func_878(34);
									}
									else
									{
										func_764(34);
									}
									if (iParam5 >= 0 && iParam5 < 158)
									{
										gameplay::set_bit(&(Global_1320588[iParam5 /*140*/].f_101), 0);
										iVar86 = 0;
										while (iVar86 < 158)
										{
											iVar85 = false;
											if (iVar86 != iParam5)
											{
												if (gameplay::is_bit_set(Global_1320588[iVar86 /*140*/].f_101, 11))
												{
													gameplay::clear_bit(&(Global_1320588[iVar86 /*140*/].f_101), 11);
													iVar85 = true;
												}
												if (gameplay::is_bit_set(Global_1320588[iVar86 /*140*/].f_101, 0))
												{
													gameplay::clear_bit(&(Global_1320588[iVar86 /*140*/].f_101), 0);
													iVar85 = true;
												}
												if (gameplay::is_bit_set(Global_1320588[iVar86 /*140*/].f_101, 6))
												{
													func_753(iVar86);
													iVar85 = true;
												}
												if (iVar85)
												{
													func_741(iVar86, &(Global_1320588[iVar86 /*140*/]), 1, -1, 0, 0);
												}
											}
											iVar86++;
										}
									}
									if (vehicle::is_vehicle_a_convertible(iVar0, 0))
									{
										if (gameplay::is_bit_set(Global_2443860.f_5552, 2))
										{
											vehicle::lower_convertible_roof(iVar0, 1);
										}
									}
									func_741(iParam5, &(Global_1320588[iParam5 /*140*/]), 1, -1, 0, 0);
									func_736(iVar0);
									vehicle::set_vehicle_doors_locked(iVar0, 1);
									if (iParam4)
									{
										streaming::set_model_as_no_longer_needed(iVar1);
									}
									func_878(0);
									func_764(10);
									func_764(1);
									func_764(2);
									func_764(9);
									func_764(12);
									func_764(31);
									func_764(32);
									func_764(33);
									func_764(35);
									func_764(37);
									func_764(38);
									func_735();
									Global_2421621[player::player_id() /*358*/].f_121 = 0;
									return true;
								}
							}
						}
					}
				}
			}
		}
	}
	return false;
}

void func_735()//Position - 0x6B4BE
{
	int iVar0;
	
	iVar0 = 0;
	while (iVar0 < 2)
	{
		Global_2433082.f_501.f_31[iVar0 /*3*/] = { 0f, 0f, 0f };
		Global_2433082.f_501.f_38[iVar0] = 0f;
		iVar0++;
	}
}

void func_736(int iParam0)//Position - 0x6B4F8
{
	vehicle::_0xE851E480B814D4BA(iParam0, 0);
	vehicle::set_vehicle_can_be_used_by_fleeing_peds(iParam0, 0);
	vehicle::_0xAB04325045427AAE(iParam0, 0);
	vehicle::set_vehicle_is_stolen(iParam0, false);
	func_739(iParam0);
	if (gameplay::get_hash_key(script::get_this_script_name()) == func_738())
	{
		if (network::network_does_network_id_exist(func_875(0)))
		{
			if (iParam0 == func_733())
			{
				network::set_network_id_visible_in_cutscene(func_875(0), 0, 1);
			}
		}
	}
	if (!func_737(entity::get_entity_model(iParam0)))
	{
		Global_2494149.f_811 = func_881();
	}
}

bool func_737(int iParam0)//Position - 0x6B573
{
	switch (iParam0)
	{
		case joaat("voltic2"):
		case joaat("ruiner2"):
		case joaat("dune4"):
		case joaat("dune5"):
		case joaat("phantom2"):
		case joaat("technical2"):
		case joaat("boxville5"):
		case joaat("wastelander"):
		case joaat("blazer5"):
			return true;
		
		default:
	}
	return false;
}

int func_738()//Position - 0x6B5BD
{
	switch (func_574())
	{
		case 0:
			return joaat("freemode");
			break;
		
		case 2:
			return joaat("creator");
			break;
	}
	return 0;
}

void func_739(int iParam0)//Position - 0x6B5F1
{
	int iVar0;
	
	if (!func_740(iParam0))
	{
		if (entity::get_entity_model(iParam0) == joaat("ruiner2"))
		{
			unk_0x44CD1F493DB2A0A6(iParam0, 1, Global_262145.f_17139);
			unk_0x44CD1F493DB2A0A6(iParam0, 0, Global_262145.f_17140);
		}
		if (entity::get_entity_model(iParam0) == joaat("blazer5"))
		{
			unk_0x44CD1F493DB2A0A6(iParam0, 0, Global_262145.f_17141);
		}
		if (entity::get_entity_model(iParam0) == joaat("voltic2"))
		{
			unk_0xE00F2AB100B76E89(iParam0, Global_262145.f_17138);
		}
		if (entity::get_entity_model(iParam0) == joaat("boxville5"))
		{
			unk_0x28D034A93FE31BF5(iParam0, 0);
		}
		if (decorator::decor_is_registered_as_type("MPBitset", 3))
		{
			if (decorator::decor_exist_on(iParam0, "MPBitset"))
			{
				iVar0 = decorator::decor_get_int(iParam0, "MPBitset");
			}
			gameplay::set_bit(&iVar0, 24);
			decorator::decor_set_int(iParam0, "MPBitset", iVar0);
		}
	}
}

bool func_740(int iParam0)//Position - 0x6B6B6
{
	int iVar0;
	
	if (entity::does_entity_exist(iParam0))
	{
		if (vehicle::is_vehicle_driveable(iParam0, 0))
		{
			if (decorator::decor_is_registered_as_type("MPBitset", 3))
			{
				if (decorator::decor_exist_on(iParam0, "MPBitset"))
				{
					iVar0 = decorator::decor_get_int(iParam0, "MPBitset");
				}
				if (gameplay::is_bit_set(iVar0, 24))
				{
					return true;
				}
			}
		}
	}
	return false;
}

bool func_741(int iParam0, var uParam1, int iParam2, int iParam3, int iParam4, int iParam5)//Position - 0x6B706
{
	int iVar0;
	int iVar1;
	int iVar2;
	
	if (iParam2)
	{
		if (!iParam4)
		{
		}
		Global_2097152[func_752() /*10730*/].f_7546.f_1001 = network::_get_posix_time();
	}
	if (!iParam4)
	{
	}
	iVar1 = func_751(1411, iParam0);
	func_750(iVar1, uParam1->f_136, iParam3, 1);
	if (!iParam4)
	{
	}
	iVar1 = func_751(1412, iParam0);
	func_750(iVar1, uParam1->f_137, iParam3, 1);
	if (!iParam4)
	{
	}
	if (func_749(iParam0))
	{
	}
	else
	{
		iVar1 = func_751(1413, iParam0);
		func_750(iVar1, *uParam1, iParam3, 1);
		iVar0 = 0;
		while (iVar0 < 49)
		{
			if (iVar0 < 25)
			{
				iVar1 = (func_751(1414, iParam0) + iVar0);
				func_750(iVar1, uParam1->f_9[iVar0], iParam3, 1);
			}
			else
			{
				iVar1 = (func_748(iParam0) + (iVar0 - 25));
				func_750(iVar1, uParam1->f_9[iVar0], iParam3, 1);
			}
			iVar0++;
		}
		iVar0 = 0;
		iVar0 = 0;
		while (iVar0 < 2)
		{
			iVar1 = (func_751(1439, iParam0) + iVar0);
			func_750(iVar1, uParam1->f_59[iVar0], iParam3, 1);
			iVar0++;
		}
	}
	iVar1 = func_751(1441, iParam0);
	func_750(iVar1, uParam1->f_62, iParam3, 1);
	iVar1 = func_751(1442, iParam0);
	func_750(iVar1, uParam1->f_63, iParam3, 1);
	iVar1 = func_751(1443, iParam0);
	func_750(iVar1, uParam1->f_64, iParam3, 1);
	if (func_749(iParam0))
	{
		if (!iParam4)
		{
		}
	}
	else
	{
		iVar1 = func_751(1444, iParam0);
		func_750(iVar1, uParam1->f_65, iParam3, 1);
	}
	iVar1 = func_751(1445, iParam0);
	func_750(iVar1, uParam1->f_67, iParam3, 1);
	if (func_749(iParam0))
	{
		if (!iParam4)
		{
		}
	}
	else
	{
		iVar1 = func_751(1446, iParam0);
		func_750(iVar1, uParam1->f_68, iParam3, 1);
	}
	iVar1 = func_751(1447, iParam0);
	func_750(iVar1, uParam1->f_69, iParam3, 1);
	iVar1 = func_751(1448, iParam0);
	func_750(iVar1, uParam1->f_70, -1, 1);
	iVar1 = func_751(1449, iParam0);
	func_750(iVar1, uParam1->f_71, iParam3, 1);
	iVar1 = func_751(1450, iParam0);
	func_750(iVar1, uParam1->f_72, iParam3, 1);
	iVar1 = func_751(1451, iParam0);
	func_750(iVar1, uParam1->f_73, iParam3, 1);
	iVar1 = func_751(1452, iParam0);
	func_750(iVar1, uParam1->f_5, iParam3, 1);
	iVar1 = func_751(1453, iParam0);
	func_750(iVar1, uParam1->f_6, iParam3, 1);
	iVar1 = func_751(1454, iParam0);
	func_750(iVar1, uParam1->f_7, iParam3, 1);
	iVar1 = func_751(1455, iParam0);
	func_750(iVar1, uParam1->f_8, iParam3, 1);
	if (func_749(iParam0))
	{
		if (!iParam4)
		{
		}
	}
	else
	{
		iVar1 = func_751(3880, iParam0);
		func_750(iVar1, uParam1->f_74, iParam3, 1);
		iVar1 = func_751(3881, iParam0);
		func_750(iVar1, uParam1->f_75, iParam3, 1);
		iVar1 = func_751(3882, iParam0);
		func_750(iVar1, uParam1->f_76, iParam3, 1);
		iVar1 = func_747(iParam0);
		func_750(iVar1, uParam1->f_96, iParam3, 1);
		iVar1 = func_746(iParam0);
		func_750(iVar1, uParam1->f_98, iParam3, 1);
		iVar1 = func_744(iParam0);
		func_750(iVar1, uParam1->f_97, iParam3, 1);
	}
	iVar2 = Global_2097152[func_752() /*10730*/].f_7546.f_1001;
	if (iParam5)
	{
		iVar2 = network::_get_posix_time();
	}
	func_506(1623, iVar2, iParam3, 1, 0);
	if (!iParam4)
	{
	}
	func_506(func_743(1, iParam0), uParam1->f_101, iParam3, 1, 0);
	if (!iParam4)
	{
	}
	func_506(func_743(2, iParam0), uParam1->f_102, iParam3, 1, 0);
	if (!iParam4)
	{
	}
	func_506(func_743(3, iParam0), uParam1->f_103, iParam3, 1, 0);
	if (!iParam4)
	{
	}
	func_506(func_743(4, iParam0), uParam1->f_66, iParam3, 1, 0);
	func_506(func_743(5, iParam0), uParam1->f_77, iParam3, 1, 0);
	if (!iParam4)
	{
	}
	func_506(func_743(7, iParam0), uParam1->f_138, iParam3, 1, 0);
	if (!func_749(iParam0))
	{
		if (!gameplay::is_string_null_or_empty(&(uParam1->f_1)))
		{
			func_742(func_743(6, iParam0), &(uParam1->f_1), iParam3);
			if (!iParam4)
			{
			}
		}
		else if (!iParam4)
		{
		}
	}
	if (!iParam4)
	{
	}
	return true;
}

void func_742(var uParam0, var uParam1, int iParam2)//Position - 0x6BB59
{
	int iVar0;
	
	iVar0 = Global_2503773[uParam0 /*3*/][func_180(iParam2)];
	if (iVar0 != 0)
	{
		stats::stat_set_license_plate(iVar0, uParam1);
	}
}

int func_743(int iParam0, int iParam1)//Position - 0x6BB82
{
	switch (iParam0)
	{
		case 1:
			switch (iParam1)
			{
				case 0:
					return 1624;
				
				case 1:
					return 1631;
				
				case 2:
					return 1638;
				
				case 3:
					return 1645;
				
				case 4:
					return 1652;
				
				case 5:
					return 1659;
				
				case 6:
					return 1666;
				
				case 7:
					return 1673;
				
				case 8:
					return 1680;
				
				case 9:
					return 1687;
				
				case 10:
					return 1694;
				
				case 11:
					return 1700;
				
				case 12:
					return 1706;
				
				case 13:
					return 1712;
				
				case 14:
					return 1789;
				
				case 15:
					return 1796;
				
				case 16:
					return 1803;
				
				case 17:
					return 1810;
				
				case 18:
					return 1817;
				
				case 19:
					return 1824;
				
				case 20:
					return 1831;
				
				case 21:
					return 1838;
				
				case 22:
					return 1845;
				
				case 23:
					return 1852;
				
				case 24:
					return 1858;
				
				case 25:
					return 1864;
				
				case 26:
					return 2159;
				
				case 27:
					return 2166;
				
				case 28:
					return 2173;
				
				case 29:
					return 2180;
				
				case 30:
					return 2187;
				
				case 31:
					return 2194;
				
				case 32:
					return 2201;
				
				case 33:
					return 2208;
				
				case 34:
					return 2215;
				
				case 35:
					return 2222;
				
				case 36:
					return 2229;
				
				case 37:
					return 2235;
				
				case 38:
					return 2241;
				
				case 39:
					return 2810;
				
				case 40:
					return 2817;
				
				case 41:
					return 2824;
				
				case 42:
					return 2831;
				
				case 43:
					return 2838;
				
				case 44:
					return 2845;
				
				case 45:
					return 2852;
				
				case 46:
					return 2859;
				
				case 47:
					return 2866;
				
				case 48:
					return 2873;
				
				case 49:
					return 2880;
				
				case 50:
					return 2886;
				
				case 51:
					return 2892;
				
				case 52:
					return 2934;
				
				case 53:
					return 2941;
				
				case 54:
					return 2948;
				
				case 55:
					return 2955;
				
				case 56:
					return 2962;
				
				case 57:
					return 2969;
				
				case 58:
					return 2976;
				
				case 59:
					return 2983;
				
				case 60:
					return 2990;
				
				case 61:
					return 2997;
				
				case 62:
					return 3004;
				
				case 63:
					return 3010;
				
				case 64:
					return 3016;
				
				case 65:
					return 3217;
				
				case 66:
					return 3225;
				
				case 67:
					return 3233;
				
				case 68:
					return 3241;
				
				case 69:
					return 3249;
				
				case 70:
					return 3257;
				
				case 71:
					return 3265;
				
				case 72:
					return 3273;
				
				case 73:
					return 3281;
				
				case 74:
					return 3289;
				
				case 75:
					return 3297;
				
				case 76:
					return 3305;
				
				case 77:
					return 3313;
				
				case 78:
					return 3321;
				
				case 79:
					return 3329;
				
				case 80:
					return 3337;
				
				case 81:
					return 3345;
				
				case 82:
					return 3353;
				
				case 83:
					return 3361;
				
				case 84:
					return 3369;
				
				case 85:
					return 3377;
				
				case 86:
					return 3384;
				
				case 87:
					return 3391;
				
				default:
			}
			switch (iParam1)
			{
				case 88:
					return 4003;
				
				case 89:
					return 4011;
				
				case 90:
					return 4019;
				
				case 91:
					return 4027;
				
				case 92:
					return 4035;
				
				case 93:
					return 4043;
				
				case 94:
					return 4051;
				
				case 95:
					return 4059;
				
				case 96:
					return 4067;
				
				case 97:
					return 4075;
				
				case 98:
					return 4083;
				
				case 99:
					return 4091;
				
				case 100:
					return 4099;
				
				case 101:
					return 4107;
				
				case 102:
					return 4115;
				
				case 103:
					return 4123;
				
				case 104:
					return 4131;
				
				case 105:
					return 4139;
				
				case 106:
					return 4147;
				
				case 107:
					return 4155;
				
				case 108:
					return 4163;
				
				case 109:
					return 4171;
				
				case 110:
					return 4179;
				
				case 111:
					return 4187;
				
				case 112:
					return 4195;
				
				case 113:
					return 4203;
				
				case 114:
					return 4211;
				
				case 115:
					return 4219;
				
				case 116:
					return 4227;
				
				case 117:
					return 4235;
				
				case 118:
					return 4243;
				
				case 119:
					return 4251;
				
				case 120:
					return 4259;
				
				case 121:
					return 4267;
				
				case 122:
					return 4275;
				
				case 123:
					return 4283;
				
				case 124:
					return 4291;
				
				case 125:
					return 4299;
				
				case 126:
					return 4307;
				
				case 127:
					return 4315;
				
				case 128:
					return 4323;
				
				case 129:
					return 4331;
				
				case 130:
					return 4339;
				
				case 131:
					return 4347;
				
				case 132:
					return 4355;
				
				case 133:
					return 4363;
				
				case 134:
					return 4371;
				
				case 135:
					return 4379;
				
				case 136:
					return 4387;
				
				case 137:
					return 4395;
				
				case 138:
					return 4403;
				
				case 139:
					return 4411;
				
				case 140:
					return 4419;
				
				case 141:
					return 4427;
				
				case 142:
					return 4435;
				
				case 143:
					return 4443;
				
				case 144:
					return 4451;
				
				case 145:
					return 4459;
				
				case 146:
					return 4467;
				
				case 147:
					return 4475;
				
				case 148:
					return 4483;
				
				case 149:
					return 4491;
				
				case 150:
					return 4499;
				
				case 151:
					return 4507;
				
				case 152:
					return 4515;
				
				case 153:
					return 4523;
				
				case 154:
					return 4531;
				
				case 155:
					return 4539;
				
				case 156:
					return 4547;
				
				case 157:
					return 4555;
				
				default:
			}
			break;
		
		case 2:
			switch (iParam1)
			{
				case 0:
					return 1625;
				
				case 1:
					return 1632;
				
				case 2:
					return 1639;
				
				case 3:
					return 1646;
				
				case 4:
					return 1653;
				
				case 5:
					return 1660;
				
				case 6:
					return 1667;
				
				case 7:
					return 1674;
				
				case 8:
					return 1681;
				
				case 9:
					return 1688;
				
				case 10:
					return 1695;
				
				case 11:
					return 1701;
				
				case 12:
					return 1707;
				
				case 13:
					return 1713;
				
				case 14:
					return 1790;
				
				case 15:
					return 1797;
				
				case 16:
					return 1804;
				
				case 17:
					return 1811;
				
				case 18:
					return 1818;
				
				case 19:
					return 1825;
				
				case 20:
					return 1832;
				
				case 21:
					return 1839;
				
				case 22:
					return 1846;
				
				case 23:
					return 1853;
				
				case 24:
					return 1859;
				
				case 25:
					return 1865;
				
				case 26:
					return 2160;
				
				case 27:
					return 2167;
				
				case 28:
					return 2174;
				
				case 29:
					return 2181;
				
				case 30:
					return 2188;
				
				case 31:
					return 2195;
				
				case 32:
					return 2202;
				
				case 33:
					return 2209;
				
				case 34:
					return 2216;
				
				case 35:
					return 2223;
				
				case 36:
					return 2230;
				
				case 37:
					return 2236;
				
				case 38:
					return 2242;
				
				case 39:
					return 2811;
				
				case 40:
					return 2818;
				
				case 41:
					return 2825;
				
				case 42:
					return 2832;
				
				case 43:
					return 2839;
				
				case 44:
					return 2846;
				
				case 45:
					return 2853;
				
				case 46:
					return 2860;
				
				case 47:
					return 2867;
				
				case 48:
					return 2874;
				
				case 49:
					return 2881;
				
				case 50:
					return 2887;
				
				case 51:
					return 2893;
				
				case 52:
					return 2935;
				
				case 53:
					return 2942;
				
				case 54:
					return 2949;
				
				case 55:
					return 2956;
				
				case 56:
					return 2963;
				
				case 57:
					return 2970;
				
				case 58:
					return 2977;
				
				case 59:
					return 2984;
				
				case 60:
					return 2991;
				
				case 61:
					return 2998;
				
				case 62:
					return 3005;
				
				case 63:
					return 3011;
				
				case 64:
					return 3017;
				
				case 65:
					return 3218;
				
				case 66:
					return 3226;
				
				case 67:
					return 3234;
				
				case 68:
					return 3242;
				
				case 69:
					return 3250;
				
				case 70:
					return 3258;
				
				case 71:
					return 3266;
				
				case 72:
					return 3274;
				
				case 73:
					return 3282;
				
				case 74:
					return 3290;
				
				case 75:
					return 3298;
				
				case 76:
					return 3306;
				
				case 77:
					return 3314;
				
				case 78:
					return 3322;
				
				case 79:
					return 3330;
				
				case 80:
					return 3338;
				
				case 81:
					return 3346;
				
				case 82:
					return 3354;
				
				case 83:
					return 3362;
				
				case 84:
					return 3370;
				
				case 85:
					return 3378;
				
				case 86:
					return 3385;
				
				case 87:
					return 3392;
				
				default:
			}
			switch (iParam1)
			{
				case 88:
					return 4004;
				
				case 89:
					return 4012;
				
				case 90:
					return 4020;
				
				case 91:
					return 4028;
				
				case 92:
					return 4036;
				
				case 93:
					return 4044;
				
				case 94:
					return 4052;
				
				case 95:
					return 4060;
				
				case 96:
					return 4068;
				
				case 97:
					return 4076;
				
				case 98:
					return 4084;
				
				case 99:
					return 4092;
				
				case 100:
					return 4100;
				
				case 101:
					return 4108;
				
				case 102:
					return 4116;
				
				case 103:
					return 4124;
				
				case 104:
					return 4132;
				
				case 105:
					return 4140;
				
				case 106:
					return 4148;
				
				case 107:
					return 4156;
				
				case 108:
					return 4164;
				
				case 109:
					return 4172;
				
				case 110:
					return 4180;
				
				case 111:
					return 4188;
				
				case 112:
					return 4196;
				
				case 113:
					return 4204;
				
				case 114:
					return 4212;
				
				case 115:
					return 4220;
				
				case 116:
					return 4228;
				
				case 117:
					return 4236;
				
				case 118:
					return 4244;
				
				case 119:
					return 4252;
				
				case 120:
					return 4260;
				
				case 121:
					return 4268;
				
				case 122:
					return 4276;
				
				case 123:
					return 4284;
				
				case 124:
					return 4292;
				
				case 125:
					return 4300;
				
				case 126:
					return 4308;
				
				case 127:
					return 4316;
				
				case 128:
					return 4324;
				
				case 129:
					return 4332;
				
				case 130:
					return 4340;
				
				case 131:
					return 4348;
				
				case 132:
					return 4356;
				
				case 133:
					return 4364;
				
				case 134:
					return 4372;
				
				case 135:
					return 4380;
				
				case 136:
					return 4388;
				
				case 137:
					return 4396;
				
				case 138:
					return 4404;
				
				case 139:
					return 4412;
				
				case 140:
					return 4420;
				
				case 141:
					return 4428;
				
				case 142:
					return 4436;
				
				case 143:
					return 4444;
				
				case 144:
					return 4452;
				
				case 145:
					return 4460;
				
				case 146:
					return 4468;
				
				case 147:
					return 4476;
				
				case 148:
					return 4484;
				
				case 149:
					return 4492;
				
				case 150:
					return 4500;
				
				case 151:
					return 4508;
				
				case 152:
					return 4516;
				
				case 153:
					return 4524;
				
				case 154:
					return 4532;
				
				case 155:
					return 4540;
				
				case 156:
					return 4548;
				
				case 157:
					return 4556;
				
				default:
			}
			break;
		
		case 3:
			switch (iParam1)
			{
				case 0:
					return 1626;
				
				case 1:
					return 1633;
				
				case 2:
					return 1640;
				
				case 3:
					return 1647;
				
				case 4:
					return 1654;
				
				case 5:
					return 1661;
				
				case 6:
					return 1668;
				
				case 7:
					return 1675;
				
				case 8:
					return 1682;
				
				case 9:
					return 1689;
				
				case 10:
					return 1696;
				
				case 11:
					return 1702;
				
				case 12:
					return 1708;
				
				case 13:
					return 1714;
				
				case 14:
					return 1791;
				
				case 15:
					return 1798;
				
				case 16:
					return 1805;
				
				case 17:
					return 1812;
				
				case 18:
					return 1819;
				
				case 19:
					return 1826;
				
				case 20:
					return 1833;
				
				case 21:
					return 1840;
				
				case 22:
					return 1847;
				
				case 23:
					return 1854;
				
				case 24:
					return 1860;
				
				case 25:
					return 1866;
				
				case 26:
					return 2161;
				
				case 27:
					return 2168;
				
				case 28:
					return 2175;
				
				case 29:
					return 2182;
				
				case 30:
					return 2189;
				
				case 31:
					return 2196;
				
				case 32:
					return 2203;
				
				case 33:
					return 2210;
				
				case 34:
					return 2217;
				
				case 35:
					return 2224;
				
				case 36:
					return 2231;
				
				case 37:
					return 2237;
				
				case 38:
					return 2243;
				
				case 39:
					return 2812;
				
				case 40:
					return 2819;
				
				case 41:
					return 2826;
				
				case 42:
					return 2833;
				
				case 43:
					return 2840;
				
				case 44:
					return 2847;
				
				case 45:
					return 2854;
				
				case 46:
					return 2861;
				
				case 47:
					return 2868;
				
				case 48:
					return 2875;
				
				case 49:
					return 2882;
				
				case 50:
					return 2888;
				
				case 51:
					return 2894;
				
				case 52:
					return 2936;
				
				case 53:
					return 2943;
				
				case 54:
					return 2950;
				
				case 55:
					return 2957;
				
				case 56:
					return 2964;
				
				case 57:
					return 2971;
				
				case 58:
					return 2978;
				
				case 59:
					return 2985;
				
				case 60:
					return 2992;
				
				case 61:
					return 2999;
				
				case 62:
					return 3006;
				
				case 63:
					return 3012;
				
				case 64:
					return 3018;
				
				case 65:
					return 3219;
				
				case 66:
					return 3227;
				
				case 67:
					return 3235;
				
				case 68:
					return 3243;
				
				case 69:
					return 3251;
				
				case 70:
					return 3259;
				
				case 71:
					return 3267;
				
				case 72:
					return 3275;
				
				case 73:
					return 3283;
				
				case 74:
					return 3291;
				
				case 75:
					return 3299;
				
				case 76:
					return 3307;
				
				case 77:
					return 3315;
				
				case 78:
					return 3323;
				
				case 79:
					return 3331;
				
				case 80:
					return 3339;
				
				case 81:
					return 3347;
				
				case 82:
					return 3355;
				
				case 83:
					return 3363;
				
				case 84:
					return 3371;
				
				case 85:
					return 3379;
				
				case 86:
					return 3386;
				
				case 87:
					return 3393;
				
				default:
			}
			switch (iParam1)
			{
				case 88:
					return 4005;
				
				case 89:
					return 4013;
				
				case 90:
					return 4021;
				
				case 91:
					return 4029;
				
				case 92:
					return 4037;
				
				case 93:
					return 4045;
				
				case 94:
					return 4053;
				
				case 95:
					return 4061;
				
				case 96:
					return 4069;
				
				case 97:
					return 4077;
				
				case 98:
					return 4085;
				
				case 99:
					return 4093;
				
				case 100:
					return 4101;
				
				case 101:
					return 4109;
				
				case 102:
					return 4117;
				
				case 103:
					return 4125;
				
				case 104:
					return 4133;
				
				case 105:
					return 4141;
				
				case 106:
					return 4149;
				
				case 107:
					return 4157;
				
				case 108:
					return 4165;
				
				case 109:
					return 4173;
				
				case 110:
					return 4181;
				
				case 111:
					return 4189;
				
				case 112:
					return 4197;
				
				case 113:
					return 4205;
				
				case 114:
					return 4213;
				
				case 115:
					return 4221;
				
				case 116:
					return 4229;
				
				case 117:
					return 4237;
				
				case 118:
					return 4245;
				
				case 119:
					return 4253;
				
				case 120:
					return 4261;
				
				case 121:
					return 4269;
				
				case 122:
					return 4277;
				
				case 123:
					return 4285;
				
				case 124:
					return 4293;
				
				case 125:
					return 4301;
				
				case 126:
					return 4309;
				
				case 127:
					return 4317;
				
				case 128:
					return 4325;
				
				case 129:
					return 4333;
				
				case 130:
					return 4341;
				
				case 131:
					return 4349;
				
				case 132:
					return 4357;
				
				case 133:
					return 4365;
				
				case 134:
					return 4373;
				
				case 135:
					return 4381;
				
				case 136:
					return 4389;
				
				case 137:
					return 4397;
				
				case 138:
					return 4405;
				
				case 139:
					return 4413;
				
				case 140:
					return 4421;
				
				case 141:
					return 4429;
				
				case 142:
					return 4437;
				
				case 143:
					return 4445;
				
				case 144:
					return 4453;
				
				case 145:
					return 4461;
				
				case 146:
					return 4469;
				
				case 147:
					return 4477;
				
				case 148:
					return 4485;
				
				case 149:
					return 4493;
				
				case 150:
					return 4501;
				
				case 151:
					return 4509;
				
				case 152:
					return 4517;
				
				case 153:
					return 4525;
				
				case 154:
					return 4533;
				
				case 155:
					return 4541;
				
				case 156:
					return 4549;
				
				case 157:
					return 4557;
				
				default:
			}
			break;
		
		case 4:
			switch (iParam1)
			{
				case 0:
					return 1627;
				
				case 1:
					return 1634;
				
				case 2:
					return 1641;
				
				case 3:
					return 1648;
				
				case 4:
					return 1655;
				
				case 5:
					return 1662;
				
				case 6:
					return 1669;
				
				case 7:
					return 1676;
				
				case 8:
					return 1683;
				
				case 9:
					return 1690;
				
				case 10:
					return 1697;
				
				case 11:
					return 1703;
				
				case 12:
					return 1709;
				
				case 13:
					return 1715;
				
				case 14:
					return 1792;
				
				case 15:
					return 1799;
				
				case 16:
					return 1806;
				
				case 17:
					return 1813;
				
				case 18:
					return 1820;
				
				case 19:
					return 1827;
				
				case 20:
					return 1834;
				
				case 21:
					return 1841;
				
				case 22:
					return 1848;
				
				case 23:
					return 1855;
				
				case 24:
					return 1861;
				
				case 25:
					return 1867;
				
				case 26:
					return 2162;
				
				case 27:
					return 2169;
				
				case 28:
					return 2176;
				
				case 29:
					return 2183;
				
				case 30:
					return 2190;
				
				case 31:
					return 2197;
				
				case 32:
					return 2204;
				
				case 33:
					return 2211;
				
				case 34:
					return 2218;
				
				case 35:
					return 2225;
				
				case 36:
					return 2232;
				
				case 37:
					return 2238;
				
				case 38:
					return 2244;
				
				case 39:
					return 2813;
				
				case 40:
					return 2820;
				
				case 41:
					return 2827;
				
				case 42:
					return 2834;
				
				case 43:
					return 2841;
				
				case 44:
					return 2848;
				
				case 45:
					return 2855;
				
				case 46:
					return 2862;
				
				case 47:
					return 2869;
				
				case 48:
					return 2876;
				
				case 49:
					return 2883;
				
				case 50:
					return 2889;
				
				case 51:
					return 2895;
				
				case 52:
					return 2937;
				
				case 53:
					return 2944;
				
				case 54:
					return 2951;
				
				case 55:
					return 2958;
				
				case 56:
					return 2965;
				
				case 57:
					return 2972;
				
				case 58:
					return 2979;
				
				case 59:
					return 2986;
				
				case 60:
					return 2993;
				
				case 61:
					return 3000;
				
				case 62:
					return 3007;
				
				case 63:
					return 3013;
				
				case 64:
					return 3019;
				
				case 65:
					return 3220;
				
				case 66:
					return 3228;
				
				case 67:
					return 3236;
				
				case 68:
					return 3244;
				
				case 69:
					return 3252;
				
				case 70:
					return 3260;
				
				case 71:
					return 3268;
				
				case 72:
					return 3276;
				
				case 73:
					return 3284;
				
				case 74:
					return 3292;
				
				case 75:
					return 3300;
				
				case 76:
					return 3308;
				
				case 77:
					return 3316;
				
				case 78:
					return 3324;
				
				case 79:
					return 3332;
				
				case 80:
					return 3340;
				
				case 81:
					return 3348;
				
				case 82:
					return 3356;
				
				case 83:
					return 3364;
				
				case 84:
					return 3372;
				
				case 85:
					return 3380;
				
				case 86:
					return 3387;
				
				case 87:
					return 3394;
				
				default:
			}
			switch (iParam1)
			{
				case 88:
					return 4006;
				
				case 89:
					return 4014;
				
				case 90:
					return 4022;
				
				case 91:
					return 4030;
				
				case 92:
					return 4038;
				
				case 93:
					return 4046;
				
				case 94:
					return 4054;
				
				case 95:
					return 4062;
				
				case 96:
					return 4070;
				
				case 97:
					return 4078;
				
				case 98:
					return 4086;
				
				case 99:
					return 4094;
				
				case 100:
					return 4102;
				
				case 101:
					return 4110;
				
				case 102:
					return 4118;
				
				case 103:
					return 4126;
				
				case 104:
					return 4134;
				
				case 105:
					return 4142;
				
				case 106:
					return 4150;
				
				case 107:
					return 4158;
				
				case 108:
					return 4166;
				
				case 109:
					return 4174;
				
				case 110:
					return 4182;
				
				case 111:
					return 4190;
				
				case 112:
					return 4198;
				
				case 113:
					return 4206;
				
				case 114:
					return 4214;
				
				case 115:
					return 4222;
				
				case 116:
					return 4230;
				
				case 117:
					return 4238;
				
				case 118:
					return 4246;
				
				case 119:
					return 4254;
				
				case 120:
					return 4262;
				
				case 121:
					return 4270;
				
				case 122:
					return 4278;
				
				case 123:
					return 4286;
				
				case 124:
					return 4294;
				
				case 125:
					return 4302;
				
				case 126:
					return 4310;
				
				case 127:
					return 4318;
				
				case 128:
					return 4326;
				
				case 129:
					return 4334;
				
				case 130:
					return 4342;
				
				case 131:
					return 4350;
				
				case 132:
					return 4358;
				
				case 133:
					return 4366;
				
				case 134:
					return 4374;
				
				case 135:
					return 4382;
				
				case 136:
					return 4390;
				
				case 137:
					return 4398;
				
				case 138:
					return 4406;
				
				case 139:
					return 4414;
				
				case 140:
					return 4422;
				
				case 141:
					return 4430;
				
				case 142:
					return 4438;
				
				case 143:
					return 4446;
				
				case 144:
					return 4454;
				
				case 145:
					return 4462;
				
				case 146:
					return 4470;
				
				case 147:
					return 4478;
				
				case 148:
					return 4486;
				
				case 149:
					return 4494;
				
				case 150:
					return 4502;
				
				case 151:
					return 4510;
				
				case 152:
					return 4518;
				
				case 153:
					return 4526;
				
				case 154:
					return 4534;
				
				case 155:
					return 4542;
				
				case 156:
					return 4550;
				
				case 157:
					return 4558;
				
				default:
			}
			break;
		
		case 5:
			switch (iParam1)
			{
				case 0:
					return 1628;
				
				case 1:
					return 1635;
				
				case 2:
					return 1642;
				
				case 3:
					return 1649;
				
				case 4:
					return 1656;
				
				case 5:
					return 1663;
				
				case 6:
					return 1670;
				
				case 7:
					return 1677;
				
				case 8:
					return 1684;
				
				case 9:
					return 1691;
				
				case 10:
					return 1698;
				
				case 11:
					return 1704;
				
				case 12:
					return 1710;
				
				case 13:
					return 1716;
				
				case 14:
					return 1793;
				
				case 15:
					return 1800;
				
				case 16:
					return 1807;
				
				case 17:
					return 1814;
				
				case 18:
					return 1821;
				
				case 19:
					return 1828;
				
				case 20:
					return 1835;
				
				case 21:
					return 1842;
				
				case 22:
					return 1849;
				
				case 23:
					return 1856;
				
				case 24:
					return 1862;
				
				case 25:
					return 1868;
				
				case 26:
					return 2163;
				
				case 27:
					return 2170;
				
				case 28:
					return 2177;
				
				case 29:
					return 2184;
				
				case 30:
					return 2191;
				
				case 31:
					return 2198;
				
				case 32:
					return 2205;
				
				case 33:
					return 2212;
				
				case 34:
					return 2219;
				
				case 35:
					return 2226;
				
				case 36:
					return 2233;
				
				case 37:
					return 2239;
				
				case 38:
					return 2245;
				
				case 39:
					return 2814;
				
				case 40:
					return 2821;
				
				case 41:
					return 2828;
				
				case 42:
					return 2835;
				
				case 43:
					return 2842;
				
				case 44:
					return 2849;
				
				case 45:
					return 2856;
				
				case 46:
					return 2863;
				
				case 47:
					return 2870;
				
				case 48:
					return 2877;
				
				case 49:
					return 2884;
				
				case 50:
					return 2890;
				
				case 51:
					return 2896;
				
				case 52:
					return 2938;
				
				case 53:
					return 2945;
				
				case 54:
					return 2952;
				
				case 55:
					return 2959;
				
				case 56:
					return 2966;
				
				case 57:
					return 2973;
				
				case 58:
					return 2980;
				
				case 59:
					return 2987;
				
				case 60:
					return 2994;
				
				case 61:
					return 3001;
				
				case 62:
					return 3008;
				
				case 63:
					return 3014;
				
				case 64:
					return 3020;
				
				case 65:
					return 3221;
				
				case 66:
					return 3229;
				
				case 67:
					return 3237;
				
				case 68:
					return 3245;
				
				case 69:
					return 3253;
				
				case 70:
					return 3261;
				
				case 71:
					return 3269;
				
				case 72:
					return 3277;
				
				case 73:
					return 3285;
				
				case 74:
					return 3293;
				
				case 75:
					return 3301;
				
				case 76:
					return 3309;
				
				case 77:
					return 3317;
				
				case 78:
					return 3325;
				
				case 79:
					return 3333;
				
				case 80:
					return 3341;
				
				case 81:
					return 3349;
				
				case 82:
					return 3357;
				
				case 83:
					return 3365;
				
				case 84:
					return 3373;
				
				case 85:
					return 3381;
				
				case 86:
					return 3388;
				
				case 87:
					return 3395;
				
				default:
			}
			switch (iParam1)
			{
				case 88:
					return 4007;
				
				case 89:
					return 4015;
				
				case 90:
					return 4023;
				
				case 91:
					return 4031;
				
				case 92:
					return 4039;
				
				case 93:
					return 4047;
				
				case 94:
					return 4055;
				
				case 95:
					return 4063;
				
				case 96:
					return 4071;
				
				case 97:
					return 4079;
				
				case 98:
					return 4087;
				
				case 99:
					return 4095;
				
				case 100:
					return 4103;
				
				case 101:
					return 4111;
				
				case 102:
					return 4119;
				
				case 103:
					return 4127;
				
				case 104:
					return 4135;
				
				case 105:
					return 4143;
				
				case 106:
					return 4151;
				
				case 107:
					return 4159;
				
				case 108:
					return 4167;
				
				case 109:
					return 4175;
				
				case 110:
					return 4183;
				
				case 111:
					return 4191;
				
				case 112:
					return 4199;
				
				case 113:
					return 4207;
				
				case 114:
					return 4215;
				
				case 115:
					return 4223;
				
				case 116:
					return 4231;
				
				case 117:
					return 4239;
				
				case 118:
					return 4247;
				
				case 119:
					return 4255;
				
				case 120:
					return 4263;
				
				case 121:
					return 4271;
				
				case 122:
					return 4279;
				
				case 123:
					return 4287;
				
				case 124:
					return 4295;
				
				case 125:
					return 4303;
				
				case 126:
					return 4311;
				
				case 127:
					return 4319;
				
				case 128:
					return 4327;
				
				case 129:
					return 4335;
				
				case 130:
					return 4343;
				
				case 131:
					return 4351;
				
				case 132:
					return 4359;
				
				case 133:
					return 4367;
				
				case 134:
					return 4375;
				
				case 135:
					return 4383;
				
				case 136:
					return 4391;
				
				case 137:
					return 4399;
				
				case 138:
					return 4407;
				
				case 139:
					return 4415;
				
				case 140:
					return 4423;
				
				case 141:
					return 4431;
				
				case 142:
					return 4439;
				
				case 143:
					return 4447;
				
				case 144:
					return 4455;
				
				case 145:
					return 4463;
				
				case 146:
					return 4471;
				
				case 147:
					return 4479;
				
				case 148:
					return 4487;
				
				case 149:
					return 4495;
				
				case 150:
					return 4503;
				
				case 151:
					return 4511;
				
				case 152:
					return 4519;
				
				case 153:
					return 4527;
				
				case 154:
					return 4535;
				
				case 155:
					return 4543;
				
				case 156:
					return 4551;
				
				case 157:
					return 4559;
				
				default:
			}
			break;
		
		case 6:
			switch (iParam1)
			{
				case 0:
					return 1630;
				
				case 1:
					return 1637;
				
				case 2:
					return 1644;
				
				case 3:
					return 1651;
				
				case 4:
					return 1658;
				
				case 5:
					return 1665;
				
				case 6:
					return 1672;
				
				case 7:
					return 1679;
				
				case 8:
					return 1686;
				
				case 9:
					return 1693;
				
				case 13:
					return 1718;
				
				case 14:
					return 1795;
				
				case 15:
					return 1802;
				
				case 16:
					return 1809;
				
				case 17:
					return 1816;
				
				case 18:
					return 1823;
				
				case 19:
					return 1830;
				
				case 20:
					return 1837;
				
				case 21:
					return 1844;
				
				case 22:
					return 1851;
				
				case 26:
					return 2165;
				
				case 27:
					return 2172;
				
				case 28:
					return 2179;
				
				case 29:
					return 2186;
				
				case 30:
					return 2193;
				
				case 31:
					return 2200;
				
				case 32:
					return 2207;
				
				case 33:
					return 2214;
				
				case 34:
					return 2221;
				
				case 35:
					return 2228;
				
				case 39:
					return 2816;
				
				case 40:
					return 2823;
				
				case 41:
					return 2830;
				
				case 42:
					return 2837;
				
				case 43:
					return 2844;
				
				case 44:
					return 2851;
				
				case 45:
					return 2858;
				
				case 46:
					return 2865;
				
				case 47:
					return 2872;
				
				case 48:
					return 2879;
				
				case 52:
					return 2940;
				
				case 53:
					return 2947;
				
				case 54:
					return 2954;
				
				case 55:
					return 2961;
				
				case 56:
					return 2968;
				
				case 57:
					return 2975;
				
				case 58:
					return 2982;
				
				case 59:
					return 2989;
				
				case 60:
					return 2996;
				
				case 61:
					return 3003;
				
				case 65:
					return 3224;
				
				case 66:
					return 3232;
				
				case 67:
					return 3240;
				
				case 68:
					return 3248;
				
				case 69:
					return 3256;
				
				case 70:
					return 3264;
				
				case 71:
					return 3272;
				
				case 72:
					return 3280;
				
				case 73:
					return 3288;
				
				case 74:
					return 3296;
				
				case 75:
					return 3304;
				
				case 76:
					return 3312;
				
				case 77:
					return 3320;
				
				case 78:
					return 3328;
				
				case 79:
					return 3336;
				
				case 80:
					return 3344;
				
				case 81:
					return 3352;
				
				case 82:
					return 3360;
				
				case 83:
					return 3368;
				
				case 84:
					return 3376;
				
				default:
			}
			switch (iParam1)
			{
				case 88:
					return 4010;
				
				case 89:
					return 4018;
				
				case 90:
					return 4026;
				
				case 91:
					return 4034;
				
				case 92:
					return 4042;
				
				case 93:
					return 4050;
				
				case 94:
					return 4058;
				
				case 95:
					return 4066;
				
				case 96:
					return 4074;
				
				case 97:
					return 4082;
				
				case 98:
					return 4090;
				
				case 99:
					return 4098;
				
				case 100:
					return 4106;
				
				case 101:
					return 4114;
				
				case 102:
					return 4122;
				
				case 103:
					return 4130;
				
				case 104:
					return 4138;
				
				case 105:
					return 4146;
				
				case 106:
					return 4154;
				
				case 107:
					return 4162;
				
				case 108:
					return 4170;
				
				case 109:
					return 4178;
				
				case 110:
					return 4186;
				
				case 111:
					return 4194;
				
				case 112:
					return 4202;
				
				case 113:
					return 4210;
				
				case 114:
					return 4218;
				
				case 115:
					return 4226;
				
				case 116:
					return 4234;
				
				case 117:
					return 4242;
				
				case 118:
					return 4250;
				
				case 119:
					return 4258;
				
				case 120:
					return 4266;
				
				case 121:
					return 4274;
				
				case 122:
					return 4282;
				
				case 123:
					return 4290;
				
				case 124:
					return 4298;
				
				case 125:
					return 4306;
				
				case 126:
					return 4314;
				
				case 127:
					return 4322;
				
				case 128:
					return 4330;
				
				case 129:
					return 4338;
				
				case 130:
					return 4346;
				
				case 131:
					return 4354;
				
				case 132:
					return 4362;
				
				case 133:
					return 4370;
				
				case 134:
					return 4378;
				
				case 135:
					return 4386;
				
				case 136:
					return 4394;
				
				case 137:
					return 4402;
				
				case 138:
					return 4410;
				
				case 139:
					return 4418;
				
				case 140:
					return 4426;
				
				case 141:
					return 4434;
				
				case 142:
					return 4442;
				
				case 143:
					return 4450;
				
				case 144:
					return 4458;
				
				case 145:
					return 4466;
				
				case 146:
					return 4474;
				
				case 147:
					return 4482;
				
				case 148:
					return 4490;
				
				case 149:
					return 4498;
				
				case 150:
					return 4506;
				
				case 151:
					return 4514;
				
				case 152:
					return 4522;
				
				case 153:
					return 4530;
				
				case 154:
					return 4538;
				
				case 155:
					return 4546;
				
				case 156:
					return 4554;
				
				case 157:
					return 4562;
				
				default:
			}
			break;
		
		case 7:
			switch (iParam1)
			{
				case 0:
					return 1629;
				
				case 1:
					return 1636;
				
				case 2:
					return 1643;
				
				case 3:
					return 1650;
				
				case 4:
					return 1657;
				
				case 5:
					return 1664;
				
				case 6:
					return 1671;
				
				case 7:
					return 1678;
				
				case 8:
					return 1685;
				
				case 9:
					return 1692;
				
				case 10:
					return 1699;
				
				case 11:
					return 1705;
				
				case 12:
					return 1711;
				
				case 13:
					return 1717;
				
				case 14:
					return 1794;
				
				case 15:
					return 1801;
				
				case 16:
					return 1808;
				
				case 17:
					return 1815;
				
				case 18:
					return 1822;
				
				case 19:
					return 1829;
				
				case 20:
					return 1836;
				
				case 21:
					return 1843;
				
				case 22:
					return 1850;
				
				case 23:
					return 1857;
				
				case 24:
					return 1863;
				
				case 25:
					return 1869;
				
				case 26:
					return 2164;
				
				case 27:
					return 2171;
				
				case 28:
					return 2178;
				
				case 29:
					return 2185;
				
				case 30:
					return 2192;
				
				case 31:
					return 2199;
				
				case 32:
					return 2206;
				
				case 33:
					return 2213;
				
				case 34:
					return 2220;
				
				case 35:
					return 2227;
				
				case 36:
					return 2234;
				
				case 37:
					return 2240;
				
				case 38:
					return 2246;
				
				case 39:
					return 2815;
				
				case 40:
					return 2822;
				
				case 41:
					return 2829;
				
				case 42:
					return 2836;
				
				case 43:
					return 2843;
				
				case 44:
					return 2850;
				
				case 45:
					return 2857;
				
				case 46:
					return 2864;
				
				case 47:
					return 2871;
				
				case 48:
					return 2878;
				
				case 49:
					return 2885;
				
				case 50:
					return 2891;
				
				case 51:
					return 2897;
				
				case 52:
					return 2939;
				
				case 53:
					return 2946;
				
				case 54:
					return 2953;
				
				case 55:
					return 2960;
				
				case 56:
					return 2967;
				
				case 57:
					return 2974;
				
				case 58:
					return 2981;
				
				case 59:
					return 2988;
				
				case 60:
					return 2995;
				
				case 61:
					return 3002;
				
				case 62:
					return 3009;
				
				case 63:
					return 3015;
				
				case 64:
					return 3021;
				
				case 65:
					return 3222;
				
				case 66:
					return 3230;
				
				case 67:
					return 3238;
				
				case 68:
					return 3246;
				
				case 69:
					return 3254;
				
				case 70:
					return 3262;
				
				case 71:
					return 3270;
				
				case 72:
					return 3278;
				
				case 73:
					return 3286;
				
				case 74:
					return 3294;
				
				case 75:
					return 3302;
				
				case 76:
					return 3310;
				
				case 77:
					return 3319;
				
				case 78:
					return 3327;
				
				case 79:
					return 3334;
				
				case 80:
					return 3342;
				
				case 81:
					return 3350;
				
				case 82:
					return 3358;
				
				case 83:
					return 3366;
				
				case 84:
					return 3374;
				
				case 85:
					return 3382;
				
				case 86:
					return 3389;
				
				case 87:
					return 3396;
				
				default:
			}
			switch (iParam1)
			{
				case 88:
					return 4008;
				
				case 89:
					return 4016;
				
				case 90:
					return 4024;
				
				case 91:
					return 4032;
				
				case 92:
					return 4040;
				
				case 93:
					return 4048;
				
				case 94:
					return 4056;
				
				case 95:
					return 4064;
				
				case 96:
					return 4072;
				
				case 97:
					return 4080;
				
				case 98:
					return 4088;
				
				case 99:
					return 4096;
				
				case 100:
					return 4105;
				
				case 101:
					return 4113;
				
				case 102:
					return 4120;
				
				case 103:
					return 4128;
				
				case 104:
					return 4136;
				
				case 105:
					return 4144;
				
				case 106:
					return 4152;
				
				case 107:
					return 4160;
				
				case 108:
					return 4168;
				
				case 109:
					return 4176;
				
				case 110:
					return 4184;
				
				case 111:
					return 4192;
				
				case 112:
					return 4200;
				
				case 113:
					return 4208;
				
				case 114:
					return 4216;
				
				case 115:
					return 4224;
				
				case 116:
					return 4232;
				
				case 117:
					return 4240;
				
				case 118:
					return 4248;
				
				case 119:
					return 4256;
				
				case 120:
					return 4265;
				
				case 121:
					return 4273;
				
				case 122:
					return 4280;
				
				case 123:
					return 4288;
				
				case 124:
					return 4296;
				
				case 125:
					return 4304;
				
				case 126:
					return 4312;
				
				case 127:
					return 4320;
				
				case 128:
					return 4328;
				
				case 129:
					return 4336;
				
				case 130:
					return 4344;
				
				case 131:
					return 4352;
				
				case 132:
					return 4360;
				
				case 133:
					return 4368;
				
				case 134:
					return 4376;
				
				case 135:
					return 4384;
				
				case 136:
					return 4392;
				
				case 137:
					return 4400;
				
				case 138:
					return 4408;
				
				case 139:
					return 4416;
				
				case 140:
					return 4425;
				
				case 141:
					return 4433;
				
				case 142:
					return 4440;
				
				case 143:
					return 4448;
				
				case 144:
					return 4456;
				
				case 145:
					return 4464;
				
				case 146:
					return 4472;
				
				case 147:
					return 4480;
				
				case 148:
					return 4488;
				
				case 149:
					return 4496;
				
				case 150:
					return 4504;
				
				case 151:
					return 4512;
				
				case 152:
					return 4520;
				
				case 153:
					return 4528;
				
				case 154:
					return 4536;
				
				case 155:
					return 4544;
				
				case 156:
					return 4552;
				
				case 157:
					return 4560;
				
				default:
			}
			break;
		
		case 8:
			switch (iParam1)
			{
				case 0:
					return 5732;
				
				case 1:
					return 5733;
				
				case 2:
					return 5734;
				
				case 3:
					return 5735;
				
				case 4:
					return 5736;
				
				case 5:
					return 5737;
				
				case 6:
					return 5738;
				
				case 7:
					return 5739;
				
				case 8:
					return 5740;
				
				case 9:
					return 5741;
				
				case 10:
					return 5742;
				
				case 11:
					return 5743;
				
				case 12:
					return 5744;
				
				case 13:
					return 5745;
				
				case 14:
					return 5746;
				
				case 15:
					return 5747;
				
				case 16:
					return 5748;
				
				case 17:
					return 5749;
				
				case 18:
					return 5750;
				
				case 19:
					return 5751;
				
				case 20:
					return 5752;
				
				case 21:
					return 5753;
				
				case 22:
					return 5754;
				
				case 23:
					return 5755;
				
				case 24:
					return 5756;
				
				case 25:
					return 5757;
				
				case 26:
					return 2248;
				
				case 27:
					return 2249;
				
				case 28:
					return 2250;
				
				case 29:
					return 2251;
				
				case 30:
					return 2252;
				
				case 31:
					return 2253;
				
				case 32:
					return 2254;
				
				case 33:
					return 2255;
				
				case 34:
					return 2256;
				
				case 35:
					return 2257;
				
				case 36:
					return 2258;
				
				case 37:
					return 2259;
				
				case 38:
					return 2260;
				
				case 39:
					return 2898;
				
				case 40:
					return 2899;
				
				case 41:
					return 2900;
				
				case 42:
					return 2901;
				
				case 43:
					return 2902;
				
				case 44:
					return 2903;
				
				case 45:
					return 2904;
				
				case 46:
					return 2905;
				
				case 47:
					return 2906;
				
				case 48:
					return 2907;
				
				case 49:
					return 2908;
				
				case 50:
					return 2909;
				
				case 51:
					return 2910;
				
				case 52:
					return 3022;
				
				case 53:
					return 3023;
				
				case 54:
					return 3024;
				
				case 55:
					return 3025;
				
				case 56:
					return 3026;
				
				case 57:
					return 3027;
				
				case 58:
					return 3028;
				
				case 59:
					return 3029;
				
				case 60:
					return 3030;
				
				case 61:
					return 3031;
				
				case 62:
					return 3032;
				
				case 63:
					return 3033;
				
				case 64:
					return 3034;
				
				case 65:
					return 3223;
				
				case 66:
					return 3231;
				
				case 67:
					return 3239;
				
				case 68:
					return 3247;
				
				case 69:
					return 3255;
				
				case 70:
					return 3263;
				
				case 71:
					return 3271;
				
				case 72:
					return 3279;
				
				case 73:
					return 3287;
				
				case 74:
					return 3295;
				
				case 75:
					return 3303;
				
				case 76:
					return 3311;
				
				case 77:
					return 3318;
				
				case 78:
					return 3326;
				
				case 79:
					return 3335;
				
				case 80:
					return 3343;
				
				case 81:
					return 3351;
				
				case 82:
					return 3359;
				
				case 83:
					return 3367;
				
				case 84:
					return 3375;
				
				case 85:
					return 3383;
				
				case 86:
					return 3390;
				
				case 87:
					return 3397;
				
				default:
			}
			switch (iParam1)
			{
				case 88:
					return 4009;
				
				case 89:
					return 4017;
				
				case 90:
					return 4025;
				
				case 91:
					return 4033;
				
				case 92:
					return 4041;
				
				case 93:
					return 4049;
				
				case 94:
					return 4057;
				
				case 95:
					return 4065;
				
				case 96:
					return 4073;
				
				case 97:
					return 4081;
				
				case 98:
					return 4089;
				
				case 99:
					return 4097;
				
				case 100:
					return 4104;
				
				case 101:
					return 4112;
				
				case 102:
					return 4121;
				
				case 103:
					return 4129;
				
				case 104:
					return 4137;
				
				case 105:
					return 4145;
				
				case 106:
					return 4153;
				
				case 107:
					return 4161;
				
				case 108:
					return 4169;
				
				case 109:
					return 4177;
				
				case 110:
					return 4185;
				
				case 111:
					return 4193;
				
				case 112:
					return 4201;
				
				case 113:
					return 4209;
				
				case 114:
					return 4217;
				
				case 115:
					return 4225;
				
				case 116:
					return 4233;
				
				case 117:
					return 4241;
				
				case 118:
					return 4249;
				
				case 119:
					return 4257;
				
				case 120:
					return 4264;
				
				case 121:
					return 4272;
				
				case 122:
					return 4281;
				
				case 123:
					return 4289;
				
				case 124:
					return 4297;
				
				case 125:
					return 4305;
				
				case 126:
					return 4313;
				
				case 127:
					return 4321;
				
				case 128:
					return 4329;
				
				case 129:
					return 4337;
				
				case 130:
					return 4345;
				
				case 131:
					return 4353;
				
				case 132:
					return 4361;
				
				case 133:
					return 4369;
				
				case 134:
					return 4377;
				
				case 135:
					return 4385;
				
				case 136:
					return 4393;
				
				case 137:
					return 4401;
				
				case 138:
					return 4409;
				
				case 139:
					return 4417;
				
				case 140:
					return 4424;
				
				case 141:
					return 4432;
				
				case 142:
					return 4441;
				
				case 143:
					return 4449;
				
				case 144:
					return 4457;
				
				case 145:
					return 4465;
				
				case 146:
					return 4473;
				
				case 147:
					return 4481;
				
				case 148:
					return 4489;
				
				case 149:
					return 4497;
				
				case 150:
					return 4505;
				
				case 151:
					return 4513;
				
				case 152:
					return 4521;
				
				case 153:
					return 4529;
				
				case 154:
					return 4537;
				
				case 155:
					return 4545;
				
				case 156:
					return 4553;
				
				case 157:
					return 4561;
				
				default:
			}
			break;
	}
	return 1624;
}

int func_744(int iParam0)//Position - 0x6F6CD
{
	if (iParam0 < 10)
	{
		return (7263 + iParam0);
	}
	else if (iParam0 > 12 && iParam0 < 23)
	{
		return (7263 + (iParam0 - 3));
	}
	else if (iParam0 > 25 && iParam0 < 36)
	{
		return (7263 + (iParam0 - 6));
	}
	else if (iParam0 > 38 && iParam0 < 49)
	{
		return (7263 + (iParam0 - 9));
	}
	else if (iParam0 > 51 && iParam0 < 62)
	{
		return ((7263 + iParam0) - 12);
	}
	else if (iParam0 > 64 && iParam0 < 85)
	{
		return ((9330 + iParam0) - 65);
	}
	else if (iParam0 < func_745(11))
	{
		return ((15154 + iParam0) - 88);
	}
	return 0;
}

int func_745(int iParam0)//Position - 0x6F7A3
{
	switch (iParam0)
	{
		case 8:
			return 108;
			break;
		
		case 9:
			return 128;
			break;
		
		case 10:
			return 148;
			break;
		
		case 11:
			return 158;
			break;
		
		case 6:
			return 75;
			break;
		
		case 7:
			return 88;
			break;
		
		case 5:
			return -1;
			break;
	}
	return (func_306(iParam0, -1) * iParam0 + 1);
}

int func_746(int iParam0)//Position - 0x6F81F
{
	if (iParam0 < 10)
	{
		return (5975 + iParam0);
	}
	else if (iParam0 > 12 && iParam0 < 23)
	{
		return (5975 + (iParam0 - 3));
	}
	else if (iParam0 > 25 && iParam0 < 36)
	{
		return (5975 + (iParam0 - 6));
	}
	else if (iParam0 > 38 && iParam0 < 49)
	{
		return (5975 + (iParam0 - 9));
	}
	else if (iParam0 > 51 && iParam0 < 62)
	{
		return ((7242 + iParam0) - 52);
	}
	else if (iParam0 > 64 && iParam0 < 85)
	{
		return ((9290 + iParam0) - 65);
	}
	else if (iParam0 < func_745(11))
	{
		return ((15014 + iParam0) - 88);
	}
	return 0;
}

int func_747(int iParam0)//Position - 0x6F8F5
{
	if (iParam0 < 10)
	{
		return (5935 + iParam0);
	}
	else if (iParam0 > 12 && iParam0 < 23)
	{
		return (5935 + (iParam0 - 3));
	}
	else if (iParam0 > 25 && iParam0 < 36)
	{
		return (5935 + (iParam0 - 6));
	}
	else if (iParam0 > 38 && iParam0 < 49)
	{
		return (5935 + (iParam0 - 9));
	}
	else if (iParam0 > 51 && iParam0 < 62)
	{
		return ((7232 + iParam0) - 52);
	}
	else if (iParam0 > 64 && iParam0 < 85)
	{
		return ((9270 + iParam0) - 65);
	}
	else if (iParam0 < func_745(11))
	{
		return ((14944 + iParam0) - 88);
	}
	return 0;
}

int func_748(int iParam0)//Position - 0x6F9CB
{
	int iVar0;
	
	iVar0 = (4424 - 4400);
	if (iParam0 < 10)
	{
		return (4400 + (iParam0 * iVar0));
	}
	else if (iParam0 > 12 && iParam0 < 23)
	{
		return (4640 + ((iParam0 - 13) * iVar0));
	}
	else if (iParam0 > 25 && iParam0 < 36)
	{
		return (4880 + ((iParam0 - 26) * iVar0));
	}
	else if (iParam0 > 38 && iParam0 < 49)
	{
		return (5120 + ((iParam0 - 39) * iVar0));
	}
	else if (iParam0 > 51 && iParam0 < 62)
	{
		return (6414 + ((iParam0 - 52) * iVar0));
	}
	else if (iParam0 > 64 && iParam0 < 85)
	{
		return (7682 + ((iParam0 - 65) * iVar0));
	}
	else if (iParam0 < func_745(11))
	{
		return (9554 + ((iParam0 - 88) * iVar0));
	}
	return 0;
}

bool func_749(int iParam0)//Position - 0x6FAC1
{
	switch (iParam0)
	{
		case 10:
		case 11:
		case 12:
		case 23:
		case 24:
		case 25:
		case 36:
		case 37:
		case 38:
		case 49:
		case 50:
		case 51:
		case 62:
		case 63:
		case 64:
		case 85:
		case 86:
		case 87:
			return true;
			break;
	}
	return false;
}

var func_750(int iParam0, int iParam1, int iParam2, int iParam3)//Position - 0x6FB44
{
	int iVar0;
	int iVar1;
	var uVar2;
	
	if (iParam2 == -1)
	{
		iParam2 = func_126();
	}
	if (iParam1 < 0)
	{
		iParam1 = 255;
	}
	iVar0 = 0;
	iVar1 = 0;
	if (iParam0 >= 384 && iParam0 < 457)
	{
		iVar0 = stats::_0x61E111E323419E07((iParam0 - 384), 0, 1, iParam2);
		iVar1 = ((iParam0 - 384) - stats::_0x94F12ABF9C79E339((iParam0 - 384)) * 8) * 8;
	}
	else if (iParam0 >= 457 && iParam0 < 513)
	{
		iVar0 = stats::_0x61E111E323419E07((iParam0 - 457), 1, 1, iParam2);
		iVar1 = ((iParam0 - 457) - stats::_0x94F12ABF9C79E339((iParam0 - 457)) * 8) * 8;
	}
	else if (iParam0 >= 1281 && iParam0 < 1305)
	{
		iVar0 = stats::_0x61E111E323419E07((iParam0 - 1281), 0, 0, 0);
		iVar1 = ((iParam0 - 1281) - stats::_0x94F12ABF9C79E339((iParam0 - 1281)) * 8) * 8;
	}
	else if (iParam0 >= 1305 && iParam0 < 1361)
	{
		iVar0 = stats::_0x61E111E323419E07((iParam0 - 1305), 1, 0, 0);
		iVar1 = ((iParam0 - 1305) - stats::_0x94F12ABF9C79E339((iParam0 - 1305)) * 8) * 8;
	}
	else if (iParam0 >= 1393 && iParam0 < 2919)
	{
		iVar0 = stats::_0xD16C2AD6B8E32854((iParam0 - 1393), 0, 1, iParam2);
		iVar1 = ((iParam0 - 1393) - stats::_0x94F12ABF9C79E339((iParam0 - 1393)) * 8) * 8;
	}
	else if (iParam0 >= 1361 && iParam0 < 1393)
	{
		iVar0 = stats::_0xD16C2AD6B8E32854((iParam0 - 1361), 0, 0, 0);
		iVar1 = ((iParam0 - 1361) - stats::_0x94F12ABF9C79E339((iParam0 - 1361)) * 8) * 8;
	}
	else if (iParam0 >= 3879 && iParam0 < 4143)
	{
		iVar0 = stats::_0x2B4CDCA6F07FF3DA((iParam0 - 3879), 0, 1, iParam2, "_NGPSTAT_INT");
		iVar1 = ((iParam0 - 3879) - stats::_0x94F12ABF9C79E339((iParam0 - 3879)) * 8) * 8;
	}
	else if (iParam0 >= 4143 && iParam0 < 4207)
	{
		iVar0 = stats::_0x2B4CDCA6F07FF3DA((iParam0 - 4143), 0, 0, 0, "_NGPSTAT_INT");
		iVar1 = ((iParam0 - 4143) - stats::_0x94F12ABF9C79E339((iParam0 - 4143)) * 8) * 8;
	}
	else if (iParam0 >= 4399 && iParam0 < 6028)
	{
		iVar0 = stats::_0x2B4CDCA6F07FF3DA((iParam0 - 4399), 0, 1, iParam2, "_LRPSTAT_INT");
		iVar1 = ((iParam0 - 4399) - stats::_0x94F12ABF9C79E339((iParam0 - 4399)) * 8) * 8;
	}
	else if (iParam0 >= 6413 && iParam0 < 7262)
	{
		iVar0 = stats::_0x2B4CDCA6F07FF3DA((iParam0 - 6413), 0, 1, iParam2, "_APAPSTAT_INT");
		iVar1 = ((iParam0 - 6413) - stats::_0x94F12ABF9C79E339((iParam0 - 6413)) * 8) * 8;
	}
	else if (iParam0 >= 7262 && iParam0 < 7313)
	{
		iVar0 = stats::_0x2B4CDCA6F07FF3DA((iParam0 - 7262), 0, 1, iParam2, "_LR2PSTAT_INT");
		iVar1 = ((iParam0 - 7262) - stats::_0x94F12ABF9C79E339((iParam0 - 7262)) * 8) * 8;
	}
	else if (iParam0 >= 7681 && iParam0 < 9361)
	{
		iVar0 = stats::_0x2B4CDCA6F07FF3DA((iParam0 - 7681), 0, 1, iParam2, "_BIKEPSTAT_INT");
		iVar1 = ((iParam0 - 7681) - stats::_0x94F12ABF9C79E339((iParam0 - 7681)) * 8) * 8;
	}
	else if (iParam0 >= 9553 && iParam0 < 15265)
	{
		iVar0 = stats::_0x2B4CDCA6F07FF3DA((iParam0 - 9553), 0, 1, iParam2, "_IMPEXPPSTAT_INT");
		iVar1 = ((iParam0 - 9553) - stats::_0x94F12ABF9C79E339((iParam0 - 9553)) * 8) * 8;
	}
	else if (iParam0 >= 7641 && iParam0 < 7681)
	{
		iVar0 = stats::_0x2B4CDCA6F07FF3DA((iParam0 - 7641), 0, 1, iParam2, "_NGDLCPSTAT_INT");
		iVar1 = ((iParam0 - 7641) - stats::_0x94F12ABF9C79E339((iParam0 - 7641)) * 8) * 8;
	}
	else if (iParam0 >= 7313 && iParam0 < 7321)
	{
		iVar0 = stats::_0x2B4CDCA6F07FF3DA((iParam0 - 7313), 0, 0, 0, "_NGDLCPSTAT_INT");
		iVar1 = ((iParam0 - 7313) - stats::_0x94F12ABF9C79E339((iParam0 - 7313)) * 8) * 8;
	}
	uVar2 = stats::stat_set_masked_int(iVar0, iParam1, iVar1, 8, iParam3);
	return uVar2;
}

int func_751(int iParam0, int iParam1)//Position - 0x6FF38
{
	int iVar0;
	
	if ((iParam0 == 3880 || iParam0 == 3881) || iParam0 == 3882)
	{
		if (iParam1 < 10)
		{
			iVar0 = (iParam0 + iParam1 * 3);
		}
		else if (iParam1 < 23)
		{
			if (iParam0 == 3880)
			{
				iVar0 = (3910 + (iParam1 - 13) * 3);
			}
			else if (iParam0 == 3881)
			{
				iVar0 = (3911 + (iParam1 - 13) * 3);
			}
			else if (iParam0 == 3882)
			{
				iVar0 = (3912 + (iParam1 - 13) * 3);
			}
		}
		else if (iParam1 < 36)
		{
			if (iParam0 == 3880)
			{
				iVar0 = (3946 + (iParam1 - 26) * 3);
			}
			else if (iParam0 == 3881)
			{
				iVar0 = (3947 + (iParam1 - 26) * 3);
			}
			else if (iParam0 == 3882)
			{
				iVar0 = (3948 + (iParam1 - 26) * 3);
			}
		}
		else if (iParam1 < 49)
		{
			if (iParam0 == 3880)
			{
				iVar0 = (5855 + (iParam1 - 39) * 3);
			}
			else if (iParam0 == 3881)
			{
				iVar0 = (5856 + (iParam1 - 39) * 3);
			}
			else if (iParam0 == 3882)
			{
				iVar0 = (5857 + (iParam1 - 39) * 3);
			}
		}
		else if (iParam1 < 62)
		{
			if (iParam0 == 3880)
			{
				iVar0 = (7149 + (iParam1 - 52) * 3);
			}
			else if (iParam0 == 3881)
			{
				iVar0 = (7150 + (iParam1 - 52) * 3);
			}
			else if (iParam0 == 3882)
			{
				iVar0 = (7151 + (iParam1 - 52) * 3);
			}
		}
		else if (iParam1 < 85)
		{
			if (iParam0 == 3880)
			{
				iVar0 = (9107 + (iParam1 - 65) * 3);
			}
			else if (iParam0 == 3881)
			{
				iVar0 = (9108 + (iParam1 - 65) * 3);
			}
			else if (iParam0 == 3882)
			{
				iVar0 = (9109 + (iParam1 - 65) * 3);
			}
		}
		else if (iParam1 < func_745(11))
		{
			if (iParam0 == 3880)
			{
				iVar0 = (14384 + (iParam1 - 88) * 3);
			}
			else if (iParam0 == 3881)
			{
				iVar0 = (14385 + (iParam1 - 88) * 3);
			}
			else if (iParam0 == 3882)
			{
				iVar0 = (14386 + (iParam1 - 88) * 3);
			}
		}
	}
	else if (iParam1 < 10)
	{
		iVar0 = (iParam0 + (iParam1 * (1456 - 1411)));
	}
	else if (iParam1 >= 10 && iParam1 <= 12)
	{
		iVar0 = ((iParam1 - 10) * (1876 - 1861));
		if (iParam0 == 1411)
		{
			iVar0 += 1861;
		}
		else if (iParam0 == 1412)
		{
			iVar0 += 1862;
		}
		else if (iParam0 == 1441)
		{
			iVar0 += 1863;
		}
		else if (iParam0 == 1442)
		{
			iVar0 += 1864;
		}
		else if (iParam0 == 1443)
		{
			iVar0 += 1865;
		}
		else if (iParam0 == 1445)
		{
			iVar0 += 1866;
		}
		else if (iParam0 == 1447)
		{
			iVar0 += 1867;
		}
		else if (iParam0 == 1448)
		{
			iVar0 += 1868;
		}
		else if (iParam0 == 1449)
		{
			iVar0 += 1869;
		}
		else if (iParam0 == 1450)
		{
			iVar0 += 1870;
		}
		else if (iParam0 == 1451)
		{
			iVar0 += 1871;
		}
		else if (iParam0 == 1452)
		{
			iVar0 += 1872;
		}
		else if (iParam0 == 1453)
		{
			iVar0 += 1873;
		}
		else if (iParam0 == 1454)
		{
			iVar0 += 1874;
		}
		else if (iParam0 == 1455)
		{
			iVar0 += 1875;
		}
	}
	else if (iParam1 < 23)
	{
		iVar0 = (1906 - 1411);
		iVar0 = (iVar0 + iParam0);
		iVar0 = (iVar0 + ((iParam1 - 13) * (1456 - 1411)));
	}
	else if (iParam1 >= 23 && iParam1 <= 25)
	{
		iVar0 = ((iParam1 - 23) * (1876 - 1861));
		if (iParam0 == 1411)
		{
			iVar0 += 2356;
		}
		else if (iParam0 == 1412)
		{
			iVar0 += 2357;
		}
		else if (iParam0 == 1441)
		{
			iVar0 += 2358;
		}
		else if (iParam0 == 1442)
		{
			iVar0 += 2359;
		}
		else if (iParam0 == 1443)
		{
			iVar0 += 2360;
		}
		else if (iParam0 == 1445)
		{
			iVar0 += 2361;
		}
		else if (iParam0 == 1447)
		{
			iVar0 += 2362;
		}
		else if (iParam0 == 1448)
		{
			iVar0 += 2363;
		}
		else if (iParam0 == 1449)
		{
			iVar0 += 2364;
		}
		else if (iParam0 == 1450)
		{
			iVar0 += 2365;
		}
		else if (iParam0 == 1451)
		{
			iVar0 += 2366;
		}
		else if (iParam0 == 1452)
		{
			iVar0 += 2367;
		}
		else if (iParam0 == 1453)
		{
			iVar0 += 2368;
		}
		else if (iParam0 == 1454)
		{
			iVar0 += 2369;
		}
		else if (iParam0 == 1455)
		{
			iVar0 += 2370;
		}
	}
	else if (iParam1 < 36)
	{
		iVar0 = (2405 - 1411);
		iVar0 = (iVar0 + iParam0);
		iVar0 = (iVar0 + ((iParam1 - 26) * (1456 - 1411)));
	}
	else if (iParam1 >= 36 && iParam1 <= 38)
	{
		iVar0 = ((iParam1 - 36) * (1876 - 1861));
		if (iParam0 == 1411)
		{
			iVar0 += 2855;
		}
		else if (iParam0 == 1412)
		{
			iVar0 += 2856;
		}
		else if (iParam0 == 1441)
		{
			iVar0 += 2857;
		}
		else if (iParam0 == 1442)
		{
			iVar0 += 2858;
		}
		else if (iParam0 == 1443)
		{
			iVar0 += 2859;
		}
		else if (iParam0 == 1445)
		{
			iVar0 += 2860;
		}
		else if (iParam0 == 1447)
		{
			iVar0 += 2861;
		}
		else if (iParam0 == 1448)
		{
			iVar0 += 2862;
		}
		else if (iParam0 == 1449)
		{
			iVar0 += 2863;
		}
		else if (iParam0 == 1450)
		{
			iVar0 += 2864;
		}
		else if (iParam0 == 1451)
		{
			iVar0 += 2865;
		}
		else if (iParam0 == 1452)
		{
			iVar0 += 2866;
		}
		else if (iParam0 == 1453)
		{
			iVar0 += 2867;
		}
		else if (iParam0 == 1454)
		{
			iVar0 += 2868;
		}
		else if (iParam0 == 1455)
		{
			iVar0 += 2869;
		}
	}
	else if (iParam1 < 49)
	{
		iVar0 = (5360 - 1411);
		iVar0 = (iVar0 + iParam0);
		iVar0 = (iVar0 + ((iParam1 - 39) * (1456 - 1411)));
	}
	else if (iParam1 >= 49 && iParam1 <= 51)
	{
		iVar0 = ((iParam1 - 49) * (1876 - 1861));
		if (iParam0 == 1411)
		{
			iVar0 += 5810;
		}
		else if (iParam0 == 1412)
		{
			iVar0 += 5811;
		}
		else if (iParam0 == 1441)
		{
			iVar0 += 5812;
		}
		else if (iParam0 == 1442)
		{
			iVar0 += 5813;
		}
		else if (iParam0 == 1443)
		{
			iVar0 += 5814;
		}
		else if (iParam0 == 1445)
		{
			iVar0 += 5815;
		}
		else if (iParam0 == 1447)
		{
			iVar0 += 5816;
		}
		else if (iParam0 == 1448)
		{
			iVar0 += 5817;
		}
		else if (iParam0 == 1449)
		{
			iVar0 += 5818;
		}
		else if (iParam0 == 1450)
		{
			iVar0 += 5819;
		}
		else if (iParam0 == 1451)
		{
			iVar0 += 5820;
		}
		else if (iParam0 == 1452)
		{
			iVar0 += 5821;
		}
		else if (iParam0 == 1453)
		{
			iVar0 += 5822;
		}
		else if (iParam0 == 1454)
		{
			iVar0 += 5823;
		}
		else if (iParam0 == 1455)
		{
			iVar0 += 5824;
		}
	}
	else if (iParam1 < 62)
	{
		iVar0 = (6654 - 1411);
		iVar0 = (iVar0 + iParam0);
		iVar0 = (iVar0 + ((iParam1 - 52) * (1456 - 1411)));
	}
	else if (iParam1 >= 62 && iParam1 <= 64)
	{
		iVar0 = ((iParam1 - 62) * (1876 - 1861));
		if (iParam0 == 1411)
		{
			iVar0 += 7104;
		}
		else if (iParam0 == 1412)
		{
			iVar0 += 7105;
		}
		else if (iParam0 == 1441)
		{
			iVar0 += 7106;
		}
		else if (iParam0 == 1442)
		{
			iVar0 += 7107;
		}
		else if (iParam0 == 1443)
		{
			iVar0 += 7108;
		}
		else if (iParam0 == 1445)
		{
			iVar0 += 7109;
		}
		else if (iParam0 == 1447)
		{
			iVar0 += 7110;
		}
		else if (iParam0 == 1448)
		{
			iVar0 += 7111;
		}
		else if (iParam0 == 1449)
		{
			iVar0 += 7112;
		}
		else if (iParam0 == 1450)
		{
			iVar0 += 7113;
		}
		else if (iParam0 == 1451)
		{
			iVar0 += 7114;
		}
		else if (iParam0 == 1452)
		{
			iVar0 += 7115;
		}
		else if (iParam0 == 1453)
		{
			iVar0 += 7116;
		}
		else if (iParam0 == 1454)
		{
			iVar0 += 7117;
		}
		else if (iParam0 == 1455)
		{
			iVar0 += 7118;
		}
	}
	else if (iParam1 < 85)
	{
		iVar0 = (8162 - 1411);
		iVar0 = (iVar0 + iParam0);
		iVar0 = (iVar0 + ((iParam1 - 65) * (1456 - 1411)));
	}
	else if (iParam1 >= 85 && iParam1 <= 87)
	{
		iVar0 = ((iParam1 - 85) * (1876 - 1861));
		if (iParam0 == 1411)
		{
			iVar0 += 9062;
		}
		else if (iParam0 == 1412)
		{
			iVar0 += 9063;
		}
		else if (iParam0 == 1441)
		{
			iVar0 += 9064;
		}
		else if (iParam0 == 1442)
		{
			iVar0 += 9065;
		}
		else if (iParam0 == 1443)
		{
			iVar0 += 9066;
		}
		else if (iParam0 == 1445)
		{
			iVar0 += 9067;
		}
		else if (iParam0 == 1447)
		{
			iVar0 += 9068;
		}
		else if (iParam0 == 1448)
		{
			iVar0 += 9069;
		}
		else if (iParam0 == 1449)
		{
			iVar0 += 9070;
		}
		else if (iParam0 == 1450)
		{
			iVar0 += 9071;
		}
		else if (iParam0 == 1451)
		{
			iVar0 += 9072;
		}
		else if (iParam0 == 1452)
		{
			iVar0 += 9073;
		}
		else if (iParam0 == 1453)
		{
			iVar0 += 9074;
		}
		else if (iParam0 == 1454)
		{
			iVar0 += 9075;
		}
		else if (iParam0 == 1455)
		{
			iVar0 += 9076;
		}
	}
	else if (iParam1 < func_745(11))
	{
		iVar0 = (11234 - 1411);
		iVar0 = (iVar0 + iParam0);
		iVar0 = (iVar0 + ((iParam1 - func_745(7)) * (1456 - 1411)));
	}
	return iVar0;
}

int func_752()//Position - 0x70994
{
	int iVar0;
	
	iVar0 = 0;
	return iVar0;
}

void func_753(int iParam0)//Position - 0x709A1
{
	int iVar0;
	
	if (!gameplay::is_bit_set(Global_1320588[iParam0 /*140*/].f_101, 2))
	{
		gameplay::clear_bit(&(Global_1320588[iParam0 /*140*/].f_101), 8);
	}
	if (gameplay::is_bit_set(Global_1320588[iParam0 /*140*/].f_101, 6))
	{
		func_761(1907, 1, -1);
		func_760(iParam0);
	}
	gameplay::clear_bit(&(Global_1320588[iParam0 /*140*/].f_101), 6);
	gameplay::clear_bit(&(Global_1320588[iParam0 /*140*/].f_101), 3);
	gameplay::clear_bit(&(Global_1320588[iParam0 /*140*/].f_101), 11);
	Global_1320588[iParam0 /*140*/].f_102 = 0;
	if (func_737(Global_1320588[iParam0 /*140*/].f_66))
	{
		if (gameplay::is_bit_set(Global_1320588[iParam0 /*140*/].f_101, 0))
		{
			func_878(39);
			if (func_709(4))
			{
				Global_2590718 = 1;
			}
			else
			{
				func_741(iParam0, &(Global_1320588[iParam0 /*140*/]), 1, -1, 0, 0);
				func_757(3, 0);
			}
		}
	}
	else if (!gameplay::is_bit_set(Global_1320588[iParam0 /*140*/].f_101, 1))
	{
		gameplay::set_bit(&(Global_1320588[iParam0 /*140*/].f_101), 1);
		if (func_709(4))
		{
			Global_2590718 = 1;
		}
		else
		{
			func_741(iParam0, &(Global_1320588[iParam0 /*140*/]), 1, -1, 0, 0);
			func_757(3, 0);
		}
		if (!gameplay::is_bit_set(Global_1320588[iParam0 /*140*/].f_101, 2))
		{
			Global_2494149.f_354 = iParam0;
			Global_2494149.f_355 = 0;
			func_756(iParam0, &iVar0);
			if (iVar0 >= 0)
			{
				func_754(iVar0, -1, -1);
			}
			if (!func_297())
			{
				func_864(Global_2494149.f_354, -1);
			}
		}
	}
	gameplay::clear_bit(&(Global_1320588[iParam0 /*140*/].f_101), 0);
}

void func_754(int iParam0, int iParam1, int iParam2)//Position - 0x70B26
{
	if (iParam0 < 0)
	{
		return;
	}
	iParam1++;
	func_750(func_755(iParam0), iParam1, iParam2, 1);
	if (iParam0 >= 158)
	{
		return;
	}
	if (iParam2 == func_126() || iParam2 == -1)
	{
		Global_1756335[iParam0] = iParam1;
	}
}

int func_755(int iParam0)//Position - 0x70B75
{
	if (iParam0 <= 38)
	{
		return (4036 + iParam0);
	}
	else if (iParam0 <= 48)
	{
		return ((5905 + iParam0) - 39);
	}
	else if (iParam0 <= 51)
	{
		return ((6025 + iParam0) - 49);
	}
	else if (iParam0 <= 64)
	{
		return ((7199 + iParam0) - 52);
	}
	else if (iParam0 <= 87)
	{
		return ((9207 + iParam0) - 65);
	}
	else if (iParam0 <= 158)
	{
		return ((14734 + iParam0) - 88);
	}
	return (4036 + iParam0);
}

void func_756(int iParam0, var uParam1)//Position - 0x70C01
{
	int iVar0;
	
	*uParam1 = -1;
	if (iParam0 >= 0)
	{
		iVar0 = 0;
		while (iVar0 < 158)
		{
			if (iParam0 == (Global_1756335[iVar0] - 1))
			{
				*uParam1 = iVar0;
				return;
			}
			iVar0++;
		}
	}
}

void func_757(int iParam0, int iParam1)//Position - 0x70C3D
{
	var uVar0;
	
	if (func_759(iParam0, iParam1))
	{
		uVar0 = func_758();
		Global_2452384[uVar0] = iParam0;
	}
}

int func_758()//Position - 0x70C60
{
	int iVar0;
	int iVar1;
	
	iVar0 = 9;
	iVar1 = 0;
	while (iVar1 <= 9)
	{
		if (Global_2452384[iVar1] == 0)
		{
			iVar0 = iVar1;
			iVar1 = 10;
		}
		iVar1++;
	}
	return iVar0;
}

bool func_759(int iParam0, var uParam1)//Position - 0x70C95
{
	if (Global_1315217)
	{
		return false;
	}
	if (iParam0 == 22)
	{
		return true;
	}
	if ((((((((uParam1 || !Global_1315229) || iParam0 == 3) || iParam0 == 10) || iParam0 == 11) || iParam0 == 27) || iParam0 == 28) || iParam0 == 29) || iParam0 == 30)
	{
		return true;
	}
	else
	{
		return false;
	}
	return true;
}

void func_760(var uParam0)//Position - 0x70D1B
{
	gameplay::set_bit(&(Global_1320588[uParam0 /*140*/].f_101), 16);
	Global_1320588[func_881() /*140*/].f_103 = 0;
}

void func_761(int iParam0, int iParam1, int iParam2)//Position - 0x70D40
{
	int iVar0;
	
	iVar0 = func_241(iParam0, func_180(iParam2), 0);
	iVar0 = (iVar0 + iParam1);
	if (!func_763(iParam0))
	{
		func_506(iParam0, iVar0, iParam2, 1, 0);
	}
	else
	{
		func_762(iParam0, iVar0, iParam2, 1);
	}
}

void func_762(int iParam0, int iParam1, int iParam2, int iParam3)//Position - 0x70D82
{
	int iVar0;
	
	iVar0 = Global_2503773[iParam0 /*3*/][func_180(iParam2)];
	if (iVar0 != 0)
	{
		stats::stat_set_int(iVar0, iParam1, iParam3);
	}
	switch (iParam0)
	{
		case 782:
			Global_1362395[func_180(iParam2)] = iParam1;
			break;
		
		case 783:
			Global_1362401[func_180(iParam2)] = iParam1;
			break;
		
		case 784:
			Global_1362407[func_180(iParam2)] = iParam1;
			break;
		
		case 785:
			Global_1362413[func_180(iParam2)] = iParam1;
			break;
		
		case 772:
			Global_1362371[func_180(iParam2)] = iParam1;
			break;
		
		case 773:
			Global_1362377[func_180(iParam2)] = iParam1;
			break;
		
		case 774:
			Global_1362383[func_180(iParam2)] = iParam1;
			break;
		
		case 775:
			Global_1362389[func_180(iParam2)] = iParam1;
			break;
		
		case 762:
			Global_1362347[func_180(iParam2)] = iParam1;
			break;
		
		case 763:
			Global_1362353[func_180(iParam2)] = iParam1;
			break;
		
		case 764:
			Global_1362359[func_180(iParam2)] = iParam1;
			break;
		
		case 765:
			Global_1362365[func_180(iParam2)] = iParam1;
			break;
		
		case 752:
			Global_1362419[func_180(iParam2)] = iParam1;
			break;
		
		case 753:
			Global_1362425[func_180(iParam2)] = iParam1;
			break;
		
		case 754:
			Global_1362431[func_180(iParam2)] = iParam1;
			break;
		
		case 755:
			Global_1362437[func_180(iParam2)] = iParam1;
			break;
		
		case 1298:
			Global_1362443[func_180(iParam2)] = iParam1;
			break;
		
		case 634:
			Global_1362449[func_180(iParam2)] = iParam1;
			break;
		
		case 1273:
			Global_1362455[func_180(iParam2)] = iParam1;
			break;
		
		case 1870:
			Global_2524224[0 /*3*/][func_180(iParam2)] = iParam1;
			break;
		
		case 2261:
			Global_2524224[1 /*3*/][func_180(iParam2)] = iParam1;
			break;
		
		case 2911:
			Global_2524224[2 /*3*/][func_180(iParam2)] = iParam1;
			break;
		
		case 3040:
			Global_2524224[3 /*3*/][func_180(iParam2)] = iParam1;
			break;
		
		case 5886:
			Global_2524295[func_180(iParam2)] = iParam1;
			break;
		
		case 759:
			Global_1362461[func_180(iParam2)] = iParam1;
			break;
		
		case 760:
			Global_1362467[func_180(iParam2)] = iParam1;
			break;
		
		case 761:
			Global_1362473[func_180(iParam2)] = iParam1;
			break;
		
		case 1231:
			Global_1362479[func_180(iParam2)] = iParam1;
			break;
		
		case 3035:
			Global_2524258[0 /*3*/][func_180(iParam2)] = iParam1;
			break;
		
		case 3036:
			Global_2524258[1 /*3*/][func_180(iParam2)] = iParam1;
			break;
		
		case 3037:
			Global_2524258[2 /*3*/][func_180(iParam2)] = iParam1;
			break;
		
		case 3038:
			Global_2524258[3 /*3*/][func_180(iParam2)] = iParam1;
			break;
		
		case 3039:
			Global_2524258[4 /*3*/][func_180(iParam2)] = iParam1;
			break;
		
		case 3618:
			Global_2524298[0 /*3*/][func_180(iParam2)] = iParam1;
			break;
		
		case 3619:
			Global_2524298[1 /*3*/][func_180(iParam2)] = iParam1;
			break;
		
		case 3620:
			Global_2524298[2 /*3*/][func_180(iParam2)] = iParam1;
			break;
		
		case 3621:
			Global_2524298[3 /*3*/][func_180(iParam2)] = iParam1;
			break;
		
		case 3622:
			Global_2524298[4 /*3*/][func_180(iParam2)] = iParam1;
			break;
		
		case 3623:
			Global_2524314[0 /*3*/][func_180(iParam2)] = iParam1;
			break;
		
		case 3624:
			Global_2524314[1 /*3*/][func_180(iParam2)] = iParam1;
			break;
		
		case 3625:
			Global_2524314[2 /*3*/][func_180(iParam2)] = iParam1;
			break;
		
		case 3626:
			Global_2524314[3 /*3*/][func_180(iParam2)] = iParam1;
			break;
		
		case 3627:
			Global_2524314[4 /*3*/][func_180(iParam2)] = iParam1;
			break;
		
		case 3203:
			Global_2524258[5 /*3*/][func_180(iParam2)] = iParam1;
			break;
		
		case 3209:
			Global_2524224[4 /*3*/][func_180(iParam2)] = iParam1;
			break;
		
		case 3645:
			Global_2524330[func_180(iParam2)] = iParam1;
			break;
		
		case 3646:
			Global_2524339[func_180(iParam2)] = iParam1;
			break;
		
		case 3647:
			Global_2524333[func_180(iParam2)] = iParam1;
			break;
		
		case 3648:
			Global_2524342[func_180(iParam2)] = iParam1;
			break;
		
		case 3649:
			Global_2524336[func_180(iParam2)] = iParam1;
			break;
		
		case 3650:
			Global_2524345[func_180(iParam2)] = iParam1;
			break;
		
		case 3671:
			Global_2524348[func_180(iParam2)] = iParam1;
			break;
		
		case 3211:
			Global_2524258[6 /*3*/][func_180(iParam2)] = iParam1;
			break;
		
		case 3212:
			Global_2524224[5 /*3*/][func_180(iParam2)] = iParam1;
			break;
		
		case 3216:
			Global_2524258[7 /*3*/][func_180(iParam2)] = iParam1;
			break;
		
		case 3214:
			Global_2524224[6 /*3*/][func_180(iParam2)] = iParam1;
			break;
		
		case 3991:
			Global_2524258[8 /*3*/][func_180(iParam2)] = iParam1;
			break;
		
		case 3992:
			Global_2524224[7 /*3*/][func_180(iParam2)] = iParam1;
			break;
		
		case 3994:
			Global_2524258[9 /*3*/][func_180(iParam2)] = iParam1;
			break;
		
		case 3995:
			Global_2524224[8 /*3*/][func_180(iParam2)] = iParam1;
			break;
		
		case 3997:
			Global_2524258[10 /*3*/][func_180(iParam2)] = iParam1;
			break;
		
		case 3998:
			Global_2524224[9 /*3*/][func_180(iParam2)] = iParam1;
			break;
		
		case 4000:
			Global_2524258[11 /*3*/][func_180(iParam2)] = iParam1;
			break;
		
		case 4001:
			Global_2524224[10 /*3*/][func_180(iParam2)] = iParam1;
			break;
		
		default:
			break;
	}
}

bool func_763(int iParam0)//Position - 0x713E1
{
	if (Global_1362328)
	{
		switch (iParam0)
		{
			case 782:
			case 783:
			case 784:
			case 785:
			case 772:
			case 773:
			case 774:
			case 775:
			case 762:
			case 763:
			case 764:
			case 765:
			case 752:
			case 753:
			case 754:
			case 755:
			case 1298:
			case 634:
			case 1273:
			case 759:
			case 760:
			case 761:
			case 1231:
			case 1870:
			case 2261:
			case 2911:
			case 3040:
			case 5886:
			case 3035:
			case 3036:
			case 3037:
			case 3038:
			case 3039:
			case 3214:
			case 3216:
			case 3618:
			case 3619:
			case 3620:
			case 3621:
			case 3622:
			case 3623:
			case 3624:
			case 3625:
			case 3626:
			case 3627:
			case 3209:
			case 3203:
			case 3645:
			case 3646:
			case 3647:
			case 3648:
			case 3649:
			case 3650:
			case 3671:
			case 3212:
			case 3211:
			case 3992:
			case 3991:
			case 3995:
			case 3994:
			case 3998:
			case 3997:
			case 4001:
			case 4000:
				return true;
				break;
			}
	}
	return false;
}

void func_764(int iParam0)//Position - 0x7157F
{
	if (iParam0 < 32)
	{
		if (gameplay::is_bit_set(Global_2433082.f_501.f_1, iParam0))
		{
			gameplay::clear_bit(&(Global_2433082.f_501.f_1), iParam0);
		}
	}
	else if (gameplay::is_bit_set(Global_2433082.f_501.f_2, (iParam0 - 32)))
	{
		gameplay::clear_bit(&(Global_2433082.f_501.f_2), (iParam0 - 32));
	}
}

void func_765(int iParam0, int iParam1)//Position - 0x715D9
{
	int iVar0;
	
	iVar0 = false;
	if (decorator::decor_is_registered_as_type("Player_Vehicle", 3))
	{
		if (!decorator::decor_exist_on(iParam0, "Player_Vehicle") || !decorator::decor_get_int(iParam0, "Player_Vehicle") == network::_0xBC1D768F2F5D6C05(player::player_id()))
		{
			decorator::decor_set_int(iParam0, "Player_Vehicle", network::_0xBC1D768F2F5D6C05(player::player_id()));
			iVar0 = true;
		}
	}
	if (decorator::decor_is_registered_as_type("PV_Slot", 3))
	{
		if (!decorator::decor_exist_on(iParam0, "PV_Slot") || !decorator::decor_get_int(iParam0, "PV_Slot") == iParam1)
		{
			decorator::decor_set_int(iParam0, "PV_Slot", iParam1);
			iVar0 = true;
		}
	}
	if (iVar0)
	{
		func_766(iParam1);
	}
}

void func_766(int iParam0)//Position - 0x71677
{
	vector3 vVar0;
	
	vVar0.f_2 = -1;
	vVar0.x = 417;
	vVar0.y = player::player_id();
	vVar0.z = iParam0;
	script::trigger_script_event(1, &vVar0, 3, func_123(1, 1));
}

void func_767(int iParam0, int iParam1)//Position - 0x716A9
{
	func_705(*iParam0, &(Global_1320588[iParam1 /*140*/]), 1, 1, 0);
	func_768(iParam0, iParam1);
}

void func_768(var uParam0, var uParam1)//Position - 0x716CB
{
	if (gameplay::is_bit_set(Global_1320588[uParam1 /*140*/].f_101, 2))
	{
		func_779(*uParam0);
	}
	if (gameplay::is_bit_set(Global_1320588[uParam1 /*140*/].f_101, 3))
	{
		func_778();
		gameplay::set_bit(&(Global_1320588[uParam1 /*140*/].f_101), 3);
		func_777(*uParam0, 1, 0);
		func_769(88, 3, 0);
	}
	audio::set_veh_radio_station(*uParam0, &(Global_1320588[uParam1 /*140*/].f_120));
	gameplay::clear_bit(&(Global_1320588[uParam1 /*140*/].f_101), 14);
}

void func_769(int iParam0, int iParam1, int iParam2)//Position - 0x71744
{
	Global_2999 = iParam0;
	if (Global_117[iParam0 /*10*/].f_8 != 140)
	{
		func_771();
		if (iParam1 == 4)
		{
			Global_101652.f_26993[iParam0 /*29*/].f_12[0] = 1;
			Global_101652.f_26993[iParam0 /*29*/].f_12[1] = 1;
			Global_101652.f_26993[iParam0 /*29*/].f_12[2] = 1;
			Global_101652.f_26993[iParam0 /*29*/].f_24[0] = 1;
			Global_101652.f_26993[iParam0 /*29*/].f_24[1] = 1;
			Global_101652.f_26993[iParam0 /*29*/].f_24[2] = 1;
		}
		else
		{
			if (Global_101652.f_26993[iParam0 /*29*/].f_12[iParam1] == 1 && Global_101652.f_26993[iParam0 /*29*/].f_24[iParam1] == 1)
			{
				iParam2 = false;
			}
			Global_101652.f_26993[iParam0 /*29*/].f_12[iParam1] = 1;
			Global_101652.f_26993[iParam0 /*29*/].f_24[iParam1] = 1;
		}
		if (iParam2)
		{
			if (!Global_69697)
			{
				if (iParam1 != 4)
				{
					if (Global_14443 != iParam1)
					{
						Global_2972[iParam1 /*4*/] = { Global_101652.f_26993[iParam0 /*29*/].f_3 };
						Global_2989[iParam1] = 1;
						Global_2994[iParam1] = iParam0;
					}
					else if (iParam0 == Global_14443)
					{
					}
					else
					{
						Global_2923[1 /*6*/] = { Global_101652.f_26993[iParam0 /*29*/].f_3 };
						Global_2923[1 /*6*/].f_5 = iParam1;
						func_770();
					}
				}
				else
				{
					Global_2923[1 /*6*/] = { Global_101652.f_26993[iParam0 /*29*/].f_3 };
					Global_2923[1 /*6*/].f_5 = iParam1;
					func_770();
				}
			}
			else
			{
				Global_2923[1 /*6*/] = { Global_101652.f_26993[iParam0 /*29*/].f_3 };
				Global_2923[1 /*6*/].f_5 = iParam1;
				func_770();
			}
		}
	}
}

void func_770()//Position - 0x718EE
{
	char cVar0[64];
	char cVar16[64];
	char* sVar32;
	
	StringCopy(&cVar0, ui::_get_label_text(&(Global_101652.f_26993[Global_2999 /*29*/].f_7)), 64);
	if (Global_3018 == 0)
	{
		ui::_set_notification_text_entry("");
		StringCopy(&cVar16, ui::_get_label_text(&(Global_2923[1 /*6*/])), 64);
		sVar32 = ui::_get_label_text("CELL_253");
		ui::_set_notification_message(&cVar0, &cVar0, 0, 3, sVar32, &cVar16);
	}
	else
	{
		ui::_set_notification_text_entry("CELL_255");
		ui::_add_text_component_item_string(&(Global_2923[1 /*6*/]));
		ui::_set_notification_message(&cVar0, &cVar0, 0, 3, "", 0);
	}
	gameplay::clear_bit(&Global_2313, 0);
}

void func_771()//Position - 0x7196B
{
	if (func_646(14))
	{
		if (!entity::is_entity_dead(player::player_ped_id(), 0))
		{
			if (entity::get_entity_model(player::player_ped_id()) == Global_101652.f_26993[0 /*29*/])
			{
				Global_14443 = 0;
			}
			else if (entity::get_entity_model(player::player_ped_id()) == Global_101652.f_26993[1 /*29*/])
			{
				Global_14443 = 1;
			}
			else if (entity::get_entity_model(player::player_ped_id()) == Global_101652.f_26993[2 /*29*/])
			{
				Global_14443 = 2;
			}
			else
			{
				Global_14443 = 0;
			}
		}
	}
	else
	{
		Global_14443 = func_772();
		if (Global_14443 == 145)
		{
			Global_14443 = 3;
		}
		if (Global_69697)
		{
			Global_14443 = 3;
		}
		if (Global_14443 > 3)
		{
			Global_14443 = 3;
		}
	}
}

var func_772()//Position - 0x71A0D
{
	func_773();
	return Global_101652.f_2079.f_539.f_3549;
}

void func_773()//Position - 0x71A26
{
	int iVar0;
	
	if (entity::does_entity_exist(player::player_ped_id()))
	{
		if (func_776(Global_101652.f_2079.f_539.f_3549) != entity::get_entity_model(player::player_ped_id()))
		{
			iVar0 = func_775(player::player_ped_id());
			if (func_774(iVar0) && (!func_646(14) || Global_100604))
			{
				if (Global_101652.f_2079.f_539.f_3549 != iVar0 && func_774(Global_101652.f_2079.f_539.f_3549))
				{
					Global_101652.f_2079.f_539.f_3550 = Global_101652.f_2079.f_539.f_3549;
				}
				Global_101652.f_2079.f_539.f_3551 = iVar0;
				Global_101652.f_2079.f_539.f_3549 = iVar0;
				return;
			}
		}
		else
		{
			if (Global_101652.f_2079.f_539.f_3549 != 145)
			{
				Global_101652.f_2079.f_539.f_3551 = Global_101652.f_2079.f_539.f_3549;
			}
			return;
		}
	}
	Global_101652.f_2079.f_539.f_3549 = 145;
}

int func_774(int iParam0)//Position - 0x71B23
{
	return iParam0 < 3;
}

int func_775(int iParam0)//Position - 0x71B2F
{
	int iVar0;
	int iVar1;
	
	if (entity::does_entity_exist(iParam0))
	{
		iVar1 = entity::get_entity_model(iParam0);
		iVar0 = 0;
		while (iVar0 <= 2)
		{
			if (func_776(iVar0) == iVar1)
			{
				return iVar0;
			}
			iVar0++;
		}
	}
	return 145;
}

int func_776(int iParam0)//Position - 0x71B6C
{
	if (func_774(iParam0))
	{
		return Global_101652.f_26993[iParam0 /*29*/];
	}
	else if (iParam0 != 145)
	{
	}
	return 0;
}

bool func_777(int iParam0, int iParam1, int iParam2)//Position - 0x71B96
{
	int iVar0;
	
	if (vehicle::is_vehicle_driveable(iParam0, 0))
	{
		if (iParam1)
		{
			if (decorator::decor_is_registered_as_type("bombowner", 3))
			{
				if (decorator::decor_is_registered_as_type("bombdec1", 3))
				{
					if (iParam2 == 0)
					{
						if (!decorator::decor_exist_on(iParam0, "bombdec1"))
						{
							decorator::decor_set_int(iParam0, "bombdec1", 1);
						}
					}
				}
				if (decorator::decor_is_registered_as_type("bombdec", 3))
				{
					if (iParam2 == 1)
					{
						if (!decorator::decor_exist_on(iParam0, "bombdec"))
						{
							decorator::decor_set_int(iParam0, "bombdec", 1);
						}
					}
				}
				if (!decorator::decor_exist_on(iParam0, "bombowner"))
				{
					iVar0 = gameplay::get_hash_key(player::get_player_name(player::player_id()));
					decorator::decor_set_int(iParam0, "bombowner", iVar0);
					if (iParam2 == 0)
					{
						vehicle::_0x99AD4CCCB128CBC9(iParam0);
					}
				}
				if (decorator::decor_exist_on(iParam0, "bombowner"))
				{
					return true;
				}
			}
		}
		else
		{
			if (decorator::decor_exist_on(iParam0, "bombdec"))
			{
				decorator::decor_remove(iParam0, "bombdec");
			}
			if (decorator::decor_exist_on(iParam0, "bombowner"))
			{
				decorator::decor_remove(iParam0, "bombowner");
			}
			return true;
		}
	}
	return false;
}

void func_778()//Position - 0x71C8F
{
	int iVar0;
	
	iVar0 = 0;
	while (iVar0 < 158)
	{
		if (gameplay::is_bit_set(Global_1320588[iVar0 /*140*/].f_101, 3))
		{
			gameplay::clear_bit(&(Global_1320588[iVar0 /*140*/].f_101), 3);
		}
		iVar0++;
	}
}

void func_779(int iParam0)//Position - 0x71CCB
{
	int iVar0;
	
	if (entity::does_entity_exist(iParam0))
	{
		if (vehicle::is_vehicle_driveable(iParam0, 0))
		{
			if (decorator::decor_is_registered_as_type("MPBitset", 3))
			{
				if (decorator::decor_exist_on(iParam0, "MPBitset"))
				{
					iVar0 = decorator::decor_get_int(iParam0, "MPBitset");
				}
				gameplay::set_bit(&iVar0, 3);
				decorator::decor_set_int(iParam0, "MPBitset", iVar0);
			}
		}
	}
}

bool func_780(var uParam0, var uParam1)//Position - 0x71D1F
{
	int iVar0;
	
	iVar0 = player::player_id();
	Global_2421621[iVar0 /*358*/].f_121 = 1;
	if (Global_2415705.f_1[iVar0 /*4*/].f_1)
	{
		if (Global_2415705.f_1[iVar0 /*4*/] > -1)
		{
			func_787(Global_2415705.f_1[iVar0 /*4*/], uParam0, uParam1);
			return true;
		}
		else if (Global_2415705.f_1[iVar0 /*4*/] == -2)
		{
			Global_2421621[iVar0 /*358*/].f_121 = 0;
			func_781(func_881());
			func_764(17);
			func_764(16);
			func_764(18);
			return false;
		}
	}
	return false;
}

void func_781(int iParam0)//Position - 0x71DAD
{
	func_786();
	if (func_784(iParam0))
	{
		gameplay::clear_bit(&(Global_1320588[iParam0 /*140*/].f_101), 6);
		Global_1320588[iParam0 /*140*/].f_102 = 0;
		func_782();
	}
}

void func_782()//Position - 0x71DE3
{
	func_783(10);
}

void func_783(int iParam0)//Position - 0x71DF1
{
	int iVar0;
	int iVar1;
	
	iVar0 = (iParam0 / 32);
	iVar1 = (iParam0 % 32);
	gameplay::set_bit(&(Global_1574291.f_2[iVar0]), iVar1);
}

bool func_784(int iParam0)//Position - 0x71E17
{
	int iVar0;
	
	func_756(iParam0, &iVar0);
	if ((iParam0 >= 0 && iParam0 <= 158) && !func_785(iVar0))
	{
		return true;
	}
	return false;
}

bool func_785(int iParam0)//Position - 0x71E49
{
	switch (iParam0)
	{
		case 10:
		case 11:
		case 12:
		case 23:
		case 24:
		case 25:
		case 36:
		case 37:
		case 38:
		case 49:
		case 50:
		case 51:
		case 62:
		case 63:
		case 64:
		case 85:
		case 86:
		case 87:
			return true;
			break;
	}
	return false;
}

void func_786()//Position - 0x71ECC
{
	Global_2433082.f_501.f_27 = 0;
	func_764(25);
	func_764(24);
}

void func_787(int iParam0, var uParam1, var uParam2)//Position - 0x71EEA
{
	switch (iParam0)
	{
		case 0:
			*uParam1 = { 396.811f, -1643.665f, 28.2928f };
			*uParam2 = 140.0127f;
			break;
		
		case 1:
			*uParam1 = { 401.2413f, -1648.081f, 28.2928f };
			*uParam2 = 139.3439f;
			break;
		
		case 2:
			*uParam1 = { 411.1246f, -1655.997f, 28.2928f };
			*uParam2 = 139.9064f;
			break;
		
		case 3:
			*uParam1 = { 418.3765f, -1646.284f, 28.294f };
			*uParam2 = 229.6834f;
			break;
		
		case 4:
			*uParam1 = { 419.971f, -1641.743f, 28.2903f };
			*uParam2 = 266.1893f;
			break;
		
		case 5:
			*uParam1 = { 421.0552f, -1635.949f, 28.2928f };
			*uParam2 = 269.4205f;
			break;
		
		case 6:
			*uParam1 = { 419.6233f, -1629.658f, 28.2928f };
			*uParam2 = 319.6136f;
			break;
		
		case 7:
			*uParam1 = { 410.8506f, -1636.768f, 28.2928f };
			*uParam2 = 231.3992f;
			break;
		
		case 8:
			*uParam1 = { 373.3945f, -1623.899f, 28.2928f };
			*uParam2 = 138.3859f;
			break;
		
		case 9:
			*uParam1 = { 373.3945f, -1623.899f, 28.2928f };
			*uParam2 = 138.3859f;
			break;
		
		case 10:
			*uParam1 = { 393.5292f, -1608.745f, 28.2928f };
			*uParam2 = 230.8697f;
			break;
		
		case 11:
			*uParam1 = { 389.3376f, -1613.097f, 28.2928f };
			*uParam2 = 228.0681f;
			break;
		
		case 12:
			*uParam1 = { 402.6421f, -1615.902f, 28.2928f };
			*uParam2 = 228.3702f;
			break;
		
		case 13:
			*uParam1 = { 398.339f, -1620.899f, 28.2928f };
			*uParam2 = 231.9081f;
			break;
		
		case 14:
			*uParam1 = { 394.6593f, -1625.956f, 28.2928f };
			*uParam2 = 231.1938f;
			break;
		
		case 15:
			*uParam1 = { 385.6364f, -1634.18f, 28.2928f };
			*uParam2 = 140.7528f;
			break;
		
		default:
			*uParam1 = { 385.6364f, -1634.18f, 28.2928f };
			*uParam2 = 140.7528f;
			break;
	}
}

bool func_788(vector3 vParam0, vector3 vParam3, int iParam6, int iParam7, var uParam8, var uParam9, var uParam10)//Position - 0x72157
{
	int iVar0;
	int iVar1;
	struct<58> Var2;
	struct<58> Var60;
	
	iVar0 = false;
	if (uParam10->f_12)
	{
		if (uParam10->f_23)
		{
			uParam10->f_23 = 0;
		}
	}
	if (streaming::is_player_switch_in_progress())
	{
		if (!streaming::get_player_switch_state() > 7 && !streaming::get_player_switch_state() == 5)
		{
			return false;
		}
	}
	if (Global_2404994.f_497)
	{
		Global_2404994.f_497 = 0;
		return false;
	}
	if (!func_860(player::player_id()))
	{
		return false;
	}
	if (!Global_2404994.f_571 == 0 && network::get_time_difference(network::get_network_time(), Global_2404994.f_576) < func_397(0))
	{
		if (!Global_2404994.f_623 == 0)
		{
			Global_2404994.f_623 = 0;
			func_859();
			func_858();
		}
		return false;
	}
	if (!script::get_id_of_this_thread() == Global_2404994.f_622)
	{
		if (!Global_2404994.f_623 == 0)
		{
			if (network::get_time_difference(network::get_network_time(), Global_2404994.f_626) < func_397(0))
			{
				return false;
			}
			else
			{
				Global_2404994.f_623 = 0;
			}
		}
	}
	else
	{
		if (network::get_time_difference(network::get_network_time(), Global_2404994.f_624) > 30000)
		{
			Global_2404994.f_623 = 0;
		}
		if (!Global_2404994.f_623 == 0)
		{
			if (network::get_time_difference(network::get_network_time(), Global_2404994.f_626) > func_397(1))
			{
				Global_2404994.f_623 = 0;
			}
		}
	}
	if (uParam10->f_5)
	{
		if (func_853(vParam0))
		{
			if (func_852(&vParam0, 1))
			{
			}
		}
	}
	if (!Global_2404994.f_623 == 0)
	{
		if (system::vdist(Global_2404994.f_635, vParam0) > 50f)
		{
			return false;
		}
	}
	pathfind::_0x07FB139B592FA687((vParam0.x - 100f), (vParam0.y - 100f), (vParam0.x + 100f), (vParam0.y + 100f));
	if (Global_2404994.f_623 == 0)
	{
		Global_2404994.f_629 = 0;
		Global_2404994.f_624 = network::_0x89023FBBF9200E9F();
		Global_2404994.f_622 = script::get_id_of_this_thread();
		Global_2404994.f_626 = network::_0x89023FBBF9200E9F();
		Global_2404994.f_635 = { vParam0 };
		Global_2404994.f_628 = network::_0x89023FBBF9200E9F();
		Global_2404994.f_623 = 2;
		func_851();
		func_859();
		if (!uParam10->f_25)
		{
			func_843(vParam0, iParam6);
		}
	}
	switch (Global_2404994.f_623)
	{
		case 2:
			if (pathfind::_0xF7B79A50B905A30D((vParam0.x - 100f), (vParam0.y - 100f), (vParam0.x + 100f), (vParam0.y + 100f)))
			{
				Global_2404994.f_630 = { vParam0 };
				Global_2404994.f_633 = 0f;
				if (((uParam10->f_2 && func_841(vParam0, 4f, 1f, 1f, 1f, 0, 0, 0, 1123024896, 0, -1, 1, 0, 0, 0, 0, 0)) && !uParam10->f_6) && !func_838(vParam0, *uParam9, iParam6, player::player_id(), 0))
				{
					Global_2404994.f_630 = { vParam0 };
					Global_2404994.f_633 = *uParam9;
				}
				else
				{
					Var2.f_6 = 1082130432;
					Var2.f_7 = 1176255488;
					Var2.f_8 = 1;
					Var2.f_10 = 1;
					Var2.f_13 = 1;
					Var2.f_15 = 1;
					Var2.f_16 = 1;
					Var2.f_31 = 1;
					Var2.f_34 = joaat("tailgater");
					Var2.f_38 = 2;
					Var2.f_45 = 2;
					Var2.f_49 = 1123024896;
					Var2.f_53 = 999;
					Var2.f_54 = 1176256410;
					Var2.f_55 = 1;
					Var2.f_56 = 1;
					Var2.f_57 = 1;
					Var2.f_9 = iParam7;
					Var2.f_3 = 7f;
					Var2.f_10 = uParam10->f_4;
					Var2.f_4 = *uParam10;
					Var2.f_13 = uParam10->f_1;
					Var2.f_5 = uParam10->f_3;
					Var2.f_15 = uParam10->f_5;
					Var2.f_11 = uParam10->f_6;
					Var2.f_6 = uParam10->f_7;
					Var2.f_16 = uParam10->f_8;
					Var2.f_17 = uParam10->f_9;
					Var2 = { vParam3 };
					Var2.f_12 = 1;
					Var2.f_34 = iParam6;
					Var2.f_31 = uParam10->f_11;
					Var2.f_30 = 1;
					Var2.f_48 = uParam10->f_12;
					Var2.f_56 = uParam10->f_23;
					Var2.f_57 = uParam10->f_24;
					iVar1 = 0;
					while (iVar1 < 2)
					{
						Var2.f_38[iVar1 /*3*/] = { uParam10->f_13[iVar1 /*3*/] };
						Var2.f_45[iVar1] = uParam10->f_20[iVar1];
						iVar1++;
					}
					func_799(&(Global_2404994.f_630), &(Global_2404994.f_633), &Var2);
				}
				func_798(Global_2404994.f_630, Global_2404994.f_633, iParam6);
				Global_2404994.f_620 = 0;
				Global_2404994.f_621 = 0;
				Global_2404994.f_629++;
				Global_2404994.f_625 = network::_0x89023FBBF9200E9F();
				Global_2404994.f_624 = network::_0x89023FBBF9200E9F();
				Global_2404994.f_623 = 3;
			}
			break;
		
		case 3:
			if (Global_2404994.f_620)
			{
				if (Global_2404994.f_621)
				{
					if (uParam10->f_10 && !uParam10->f_9)
					{
						func_797(Global_2404994.f_630, 2f);
						Global_2404994.f_623 = 4;
						Global_2404994.f_627 = network::_0x89023FBBF9200E9F();
					}
					else
					{
						iVar0 = true;
					}
				}
				else
				{
					func_796(Global_2404994.f_630, 0);
					func_795(-1);
				}
			}
			else if (network::get_time_difference(network::get_network_time(), Global_2404994.f_625) > 3000)
			{
				func_795(-1);
			}
			break;
		
		case 4:
			if (uParam10->f_10 && !uParam10->f_9)
			{
				if (network::get_time_difference(network::get_network_time(), Global_2404994.f_627) < 10000)
				{
					if (network::_0xE64A3CA08DFA37A9(Global_2404994.f_634))
					{
						if (network::_0x4DF7CFFF471A7FB1(Global_2404994.f_634))
						{
							if (!network::_0x4A2D4E8BF4265B0F(Global_2404994.f_634))
							{
								if (func_794(Global_2404994.f_630, Global_2404994.f_633, iParam6, player::player_id(), 0) || func_789(Global_2404994.f_630, Global_2404994.f_633, iParam6, 1, 0, 0, 0, 1, 0))
								{
									func_796(Global_2404994.f_630, 0);
									func_795(-1);
								}
								else
								{
									iVar0 = true;
								}
							}
							else
							{
								func_796(Global_2404994.f_630, 0);
								func_795(-1);
							}
						}
					}
					else
					{
						func_795(-1);
					}
				}
				else
				{
					func_795(1);
				}
			}
			else
			{
				iVar0 = true;
			}
			break;
		
		case 5:
			Global_2404994.f_630 = { vParam0 };
			Global_2404994.f_633 = 0f;
			Var60.f_6 = 1082130432;
			Var60.f_7 = 1176255488;
			Var60.f_8 = 1;
			Var60.f_10 = 1;
			Var60.f_13 = 1;
			Var60.f_15 = 1;
			Var60.f_16 = 1;
			Var60.f_31 = 1;
			Var60.f_34 = joaat("tailgater");
			Var60.f_38 = 2;
			Var60.f_45 = 2;
			Var60.f_49 = 1123024896;
			Var60.f_53 = 999;
			Var60.f_54 = 1176256410;
			Var60.f_55 = 1;
			Var60.f_56 = 1;
			Var60.f_57 = 1;
			Var60.f_9 = iParam7;
			Var60.f_3 = 3.5f;
			Var60.f_10 = uParam10->f_4;
			Var60.f_4 = *uParam10;
			Var60.f_12 = 1;
			Var60.f_13 = 0;
			Var60.f_15 = uParam10->f_5;
			Var60.f_11 = uParam10->f_6;
			Var60.f_6 = uParam10->f_7;
			Var60 = { vParam3 };
			Var60.f_34 = iParam6;
			Var60.f_31 = uParam10->f_11;
			Var60.f_30 = 1;
			Var60.f_48 = uParam10->f_12;
			Var60.f_56 = uParam10->f_23;
			Var60.f_57 = uParam10->f_24;
			iVar1 = 0;
			while (iVar1 < 2)
			{
				Var60.f_38[iVar1 /*3*/] = { uParam10->f_13[iVar1 /*3*/] };
				Var60.f_45[iVar1] = uParam10->f_20[iVar1];
				iVar1++;
			}
			func_799(&(Global_2404994.f_630), &(Global_2404994.f_633), &Var60);
			Global_2404994.f_623 = 6;
			break;
		
		case 6:
			iVar0 = true;
			break;
	}
	Global_2404994.f_635 = { vParam0 };
	Global_2404994.f_626 = network::_0x89023FBBF9200E9F();
	if (iVar0)
	{
		*uParam8 = { Global_2404994.f_630 };
		*uParam9 = Global_2404994.f_633;
		Global_2404994.f_623 = 0;
		func_851();
		func_859();
		func_858();
		return true;
	}
	return false;
}

bool func_789(vector3 vParam0, float fParam3, int iParam4, int iParam5, int iParam6, int iParam7, int iParam8, int iParam9, int iParam10)//Position - 0x728F9
{
	int iVar0;
	int iVar1;
	
	iVar0 = 0;
	while (iVar0 < 32)
	{
		iVar1 = iVar0;
		if ((iParam9 == 1 && player::player_id() != iVar1) || iParam9 == 0)
		{
			if (func_387(iVar1, iParam5, iParam6))
			{
				if (network::_0x9DE986FC9A87C474(player::player_id(), iVar1))
				{
					if (!iParam8 || (!ped::is_ped_injured(player::get_player_ped(iVar1)) && func_793(iVar1)))
					{
						if ((!iParam7 || (iParam7 == 1 && player::get_player_team(player::player_id()) != player::get_player_team(iVar1))) || player::get_player_team(player::player_id()) == -1)
						{
							if (((player::get_player_team(player::player_id()) == -1 && iParam10) && iParam7) && func_790(iVar1))
							{
							}
							else if (entity::does_entity_exist(player::get_player_ped(iVar1)))
							{
								if (func_499(func_131(iVar1), vParam0, fParam3, iParam4, 1036831949))
								{
									return true;
								}
							}
						}
					}
				}
			}
		}
		iVar0++;
	}
	return false;
}

bool func_790(int iParam0)//Position - 0x729FA
{
	if (func_792(player::player_id(), iParam0))
	{
		return true;
	}
	Global_2482005 = { func_272(iParam0) };
	if (network::network_is_friend(&Global_2482005))
	{
		return true;
	}
	if (func_791(player::player_id(), iParam0))
	{
		return true;
	}
	return false;
}

bool func_791(int iParam0, int iParam1)//Position - 0x72A41
{
	int iVar0;
	
	iVar0 = func_90(iParam0);
	if (!iVar0 == func_9())
	{
		if (iVar0 == func_90(iParam1))
		{
			return true;
		}
	}
	return false;
}

bool func_792(int iParam0, int iParam1)//Position - 0x72A6C
{
	if (network::_network_player_is_in_clan())
	{
		Global_2482005 = { func_272(iParam0) };
		Global_2482018 = { func_272(iParam1) };
		if (network::network_clan_player_is_active(&Global_2482005))
		{
			if (network::network_clan_player_is_active(&Global_2482018))
			{
				network::network_clan_player_get_desc(&Global_2481935, 35, &Global_2482005);
				network::network_clan_player_get_desc(&Global_2481970, 35, &Global_2482018);
				if (Global_2481935 == Global_2481970)
				{
					return true;
				}
			}
		}
	}
	return false;
}

bool func_793(int iParam0)//Position - 0x72AD9
{
	if (entity::is_entity_visible_to_script(player::get_player_ped(iParam0)) || Global_2421621[iParam0 /*358*/].f_248)
	{
		return true;
	}
	return false;
}

bool func_794(vector3 vParam0, float fParam3, int iParam4, int iParam5, int iParam6)//Position - 0x72B04
{
	int iVar0;
	int iVar1;
	
	iVar0 = 0;
	while (iVar0 < 32)
	{
		if (!iParam5 == iVar0 || iParam6 == 1)
		{
			iVar1 = iVar0;
			if (func_387(iVar1, 0, 1) && func_387(iParam5, 0, 1))
			{
				if (Global_2415705.f_260[iVar0])
				{
					if (func_499(Global_2415705.f_130[iVar0 /*3*/], vParam0, fParam3, iParam4, 1036831949))
					{
						return true;
					}
				}
				else if (func_499(func_131(iVar1), vParam0, fParam3, iParam4, 1036831949))
				{
					return true;
				}
			}
			else if (Global_2415705.f_260[iVar0])
			{
				if (func_499(Global_2415705.f_130[iVar0 /*3*/], vParam0, fParam3, iParam4, 1036831949))
				{
					return true;
				}
			}
			else if (func_387(iVar1, 0, 0))
			{
				if (entity::does_entity_exist(player::get_player_ped(iVar1)))
				{
					if (func_499(func_131(iVar1), vParam0, fParam3, iParam4, 1036831949))
					{
						return true;
					}
				}
			}
		}
		iVar0++;
	}
	return false;
}

void func_795(int iParam0)//Position - 0x72C13
{
	if (Global_2404994.f_629 < 20 && network::get_time_difference(network::get_network_time(), Global_2404994.f_628) < 30000)
	{
		if (iParam0 == -1 || (iParam0 > -1 && Global_2404994.f_629 < iParam0))
		{
			Global_2404994.f_623 = 2;
		}
		else
		{
			Global_2404994.f_623 = 5;
		}
	}
	else
	{
		Global_2404994.f_623 = 5;
	}
}

void func_796(vector3 vParam0, int iParam3)//Position - 0x72C7E
{
	vector3 vVar0;
	
	if (iParam3 < 10 && system::vmag(vParam0) > 0f)
	{
		vVar0 = { Global_2404994.f_2258[iParam3 /*3*/] };
		Global_2404994.f_2258[iParam3 /*3*/] = { vParam0 };
		func_796(vVar0, iParam3 + 1);
	}
}

void func_797(vector3 vParam0, float fParam3)//Position - 0x72CCB
{
	func_859();
	Global_2404994.f_634 = network::_0x25B99872D588A101(vParam0 - Vector(fParam3, fParam3, fParam3), vParam0 + Vector(fParam3, fParam3, fParam3));
}

void func_798(vector3 vParam0, var uParam3, int iParam4)//Position - 0x72CF8
{
	struct<7> Var0;
	
	Var0 = 363;
	Var0.f_1 = player::player_id();
	Var0.f_2 = { vParam0 };
	Var0.f_5 = uParam3;
	Var0.f_6 = iParam4;
	script::trigger_script_event(1, &Var0, 7, func_123(1, 1));
}

void func_799(var uParam0, var uParam1, var uParam2)//Position - 0x72D31
{
	if (Global_2404994.f_1685 > 0 && func_837(uParam0, uParam1, uParam2))
	{
	}
	else
	{
		func_800(uParam0, uParam1, uParam2);
	}
}

void func_800(var uParam0, var uParam1, var uParam2)//Position - 0x72D61
{
	int iVar0;
	vector3 vVar1;
	float fVar4;
	int iVar5;
	var uVar6;
	var uVar7;
	int iVar8;
	int iVar9;
	int iVar10;
	int iVar11;
	int iVar12;
	float fVar13;
	float fVar14;
	int iVar15;
	int iVar16;
	int iVar17;
	int iVar18;
	int iVar19;
	float fVar20;
	int iVar21;
	int iVar22;
	float fVar23;
	int iVar24;
	vector3 vVar25;
	var uVar28;
	vector3 vVar29;
	float fVar32;
	int iVar33;
	
	iVar0 = 0;
	if (!system::vmag(uParam2->f_35) > 0f)
	{
		uParam2->f_35 = { *uParam0 };
	}
	if (uParam2->f_15)
	{
		if (func_832(uParam2->f_35, uParam0, &(uParam2->f_38), &(uParam2->f_45), 1, 1))
		{
			uParam2->f_6 = 9999.9f;
			uParam2->f_7 = 9999.9f;
		}
	}
	if (uParam2->f_51)
	{
		uParam2->f_6 = 9999.9f;
	}
	if (uParam2->f_48)
	{
		if (func_828(uParam0, 1))
		{
		}
	}
	iVar5 = 0;
	iVar10 = 1;
	if (uParam2->f_11)
	{
		iVar5 += 2;
		iVar5++;
		iVar10 = 0;
	}
	else if (uParam2->f_10 == 0 || (uParam2->f_33 > 0 && uParam2->f_16))
	{
		iVar5++;
		iVar10 = 0;
	}
	iVar5 += 4;
	fVar13 = 3f;
	fVar14 = 5f;
	switch (uParam2->f_33)
	{
		case 0:
			fVar13 = 3f;
			fVar14 = 5f;
			break;
		
		case 1:
			fVar13 = 2.75f;
			fVar14 = 7.5f;
			break;
		
		default:
			fVar13 = 2.5f;
			fVar14 = 10f;
			break;
	}
	iVar15 = 0;
	Global_2411146.f_162 = 0;
	Global_2411146.f_163 = 0;
	Global_2411146.f_164 = -99;
	Global_2411146.f_165 = { 0f, 0f, 0f };
	iVar16 = 0;
	while (iVar16 < 40)
	{
		Global_2411146[iVar16 /*3*/] = { 0f, 0f, 0f };
		Global_2411146.f_121[iVar16] = 0f;
		iVar16++;
	}
	while (true)
	{
		iVar8 = pathfind::get_nth_closest_vehicle_node_id_with_heading(*uParam0, iVar0, &fVar4, &iVar9, iVar5, fVar13, fVar14);
		if (pathfind::is_vehicle_node_id_valid(iVar8))
		{
			pathfind::get_vehicle_node_position(iVar8, &vVar1);
			iVar12 = false;
			if (Global_2411146.f_164 == iVar8)
			{
				iVar12 = true;
			}
			Global_2411146.f_165 = { vVar1 };
			if (((uParam2->f_10 || uParam2->f_33 > 0) || !pathfind::_get_is_slow_road_flag(iVar8)) || pathfind::_get_supports_gps_route_flag(iVar8))
			{
				pathfind::get_vehicle_node_properties(vVar1, &uVar6, &uVar7);
				if (system::vdist(vVar1, uParam2->f_35) > uParam2->f_4)
				{
					if (!func_822(&vVar1, 0))
					{
						if ((uParam2->f_13 || uVar7 & 64 == 0) || uParam2->f_33 == 1)
						{
							if (uParam2->f_14 || uVar7 & 16 == 0)
							{
								if ((uVar7 & 128 == 0 && uVar7 & 256 == 0) && uVar7 & 512 == 0)
								{
									if (!func_819(vVar1))
									{
										vVar1 = { func_817(vVar1, &fVar4, iVar9, uParam2->f_9, *uParam2, iVar10, uParam2->f_11, uParam2->f_34, &iVar11, iVar12, 1, uParam2->f_51) };
										if (system::vmag(vVar1) > 0f)
										{
											if (!func_816(vVar1, 5f))
											{
												if (vVar1.y >= (uParam2->f_35.f_2 - uParam2->f_7) || uParam2->f_33 >= 2)
												{
													if (vVar1.y <= (uParam2->f_35.f_2 + uParam2->f_6) || uParam2->f_33 >= 2)
													{
														if (func_812(vVar1, uParam2))
														{
															if ((uParam2->f_48 && !func_828(&vVar1, 0)) || uParam2->f_48 == 0)
															{
																if (!iVar12)
																{
																	if (iVar11)
																	{
																		iVar0 = (iVar0 + -1);
																	}
																}
																if (system::vmag(vVar1) > 0f)
																{
																	if (((uParam2->f_5 > 0f && system::vdist(vVar1.x, vVar1.y, 0f, uParam2->f_35, uParam2->f_35.f_1, 0f) < uParam2->f_5) || uParam2->f_5 <= 0f) || uParam2->f_33 >= 2)
																	{
																		if ((uParam2->f_12 && !func_811(vVar1, fVar4, uParam2->f_34, player::player_id(), 0, uParam2->f_56)) || !uParam2->f_12)
																		{
																			if (!uParam2->f_15 || !func_832(uParam2->f_35, &vVar1, &(uParam2->f_38), &(uParam2->f_45), 0, 1))
																			{
																				if (uParam2->f_8)
																				{
																					iVar17 = uParam2->f_31;
																					iVar18 = true;
																					iVar19 = 1;
																					fVar20 = uParam2->f_49;
																					if (!uParam2->f_55)
																					{
																						iVar17 = 0;
																						iVar18 = false;
																						iVar19 = 0;
																						fVar20 = 1f;
																					}
																					else if (uParam2->f_17)
																					{
																						iVar17 = 0;
																						iVar18 = false;
																						iVar19 = 0;
																						if (uParam2->f_33 == 1)
																						{
																							fVar20 = (fVar20 * 0.375f);
																						}
																					}
																					else
																					{
																						iVar18 = true;
																						iVar19 = 1;
																						if (uParam2->f_28)
																						{
																							if (uParam2->f_33 == 1)
																							{
																								fVar20 = (fVar20 * 0.375f);
																							}
																						}
																					}
																					iVar21 = 0;
																					if (uParam2->f_3 > 7f)
																					{
																						if (func_841(vVar1, 6f, 1f, 1f, 5f, iVar17, iVar18, iVar19, fVar20, 0, -1, 1, uParam2->f_3, 0, 0, 0, 0))
																						{
																							iVar21 = 1;
																						}
																					}
																					else if (func_841(vVar1, 6f, 1f, 1f, 5f, iVar17, iVar18, iVar19, fVar20, 0, -1, 1, 0f, 0, 0, 0, 0) && !func_789(vVar1, fVar4, uParam2->f_34, 1, 1, 0, 0, 0, 0))
																					{
																						iVar21 = 1;
																					}
																					if (iVar21 || uParam2->f_33 >= 2)
																					{
																						if (((uParam2->f_29 || uParam2->f_30) || uParam2->f_52) || uParam2->f_33 >= 2)
																						{
																							fVar23 = 0f;
																							if (uParam2->f_52)
																							{
																								iVar22 = func_808(vVar1, uParam2->f_54, &fVar23);
																							}
																							if (!uParam2->f_52 || (uParam2->f_52 && iVar22 <= uParam2->f_53))
																							{
																								if (uParam2->f_52)
																								{
																									if (iVar22 < uParam2->f_53)
																									{
																										iVar16 = 0;
																										while (iVar16 < Global_2411146.f_162)
																										{
																											Global_2411146[iVar16 /*3*/] = { 0f, 0f, 0f };
																											Global_2411146.f_121[iVar16] = 0f;
																											iVar16++;
																										}
																										Global_2411146.f_162 = 0;
																										uParam2->f_53 = iVar22;
																									}
																								}
																								if (uParam2->f_30)
																								{
																									if (Global_2411146.f_162 == 0)
																									{
																										Global_2411146[0 /*3*/] = { vVar1 };
																										Global_2411146.f_121[0] = fVar4;
																									}
																									else
																									{
																										iVar16 = 0;
																										while (iVar16 < Global_2411146.f_162 + 1)
																										{
																											if (iVar16 < 40)
																											{
																												if (system::vdist2(vVar1, uParam2->f_35) < system::vdist2(Global_2411146[iVar16 /*3*/], uParam2->f_35))
																												{
																													func_807(vVar1, fVar4, iVar16);
																													iVar16 = Global_2411146.f_162 + 1;
																												}
																											}
																											iVar16++;
																										}
																									}
																									Global_2411146.f_162++;
																									if (Global_2411146.f_162 >= 5)
																									{
																										if ((uParam2->f_52 && uParam2->f_53 == 0) || uParam2->f_52 == 0)
																										{
																											iVar0 = 100;
																										}
																										else if (Global_2411146.f_162 == 40)
																										{
																											iVar0 = 100;
																										}
																									}
																								}
																								else
																								{
																									Global_2411146[Global_2411146.f_162 /*3*/] = { vVar1 };
																									Global_2411146.f_121[Global_2411146.f_162] = fVar4;
																									Global_2411146.f_162++;
																									if (func_812(vVar1, uParam2))
																									{
																										Global_2411146.f_163++;
																									}
																									if (Global_2411146.f_162 >= 10)
																									{
																										if ((uParam2->f_52 && uParam2->f_53 == 0) || uParam2->f_52 == 0)
																										{
																											iVar0 = 100;
																										}
																										else if (Global_2411146.f_162 == 40)
																										{
																											iVar0 = 100;
																										}
																									}
																								}
																							}
																						}
																						else
																						{
																							*uParam0 = { vVar1 };
																							*uParam1 = fVar4;
																							return;
																						}
																					}
																					else
																					{
																						iVar0++;
																					}
																				}
																				else
																				{
																					*uParam0 = { vVar1 };
																					*uParam1 = fVar4;
																					return;
																				}
																			}
																		}
																		else
																		{
																			iVar15++;
																		}
																	}
																	else
																	{
																		iVar0 = 100;
																	}
																}
															}
															else
															{
																iVar0++;
															}
														}
														else if (!uParam2->f_32)
														{
															iVar0 = 100;
														}
													}
													else
													{
														iVar0++;
													}
												}
												else
												{
													iVar0++;
												}
											}
										}
									}
									else
									{
										iVar0++;
									}
								}
							}
							else
							{
								iVar0++;
							}
						}
						else
						{
							iVar0++;
						}
					}
					else
					{
						iVar15++;
					}
				}
				else
				{
					iVar15++;
				}
			}
			iVar0++;
			if (iVar0 >= (40 + iVar15) || iVar0 >= 100)
			{
				if (Global_2411146.f_162 > 0 && ((uParam2->f_29 || uParam2->f_30) || uParam2->f_33 >= 2))
				{
					if (uParam2->f_30)
					{
						*uParam0 = { Global_2411146[0 /*3*/] };
						*uParam1 = Global_2411146.f_121[0];
						return;
					}
					else
					{
						if (Global_2411146.f_163 > 0 && !Global_2411146.f_163 == Global_2411146.f_162)
						{
							func_805(0, uParam2);
						}
						iVar24 = gameplay::get_random_int_in_range(0, Global_2411146.f_162);
						vVar25 = { Global_2411146[0 /*3*/] };
						uVar28 = Global_2411146.f_121[0];
						Global_2411146[0 /*3*/] = { Global_2411146[iVar24 /*3*/] };
						Global_2411146.f_121[0] = Global_2411146.f_121[iVar24];
						Global_2411146[iVar24 /*3*/] = { vVar25 };
						Global_2411146.f_121[iVar24] = uVar28;
						*uParam0 = { Global_2411146[0 /*3*/] };
						*uParam1 = Global_2411146.f_121[0];
						return;
					}
				}
				else
				{
					uParam2->f_33++;
					if (uParam2->f_33 < 3)
					{
						func_800(uParam0, uParam1, uParam2);
						return;
					}
					else
					{
						iVar0 = gameplay::get_random_int_in_range((1 + iVar15), (40 + iVar15));
						pathfind::get_nth_closest_vehicle_node_with_heading(*uParam0, iVar0, &vVar1, &fVar4, &iVar9, iVar5, fVar13, fVar14);
						vVar1 = { func_817(vVar1, &fVar4, iVar9, uParam2->f_9, *uParam2, iVar10, uParam2->f_11, uParam2->f_34, &iVar11, 0, 0, uParam2->f_51) };
						vVar29 = { vVar1 };
						fVar32 = fVar4;
						if (!uParam2->f_50)
						{
							iVar33 = true;
						}
						else
						{
							iVar33 = false;
						}
						if (func_832(uParam2->f_35, &vVar29, &(uParam2->f_38), &(uParam2->f_45), iVar33, 1) || func_828(&vVar29, iVar33))
						{
							if (!uParam2->f_50)
							{
								uParam2->f_33 = 0;
								uParam2->f_50 = 1;
								*uParam0 = { vVar29 };
								*uParam1 = fVar32;
								uParam2->f_6 = 9999.9f;
								uParam2->f_7 = 9999.9f;
								func_800(uParam0, uParam1, uParam2);
								return;
							}
							else
							{
								*uParam0 = { vVar29 };
								*uParam1 = fVar32;
								return;
							}
						}
						else
						{
							*uParam0 = { vVar29 };
							*uParam1 = fVar32;
							return;
						}
					}
				}
			}
		}
		else
		{
			uParam2->f_33++;
			if (uParam2->f_33 < 3)
			{
				func_800(uParam0, uParam1, uParam2);
				return;
			}
			else
			{
				func_801(&Global_1312061, uParam0, uParam1, *uParam0);
				if (uParam2->f_11)
				{
					uParam2->f_27 = 1;
				}
				return;
			}
		}
		Global_2411146.f_164 = iVar8;
	}
}

void func_801(var uParam0, var uParam1, var uParam2, vector3 vParam3)//Position - 0x7374C
{
	float fVar0;
	float fVar1;
	int iVar2;
	int iVar3;
	
	fVar0 = 1E+09f;
	iVar3 = -1;
	iVar2 = 0;
	while (iVar2 < *uParam0)
	{
		fVar1 = system::vdist(*(uParam0[iVar2 /*4*/]), vParam3);
		if (fVar1 < fVar0)
		{
			if (!func_802(*(uParam0[iVar2 /*4*/]), 5f, player::player_id(), 0, 0))
			{
				fVar0 = fVar1;
				iVar3 = iVar2;
			}
		}
		iVar2++;
	}
	if (!iVar3 == -1)
	{
		*uParam1 = { *(uParam0[iVar3 /*4*/]) };
		*uParam2 = (uParam0[iVar3 /*4*/])->f_3;
	}
}

bool func_802(vector3 vParam0, float fParam3, int iParam4, int iParam5, int iParam6)//Position - 0x737D0
{
	if (func_804(vParam0, fParam3, iParam4, iParam5, 0) || func_803(vParam0, iParam4, iParam6))
	{
		return true;
	}
	return false;
}

bool func_803(vector3 vParam0, int iParam3, int iParam4)//Position - 0x73801
{
	int iVar0;
	int iVar1;
	
	iVar0 = 0;
	while (iVar0 < 32)
	{
		if (!iParam3 == iVar0 || iParam4 == 1)
		{
			iVar1 = iVar0;
			if (!Global_2415705.f_556[iVar0] == 0)
			{
				if (func_499(vParam0, Global_2415705.f_426[iVar0 /*3*/], Global_2415705.f_523[iVar0], Global_2415705.f_556[iVar0], 1036831949))
				{
					if (func_387(iVar1, 0, 1) && func_387(iParam3, 0, 1))
					{
						return true;
					}
					else
					{
						return true;
					}
				}
			}
		}
		iVar0++;
	}
	return false;
}

bool func_804(vector3 vParam0, float fParam3, int iParam4, int iParam5, int iParam6)//Position - 0x7389B
{
	int iVar0;
	int iVar1;
	int iVar2;
	
	iVar0 = 0;
	while (iVar0 < 32)
	{
		if (!iParam4 == iVar0 || iParam5 == 1)
		{
			iVar1 = iVar0;
			iVar2 = false;
			if (iParam6)
			{
				if (func_387(iVar1, 0, 1) && func_387(iParam4, 0, 1))
				{
					if (player::get_player_team(iVar1) == player::get_player_team(iParam4))
					{
						iVar2 = true;
					}
				}
			}
			if (!iVar2)
			{
				if (func_387(iVar1, 0, 1) && func_387(iParam4, 0, 1))
				{
					if (Global_2415705.f_260[iVar0])
					{
						if (system::vdist(Global_2415705.f_130[iVar0 /*3*/], vParam0) < fParam3)
						{
							return true;
						}
					}
					else if (system::vdist(func_131(iVar1), vParam0) < 1f)
					{
						return true;
					}
				}
				else if (Global_2415705.f_260[iVar0])
				{
					if (system::vdist(Global_2415705.f_130[iVar0 /*3*/], vParam0) < fParam3)
					{
						return true;
					}
				}
				else if (func_387(iVar1, 0, 1))
				{
					if (system::vdist(func_131(iVar1), vParam0) < 1f)
					{
						return true;
					}
				}
			}
		}
		iVar0++;
	}
	return false;
}

void func_805(int iParam0, var uParam1)//Position - 0x739B8
{
	if (!func_812(Global_2411146[iParam0 /*3*/], uParam1))
	{
		Global_2411146.f_162 = (Global_2411146.f_162 - 1);
		func_806(iParam0);
		if (Global_2411146.f_162 > Global_2411146.f_163)
		{
			func_805(iParam0, uParam1);
		}
	}
	else if (iParam0 < 39)
	{
		func_805(iParam0 + 1, uParam1);
	}
}

void func_806(int iParam0)//Position - 0x73A13
{
	while (iParam0 < 39)
	{
		if (iParam0 < 39)
		{
			Global_2411146[iParam0 /*3*/] = { Global_2411146[iParam0 + 1 /*3*/] };
			Global_2411146.f_121[iParam0] = Global_2411146.f_121[iParam0 + 1];
		}
		iParam0++;
	}
}

void func_807(vector3 vParam0, float fParam3, int iParam4)//Position - 0x73A5E
{
	vector3 vVar0;
	var uVar3;
	
	vVar0 = { Global_2411146[iParam4 /*3*/] };
	uVar3 = Global_2411146.f_121[iParam4];
	Global_2411146[iParam4 /*3*/] = { vParam0 };
	Global_2411146.f_121[iParam4] = fParam3;
	if (iParam4 <= Global_2411146.f_162 && iParam4 < 39)
	{
		if (system::vmag(vVar0) > 0f)
		{
			func_807(vVar0, uVar3, iParam4 + 1);
		}
	}
}

int func_808(vector3 vParam0, float fParam3, float fParam4)//Position - 0x73ACB
{
	int iVar0;
	vector3 vVar1;
	int iVar4;
	int iVar5;
	float fVar6;
	float fVar7;
	
	fVar6 = 99999.9f;
	iVar0 = 0;
	while (iVar0 < 32)
	{
		iVar5 = iVar0;
		if (func_809(iVar5))
		{
			vVar1 = { func_131(iVar5) };
			fVar7 = system::vdist(vParam0, vVar1);
			if (fVar7 < fParam3)
			{
				if (fVar7 < fVar6)
				{
					fVar6 = fVar7;
				}
				iVar4++;
			}
		}
		iVar0++;
	}
	*fParam4 = fVar6;
	return iVar4;
}

bool func_809(int iParam0)//Position - 0x73B33
{
	if (func_387(iParam0, 0, 1))
	{
		if (!func_165(iParam0))
		{
			if (network::_0x9DE986FC9A87C474(player::player_id(), iParam0))
			{
				if (!player::get_player_team(iParam0) == player::get_player_team(player::player_id()))
				{
					if (func_170(player::player_id(), 1))
					{
						if (!func_810(player::get_player_team(iParam0), player::get_player_team(player::player_id()), 0))
						{
							return true;
						}
					}
					else
					{
						return true;
					}
				}
				else if (player::get_player_team(iParam0) == -1 && player::get_player_team(player::player_id()) == -1)
				{
					if (!func_170(player::player_id(), 1))
					{
						if (!func_790(iParam0))
						{
							return true;
						}
					}
					else
					{
						return true;
					}
				}
			}
		}
	}
	return false;
}

int func_810(int iParam0, int iParam1, int iParam2)//Position - 0x73BDE
{
	if (iParam2 == 1)
	{
		if (iParam0 == iParam1)
		{
			return true;
		}
		return false;
	}
	if ((iParam0 > -1 && iParam1 > -1) && iParam0 == iParam1)
	{
		return true;
	}
	switch (iParam0)
	{
		case 0:
			switch (iParam1)
			{
				case 0:
					return gameplay::is_bit_set(Global_1632166.f_43, 0);
				
				case 1:
					return gameplay::is_bit_set(Global_1632166.f_43, 1);
				
				case 2:
					return gameplay::is_bit_set(Global_1632166.f_43, 2);
				
				case 3:
					return gameplay::is_bit_set(Global_1632166.f_43, 3);
				
				default:
			}
			break;
		
		case 1:
			switch (iParam1)
			{
				case 0:
					return gameplay::is_bit_set(Global_1632166.f_43, 4);
				
				case 1:
					return gameplay::is_bit_set(Global_1632166.f_43, 5);
				
				case 2:
					return gameplay::is_bit_set(Global_1632166.f_43, 6);
				
				case 3:
					return gameplay::is_bit_set(Global_1632166.f_43, 7);
				
				default:
			}
			break;
		
		case 2:
			switch (iParam1)
			{
				case 0:
					return gameplay::is_bit_set(Global_1632166.f_43, 8);
				
				case 1:
					return gameplay::is_bit_set(Global_1632166.f_43, 9);
				
				case 2:
					return gameplay::is_bit_set(Global_1632166.f_43, 10);
				
				case 3:
					return gameplay::is_bit_set(Global_1632166.f_43, 11);
				
				default:
			}
			break;
		
		case 3:
			switch (iParam1)
			{
				case 0:
					return gameplay::is_bit_set(Global_1632166.f_43, 12);
				
				case 1:
					return gameplay::is_bit_set(Global_1632166.f_43, 13);
				
				case 2:
					return gameplay::is_bit_set(Global_1632166.f_43, 14);
				
				case 3:
					return gameplay::is_bit_set(Global_1632166.f_43, 15);
				
				default:
			}
			break;
	}
	return false;
}

bool func_811(vector3 vParam0, float fParam3, int iParam4, int iParam5, int iParam6, int iParam7)//Position - 0x73DA9
{
	if (func_794(vParam0, fParam3, iParam4, iParam5, iParam6) || func_838(vParam0, fParam3, iParam4, iParam5, iParam7))
	{
		return true;
	}
	return false;
}

bool func_812(vector3 vParam0, var uParam3)//Position - 0x73DDF
{
	if (uParam3->f_18)
	{
		switch (uParam3->f_26)
		{
			case 0:
				if (func_815(vParam0, uParam3->f_19, uParam3->f_25, 0, 0))
				{
					return true;
				}
				break;
			
			case 1:
				if (func_813(vParam0, uParam3->f_19, uParam3->f_22, 0, 0))
				{
					return true;
				}
				break;
			
			case 2:
				if (object::is_point_in_angled_area(vParam0, uParam3->f_19, uParam3->f_22, uParam3->f_25, 0, true))
				{
					return true;
				}
				break;
		}
		return false;
	}
	return true;
}

bool func_813(vector3 vParam0, vector3 vParam3, vector3 vParam6, int iParam9, int iParam10)//Position - 0x73E70
{
	func_814(&vParam3, &vParam6);
	if (((!vParam0.x >= vParam3.x || !vParam0.y >= vParam3.y) || !vParam0.x <= vParam6.x) || !vParam0.y <= vParam6.y)
	{
		return false;
	}
	if (iParam9 && iParam10)
	{
		return true;
	}
	else if (iParam9)
	{
		if (vParam0.y >= vParam3.y)
		{
			return true;
		}
	}
	else if (iParam10)
	{
		if (vParam0.y <= vParam6.y)
		{
			return true;
		}
	}
	else if (vParam0.y >= vParam3.y && vParam0.y <= vParam6.y)
	{
		return true;
	}
	return false;
}

void func_814(var uParam0, var uParam1)//Position - 0x73F1B
{
	var uVar0;
	
	if (*uParam0 > *uParam1)
	{
		uVar0 = *uParam1;
		*uParam1 = *uParam0;
		*uParam0 = uVar0;
	}
	if (uParam0->f_1 > uParam1->f_1)
	{
		uVar0 = uParam1->f_1;
		uParam1->f_1 = uParam0->f_1;
		uParam0->f_1 = uVar0;
	}
	if (uParam0->f_2 > uParam1->f_2)
	{
		uVar0 = uParam1->f_2;
		uParam1->f_2 = uParam0->f_2;
		uParam0->f_2 = uVar0;
	}
}

int func_815(vector3 vParam0, vector3 vParam3, float fParam6, int iParam7, int iParam8)//Position - 0x73F7D
{
	if (iParam7 && iParam8)
	{
		vParam0.z = 0f;
		vParam3.z = 0f;
		return system::vdist(vParam0, vParam3) < (fParam6 + 0.01f);
	}
	else if (iParam7)
	{
		if (vParam0.y > vParam3.y)
		{
			vParam0.z = vParam3.y;
		}
		return system::vdist(vParam0, vParam3) < (fParam6 + 0.01f);
	}
	else if (iParam8)
	{
		if (vParam0.y < vParam3.y)
		{
			vParam0.f_2 = vParam3.y;
		}
		return system::vdist(vParam0, vParam3) < (fParam6 + 0.01f);
	}
	return system::vdist(vParam0, vParam3) < (fParam6 + 0.01f);
}

bool func_816(vector3 vParam0, float fParam3)//Position - 0x74032
{
	int iVar0;
	
	if (func_170(player::player_id(), 1))
	{
		if (Global_1632166.f_43047 > 0)
		{
			iVar0 = 0;
			while (iVar0 < Global_1632166.f_43047)
			{
				if (Global_1632166.f_43048[iVar0 /*59*/].f_7 != 0)
				{
					if (func_499(vParam0, Global_1632166.f_43048[iVar0 /*59*/], Global_1632166.f_43048[iVar0 /*59*/].f_6, Global_1632166.f_43048[iVar0 /*59*/].f_7, fParam3))
					{
						return true;
					}
				}
				iVar0++;
			}
		}
		if (Global_1632166.f_40786 > 0)
		{
			iVar0 = 0;
			while (iVar0 < Global_1632166.f_40786)
			{
				if (Global_1632166.f_40789[iVar0 /*92*/].f_16 != 0)
				{
					if (func_499(vParam0, Global_1632166.f_40789[iVar0 /*92*/], Global_1632166.f_40789[iVar0 /*92*/].f_3, Global_1632166.f_40789[iVar0 /*92*/].f_16, 0.5f))
					{
						return true;
					}
				}
				iVar0++;
			}
		}
		if (Global_1632166.f_55074 > 0)
		{
			iVar0 = 0;
			while (iVar0 < Global_1632166.f_55074)
			{
				if (Global_1632166.f_55078[iVar0 /*137*/].f_12 != 0)
				{
					if (func_499(vParam0, Global_1632166.f_55078[iVar0 /*137*/], Global_1632166.f_55078[iVar0 /*137*/].f_3, Global_1632166.f_55078[iVar0 /*137*/].f_12, 0.5f))
					{
						return true;
					}
				}
				iVar0++;
			}
		}
	}
	return false;
}

Vector3 func_817(vector3 vParam0, float fParam3, int iParam4, int iParam5, vector3 vParam6, int iParam9, int iParam10, int iParam11, int iParam12, int iParam13, int iParam14, int iParam15)//Position - 0x741BB
{
	vector3 vVar0;
	var uVar3;
	var uVar4;
	var uVar5;
	var uVar8;
	int iVar11;
	int iVar12;
	float fVar13;
	float fVar14;
	int iVar15;
	int iVar16;
	float fVar17;
	float fVar20;
	float fVar23;
	vector3 vVar24;
	vector3 vVar27;
	vector3 vVar30;
	
	if (iParam15)
	{
		if (system::vmag(vParam6) > 0f)
		{
			if (!func_818(vParam0, *fParam3, vParam6))
			{
				*fParam3 = (*fParam3 + 180f);
			}
		}
		return vParam0;
	}
	pathfind::get_vehicle_node_properties(vParam0, &uVar3, &uVar4);
	if (uVar4 & 1024 == 0 && !iParam10)
	{
		pathfind::get_closest_road(vParam0, 1f, 1, &uVar5, &uVar8, &iVar11, &iVar12, &fVar13, iParam9);
		if (iVar11 == iVar12)
		{
			*iParam12 = 1;
		}
		if (iParam14)
		{
			if (!uVar4 & 128 == 0)
			{
				return 0f, 0f, 0f;
			}
			if (!uVar4 & 256 == 0)
			{
				return 0f, 0f, 0f;
			}
			if (!uVar4 & 512 == 0)
			{
				return 0f, 0f, 0f;
			}
			if ((iVar11 + iVar12) != iParam4)
			{
				return 0f, 0f, 0f;
			}
		}
		if (iParam13 && *iParam12)
		{
			*fParam3 = (*fParam3 + 180f);
			if (*fParam3 > 360f)
			{
				*fParam3 = (*fParam3 + -360f);
			}
		}
		if (*fParam3 <= 90f || *fParam3 > 270f)
		{
			iVar15 = true;
		}
		else
		{
			iVar15 = false;
		}
		iVar16 = false;
		if (iVar15)
		{
			if (iVar11 == 0)
			{
				if (iParam14)
				{
					return 0f, 0f, 0f;
				}
			}
			else if (iParam4 == iVar11)
			{
				iVar16 = true;
			}
		}
		else if (iVar12 == 0)
		{
			if (iParam14)
			{
				return 0f, 0f, 0f;
			}
		}
		else if (iParam4 == iVar12)
		{
			iVar16 = true;
		}
		if (fVar13 < 0f)
		{
			fVar14 = 0f;
		}
		else
		{
			if (iVar15)
			{
				if (iVar16)
				{
					fVar14 = (4.2f * (system::to_float(iVar11) * 0.5f));
				}
				else
				{
					fVar14 = (4.2f * system::to_float(iVar11));
				}
				if (iVar16)
				{
					if (iVar11 > 2)
					{
						fVar14 = (fVar14 + (IntToFloat((iVar11 - 2)) * 1f));
					}
				}
				else if (iVar11 > 1)
				{
					fVar14 = (fVar14 + (IntToFloat((iVar11 - 1)) * 1f));
				}
			}
			else
			{
				if (iVar16)
				{
					fVar14 = (4.2f * (system::to_float(iVar12) * 0.5f));
				}
				else
				{
					fVar14 = (4.2f * system::to_float(iVar12));
				}
				if (iVar16)
				{
					if (iVar12 > 2)
					{
						fVar14 = (fVar14 + (IntToFloat((iVar12 - 2)) * 1f));
					}
				}
				else if (iVar12 > 1)
				{
					fVar14 = (fVar14 + (IntToFloat((iVar12 - 1)) * 1f));
				}
			}
			if (!uVar4 & 64 == 0)
			{
				fVar14 = (fVar14 + (0.95f * fVar13));
			}
			if (!uVar4 & 4 == 0 || !uVar4 & 8 == 0)
			{
				fVar14 = (fVar14 + -0.5f);
			}
			if ((!uVar4 & 32 == 0 && uVar4 & 4 == 0) && uVar4 & 8 == 0)
			{
				fVar14 = (fVar14 + -1f);
			}
			if (!iParam5 || !uVar4 & 8 == 0)
			{
				fVar14 = (fVar14 + (4.2f * -0.5f));
			}
			if (!iParam11 == 0)
			{
				func_480(iParam11, &fVar17, &fVar20, 1086324736, 1080033280, 1077936128);
				fVar23 = (fVar20 - fVar17);
				if (fVar23 > 1.8f)
				{
					fVar14 = (fVar14 + ((fVar23 - 1.8f) * -0.5f));
				}
			}
		}
	}
	if (system::vmag(vParam6) > 0f)
	{
		if (!func_818(vParam0, *fParam3, vParam6))
		{
			if (iParam5)
			{
				*fParam3 = (*fParam3 + 180f);
			}
			else if (iParam14)
			{
				return 0f, 0f, 0f;
			}
		}
	}
	if (fVar14 < 0f)
	{
		fVar14 = 0f;
	}
	vVar0 = { object::_get_object_offset_from_coords(vParam0, *fParam3, fVar14, 0f, 0f) };
	if (iParam5)
	{
		if (unk_0xA0F8A7517A273C05(vParam0, *fParam3, &vVar24))
		{
			vVar27 = { vVar24 - vParam0 };
			if (!iParam11 == 0)
			{
				vVar30 = { vVar27 / FtoV(system::vmag(vVar27)) };
				func_480(iParam11, &fVar17, &fVar20, 1086324736, 1080033280, 1077936128);
				fVar23 = (fVar20 - fVar17);
				vVar30 = { vVar30 * FtoV((fVar23 * 0.5f)) };
				vVar27 = { vVar27 - vVar30 };
				vVar24 = { vParam0 + vVar27 };
			}
			vVar30 = { vVar0 - vVar24 };
			vVar0 = { vVar24 };
		}
	}
	return vVar0;
}

bool func_818(vector3 vParam0, float fParam3, vector3 vParam4)//Position - 0x745B9
{
	vector3 vVar0;
	vector3 vVar3;
	
	vVar0 = { 0f, 1f, 0f };
	func_470(&vVar0, 0f, 0f, fParam3);
	vVar3 = { vParam4 - vParam0 };
	if (func_491(vVar3, vVar0) >= 0f)
	{
		return true;
	}
	return false;
}

bool func_819(vector3 vParam0)//Position - 0x745F5
{
	int iVar0;
	var uVar1;
	
	uVar1 = func_821(vParam0);
	iVar0 = 0;
	while (iVar0 < Global_2410860[uVar1])
	{
		if (func_820(vParam0, &(Global_2410157[uVar1 /*78*/][iVar0 /*7*/])))
		{
			return true;
		}
		iVar0++;
	}
	iVar0 = 0;
	while (iVar0 < Global_2410860[8])
	{
		if (func_820(vParam0, &(Global_2410157[8 /*78*/][iVar0 /*7*/])))
		{
			return true;
		}
		iVar0++;
	}
	return false;
}

int func_820(vector3 vParam0, var uParam3)//Position - 0x74670
{
	return object::is_point_in_angled_area(vParam0, *uParam3, uParam3->f_3, uParam3->f_6, 0, true);
}

int func_821(struct<2> Param0, var uParam2)//Position - 0x74690
{
	if (Param0.f_1 > Global_2410148[0])
	{
		return 0;
	}
	if (Param0.f_1 > Global_2410148[1])
	{
		if (Param0 < Global_2410152[0])
		{
			return 1;
		}
		else
		{
			return 2;
		}
	}
	if (Param0.f_1 > Global_2410148[2])
	{
		if (Param0 < Global_2410152[1])
		{
			return 3;
		}
		else if (Param0 < Global_2410152[2])
		{
			return 4;
		}
		else if (Param0 < Global_2410152[3])
		{
			return 5;
		}
		else
		{
			return 6;
		}
	}
	return 7;
}

bool func_822(var uParam0, int iParam1)//Position - 0x7472B
{
	var uVar0;
	vector3 vVar1;
	float fVar4;
	
	if (func_827(*uParam0))
	{
		if (iParam1)
		{
			vVar1 = { *uParam0 };
			fVar4 = gameplay::get_random_float_in_range(0.01f, 360f);
			func_826(&vVar1, Global_2404994.f_558, Global_2404994.f_561, 1036831949, 0, fVar4);
			if (func_823(vVar1, &uVar0) || func_827(vVar1))
			{
				vVar1 = { *uParam0 };
				func_826(&vVar1, Global_2404994.f_558, Global_2404994.f_561, 1036831949, 1, fVar4);
			}
			*uParam0 = { vVar1 };
		}
	}
	return false;
}

bool func_823(vector3 vParam0, var uParam3)//Position - 0x747C3
{
	int iVar0;
	int iVar1;
	
	iVar1 = func_825();
	iVar0 = 0;
	while (iVar0 < iVar1)
	{
		if (Global_2404994.f_355[iVar0 /*12*/].f_9 == 1)
		{
			if (func_824(vParam0, &(Global_2404994.f_355[iVar0 /*12*/]), 1008981770, 0, 0))
			{
				*uParam3 = iVar0;
				return true;
			}
		}
		iVar0++;
	}
	return false;
}

int func_824(vector3 vParam0, var uParam3, float fParam4, int iParam5, int iParam6)//Position - 0x7481C
{
	switch (uParam3->f_10)
	{
		case 0:
			return func_815(vParam0, *uParam3, ((uParam3->f_6 + fParam4) + (IntToFloat(Global_2404994.f_2256) * uParam3->f_8)), iParam5, iParam6);
			break;
		
		case 1:
			return func_813(vParam0, *uParam3 + Vector((fParam4 * -1f), (fParam4 * -1f), (fParam4 * -1f)), uParam3->f_3 + Vector(fParam4, fParam4, fParam4), iParam5, iParam6);
			break;
		
		case 2:
			if (iParam5 && iParam6)
			{
				return object::is_point_in_angled_area(vParam0, *uParam3, uParam3->f_3, uParam3->f_6, 0, false);
			}
			else if (iParam5)
			{
				if (object::is_point_in_angled_area(vParam0, *uParam3, uParam3->f_3, uParam3->f_6, 0, false) && !(vParam0.y < uParam3->f_2 && vParam0.y < uParam3->f_3.f_2))
				{
					return true;
				}
				else
				{
					return false;
				}
			}
			else if (iParam6)
			{
				if (object::is_point_in_angled_area(vParam0, *uParam3, uParam3->f_3, uParam3->f_6, 0, false) && !(vParam0.y > uParam3->f_2 && vParam0.y > uParam3->f_3.f_2))
				{
					return true;
				}
				else
				{
					return false;
				}
			}
			else
			{
				return object::is_point_in_angled_area(vParam0, *uParam3, uParam3->f_3, uParam3->f_6, 0, true);
			}
			break;
	}
	return false;
}

int func_825()//Position - 0x7497D
{
	int iVar0;
	int iVar1;
	
	iVar0 = 0;
	while (iVar0 < 10)
	{
		if (Global_2404994.f_355[iVar0 /*12*/].f_9)
		{
			iVar1++;
		}
		iVar0++;
	}
	return iVar1;
}

void func_826(var uParam0, vector3 vParam1, float fParam4, float fParam5, int iParam6, float fParam7)//Position - 0x749B0
{
	vector3 vVar0;
	vector3 vVar3;
	
	vVar0 = { *uParam0 - vParam1 };
	vVar0.z = 0f;
	if (system::vmag(vVar0) > 0f)
	{
		vVar0 = { vVar0 / FtoV(system::vmag(vVar0)) };
	}
	else
	{
		vVar0 = { 0f, 1f, 0f };
		if (fParam7 == 0f)
		{
			func_470(&vVar0, 0f, 0f, gameplay::get_random_float_in_range(0f, 360f));
		}
		else
		{
			func_470(&vVar0, 0f, 0f, fParam7);
		}
	}
	vVar0 = { vVar0 * FtoV((fParam4 + fParam5)) };
	if (!iParam6)
	{
		vVar3 = { vParam1 + vVar0 };
	}
	else
	{
		vVar3 = { vParam1 - vVar0 };
	}
	*uParam0 = vVar3.x;
	uParam0->f_1 = vVar3.y;
}

bool func_827(vector3 vParam0)//Position - 0x74A58
{
	float fVar0;
	
	if (Global_2404994.f_561 > 0f)
	{
		fVar0 = system::vdist(vParam0, Global_2404994.f_558);
		if (fVar0 < Global_2404994.f_561)
		{
			return true;
		}
	}
	return false;
}

int func_828(var uParam0, int iParam1)//Position - 0x74A91
{
	int iVar0;
	
	iVar0 = false;
	if (Global_2404994.f_26.f_16)
	{
		switch (Global_2404994.f_26.f_15)
		{
			case 0:
				if (func_815(*uParam0, Global_2404994.f_26.f_8, Global_2404994.f_26.f_14, 0, 0))
				{
					iVar0 = true;
				}
				break;
			
			case 1:
				if (func_813(*uParam0, Global_2404994.f_26.f_8, Global_2404994.f_26.f_11, 0, 0))
				{
					iVar0 = true;
				}
				break;
			
			case 2:
				if (object::is_point_in_angled_area(*uParam0, Global_2404994.f_26.f_8, Global_2404994.f_26.f_11, Global_2404994.f_26.f_14, 0, true))
				{
					iVar0 = true;
				}
				break;
		}
		if (iVar0)
		{
			if (iParam1)
			{
				*uParam0 = { func_829(*uParam0, Global_2404994.f_26.f_8, Global_2404994.f_26.f_11, Global_2404994.f_26.f_14, Global_2404994.f_26.f_15, 1036831949, 0) };
			}
		}
	}
	return iVar0;
}

Vector3 func_829(vector3 vParam0, vector3 vParam3, vector3 vParam6, float fParam9, int iParam10, float fParam11, int iParam12)//Position - 0x74B83
{
	int iVar0;
	vector3 vVar1;
	
	switch (iParam10)
	{
		case 0:
			func_826(&vParam0, vParam3, fParam9, fParam11, iParam12, 0);
			break;
		
		case 1:
			func_831(&vParam0, vParam3, vParam6, fParam11, iParam12);
			break;
		
		case 2:
			func_830(&vParam0, vParam3, vParam6, fParam9, fParam11, iParam12);
			break;
	}
	iVar0 = 0;
	while (iVar0 < 40)
	{
		pathfind::get_nth_closest_vehicle_node(vParam0, iVar0 * 5, &vVar1, 1, 0f, 0f);
		switch (iParam10)
		{
			case 0:
				if (!func_815(vVar1, vParam3, fParam9, 0, 0))
				{
					return vVar1;
				}
				break;
			
			case 1:
				if (!func_813(vVar1, vParam3, vParam6, 0, 0))
				{
					return vVar1;
				}
				break;
			
			case 2:
				if (!object::is_point_in_angled_area(vVar1, vParam3, vParam6, fParam9, 0, true))
				{
					return vVar1;
				}
				break;
		}
		iVar0++;
	}
	return vParam0;
}

void func_830(var uParam0, vector3 vParam1, vector3 vParam4, float fParam7, float fParam8, int iParam9)//Position - 0x74C86
{
	vector3 vVar0;
	vector3 vVar3;
	vector3 vVar6;
	float fVar9;
	vector3 vVar10;
	vector3 vVar13;
	float fVar16;
	vector3 vVar17;
	vector3 vVar20;
	vector3 vVar23;
	vector3 vVar26;
	vector3 vVar29;
	
	vVar0 = { vParam4 - vParam1 };
	vVar0.z = 0f;
	vVar3 = { *uParam0 - vParam1 };
	vVar3.z = 0f;
	vVar6 = { func_493(0f, 0f, 1f, vVar0) };
	vVar6 = { vVar6 / FtoV(system::vmag(vVar6)) };
	fVar9 = (system::vmag(vVar3) * system::sin(gameplay::get_angle_between_2d_vectors(vVar0.x, vVar0.y, vVar3.x, vVar3.y)));
	if (fVar9 < (fParam7 * 0.5f))
	{
		if (!iParam9)
		{
			if (func_491(vVar6, vVar3) >= 0f)
			{
				vVar6 = { vVar6 * FtoV((((fParam7 * 0.5f) - fVar9) + fParam8)) };
			}
			else
			{
				vVar6 = { vVar6 * FtoV(((((fParam7 * 0.5f) - fVar9) + fParam8) * -1f)) };
			}
		}
		else if (func_491(vVar6, vVar3) >= 0f)
		{
			vVar6 = { vVar6 * FtoV(((((fParam7 * 0.5f) + fVar9) + fParam8) * -1f)) };
		}
		else
		{
			vVar6 = { vVar6 * FtoV((((fParam7 * 0.5f) + fVar9) + fParam8)) };
		}
		vVar10 = { *uParam0 + vVar6 };
		fVar16 = system::vdist(vParam1.x, vParam1.y, 0f, vParam4.x, vParam4.y, 0f);
		vVar17 = { vParam1 + vParam4 / Vector(2f, 2f, 2f) };
		vVar17.z = 0f;
		vVar6 = { func_493(0f, 0f, 1f, vVar0) };
		vVar6 = { vVar6 / FtoV(system::vmag(vVar6)) };
		vVar6 = { vVar6 * FtoV((fParam7 * 0.5f)) };
		vVar20 = { vVar17 - vVar6 };
		vVar23 = { vVar17 + vVar6 };
		vVar26 = { vVar23 - vVar20 };
		vVar26.z = 0f;
		vVar29 = { *uParam0 - vVar20 };
		vVar29.z = 0f;
		vVar6 = { func_493(0f, 0f, 1f, vVar26) };
		vVar6 = { vVar6 / FtoV(system::vmag(vVar6)) };
		fVar9 = (system::vmag(vVar29) * system::sin(gameplay::get_angle_between_2d_vectors(vVar26.x, vVar26.y, vVar29.x, vVar29.y)));
		if (!iParam9)
		{
			if (func_491(vVar6, vVar29) >= 0f)
			{
				vVar6 = { vVar6 * FtoV((((fVar16 * 0.5f) - fVar9) + fParam8)) };
			}
			else
			{
				vVar6 = { vVar6 * FtoV(((((fVar16 * 0.5f) - fVar9) + fParam8) * -1f)) };
			}
		}
		else if (func_491(vVar6, vVar29) >= 0f)
		{
			vVar6 = { vVar6 * FtoV(((((fVar16 * 0.5f) + fVar9) + fParam8) * -1f)) };
		}
		else
		{
			vVar6 = { vVar6 * FtoV((((fVar16 * 0.5f) + fVar9) + fParam8)) };
		}
		vVar13 = { *uParam0 + vVar6 };
		if (system::vdist(vVar10, *uParam0, uParam0->f_1, 0f) < system::vdist(vVar13, *uParam0, uParam0->f_1, 0f))
		{
			*uParam0 = { vVar10 };
		}
		else
		{
			*uParam0 = { vVar13 };
		}
	}
}

void func_831(var uParam0, struct<2> Param1, var uParam3, struct<2> Param4, var uParam6, float fParam7, int iParam8)//Position - 0x74F55
{
	vector3 vVar0;
	float fVar3;
	float fVar4;
	float fVar5;
	float fVar6;
	float fVar7;
	float fVar8;
	
	vVar0 = { *uParam0 };
	fVar3 = (*uParam0 - Param1);
	fVar4 = (*uParam0 - Param4);
	if (fVar3 < fVar4)
	{
		fVar5 = fVar3;
	}
	else
	{
		fVar5 = fVar4;
	}
	fVar6 = (uParam0->f_1 - Param1.f_1);
	fVar7 = (uParam0->f_1 - Param4.f_1);
	if (fVar6 < fVar7)
	{
		fVar8 = fVar6;
	}
	else
	{
		fVar8 = fVar7;
	}
	vVar0 = { *uParam0 };
	if (!iParam8)
	{
		if (fVar5 < fVar8)
		{
			if (fVar3 < fVar4)
			{
				vVar0.x = (Param1 - fParam7);
			}
			else
			{
				vVar0.x = (Param4 + fParam7);
			}
		}
		else if (fVar6 < fVar7)
		{
			vVar0.y = (Param1.f_1 - fParam7);
		}
		else
		{
			vVar0.y = (Param4.f_1 + fParam7);
		}
	}
	else if (fVar5 < fVar8)
	{
		if (fVar3 < fVar4)
		{
			vVar0.x = (Param4 + fParam7);
		}
		else
		{
			vVar0.x = (Param1 - fParam7);
		}
	}
	else if (fVar6 < fVar7)
	{
		vVar0.y = (Param4.f_1 + fParam7);
	}
	else
	{
		vVar0.y = (Param1.f_1 - fParam7);
	}
	*uParam0 = { vVar0 };
}

bool func_832(vector3 vParam0, var uParam3, var uParam4, var uParam5, int iParam6, int iParam7)//Position - 0x75054
{
	int iVar0;
	int iVar1;
	
	if (func_853(vParam0))
	{
		if (func_836(uParam3, iParam6, 0, 1))
		{
			if (iParam6)
			{
			}
			return true;
		}
	}
	if (func_834(uParam3, iParam6, 1))
	{
		if (iParam6)
		{
		}
		return true;
	}
	if (iParam7)
	{
		if (func_833(*uParam3, 1056964608))
		{
			return true;
		}
	}
	iVar1 = false;
	iVar0 = 0;
	while (iVar0 < *uParam4)
	{
		if (system::vdist(*uParam3, *(uParam4[iVar0 /*3*/])) < (*uParam5)[iVar0])
		{
			if (iParam6)
			{
				func_826(uParam3, *(uParam4[iVar0 /*3*/]), (*uParam5)[iVar0], 1036831949, 0, 0);
			}
			iVar1 = true;
		}
		iVar0++;
	}
	if (iVar1)
	{
		return true;
	}
	return false;
}

bool func_833(vector3 vParam0, float fParam3)//Position - 0x7510F
{
	int iVar0;
	
	iVar0 = 0;
	while (iVar0 < 10)
	{
		if (system::vdist(vParam0, Global_2404994.f_2258[iVar0 /*3*/]) < fParam3)
		{
			return true;
		}
		iVar0++;
	}
	return false;
}

bool func_834(var uParam0, int iParam1, int iParam2)//Position - 0x7514A
{
	var uVar0;
	var uVar1;
	vector3 vVar2;
	
	if (func_823(*uParam0, &uVar0))
	{
		if (iParam1)
		{
			vVar2 = { *uParam0 };
			func_835(&vVar2, &(Global_2404994.f_355[uVar0 /*12*/]), 1036831949, 0, iParam2);
			if (func_823(vVar2, &uVar1) || func_827(vVar2))
			{
				vVar2 = { *uParam0 };
				func_835(&vVar2, &(Global_2404994.f_355[uVar0 /*12*/]), 1036831949, 1, iParam2);
			}
			*uParam0 = { vVar2 };
		}
		return true;
	}
	return false;
}

void func_835(var uParam0, var uParam1, float fParam2, int iParam3, int iParam4)//Position - 0x751CE
{
	if (iParam4)
	{
		switch (uParam1->f_10)
		{
			case 0:
				*uParam0 = { func_829(*uParam0, *uParam1, 0f, 0f, 0f, (uParam1->f_6 + (IntToFloat(Global_2404994.f_2256) * uParam1->f_8)), 0, fParam2, iParam3) };
				break;
			
			case 1:
				*uParam0 = { func_829(*uParam0, *uParam1, uParam1->f_3, 0f, 1, fParam2, iParam3) };
				break;
			
			case 2:
				*uParam0 = { func_829(*uParam0, *uParam1, uParam1->f_3, uParam1->f_6, 2, fParam2, iParam3) };
				break;
		}
	}
	else
	{
		switch (uParam1->f_10)
		{
			case 0:
				func_826(uParam0, *uParam1, (uParam1->f_6 + (IntToFloat(Global_2404994.f_2256) * uParam1->f_8)), fParam2, iParam3, 0);
				break;
			
			case 1:
				func_831(uParam0, *uParam1, uParam1->f_3, fParam2, iParam3);
				break;
			
			case 2:
				func_830(uParam0, *uParam1, uParam1->f_3, uParam1->f_6, fParam2, iParam3);
				break;
			}
	}
}

bool func_836(var uParam0, int iParam1, int iParam2, int iParam3)//Position - 0x752D8
{
	int iVar0;
	vector3 vVar1;
	
	iVar0 = 0;
	while (iVar0 < 8)
	{
		if (Global_2409172[iVar0 /*17*/].f_9 == 1)
		{
			if (!iParam2 || (iParam2 && Global_2409172[iVar0 /*17*/].f_16))
			{
				if (func_824(*uParam0, &(Global_2409172[iVar0 /*17*/]), 1008981770, 1, 0))
				{
					if (iParam1)
					{
						if (Global_2409172[iVar0 /*17*/].f_12)
						{
							*uParam0 = { Global_2409172[iVar0 /*17*/].f_13 };
						}
						else
						{
							vVar1 = { *uParam0 };
							func_835(&vVar1, &(Global_2409172[iVar0 /*17*/]), 1036831949, 0, iParam3);
							if (func_836(&vVar1, 0, 0, 0))
							{
								vVar1 = { *uParam0 };
								func_835(&vVar1, &(Global_2409172[iVar0 /*17*/]), 1036831949, 1, 0);
							}
							*uParam0 = { vVar1 };
						}
					}
					return true;
				}
			}
		}
		iVar0++;
	}
	return false;
}

int func_837(var uParam0, var uParam1, var uParam2)//Position - 0x753B1
{
	int iVar0;
	vector3 vVar1;
	float fVar4;
	int iVar5;
	int iVar6;
	int iVar7;
	int iVar8;
	float fVar9;
	int iVar10;
	int iVar11;
	float fVar12;
	int iVar13;
	vector3 vVar14;
	var uVar17;
	
	if (Global_2404994.f_1685 > 0)
	{
		iVar0 = 0;
		if (!system::vmag(uParam2->f_35) > 0f)
		{
			uParam2->f_35 = { *uParam0 };
		}
		if (uParam2->f_15)
		{
			if (func_832(uParam2->f_35, uParam0, &(uParam2->f_38), &(uParam2->f_45), 1, 1))
			{
				uParam2->f_6 = 9999.9f;
				uParam2->f_7 = 9999.9f;
			}
		}
		if (uParam2->f_48)
		{
			if (func_828(uParam0, 1))
			{
				uParam2->f_6 = 9999.9f;
				uParam2->f_7 = 9999.9f;
			}
		}
		Global_2411146.f_162 = 0;
		Global_2411146.f_163 = 0;
		iVar5 = 0;
		while (iVar5 < 40)
		{
			Global_2411146[iVar5 /*3*/] = { 0f, 0f, 0f };
			Global_2411146.f_121[iVar5] = 0f;
			iVar5++;
		}
		iVar0 = 0;
		while (iVar0 < Global_2404994.f_1685)
		{
			vVar1 = { Global_2404994.f_1686[iVar0 /*4*/] };
			fVar4 = Global_2404994.f_1686[iVar0 /*4*/].f_3;
			if (system::vmag(vVar1) > 0f)
			{
				if ((uParam2->f_57 && system::vdist(vVar1, uParam2->f_35) > uParam2->f_4) || uParam2->f_57 == 0)
				{
					if ((uParam2->f_5 > 0f && system::vdist(vVar1.x, vVar1.y, 0f, uParam2->f_35, uParam2->f_35.f_1, 0f) < uParam2->f_5) || uParam2->f_5 <= 0f)
					{
						if ((uParam2->f_12 && !func_811(vVar1, fVar4, uParam2->f_34, player::player_id(), 0, uParam2->f_56)) || !uParam2->f_12)
						{
							if (!uParam2->f_15 || !func_832(uParam2->f_35, &vVar1, &(uParam2->f_38), &(uParam2->f_45), 0, 1))
							{
								if (uParam2->f_8)
								{
									iVar6 = uParam2->f_31;
									iVar7 = true;
									iVar8 = 1;
									fVar9 = uParam2->f_49;
									if (!uParam2->f_55)
									{
										iVar6 = 0;
										iVar7 = false;
										iVar8 = 0;
										fVar9 = 1f;
									}
									else if (uParam2->f_17)
									{
										iVar6 = 0;
										iVar7 = false;
										iVar8 = 0;
										if (uParam2->f_33 == 1)
										{
											fVar9 = (fVar9 * 0.375f);
										}
									}
									else
									{
										iVar7 = true;
										iVar8 = 1;
										if (uParam2->f_28)
										{
											if (uParam2->f_33 == 1)
											{
												fVar9 = (fVar9 * 0.375f);
											}
										}
									}
									iVar10 = false;
									if (uParam2->f_3 > 7f)
									{
										if (func_841(vVar1, 6f, 1f, 1f, 5f, iVar6, iVar7, iVar8, fVar9, 0, -1, 1, uParam2->f_3, 0, 0, 0, 0))
										{
											iVar10 = true;
										}
									}
									else if (func_841(vVar1, 6f, 1f, 1f, 5f, iVar6, iVar7, iVar8, fVar9, 0, -1, 1, 0f, 0, 0, 0, 0) && !func_789(vVar1, fVar4, uParam2->f_34, 1, 1, 0, 0, 0, 0))
									{
										iVar10 = true;
									}
									if (iVar10)
									{
										if ((uParam2->f_29 || uParam2->f_30) || uParam2->f_52)
										{
											fVar12 = 0f;
											if (uParam2->f_52)
											{
												iVar11 = func_808(vVar1, uParam2->f_54, &fVar12);
											}
											if (!uParam2->f_52 || (uParam2->f_52 && iVar11 <= uParam2->f_53))
											{
												if (uParam2->f_52)
												{
													if (iVar11 < uParam2->f_53)
													{
														iVar5 = 0;
														while (iVar5 < Global_2411146.f_162)
														{
															Global_2411146[iVar5 /*3*/] = { 0f, 0f, 0f };
															Global_2411146.f_121[iVar5] = 0f;
															iVar5++;
														}
														Global_2411146.f_162 = 0;
														uParam2->f_53 = iVar11;
													}
												}
												if (uParam2->f_30)
												{
													if (Global_2411146.f_162 == 0)
													{
														Global_2411146[0 /*3*/] = { vVar1 };
														Global_2411146.f_121[0] = fVar4;
													}
													else
													{
														iVar5 = 0;
														while (iVar5 < Global_2411146.f_162 + 1)
														{
															if (iVar5 < 40)
															{
																if (system::vdist2(vVar1, uParam2->f_35) < system::vdist2(Global_2411146[iVar5 /*3*/], uParam2->f_35))
																{
																	func_807(vVar1, fVar4, iVar5);
																	iVar5 = Global_2411146.f_162 + 1;
																}
															}
															iVar5++;
														}
													}
													Global_2411146.f_162++;
													if (Global_2411146.f_162 >= 5)
													{
														if ((uParam2->f_52 && uParam2->f_53 == 0) || uParam2->f_52 == 0)
														{
															iVar0 = Global_2404994.f_1685;
														}
														else if (Global_2411146.f_162 == 40)
														{
															iVar0 = Global_2404994.f_1685;
														}
													}
												}
												else
												{
													Global_2411146[Global_2411146.f_162 /*3*/] = { vVar1 };
													Global_2411146.f_121[Global_2411146.f_162] = fVar4;
													Global_2411146.f_162++;
													if (Global_2411146.f_162 >= 10)
													{
														if ((uParam2->f_52 && uParam2->f_53 == 0) || uParam2->f_52 == 0)
														{
															iVar0 = Global_2404994.f_1685;
														}
														else if (Global_2411146.f_162 == 40)
														{
															iVar0 = Global_2404994.f_1685;
														}
													}
												}
											}
										}
										else
										{
											*uParam0 = { vVar1 };
											*uParam1 = fVar4;
											return 1;
										}
									}
								}
								else
								{
									*uParam0 = { vVar1 };
									*uParam1 = fVar4;
									return 1;
								}
							}
						}
					}
				}
			}
			iVar0++;
		}
		if (Global_2411146.f_162 > 0)
		{
			if (uParam2->f_30)
			{
				*uParam0 = { Global_2411146[0 /*3*/] };
				*uParam1 = Global_2411146.f_121[0];
				return 1;
			}
			else
			{
				if (Global_2411146.f_163 > 0 && !Global_2411146.f_163 == Global_2411146.f_162)
				{
					func_805(0, uParam2);
				}
				iVar13 = gameplay::get_random_int_in_range(0, Global_2411146.f_162);
				vVar14 = { Global_2411146[0 /*3*/] };
				uVar17 = Global_2411146.f_121[0];
				Global_2411146[0 /*3*/] = { Global_2411146[iVar13 /*3*/] };
				Global_2411146.f_121[0] = Global_2411146.f_121[iVar13];
				Global_2411146[iVar13 /*3*/] = { vVar14 };
				Global_2411146.f_121[iVar13] = uVar17;
				*uParam0 = { Global_2411146[0 /*3*/] };
				*uParam1 = Global_2411146.f_121[0];
				return 1;
			}
		}
		else
		{
			uParam2->f_33++;
			if (uParam2->f_33 < 2)
			{
				return func_837(uParam0, uParam1, uParam2);
			}
			else
			{
				uParam2->f_33 = 0;
				func_800(uParam0, uParam1, uParam2);
				return 1;
			}
		}
	}
	return 0;
}

bool func_838(vector3 vParam0, float fParam3, int iParam4, int iParam5, int iParam6)//Position - 0x75995
{
	int iVar0;
	int iVar1;
	
	iVar0 = 0;
	while (iVar0 < 32)
	{
		if (!iParam5 == iVar0 || iParam6 == 1)
		{
			iVar1 = iVar0;
			if (func_840(vParam0, iParam4, Global_2415705.f_426[iVar0 /*3*/], Global_2415705.f_556[iVar0]))
			{
				if (func_839(vParam0, fParam3, iParam4, Global_2415705.f_426[iVar0 /*3*/], Global_2415705.f_523[iVar0], Global_2415705.f_556[iVar0], 0))
				{
					if (func_387(iVar1, 0, 1) && func_387(iParam5, 0, 1))
					{
						return true;
					}
					else
					{
						return true;
					}
				}
			}
		}
		iVar0++;
	}
	return false;
}

bool func_839(vector3 vParam0, float fParam3, int iParam4, vector3 vParam5, float fParam8, int iParam9, int iParam10)//Position - 0x75A43
{
	int iVar0;
	vector3 vVar1[4];
	vector3 vVar14;
	vector3 vVar17;
	float fVar20;
	float fVar21;
	float fVar22;
	vector3 vVar23;
	vector3 vVar26;
	
	if (func_499(vParam0, vParam5, fParam8, iParam9, 1036831949))
	{
		return true;
	}
	func_480(iParam4, &vVar14, &vVar17, 1086324736, 1080033280, 1077936128);
	fVar20 = gameplay::absf((vVar17.y - vVar14.y));
	fVar21 = gameplay::absf((vVar17.x - vVar14.x));
	fVar22 = gameplay::absf((vVar17.y - vVar14.y));
	vVar23 = { 0f, (fVar20 * 0.5f), 0f };
	func_470(&vVar23, 0f, 0f, fParam3);
	vVar26 = { (fVar21 * 0.5f), 0f, 0f };
	func_470(&vVar26, 0f, 0f, fParam3);
	vVar1[0 /*3*/] = { vParam0 + vVar23 + vVar26 };
	vVar1[0 /*3*/].f_2 = (vVar1[0 /*3*/].f_2 + (0.5f * fVar22));
	vVar1[1 /*3*/] = { vParam0 + vVar23 - vVar26 };
	vVar1[1 /*3*/].f_2 = (vVar1[1 /*3*/].f_2 + (0.5f * fVar22));
	vVar1[2 /*3*/] = { vParam0 - vVar23 + vVar26 };
	vVar1[2 /*3*/].f_2 = (vVar1[2 /*3*/].f_2 + (0.5f * fVar22));
	vVar1[3 /*3*/] = { vParam0 - vVar23 - vVar26 };
	vVar1[3 /*3*/].f_2 = (vVar1[3 /*3*/].f_2 + (0.5f * fVar22));
	iVar0 = 0;
	while (iVar0 < 4)
	{
		if (func_499(vVar1[iVar0 /*3*/], vParam5, fParam8, iParam9, 1036831949))
		{
			return true;
		}
		iVar0++;
	}
	if (!iParam10)
	{
		if (func_839(vParam5, fParam8, iParam9, vParam0, fParam3, iParam4, 1))
		{
			return true;
		}
	}
	return false;
}

bool func_840(vector3 vParam0, int iParam3, vector3 vParam4, int iParam7)//Position - 0x75BE3
{
	float fVar0;
	float fVar1;
	float fVar2;
	
	fVar0 = func_500(iParam3, 1008981770);
	fVar1 = func_500(iParam7, 1008981770);
	fVar2 = system::vdist(vParam0, vParam4);
	if (fVar2 < (fVar0 + fVar1))
	{
		return true;
	}
	return false;
}

bool func_841(vector3 vParam0, float fParam3, float fParam4, float fParam5, float fParam6, int iParam7, int iParam8, int iParam9, float fParam10, int iParam11, int iParam12, int iParam13, float fParam14, int iParam15, float fParam16, int iParam17, int iParam18)//Position - 0x75C23
{
	Global_2404994.f_2 = 0;
	if (fParam3 > 0f)
	{
		if (vehicle::is_any_vehicle_near_point(vParam0, fParam3))
		{
			return false;
		}
	}
	if (fParam4 > 0f)
	{
		if (ped::is_any_ped_near_point(vParam0.x, vParam0.y, (vParam0.y + 1f), fParam4) || ped::is_any_ped_near_point(vParam0, fParam4))
		{
			return false;
		}
	}
	if (fParam5 > 0f)
	{
		if (object::is_any_object_near_point(vParam0, fParam5, iParam18))
		{
			return false;
		}
	}
	Global_2404994.f_2++;
	if (iParam13)
	{
		if (fire::get_number_of_fires_in_range(vParam0, 2.5f) > 0)
		{
			return false;
		}
	}
	Global_2404994.f_2++;
	if (fParam14 > 0f)
	{
		if (func_884(vParam0, fParam14, 1, 1, iParam15, iParam17, 0, iParam15))
		{
			return false;
		}
	}
	Global_2404994.f_2++;
	if (iParam8)
	{
		if (fParam6 > 0f)
		{
			if (func_842(vParam0, fParam6, iParam7, iParam9, fParam10, iParam11, iParam12, fParam16, iParam17))
			{
				return false;
			}
		}
	}
	Global_2404994.f_2++;
	return true;
}

bool func_842(vector3 vParam0, float fParam3, int iParam4, int iParam5, float fParam6, int iParam7, int iParam8, float fParam9, int iParam10)//Position - 0x75D33
{
	int iVar0;
	int iVar1;
	float fVar2;
	
	if (iParam4 && !iParam7)
	{
		if (func_387(player::player_id(), 1, 1))
		{
			if (!cam::is_screen_faded_out())
			{
				fVar2 = fParam6;
				if (fParam9 > 0f)
				{
					fVar2 = fParam9;
				}
				if (gameplay::get_distance_between_coords(func_131(player::player_id()), vParam0, 1) <= (fVar2 + fParam3))
				{
					if (cam::is_sphere_visible(vParam0, fParam3))
					{
						return true;
					}
				}
			}
		}
	}
	iVar0 = 0;
	while (iVar0 < 32)
	{
		iVar1 = iVar0;
		if (func_387(iVar1, 1, 1))
		{
			if (!func_124(iVar1, 0) && network::_0x9DE986FC9A87C474(player::player_id(), iVar1))
			{
				if (iParam4 == 1 || (iParam4 == 0 && iVar1 != player::player_id()))
				{
					if ((func_793(iVar1) || !iParam10) && !Global_2421621[iVar1 /*358*/].f_262)
					{
						fVar2 = fParam6;
						if (fParam9 > 0f)
						{
							if (!player::get_player_team(iVar1) == -1)
							{
								if (player::get_player_team(iVar1) == player::get_player_team(player::player_id()))
								{
									fVar2 = fParam9;
								}
							}
						}
						if (!iParam7)
						{
							if ((iParam5 || (iParam5 == 0 && player::get_player_team(iVar1) != player::get_player_team(player::player_id()))) || player::get_player_team(iVar1) == -1)
							{
								if (gameplay::get_distance_between_coords(func_131(iVar1), vParam0, 1) <= (fVar2 + fParam3))
								{
									if (network::is_sphere_visible_to_player(iVar1, vParam0, fParam3))
									{
										return true;
									}
								}
							}
						}
						else if (player::get_player_team(iVar1) != iParam8 || player::get_player_team(iVar1) == -1)
						{
							if (gameplay::get_distance_between_coords(func_131(iVar1), vParam0, 1) <= (fVar2 + fParam3))
							{
								if (network::is_sphere_visible_to_player(iVar1, vParam0, fParam3))
								{
									return true;
								}
							}
						}
					}
				}
			}
		}
		iVar0++;
	}
	return false;
}

void func_843(vector3 vParam0, int iParam3)//Position - 0x75EEB
{
	int iVar0;
	int iVar1;
	int iVar2[3];
	var uVar6[3];
	
	if (!func_850())
	{
		if (iParam3 == 0)
		{
		}
		iVar1 = func_849(vParam0);
		if (iVar1 > -1)
		{
			func_858();
			switch (iVar1)
			{
				case 0:
					func_848(-1139.678f, -2694.165f, 12.949f, 283.4298f);
					func_848(-1137.455f, -2690.167f, 12.9448f, 283.0835f);
					func_848(-1135.02f, -2685.912f, 12.9412f, 283.8219f);
					func_848(-1099.898f, -2688.611f, 12.9473f, 295.3925f);
					func_848(-1110.51f, -2693.236f, 12.9595f, 298.84f);
					func_848(-1081.807f, -2690.015f, 12.7567f, 219.1729f);
					func_848(-1075.586f, -2697.09f, 12.7567f, 224.8977f);
					func_848(-1095.133f, -2659.995f, 12.7567f, 190.9326f);
					func_848(-1096.511f, -2649.483f, 12.6066f, 182.7913f);
					break;
				
				case 1:
					func_848(-1411.731f, -533.6462f, 30.2703f, 215.116f);
					func_848(-1416.407f, -527.0309f, 30.6453f, 215.2683f);
					func_848(-1432.146f, -580.9922f, 29.5263f, 118.3858f);
					func_848(-1438.8f, -584.4678f, 29.595f, 118.1207f);
					break;
				
				case 2:
					func_848(-780.5905f, 292.8159f, 84.673f, 97.2697f);
					func_848(-788.6147f, 291.8073f, 84.72f, 97.7348f);
					func_848(-765.572f, 294.4459f, 84.5182f, 93.9327f);
					func_848(-756.9962f, 294.8176f, 84.4061f, 93.9545f);
					break;
				
				case 3:
					func_848(-647.9388f, 40.9257f, 38.9494f, 356.4108f);
					func_848(-647.239f, 49.2068f, 40.7135f, 355.9723f);
					func_848(-620.1517f, 3.6633f, 40.5904f, 98.3813f);
					func_848(-610.5603f, 5.1258f, 41.2404f, 98.696f);
					break;
				
				case 4:
					func_848(-943.2437f, -487.8443f, 35.7504f, 208.6441f);
					func_848(-949.2938f, -476.3759f, 36.0878f, 208.1432f);
					func_848(-955.3208f, -465.3984f, 36.3328f, 206.9198f);
					func_848(-959.5925f, -457.0372f, 36.5226f, 207.7534f);
					break;
				
				case 5:
					func_848(-966.1365f, -401.5364f, 36.6824f, 27.6587f);
					func_848(-934.9108f, -413.4091f, 36.5161f, 118.0149f);
					func_848(-920.2501f, -405.6656f, 36.5869f, 117.2407f);
					func_848(-971.7031f, -390.5213f, 36.7118f, 26.8016f);
					break;
				
				case 6:
					func_848(-58.1347f, -573.486f, 36.5789f, 341.8442f);
					func_848(-64.227f, -590.2214f, 35.1654f, 338.972f);
					func_848(-67.0332f, -599.2827f, 35.1787f, 341.5854f);
					func_848(-71.8651f, -612.8891f, 35.1574f, 339.8537f);
					break;
				
				case 7:
					func_848(-232.1917f, -978.1431f, 28.166f, 160.2115f);
					func_848(-229.6225f, -970.9731f, 28.1636f, 160.2397f);
					func_848(-251.993f, -998.3963f, 28.3747f, 249.3297f);
					func_848(-262.222f, -994.5226f, 29.23f, 249.4673f);
					break;
				
				case 8:
					func_848(151.624f, -1309.343f, 28.2023f, 243.201f);
					func_848(152.7886f, -1305.608f, 28.2023f, 243.9973f);
					func_848(145.8017f, -1287.19f, 28.312f, 120.6275f);
					func_848(142.8935f, -1282.286f, 28.3156f, 120.3024f);
					break;
				
				case 9:
					func_848(-2333.575f, 272.6518f, 168.4671f, 23.0287f);
					func_848(-2322.187f, 277.638f, 168.4671f, 23.4249f);
					func_848(-2316.222f, 279.9105f, 168.4671f, 23.0175f);
					func_848(-2314.396f, 290.9f, 168.4671f, 114.3983f);
					func_848(-2316.81f, 296.424f, 168.4671f, 113.6228f);
					func_848(-2318.572f, 299.2423f, 168.4671f, 293.83f);
					func_848(-2327.902f, 291.6653f, 168.4671f, 294.1158f);
					func_848(-2330.711f, 274.0757f, 168.4671f, 205.2184f);
					func_848(-2345.082f, 277.3852f, 168.4671f, 113.4219f);
					func_848(-2347.777f, 282.6038f, 168.4671f, 292.7772f);
					func_848(-2339.33f, 293.4399f, 168.4671f, 114.2739f);
					func_848(-2352.681f, 294.4205f, 168.4671f, 115.5597f);
					break;
				
				case 10:
					func_847(78);
					break;
				
				case 11:
					func_847(79);
					break;
				
				case 12:
					func_847(82);
					break;
				
				case 13:
					func_847(81);
					break;
				
				case 14:
					func_847(73);
					break;
				
				case 15:
					func_848(382.9244f, 443.8122f, 142.9934f, 78.3408f);
					func_848(391.2023f, 442.4812f, 142.5089f, 82.2125f);
					func_848(400.1477f, 441.0816f, 142.0776f, 83.4259f);
					func_848(414.2964f, 439.2628f, 141.5056f, 80.8689f);
					break;
				
				case 16:
					func_847(75);
					break;
				
				case 17:
					func_847(76);
					break;
				
				case 18:
					func_847(77);
					break;
				
				case 19:
					func_848(-921.9734f, 704.0754f, 150.8142f, 96.5139f);
					func_848(-904.7881f, 708.9782f, 149.8261f, 108.2109f);
					func_848(-931.6637f, 703.693f, 151.369f, 87.7447f);
					func_848(-943.8763f, 704.2332f, 152.0993f, 87.6764f);
					break;
				
				case 20:
					func_847(80);
					break;
				
				case 21:
				case 25:
					func_847(87);
					break;
				
				case 22:
				case 26:
					func_847(88);
					break;
				
				case 23:
				case 27:
					func_847(89);
					break;
				
				case 24:
				case 28:
					func_847(90);
					break;
				
				case 29:
				case 30:
					if (func_846(iParam3))
					{
						func_847(Global_1589933[player::player_id() /*601*/].f_257.f_15);
					}
					break;
			}
		}
		else if (func_845(vParam0, 50f, &iVar2, &uVar6))
		{
			func_858();
			iVar0 = 0;
			while (iVar0 < iVar2)
			{
				if (!uVar6[iVar0] && func_307(iVar2[iVar0], -1))
				{
					if (func_846(iParam3))
					{
						func_847(iVar2[iVar0]);
					}
				}
				else if (uVar6[iVar0])
				{
					func_844(iVar2[iVar0]);
				}
				else
				{
					func_847(iVar2[iVar0]);
				}
				iVar0++;
			}
		}
	}
}

void func_844(int iParam0)//Position - 0x766CF
{
	switch (iParam0)
	{
		case 23:
			func_848(434.1898f, 6535.824f, 27.0084f, 66.9998f);
			func_848(434.9146f, 6539.661f, 26.9691f, 66.9998f);
			func_848(435.1928f, 6543.298f, 26.889f, 66.9998f);
			func_848(429.8495f, 6506.581f, 27.1807f, 59.7997f);
			func_848(429.8463f, 6511.11f, 27.0717f, 60.9997f);
			func_848(434.2748f, 6581.816f, 26.1303f, 85.1993f);
			func_848(443.1016f, 6580.717f, 26.0739f, 85.1993f);
			func_848(451.9748f, 6579.937f, 26.0319f, 85.1993f);
			break;
		
		case 26:
			func_848(-148.9694f, 6325.552f, 30.4564f, 224.1983f);
			func_848(-154.9585f, 6331.287f, 30.5809f, 225.7983f);
			func_848(-136.8806f, 6347.622f, 30.4906f, 43.9982f);
			func_848(-142.1459f, 6342.532f, 30.49f, 44.7982f);
			func_848(-136.6504f, 6357.062f, 30.4907f, 43.9982f);
			func_848(-151.1909f, 6358.461f, 30.4907f, 223.398f);
			func_848(-141.4154f, 6365.831f, 30.4907f, 43.3979f);
			func_848(-147.8279f, 6378.042f, 30.5012f, 312.7973f);
			break;
		
		case 24:
			func_848(60.7522f, 6465.807f, 30.3941f, 213.3973f);
			func_848(57.4131f, 6462.55f, 30.3663f, 213.3973f);
			func_848(48.0438f, 6452.668f, 30.3245f, 213.3973f);
			func_848(40.6765f, 6445.235f, 30.3475f, 213.3973f);
			func_848(37.8298f, 6442.521f, 30.3489f, 213.3973f);
			func_848(35.0212f, 6439.866f, 30.3332f, 213.3973f);
			func_848(32.1837f, 6437.21f, 30.2991f, 213.3973f);
			func_848(29.4732f, 6434.526f, 30.3702f, 213.3973f);
			break;
		
		case 25:
			func_848(-377.1927f, 6142.805f, 30.3409f, 315.3965f);
			func_848(-383.3481f, 6136.154f, 30.3752f, 315.3965f);
			func_848(-395.8286f, 6123.635f, 30.2987f, 46.3965f);
			func_848(-389.1636f, 6117.241f, 30.3641f, 46.3965f);
			func_848(-370.6174f, 6129.779f, 30.4414f, 45.7965f);
			func_848(-360.983f, 6130.575f, 30.4401f, 45.7965f);
			func_848(-416.8689f, 6103.411f, 30.3852f, 325.7964f);
			func_848(-420.9229f, 6095.657f, 30.3155f, 334.7964f);
			break;
		
		case 22:
			func_848(45.2181f, 6341.107f, 30.2296f, 14.3964f);
			func_848(41.6057f, 6339.476f, 30.2306f, 14.3964f);
			func_848(39.2508f, 6359.469f, 30.2398f, 207.3965f);
			func_848(36.3203f, 6356.893f, 30.2398f, 207.3965f);
			func_848(51.6043f, 6365.022f, 30.2399f, 33.5965f);
			func_848(65.6465f, 6380.626f, 30.2398f, 212.9964f);
			func_848(24.8587f, 6366.36f, 30.2286f, 32.7965f);
			func_848(19.6254f, 6360.736f, 30.2305f, 32.7965f);
			break;
		
		case 28:
			func_848(94.0245f, 181.2181f, 103.5566f, 160.3953f);
			func_848(91.0039f, 182.2811f, 103.6179f, 160.3953f);
			func_848(68.365f, 148.2105f, 103.5812f, 339.9951f);
			func_848(62.2104f, 150.5185f, 103.6101f, 339.9951f);
			func_848(69.5198f, 186.4278f, 103.9415f, 69.7949f);
			func_848(62.59f, 189.0833f, 103.9981f, 69.7949f);
			func_848(55.6095f, 191.8089f, 104.2827f, 69.7949f);
			func_848(154.7309f, 182.1333f, 104.6903f, 160.1945f);
			break;
		
		case 31:
			func_848(322.4916f, -714.5293f, 28.1574f, 158.5941f);
			func_848(329.5591f, -694.4284f, 28.1656f, 158.5941f);
			func_848(324.565f, -684.3934f, 28.3133f, 247.194f);
			func_848(326.4054f, -679.9403f, 28.3192f, 247.194f);
			func_848(297.1177f, -804.3891f, 28.4859f, 160.594f);
			func_848(288.5461f, -814.6994f, 28.1563f, 163.194f);
			func_848(286.0127f, -821.7357f, 28.3093f, 163.194f);
			func_848(283.6725f, -828.9533f, 28.1247f, 158.994f);
			break;
		
		case 29:
			func_848(-1448.551f, -355.0512f, 43.3715f, 313.3925f);
			func_848(-1454.819f, -359.998f, 42.7885f, 311.3925f);
			func_848(-1462.675f, -360.1352f, 42.9255f, 223.392f);
			func_848(-1447.965f, -368.3028f, 42.5412f, 5.9918f);
			func_848(-1468.678f, -353.4619f, 43.2024f, 217.7916f);
			func_848(-1473.219f, -346.7773f, 43.5318f, 213.9913f);
			func_848(-1490.742f, -420.1957f, 35.9291f, 229.1911f);
			func_848(-1496.003f, -395.7657f, 38.1394f, 45.7909f);
			break;
		
		case 30:
			func_848(-1174.491f, -1381.01f, 3.9253f, 116.5903f);
			func_848(-1183.148f, -1392.559f, 3.6319f, 304.9901f);
			func_848(-1160.964f, -1417.759f, 3.7043f, 65.7899f);
			func_848(-1151.611f, -1411.377f, 3.9411f, 63.5895f);
			func_848(-1167.187f, -1424.07f, 3.4884f, 123.5897f);
			func_848(-1148.22f, -1409.164f, 4.0217f, 63.5895f);
			func_848(-1137.11f, -1372.818f, 3.8993f, 27.5895f);
			func_848(-1140.608f, -1365.747f, 4.0573f, 27.5895f);
			break;
		
		case 27:
			func_848(1414.237f, -1656.344f, 60.2449f, 332.7893f);
			func_848(1416.668f, -1659.933f, 60.6982f, 332.7893f);
			func_848(1419.327f, -1663.972f, 61.2382f, 332.7893f);
			func_848(1421.557f, -1667.367f, 61.7479f, 332.7893f);
			func_848(1423.744f, -1670.853f, 62.3125f, 332.7893f);
			func_848(1412.157f, -1652.746f, 59.9105f, 332.7893f);
			func_848(1426.201f, -1673.598f, 62.7133f, 330.1893f);
			func_848(1435.804f, -1694.73f, 65.0743f, 352.5892f);
			break;
		
		case 33:
			func_848(2810.787f, 4435.92f, 47.5295f, 20.7996f);
			func_848(2808.413f, 4443.922f, 47.3732f, 14.7995f);
			func_848(2806.298f, 4451.786f, 47.1865f, 15.3995f);
			func_848(2803.925f, 4459.858f, 46.9823f, 15.3995f);
			func_848(2801.756f, 4467.755f, 46.8147f, 15.3995f);
			func_848(2893.563f, 4430.258f, 47.338f, 105.9994f);
			func_848(2903.725f, 4425.854f, 47.3523f, 23.1992f);
			func_848(2907.076f, 4418.059f, 47.6301f, 23.1992f);
			break;
		
		case 36:
			func_848(1680.448f, 4821.131f, 41.0599f, 186.399f);
			func_848(1679.76f, 4829.447f, 40.9167f, 186.399f);
			func_848(1678.668f, 4838.03f, 41.0221f, 187.7989f);
			func_848(1677.612f, 4846.028f, 41.0452f, 187.7989f);
			func_848(1675.851f, 4860.434f, 41.0901f, 187.7989f);
			func_848(1674.843f, 4868.343f, 41.0684f, 187.7989f);
			func_848(1673.543f, 4875.752f, 41.0684f, 186.7986f);
			func_848(1672.525f, 4884.972f, 41.0478f, 186.7986f);
			break;
		
		case 34:
			func_848(422.863f, 3583.901f, 32.2386f, 313.5986f);
			func_848(426.6211f, 3583.208f, 32.2386f, 313.5986f);
			func_848(430.466f, 3582.042f, 32.2386f, 313.5986f);
			func_848(434.2751f, 3580.881f, 32.2386f, 313.5986f);
			func_848(438.1525f, 3579.911f, 32.2386f, 313.5986f);
			func_848(442.0173f, 3578.948f, 32.2386f, 313.5986f);
			func_848(420.2694f, 3572.995f, 32.2385f, 353.7984f);
			func_848(424.4825f, 3572.1f, 32.2386f, 348.1984f);
			break;
		
		case 35:
			func_848(627.005f, 2726.019f, 40.7692f, 4.3984f);
			func_848(620.9771f, 2725.759f, 40.7897f, 4.3984f);
			func_848(614.8536f, 2725.355f, 40.8321f, 4.3984f);
			func_848(611.1158f, 2737.387f, 40.9734f, 185.3984f);
			func_848(598.9713f, 2736.261f, 41.0602f, 186.5986f);
			func_848(592.6151f, 2735.886f, 41.0602f, 186.5986f);
			func_848(586.0421f, 2735.9f, 41.0535f, 186.5986f);
			func_848(627.4468f, 2742.742f, 40.8963f, 183.5979f);
			break;
		
		case 32:
			func_848(214.3318f, 2492.26f, 53.9736f, 312.7978f);
			func_848(213.9953f, 2496.666f, 53.8128f, 312.7978f);
			func_848(213.7524f, 2501.251f, 53.5958f, 312.7978f);
			func_848(213.6645f, 2505.908f, 53.3477f, 312.7978f);
			func_848(213.4478f, 2510.734f, 53.1055f, 312.7978f);
			func_848(212.9148f, 2515.268f, 52.9376f, 312.7978f);
			func_848(211.5983f, 2519.216f, 52.6753f, 312.7978f);
			func_848(210.1288f, 2523.187f, 52.3493f, 312.7978f);
			break;
		
		case 38:
			func_848(153.6785f, -2476.192f, 4.9877f, 178.4004f);
			func_848(150.9209f, -2516.979f, 4.9909f, 179.9999f);
			func_848(150.9499f, -2524.965f, 4.9905f, 179.9999f);
			func_848(153.866f, -2467.242f, 4.9877f, 178.4004f);
			func_848(150.8115f, -2533.139f, 4.9895f, 180.0004f);
			func_848(153.8647f, -2433.386f, 5.2336f, 170.2002f);
			func_848(142.7427f, -2536.147f, 5f, 205.0002f);
			func_848(138.8267f, -2535.865f, 5f, 205.0002f);
			break;
		
		case 41:
			func_848(-341.4255f, -2734.451f, 5.0413f, 314.8f);
			func_848(-334.0134f, -2741.43f, 5.0269f, 314.8f);
			func_848(-329.7832f, -2745.604f, 5.0196f, 314.8f);
			func_848(-336.4781f, -2716.139f, 5.0028f, 134.1994f);
			func_848(-334.2752f, -2718.888f, 5.0048f, 135.1992f);
			func_848(-327.6603f, -2725.645f, 5.0103f, 135.1992f);
			func_848(-323.1619f, -2730.345f, 5.0099f, 135.1992f);
			func_848(-316.3481f, -2737.087f, 5.0033f, 135.1992f);
			break;
		
		case 39:
			func_848(1143.73f, -3105.091f, 4.8989f, 146.1979f);
			func_848(1140.009f, -3104.954f, 4.8985f, 146.1979f);
			func_848(1136.267f, -3104.69f, 4.8969f, 146.1979f);
			func_848(1132.732f, -3104.277f, 4.8944f, 146.1979f);
			func_848(1128.724f, -3104.54f, 4.896f, 146.1979f);
			func_848(1125.106f, -3104.057f, 4.8942f, 146.1979f);
			func_848(1117.8f, -3103.674f, 4.8922f, 146.1979f);
			func_848(1114.015f, -3103.448f, 4.8931f, 146.1979f);
			break;
		
		case 40:
			func_848(653.1188f, -2700.255f, 5.2101f, 24.7971f);
			func_848(656.1305f, -2707.245f, 5.214f, 24.7971f);
			func_848(659.3307f, -2714.378f, 5.2188f, 22.7968f);
			func_848(662.2627f, -2722.228f, 5.2188f, 19.1968f);
			func_848(649.2115f, -2728.359f, 5.1124f, 20.5967f);
			func_848(646.2606f, -2720.833f, 5.1103f, 21.3967f);
			func_848(643.4582f, -2713.846f, 5.1099f, 21.3967f);
			func_848(640.3513f, -2706.571f, 5.108f, 21.3967f);
			break;
		
		case 37:
			func_848(-260.5913f, -2615.255f, 5.0502f, 274.5953f);
			func_848(-253.2161f, -2614.896f, 5.0502f, 271.5953f);
			func_848(-245.6569f, -2614.862f, 5.0502f, 271.5953f);
			func_848(-238.214f, -2614.847f, 5.0502f, 271.5953f);
			func_848(-238.013f, -2630.961f, 5.0331f, 271.3949f);
			func_848(-260.9724f, -2631.418f, 5.0355f, 276.9951f);
			func_848(-253.401f, -2631.108f, 5.0319f, 272.195f);
			func_848(-245.5563f, -2631.06f, 5.0323f, 272.195f);
			break;
		
		default:
			break;
	}
}

bool func_845(struct<2> Param0, var uParam2, float fParam3, var uParam4, var uParam5)//Position - 0x7768D
{
	int iVar0;
	int iVar1;
	int iVar2;
	
	iVar2 = 0;
	iVar0 = 1;
	while (iVar0 <= 115)
	{
		if (iVar2 < *uParam4)
		{
			iVar1 = 0;
			iVar1 = 0;
			while (iVar1 < 2)
			{
				if (system::vdist(Param0, Param0.f_1, 0f, Global_1049427[iVar0 /*1942*/].f_3[iVar1 /*3*/], Global_1049427[iVar0 /*1942*/].f_3[iVar1 /*3*/].f_1, 0f) < fParam3)
				{
					(*uParam4)[iVar2] = iVar0;
					(*uParam5)[iVar2] = 0;
					iVar2++;
					iVar1 = 99;
				}
				iVar1++;
			}
		}
		iVar0++;
	}
	iVar0 = 0;
	while (iVar0 < 67)
	{
		if (iVar2 < *uParam4)
		{
			if (system::vdist(Param0, Param0.f_1, 0f, Global_1760739.f_20[iVar0 /*3*/], Global_1760739.f_20[iVar0 /*3*/].f_1, 0f) < fParam3)
			{
				(*uParam4)[iVar2] = iVar0;
				(*uParam5)[iVar2] = 1;
				iVar2++;
			}
		}
		iVar0++;
	}
	if (iVar2 > 0)
	{
		return true;
	}
	return false;
}

bool func_846(int iParam0)//Position - 0x77776
{
	if ((vehicle::is_this_model_a_bike(iParam0) || vehicle::is_this_model_a_quadbike(iParam0)) || vehicle::is_this_model_a_bicycle(iParam0))
	{
		return true;
	}
	return false;
}

void func_847(int iParam0)//Position - 0x777A4
{
	switch (iParam0)
	{
		case 78:
			func_848(-602.6942f, 690.0488f, 148.1567f, 75.0245f);
			func_848(-612.8933f, 692.116f, 148.7577f, 79.1005f);
			func_848(-626.1633f, 694.6517f, 149.6835f, 75.1121f);
			func_848(-639.3558f, 696.9992f, 150.5134f, 77.481f);
			break;
		
		case 79:
			func_848(-763.4828f, 668.4921f, 142.8936f, 236.9954f);
			func_848(-759.3964f, 690.4262f, 143.0253f, 214.9099f);
			func_848(-671.5947f, 646.5754f, 148.3114f, 49.9935f);
			func_848(-668.575f, 668.7567f, 149.4004f, 69.8844f);
			break;
		
		case 82:
			func_848(382.9244f, 443.8122f, 142.9934f, 78.3408f);
			func_848(391.2023f, 442.4812f, 142.5089f, 82.2125f);
			func_848(400.1477f, 441.0816f, 142.0776f, 83.4259f);
			func_848(414.2964f, 439.2628f, 141.5056f, 80.8689f);
			break;
		
		case 81:
			func_848(-1294.64f, 468.1975f, 96.4245f, 141.8551f);
			func_848(-1300.508f, 468.0167f, 96.8298f, 139.6287f);
			func_848(-1283.894f, 467.2136f, 95.4036f, 95.058f);
			func_848(-1273.584f, 454.4406f, 94.2269f, 30.8724f);
			break;
		
		case 73:
			func_848(-209.2598f, 509.0326f, 130.7979f, 97.2043f);
			func_848(-221.7214f, 507.2553f, 128.5651f, 92.2773f);
			func_848(-237.2848f, 506.8763f, 125.8112f, 85.9315f);
			func_848(-255.5678f, 507.9559f, 122.3364f, 85.1752f);
			break;
		
		case 75:
			func_848(-763.4828f, 668.4921f, 142.8936f, 236.9954f);
			func_848(-759.3964f, 690.4262f, 143.0253f, 214.9099f);
			func_848(-671.5947f, 646.5754f, 148.3114f, 49.9935f);
			func_848(-668.575f, 668.7567f, 149.4004f, 69.8844f);
			break;
		
		case 76:
			func_848(-668.575f, 668.7567f, 149.4004f, 69.8844f);
			func_848(-671.5947f, 646.5754f, 148.3114f, 49.9935f);
			func_848(-759.3964f, 690.4262f, 143.0253f, 214.9099f);
			func_848(-763.4828f, 668.4921f, 142.8936f, 236.9954f);
			break;
		
		case 77:
			func_848(128.4334f, 578.7522f, 182.2934f, 106.5458f);
			func_848(97.7791f, 576.8907f, 181.5599f, 91.3539f);
			func_848(83.5896f, 576.4791f, 181.0832f, 89.7262f);
			func_848(69.9599f, 575.9902f, 180.5019f, 91.4926f);
			break;
		
		case 80:
			func_848(-872.1293f, 698.7591f, 148.5084f, 339.673f);
			func_848(-916.5449f, 695.5253f, 150.5625f, 272.7097f);
			func_848(-907.3458f, 695.8158f, 150.396f, 270.6491f);
			func_848(-923.6974f, 691.4489f, 150.9506f, 357.4356f);
			break;
		
		case 87:
			if (func_153())
			{
				func_848(-1608.297f, -556.875f, 33.406f, 310f);
				func_848(-1616.095f, -563.402f, 33.049f, 309.4f);
				func_848(-1560.29f, -531.69f, 34.576f, 35.3994f);
				func_848(-1555.303f, -538.781f, 34.044f, 35.3994f);
			}
			else
			{
				func_848(-1605.148f, -552.5016f, 33.4606f, 309.4211f);
				func_848(-1616.306f, -561.6959f, 32.9867f, 309.4369f);
				func_848(-1582.681f, -534.1682f, 34.4171f, 307.8589f);
				func_848(-1619.657f, -531.5862f, 33.4254f, 128.9132f);
				func_848(-1560.257f, -532.3268f, 34.5436f, 216.0882f);
				func_848(-1553.698f, -541.3412f, 33.8662f, 215.8465f);
				func_848(-1611.769f, -601.588f, 31.2908f, 50.7362f);
				func_848(-1600.63f, -610.1141f, 30.5087f, 51.7297f);
			}
			break;
		
		case 88:
			if (func_153())
			{
				func_848(-1402.362f, -511.396f, 30.888f, 35.4f);
				func_848(-1356.617f, -531.0343f, 29.7588f, 124.9982f);
				func_848(-1407.634f, -503.839f, 31.35f, 35.4f);
				func_848(-1346.007f, -523.3546f, 30.6339f, 125.9976f);
			}
			else
			{
				func_848(-1390.604f, -528.6405f, 29.8387f, 35.4572f);
				func_848(-1357.085f, -531.4611f, 29.7218f, 125.0906f);
				func_848(-1346.236f, -523.9114f, 30.6f, 124.7302f);
				func_848(-1337.852f, -518.1096f, 31.2329f, 124.6998f);
				func_848(-1336.39f, -556.0637f, 29.7514f, 33.8088f);
				func_848(-1340.214f, -508.9828f, 31.4089f, 98.7714f);
				func_848(-1348.607f, -510.3536f, 30.9263f, 99.2425f);
				func_848(-1380.764f, -536.3867f, 29.3128f, 63.6203f);
			}
			break;
		
		case 89:
			if (func_153())
			{
				func_848(-102.737f, -597.379f, 35.053f, 160.999f);
				func_848(-97.793f, -589.568f, 35.082f, 134.799f);
				func_848(-110.357f, -619.402f, 35.055f, 160.599f);
				func_848(-112.561f, -627.723f, 35.046f, 165.399f);
			}
			else
			{
				func_848(-108.2604f, -613.6386f, 35.055f, 160.8063f);
				func_848(-103.0375f, -598.4797f, 35.0538f, 161.1968f);
				func_848(-112.84f, -629.6357f, 35.0662f, 174.9843f);
				func_848(-98.7403f, -590.3209f, 35.075f, 139.7632f);
				func_848(-98.3748f, -612.642f, 35.137f, 161.1124f);
				func_848(-92.595f, -595.4065f, 35.1888f, 161.3083f);
				func_848(-104.4742f, -630.1472f, 35.1396f, 161.184f);
				func_848(-74.1068f, -619.9417f, 35.1488f, 340.9123f);
			}
			break;
		
		case 90:
			if (func_153())
			{
				func_848(-59.349f, -779.238f, 43.134f, 228.398f);
				func_848(-41.6311f, -789.1425f, 43.1323f, 255.5993f);
				func_848(-65.212f, -772.66f, 43.151f, 219.398f);
				func_848(-33.0648f, -789.3544f, 43.1287f, 279.5989f);
			}
			else
			{
				func_848(-59.684f, -779.4568f, 43.114f, 228.7591f);
				func_848(-52.7425f, -784.7151f, 43.1134f, 237.7756f);
				func_848(-45.2736f, -788.4313f, 43.1133f, 250.2438f);
				func_848(-35.9308f, -789.8549f, 43.1167f, 271.1923f);
				func_848(-64.6911f, -762.4548f, 43.1316f, 35.6897f);
				func_848(-24.9853f, -786.8022f, 43.1163f, 297.8276f);
				func_848(-86.2083f, -739.3044f, 43.0546f, 204.9405f);
				func_848(-9.239f, -773.0505f, 43.0788f, 318.0367f);
			}
			break;
		
		case 91:
			func_848(246.5035f, -1798.749f, 26.1131f, 212.5996f);
			func_848(247.8968f, -1797.017f, 26.1131f, 212.5996f);
			func_848(249.3848f, -1795.374f, 26.1131f, 212.5996f);
			func_848(250.8498f, -1793.695f, 26.1131f, 212.5996f);
			func_848(262.9285f, -1784.205f, 26.1131f, 164.5991f);
			func_848(266.8129f, -1787.476f, 26.1131f, 164.5991f);
			func_848(264.814f, -1785.801f, 26.1131f, 164.5991f);
			func_848(269.0069f, -1789.16f, 26.1131f, 164.5991f);
			break;
		
		case 92:
			func_848(-1464.5f, -927.9f, 9f, 296.7991f);
			func_848(-1466f, -926.1f, 9f, 296.7991f);
			func_848(-1467.9f, -924.7f, 9f, 296.7991f);
			func_848(-1469.7f, -923.7f, 9f, 296.7991f);
			func_848(-1462.481f, -931.2933f, 9.1294f, 296.5982f);
			func_848(-1460.639f, -932.9284f, 9.1315f, 296.5982f);
			func_848(-1454.923f, -931.1019f, 9.0872f, 237.1973f);
			func_848(-1450.848f, -934.5874f, 8.4514f, 237.1973f);
			break;
		
		case 93:
			func_848(30.0784f, -1024.16f, 28.4469f, 234.5994f);
			func_848(29.1695f, -1026.719f, 28.4453f, 234.5994f);
			func_848(28.2538f, -1029.296f, 28.4421f, 234.5994f);
			func_848(27.3737f, -1031.767f, 28.3937f, 234.5994f);
			func_848(32.6932f, -1017.063f, 28.4531f, 234.5994f);
			func_848(33.672f, -1014.399f, 28.4552f, 234.5994f);
			func_848(37.488f, -1014.344f, 28.4781f, 175.5986f);
			func_848(39.4909f, -1015.097f, 28.484f, 175.5986f);
			break;
		
		case 94:
			func_848(45.0033f, 2784.392f, 56.8782f, 103.5999f);
			func_848(43.316f, 2785.903f, 56.8782f, 103.5999f);
			func_848(41.6126f, 2787.36f, 56.8782f, 103.5999f);
			func_848(39.9584f, 2788.773f, 56.8782f, 103.5999f);
			func_848(35.2347f, 2792.135f, 56.8781f, 208.7997f);
			func_848(33.7771f, 2790.379f, 56.8781f, 208.7997f);
			func_848(30.7578f, 2786.8f, 56.8781f, 208.7997f);
			func_848(29.3121f, 2785.045f, 56.8745f, 208.7997f);
			break;
		
		case 95:
			func_848(-332.5679f, 6069.145f, 30.2175f, 152.9999f);
			func_848(-334.2811f, 6070.787f, 30.2212f, 152.9999f);
			func_848(-335.9948f, 6072.454f, 30.2455f, 152.9999f);
			func_848(-337.675f, 6074.252f, 30.2727f, 152.9999f);
			func_848(-339.3682f, 6075.904f, 30.3074f, 152.9999f);
			func_848(-341.0913f, 6077.729f, 30.3114f, 152.9999f);
			func_848(-342.9239f, 6079.522f, 30.3122f, 152.9999f);
			func_848(-344.6985f, 6081.302f, 30.3097f, 152.9999f);
			break;
		
		case 96:
			func_848(1738.422f, 3716.779f, 33.0787f, 6.9999f);
			func_848(1736.207f, 3715.989f, 33.094f, 6.9999f);
			func_848(1748.442f, 3714.17f, 33.0889f, 39.399f);
			func_848(1750.475f, 3715.007f, 33.1067f, 39.399f);
			func_848(1747.18f, 3721.102f, 33.007f, 95.199f);
			func_848(1746.413f, 3723.255f, 32.9738f, 95.199f);
			func_848(1740.67f, 3717.613f, 33.0616f, 8.199f);
			func_848(1733.937f, 3715.08f, 33.1236f, 8.199f);
			break;
		
		case 97:
			func_848(947.9371f, -1452.737f, 30.143f, 331.5991f);
			func_848(950.2141f, -1452.826f, 30.1364f, 331.5991f);
			func_848(952.4588f, -1452.882f, 30.129f, 331.5991f);
			func_848(954.6608f, -1452.869f, 30.1303f, 331.5991f);
			func_848(935.1006f, -1452.701f, 30.1907f, 316.999f);
			func_848(932.5459f, -1452.579f, 30.2194f, 316.999f);
			func_848(929.9319f, -1452.567f, 30.2647f, 316.999f);
			func_848(927.4857f, -1452.446f, 30.3167f, 316.999f);
			break;
		
		case 98:
			func_848(186.6051f, 306.8702f, 104.389f, 162.3999f);
			func_848(184.3881f, 306.7666f, 104.3845f, 162.3999f);
			func_848(182.1681f, 306.6823f, 104.375f, 162.3999f);
			func_848(183.3219f, 296.2871f, 104.3707f, 350.7995f);
			func_848(180.9933f, 296.3411f, 104.3704f, 350.7995f);
			func_848(178.6569f, 296.4709f, 104.3701f, 350.7995f);
			func_848(195.1475f, 304.4284f, 104.4644f, 77.3989f);
			func_848(195.0814f, 301.8218f, 104.5287f, 77.3989f);
			break;
		
		case 99:
			func_848(-31.2801f, -200.3394f, 51.3551f, 5.3995f);
			func_848(-33.3895f, -199.7716f, 51.355f, 5.3995f);
			func_848(-35.4307f, -199.1125f, 51.3549f, 5.3995f);
			func_848(-37.5545f, -198.5244f, 51.3549f, 5.3995f);
			func_848(-17.9628f, -206.2525f, 51.3702f, 29.399f);
			func_848(-14.8043f, -207.5648f, 51.4707f, 29.399f);
			func_848(-11.8482f, -208.6405f, 51.5633f, 29.399f);
			func_848(-9.1304f, -209.4894f, 51.6472f, 29.399f);
			break;
		
		case 100:
			func_848(2478.52f, 4082.137f, 36.8208f, 227.5999f);
			func_848(2477.557f, 4079.946f, 36.8014f, 227.5999f);
			func_848(2465.123f, 4081.35f, 37.0655f, 167.4f);
			func_848(2463.017f, 4082.271f, 37.0653f, 167.4f);
			func_848(2467.7f, 4080.332f, 37.0649f, 167.4f);
			func_848(2469.587f, 4079.538f, 37.061f, 167.4f);
			func_848(2481.354f, 4088.553f, 36.9131f, 209.4f);
			func_848(2482.442f, 4091.023f, 36.9472f, 209.4f);
			break;
		
		case 101:
			func_848(-32.1085f, 6407.398f, 30.4903f, 291.1999f);
			func_848(-29.4917f, 6404.578f, 30.4903f, 291.1999f);
			func_848(-26.4319f, 6401.523f, 30.4903f, 291.1999f);
			func_848(-23.3427f, 6398.638f, 30.4903f, 291.1999f);
			func_848(-20.7035f, 6395.76f, 30.4885f, 291.1999f);
			func_848(-23.7283f, 6412.838f, 30.4904f, 176.5999f);
			func_848(-20.5405f, 6409.805f, 30.4905f, 176.5999f);
			func_848(-17.3045f, 6406.66f, 30.4904f, 176.5999f);
			break;
		
		case 102:
			func_848(-1138.057f, -1572.18f, 3.4157f, 125.9996f);
			func_848(-1142.03f, -1574.983f, 3.4133f, 125.9996f);
			func_848(-1145.05f, -1592.81f, 3.3855f, 306.5991f);
			func_848(-1139.933f, -1589.211f, 3.3978f, 306.5991f);
			func_848(-1124.295f, -1578.776f, 3.3854f, 306.5991f);
			func_848(-1119.954f, -1575.551f, 3.3852f, 306.5991f);
			func_848(-1124.942f, -1562.985f, 3.2916f, 168.9988f);
			func_848(-1127.039f, -1564.395f, 3.292f, 168.9988f);
			break;
		
		default:
			break;
	}
}

void func_848(vector3 vParam0, float fParam3)//Position - 0x789A0
{
	if (Global_2404994.f_1685 < 32)
	{
		if (system::vmag(vParam0) <= 0.01f)
		{
			return;
		}
		Global_2404994.f_1686[Global_2404994.f_1685 /*4*/] = { vParam0 };
		Global_2404994.f_1686[Global_2404994.f_1685 /*4*/].f_3 = fParam3;
		Global_2404994.f_1685++;
	}
}

int func_849(vector3 vParam0)//Position - 0x78A05
{
	int iVar0;
	
	iVar0 = 0;
	while (iVar0 < 31)
	{
		if (vParam0.y <= 0f)
		{
			vParam0.z = ((Global_2410914[iVar0 /*7*/].f_2 + Global_2410914[iVar0 /*7*/].f_3.f_2) * 0.5f);
		}
		if (func_820(vParam0, &(Global_2410914[iVar0 /*7*/])))
		{
			return iVar0;
		}
		iVar0++;
	}
	return -1;
}

bool func_850()//Position - 0x78A63
{
	if (gameplay::is_bit_set(Global_1632166.f_13, 0) && !Global_2443860.f_5977)
	{
		return false;
	}
	return false;
}

void func_851()//Position - 0x78A8E
{
	int iVar0;
	
	iVar0 = 0;
	while (iVar0 < 10)
	{
		Global_2404994.f_2258[iVar0 /*3*/] = { 0f, 0f, 0f };
		iVar0++;
	}
}

bool func_852(var uParam0, int iParam1)//Position - 0x78AB9
{
	int iVar0;
	vector3 vVar1;
	
	vVar1 = { *uParam0 };
	iVar0 = 0;
	while (iVar0 < 2)
	{
		if (vVar1.y <= 0f)
		{
			vVar1.z = ((Global_2410870[iVar0 /*7*/].f_2 + Global_2410870[iVar0 /*7*/].f_3.f_2) * 0.5f);
		}
		if (func_820(vVar1, &(Global_2410870[iVar0 /*7*/])))
		{
			if (iParam1)
			{
				func_830(&vVar1, Global_2410870[iVar0 /*7*/], Global_2410870[iVar0 /*7*/].f_3, Global_2410870[iVar0 /*7*/].f_6, 1036831949, 0);
				*uParam0 = { vVar1 };
			}
			return true;
		}
		iVar0++;
	}
	return false;
}

bool func_853(vector3 vParam0)//Position - 0x78B56
{
	int iVar0;
	vector3 vVar1;
	
	if (!Global_2404994.f_496)
	{
		if (!Global_2404994.f_43.f_311)
		{
			if (!func_857(player::player_id(), 1))
			{
				return true;
			}
			if (!func_856(vParam0, 1008981770))
			{
				if (!func_836(&vParam0, 0, 0, 0))
				{
					return true;
				}
				else if (func_836(&vParam0, 0, 1, 0))
				{
					return true;
				}
			}
			else
			{
				iVar0 = func_855(vParam0, 1008981770);
				if (iVar0 > -1)
				{
					vVar1 = { func_854(&(Global_2404994.f_43[iVar0 /*12*/])) };
					if (!func_836(&vVar1, 0, 0, 0))
					{
						if (!func_836(&vParam0, 0, 0, 0))
						{
							return true;
						}
					}
				}
			}
		}
	}
	return false;
}

Vector3 func_854(var uParam0)//Position - 0x78C05
{
	switch (uParam0->f_10)
	{
		case 0:
			return *uParam0;
			break;
		
		case 1:
		case 2:
			return *uParam0 + uParam0->f_3 * Vector(0.5f, 0.5f, 0.5f);
			break;
	}
	return *uParam0;
}

int func_855(vector3 vParam0, float fParam3)//Position - 0x78C4E
{
	int iVar0;
	
	iVar0 = 0;
	while (iVar0 < 4)
	{
		if (Global_2404994.f_43[iVar0 /*12*/].f_9)
		{
			if (func_824(vParam0, &(Global_2404994.f_43[iVar0 /*12*/]), fParam3, 0, 0))
			{
				return iVar0;
			}
		}
		iVar0++;
	}
	return -1;
}

bool func_856(vector3 vParam0, float fParam3)//Position - 0x78C96
{
	int iVar0;
	
	iVar0 = 0;
	while (iVar0 < 4)
	{
		if (Global_2404994.f_43[iVar0 /*12*/].f_9)
		{
			if (func_824(vParam0, &(Global_2404994.f_43[iVar0 /*12*/]), fParam3, 0, 0))
			{
				return true;
			}
		}
		iVar0++;
	}
	return false;
}

int func_857(int iParam0, int iParam1)//Position - 0x78CDD
{
	if (Global_1312443 != 0)
	{
		return func_172(iParam0) != 0;
	}
	return func_170(iParam0, iParam1);
}

void func_858()//Position - 0x78D03
{
	int iVar0;
	struct<4> Var1;
	
	iVar0 = 0;
	while (iVar0 < 32)
	{
		Global_2404994.f_1686[iVar0 /*4*/] = { Var1 };
		iVar0++;
	}
	Global_2404994.f_1685 = 0;
}

void func_859()//Position - 0x78D37
{
	if (Global_2404994.f_634 > -1)
	{
		if (network::_0xE64A3CA08DFA37A9(Global_2404994.f_634))
		{
			network::network_remove_entity_area(Global_2404994.f_634);
		}
	}
	Global_2404994.f_634 = -1;
}

int func_860(int iParam0)//Position - 0x78D6C
{
	if (iParam0 == -1)
	{
		return false;
	}
	else
	{
		return gameplay::is_bit_set(Global_2433082.f_1, iParam0);
	}
	return true;
}

int func_861(int iParam0)//Position - 0x78D91
{
	if (!func_387(iParam0, 0, 1))
	{
		return 0;
	}
	return Global_1589933[iParam0 /*601*/].f_35;
}

var func_862()//Position - 0x78DB4
{
	return Global_1738472.f_3;
}

int func_863(int iParam0)//Position - 0x78DC2
{
	if (iParam0 == 0)
	{
		return true;
	}
	streaming::request_model(iParam0);
	return streaming::has_model_loaded(iParam0);
}

void func_864(int iParam0, int iParam1)//Position - 0x78DE0
{
	int iVar0;
	
	func_756(iParam0, &iVar0);
	if (iVar0 >= 0)
	{
		func_754(iVar0, -1, -1);
	}
	func_865(&(Global_1320588[iParam0 /*140*/]));
	Global_2097152[func_752() /*10730*/].f_7546.f_1001 = network::_get_posix_time();
	func_741(iParam0, &(Global_1320588[iParam0 /*140*/]), 0, iParam1, 0, 0);
}

void func_865(var uParam0)//Position - 0x78E33
{
	func_866(uParam0);
	uParam0->f_101 = 0;
	uParam0->f_102 = 0;
	uParam0->f_103 = 0;
	StringCopy(&(uParam0->f_104), "", 64);
	StringCopy(&(uParam0->f_120), "", 64);
	uParam0->f_136 = 0;
	uParam0->f_137 = 0;
	uParam0->f_138 = 0;
	uParam0->f_139 = 0;
}

void func_866(var uParam0)//Position - 0x78E74
{
	func_703(uParam0);
	uParam0->f_78 = -1;
	uParam0->f_79 = 0f;
	uParam0->f_96 = 1;
	uParam0->f_97 = 0;
	uParam0->f_98 = 132;
	uParam0->f_80 = 0;
	uParam0->f_80.f_1 = 0;
	uParam0->f_80.f_2 = 0;
	uParam0->f_80.f_3 = 0;
	uParam0->f_80.f_4 = 0;
	uParam0->f_80.f_5 = 0;
	uParam0->f_80.f_6 = 0;
	uParam0->f_80.f_7 = 0;
	uParam0->f_80.f_8 = 0;
	uParam0->f_80.f_9 = 0;
	uParam0->f_80.f_10 = 0;
	uParam0->f_80.f_11 = 0;
	uParam0->f_80.f_12 = 0;
	uParam0->f_94 = 0;
	uParam0->f_93 = 0;
	uParam0->f_95 = -1;
}

bool func_867(int iParam0)//Position - 0x78F04
{
	if (((((((iParam0 == joaat("blazer5") || iParam0 == joaat("boxville5")) || iParam0 == joaat("dune5")) || iParam0 == joaat("phantom2")) || iParam0 == joaat("ruiner2")) || iParam0 == joaat("technical2")) || iParam0 == joaat("voltic2")) || iParam0 == joaat("wastelander"))
	{
		return true;
	}
	switch (iParam0)
	{
		case joaat("airbus"):
		case joaat("airtug"):
		case joaat("ambulance"):
		case joaat("annihilator"):
		case joaat("armytanker"):
		case joaat("armytrailer"):
		case joaat("asea2"):
		case joaat("baletrailer"):
		case joaat("barracks"):
		case joaat("barracks2"):
		case joaat("barracks3"):
		case joaat("benson"):
		case joaat("besra"):
		case joaat("biff"):
		case joaat("blimp"):
		case joaat("blimp2"):
		case joaat("blista3"):
		case joaat("boattrailer"):
		case joaat("boxville"):
		case joaat("boxville2"):
		case joaat("boxville3"):
		case joaat("boxville4"):
		case joaat("bulldozer"):
		case joaat("burrito"):
		case joaat("burrito2"):
		case joaat("burrito3"):
		case joaat("burrito4"):
		case joaat("burrito5"):
		case joaat("bus"):
		case joaat("buzzard"):
		case joaat("buzzard2"):
		case joaat("caddy"):
		case joaat("caddy2"):
		case joaat("camper"):
		case joaat("cargobob"):
		case joaat("cargobob2"):
		case joaat("cargobob3"):
		case joaat("cargoplane"):
		case joaat("coach"):
		case joaat("crusader"):
		case joaat("cuban800"):
		case joaat("cutter"):
		case joaat("dilettante2"):
		case joaat("dinghy"):
		case joaat("dinghy2"):
		case joaat("dinghy3"):
		case joaat("docktrailer"):
		case joaat("docktug"):
		case joaat("dodo"):
		case joaat("dukes2"):
		case joaat("dump"):
		case joaat("dune2"):
		case joaat("duster"):
		case joaat("emperor3"):
		case joaat("fbi"):
		case joaat("fbi2"):
		case 1938952078:
		case joaat("fixter"):
		case joaat("flatbed"):
		case joaat("forklift"):
		case joaat("freight"):
		case joaat("freightcar"):
		case joaat("freightcont1"):
		case joaat("freightcont2"):
		case joaat("freightgrain"):
		case joaat("frogger"):
		case joaat("frogger2"):
		case joaat("gburrito"):
		case joaat("graintrailer"):
		case joaat("handler"):
		case joaat("hauler"):
		case joaat("hydra"):
		case joaat("insurgent"):
		case joaat("jet"):
		case joaat("jetmax"):
		case joaat("journey"):
		case joaat("lazer"):
		case joaat("lguard"):
		case joaat("limo2"):
		case joaat("luxor"):
		case joaat("luxor2"):
		case joaat("mammatus"):
		case joaat("marshall"):
		case joaat("marquis"):
		case joaat("maverick"):
		case joaat("mesa2"):
		case 868868440:
		case joaat("monster"):
		case joaat("miljet"):
		case joaat("mixer"):
		case joaat("mixer2"):
		case joaat("mower"):
		case joaat("mule"):
		case joaat("mule2"):
		case joaat("mule3"):
		case joaat("packer"):
		case joaat("pbus"):
		case joaat("phantom"):
		case joaat("police"):
		case joaat("policeb"):
		case joaat("policet"):
		case joaat("policeold1"):
		case joaat("policeold2"):
		case joaat("police2"):
		case joaat("police3"):
		case joaat("police4"):
		case joaat("polmav"):
		case joaat("pony"):
		case joaat("pony2"):
		case joaat("pounder"):
		case joaat("pranger"):
		case joaat("predator"):
		case joaat("proptrailer"):
		case joaat("raketrailer"):
		case joaat("rancherxl2"):
		case joaat("rentalbus"):
		case joaat("rhino"):
		case joaat("riot"):
		case joaat("ripley"):
		case joaat("rubble"):
		case joaat("rumpo2"):
		case joaat("sadler2"):
		case joaat("savage"):
		case joaat("scrap"):
		case joaat("seashark"):
		case joaat("seashark2"):
		case joaat("shamal"):
		case joaat("sheriff"):
		case joaat("sheriff2"):
		case joaat("slamvan2"):
		case joaat("skylift"):
		case joaat("speeder"):
		case joaat("speedo2"):
		case joaat("squalo"):
		case joaat("stockade"):
		case joaat("stockade3"):
		case joaat("stretch"):
		case joaat("stunt"):
		case joaat("submersible"):
		case joaat("submersible2"):
		case joaat("suntrap"):
		case joaat("swift"):
		case joaat("swift2"):
		case joaat("taco"):
		case joaat("tanker"):
		case joaat("tanker2"):
		case joaat("tankercar"):
		case joaat("taxi"):
		case joaat("technical"):
		case joaat("towtruck"):
		case joaat("towtruck2"):
		case joaat("tiptruck"):
		case joaat("tiptruck2"):
		case joaat("titan"):
		case joaat("toro"):
		case joaat("tourbus"):
		case joaat("tr2"):
		case joaat("tr3"):
		case joaat("tr4"):
		case joaat("tractor"):
		case joaat("tractor2"):
		case joaat("tractor3"):
		case joaat("trailerlogs"):
		case joaat("trailers"):
		case joaat("trailers2"):
		case joaat("trailers3"):
		case joaat("trailersmall"):
		case joaat("trash"):
		case joaat("trash2"):
		case joaat("trflat"):
		case joaat("tropic"):
		case joaat("tvtrailer"):
		case joaat("utillitruck"):
		case joaat("utillitruck2"):
		case joaat("utillitruck3"):
		case joaat("valkyrie"):
		case joaat("velum"):
		case joaat("velum2"):
		case joaat("vestra"):
		case joaat("cargobob4"):
		case joaat("dinghy4"):
		case joaat("seashark3"):
		case joaat("speeder2"):
		case joaat("toro2"):
		case joaat("tropic2"):
		case joaat("supervolito"):
		case joaat("supervolito2"):
		case joaat("valkyrie2"):
		case joaat("dune4"):
			return false;
			break;
	}
	if (((!vehicle::is_this_model_a_car(iParam0) && !vehicle::is_this_model_a_bike(iParam0)) && !vehicle::is_this_model_a_quadbike(iParam0)) && !vehicle::is_this_model_a_bicycle(iParam0))
	{
		return false;
	}
	return true;
}

void func_868(int iParam0)//Position - 0x7942C
{
	if (func_871(&(Global_1320588[iParam0 /*140*/].f_66)))
	{
		func_869(iParam0);
	}
}

void func_869(int iParam0)//Position - 0x7944B
{
	func_870(&(Global_1320588[iParam0 /*140*/].f_66));
	func_741(iParam0, &(Global_1320588[iParam0 /*140*/]), 0, -1, 0, 0);
}

void func_870(var uParam0)//Position - 0x79474
{
	switch (*uParam0)
	{
		case joaat("bison2"):
		case joaat("bison3"):
			*uParam0 = joaat("bison");
			break;
		
		case joaat("speedo2"):
			*uParam0 = joaat("speedo");
			break;
		
		case joaat("burrito"):
		case joaat("burrito2"):
		case joaat("burrito4"):
		case joaat("burrito5"):
			*uParam0 = joaat("burrito3");
			break;
	}
}

bool func_871(var uParam0)//Position - 0x794CF
{
	switch (*uParam0)
	{
		case joaat("bison2"):
		case joaat("bison3"):
		case joaat("speedo2"):
		case joaat("burrito"):
		case joaat("burrito2"):
		case joaat("burrito4"):
		case joaat("burrito5"):
			return true;
			break;
	}
	return false;
}

bool func_872()//Position - 0x79511
{
	if (func_150(player::player_id()) || func_149(player::player_id()))
	{
		if (func_873() == 25)
		{
			return true;
		}
	}
	return false;
}

var func_873()//Position - 0x79540
{
	return Global_1589933[player::player_id() /*601*/].f_187;
}

bool func_874()//Position - 0x79555
{
	if (cutscene::is_cutscene_playing() || network::network_is_in_mp_cutscene())
	{
		return true;
	}
	return false;
}

int func_875(int iParam0)//Position - 0x79573
{
	if (gameplay::get_hash_key(script::get_this_script_name()) != joaat("freemode"))
	{
	}
	else if (func_876(Global_2421621[player::player_id() /*358*/].f_48) || iParam0 == 0)
	{
		return Global_2421621[player::player_id() /*358*/].f_48;
	}
	return 0;
}

int func_876(int iParam0)//Position - 0x795BD
{
	if (network::network_does_network_id_exist(iParam0))
	{
		return !func_501(network::net_to_veh(iParam0));
	}
	return false;
}

bool func_877()//Position - 0x795DD
{
	if (func_880(2) || func_880(1))
	{
		return true;
	}
	return false;
}

void func_878(int iParam0)//Position - 0x795FD
{
	if (iParam0 < 32)
	{
		if (!gameplay::is_bit_set(Global_2433082.f_501.f_1, iParam0))
		{
			gameplay::set_bit(&(Global_2433082.f_501.f_1), iParam0);
		}
	}
	else if (!gameplay::is_bit_set(Global_2433082.f_501.f_2, (iParam0 - 32)))
	{
		gameplay::set_bit(&(Global_2433082.f_501.f_2), (iParam0 - 32));
	}
}

void func_879(int iParam0, int iParam1, int iParam2, int iParam3, int iParam4, int iParam5, int iParam6)//Position - 0x79659
{
	if (func_880(35))
	{
		iParam0 = true;
	}
	if (iParam0)
	{
		func_878(2);
	}
	else
	{
		func_878(1);
	}
	if (iParam1)
	{
		func_878(11);
	}
	if (iParam2)
	{
		func_878(32);
		if (iParam3)
		{
			if (gameplay::is_bit_set(Global_1320588[func_881() /*140*/].f_101, 0))
			{
				func_878(33);
			}
		}
		else
		{
			func_764(33);
		}
	}
	else if (iParam5)
	{
		func_878(37);
	}
	if (iParam4)
	{
		func_878(36);
	}
	if (func_880(36))
	{
		if (func_880(2))
		{
			func_764(36);
		}
	}
	if (iParam6)
	{
		func_878(38);
	}
	if (network::network_is_game_in_progress())
	{
		Global_2494149.f_353 = network::get_network_time();
	}
}

int func_880(int iParam0)//Position - 0x7970D
{
	if (iParam0 < 32)
	{
		return gameplay::is_bit_set(Global_2433082.f_501.f_1, iParam0);
	}
	return gameplay::is_bit_set(Global_2433082.f_501.f_2, (iParam0 - 32));
}

var func_881()//Position - 0x79743
{
	return Global_2097152[func_752() /*10730*/].f_7546.f_2;
}

bool func_882()//Position - 0x7975B
{
	if (func_881() > -1 && func_881() < 158)
	{
		if (Global_2404994.f_43.f_66)
		{
			if (!gameplay::is_bit_set(Global_1320588[func_881() /*140*/].f_101, 1) && !gameplay::is_bit_set(Global_1320588[func_881() /*140*/].f_101, 6))
			{
				return true;
			}
		}
	}
	return false;
}

Vector3 func_883(int iParam0, vector3 vParam1)//Position - 0x797B4
{
	vector3 vVar0;
	vector3 vVar3;
	
	if (vehicle::is_this_model_a_boat(iParam0))
	{
		return vParam1;
	}
	func_480(iParam0, &vVar0, &vVar3, 1086324736, 1080033280, 1077936128);
	vParam1.z = (vParam1.y + ((vVar3.y - vVar0.y) * 0.5f));
	return vParam1;
}

bool func_884(vector3 vParam0, float fParam3, int iParam4, int iParam5, int iParam6, int iParam7, int iParam8, int iParam9)//Position - 0x79801
{
	int iVar0;
	int iVar1;
	
	iVar0 = 0;
	while (iVar0 < 32)
	{
		iVar1 = iVar0;
		if ((iParam8 == 1 && player::player_id() != iVar1) || iParam8 == 0)
		{
			if (func_387(iVar1, iParam4, iParam5))
			{
				if (network::_0x9DE986FC9A87C474(player::player_id(), iVar1))
				{
					if (!iParam7 || (!ped::is_ped_injured(player::get_player_ped(iVar1)) && func_793(iVar1)))
					{
						if ((!iParam6 || (iParam6 == 1 && player::get_player_team(player::player_id()) != player::get_player_team(iVar1))) || player::get_player_team(player::player_id()) == -1)
						{
							if (((player::get_player_team(player::player_id()) == -1 && iParam9) && iParam6) && func_790(iVar1))
							{
							}
							else if (entity::does_entity_exist(player::get_player_ped(iVar1)))
							{
								if (gameplay::get_distance_between_coords(func_131(iVar1), vParam0, 1) < fParam3)
								{
									return true;
								}
							}
						}
					}
				}
			}
		}
		iVar0++;
	}
	return false;
}

bool func_885(int iParam0)//Position - 0x798FD
{
	if (entity::does_entity_exist(iParam0))
	{
		if (!entity::is_entity_dead(iParam0, 0))
		{
			if (!entity::is_entity_a_mission_entity(iParam0) || entity::does_entity_belong_to_this_script(iParam0, 1))
			{
				if (vehicle::is_vehicle_driveable(iParam0, 0))
				{
					if (network::network_has_control_of_entity(iParam0))
					{
						if (func_886(iParam0, 0, 0, 0, 0, 0, 1, 0))
						{
							return true;
						}
					}
				}
			}
		}
	}
	return false;
}

bool func_886(int iParam0, int iParam1, int iParam2, int iParam3, int iParam4, int iParam5, int iParam6, int iParam7)//Position - 0x79958
{
	int iVar0;
	int iVar1;
	int iVar2;
	
	iVar1 = vehicle::get_vehicle_max_number_of_passengers(iParam0) + 1;
	if (iParam4 || !entity::is_entity_dead(iParam0, 0))
	{
		iVar0 = 0;
		while (iVar0 < iVar1)
		{
			iVar2 = func_887(iParam0, (iVar0 - 1), iParam6, iParam7);
			if (entity::does_entity_exist(iVar2))
			{
				if (iParam3 && iVar2 == player::player_ped_id())
				{
				}
				else if (iParam2)
				{
					if (!ped::is_ped_injured(iVar2))
					{
						if (ped::is_ped_a_player(iVar2))
						{
							if (player::get_player_wanted_level(network::_network_get_ped_player(iVar2)) == 0)
							{
								if (!iParam5)
								{
									return false;
								}
							}
							else
							{
								return false;
							}
						}
					}
					else if (iParam1 == 0)
					{
						return false;
					}
				}
				else if (iParam1 == 0)
				{
					return false;
				}
				else if (!ped::is_ped_injured(iVar2))
				{
					return false;
				}
			}
			iVar0++;
		}
	}
	return true;
}

int func_887(int iParam0, int iParam1, int iParam2, int iParam3)//Position - 0x79A20
{
	int iVar0;
	
	if (!vehicle::is_vehicle_seat_free(iParam0, iParam1, iParam3))
	{
		iVar0 = vehicle::get_ped_in_vehicle_seat(iParam0, iParam1, iParam3);
	}
	if (iParam2)
	{
		if (!entity::does_entity_exist(iVar0) && !entity::is_entity_dead(iParam0, 0))
		{
			iVar0 = vehicle::get_last_ped_in_vehicle_seat(iParam0, iParam1);
			if (!entity::is_entity_dead(iVar0, 0))
			{
				if (ai::get_script_task_status(iVar0, 451360105) == 1 || ai::get_script_task_status(iVar0, -828834893) == 1)
				{
					if (system::vdist(entity::get_entity_coords(iParam0, 0), entity::get_entity_coords(iVar0, 0)) < 10f)
					{
						return iVar0;
					}
				}
			}
			iVar0 = -1;
		}
	}
	return iVar0;
}

bool func_888(int iParam0)//Position - 0x79ABB
{
	if (func_387(iParam0, 1, 1))
	{
		if (ped::is_ped_in_any_vehicle(player::get_player_ped(iParam0), 0))
		{
			if (vehicle::is_vehicle_driveable(ped::get_vehicle_ped_is_in(player::get_player_ped(iParam0), 0), 0))
			{
				return true;
			}
			else
			{
				return false;
			}
		}
		else
		{
			return false;
		}
	}
	return false;
}

bool func_889(var uParam0)//Position - 0x79B05
{
	int iVar0;
	int iVar1;
	
	if (!func_891())
	{
		iVar0 = 0;
		while (iVar0 < 32)
		{
			iVar1 = iVar0;
			if (network::network_is_player_active(iVar1))
			{
				if (func_387(iVar1, 0, 1))
				{
					if (!iVar1 == player::player_id())
					{
						if (player::get_player_team(iVar1) == player::get_player_team(player::player_id()))
						{
							if (network::_0x9DE986FC9A87C474(player::player_id(), iVar1))
							{
								*uParam0 = iVar1;
								return true;
							}
						}
					}
				}
			}
			iVar0++;
		}
		*uParam0 = -1;
	}
	else
	{
		iVar0 = 0;
		while (iVar0 < 32)
		{
			iVar1 = iVar0;
			if (network::network_is_player_active(iVar1))
			{
				if (func_387(iVar1, 0, 1))
				{
					if (!iVar1 == player::player_id())
					{
						if (func_890(iVar1) && player::get_player_team(iVar1) == player::get_player_team(player::player_id()))
						{
							if (network::_0x9DE986FC9A87C474(player::player_id(), iVar1))
							{
								*uParam0 = iVar1;
								return true;
							}
						}
					}
				}
			}
			iVar0++;
		}
		*uParam0 = -1;
	}
	return false;
}

bool func_890(int iParam0)//Position - 0x79BE7
{
	if (!Global_2404994.f_2193 == -1)
	{
		if (gameplay::is_bit_set(Global_2404994.f_2194, iParam0))
		{
			return true;
		}
	}
	return false;
}

var func_891()//Position - 0x79C11
{
	return Global_1574265;
}

bool func_892()//Position - 0x79C1D
{
	int iVar0;
	
	if (func_891())
	{
		if (func_889(&iVar0))
		{
			if (func_890(iVar0))
			{
				if (!Global_2421621[player::player_id() /*358*/].f_229)
				{
					return true;
				}
			}
		}
	}
	else if (func_893())
	{
		return true;
	}
	return false;
}

var func_893()//Position - 0x79C62
{
	return Global_1574262;
}

bool func_894()//Position - 0x79C6E
{
	var uVar0;
	
	if (func_895())
	{
		if (func_889(&uVar0))
		{
			return true;
		}
		else
		{
			return false;
		}
	}
	return false;
}

var func_895()//Position - 0x79C92
{
	return Global_1574276;
}

float func_896(int iParam0)//Position - 0x79C9E
{
	if (func_897(iParam0))
	{
		return 2500f;
	}
	return -90f;
}

int func_897(int iParam0)//Position - 0x79CBC
{
	return func_898(iParam0);
}

bool func_898(int iParam0)//Position - 0x79CCA
{
	if (vehicle::is_this_model_a_boat(iParam0) || iParam0 == joaat("submersible"))
	{
		return true;
	}
	return false;
}

bool func_899()//Position - 0x79CEE
{
	int iVar0;
	var uVar1;
	
	if (func_1085())
	{
		if (streaming::is_model_a_vehicle(Global_2404994.f_43.f_67))
		{
		}
		if (streaming::is_model_a_vehicle(Global_2404994.f_43.f_69.f_66))
		{
		}
		if (func_894())
		{
			if (func_892())
			{
				return true;
			}
		}
		iVar0 = false;
		if (func_882())
		{
			Global_2404994.f_43.f_69.f_66 = Global_1320588[func_881() /*140*/].f_66;
			iVar0 = true;
		}
		if (!iVar0)
		{
			if (Global_2404994.f_43.f_68)
			{
				if (entity::does_entity_exist(Global_2404994.f_2196))
				{
					if (Global_2404994.f_43.f_67 == entity::get_entity_model(Global_2404994.f_2196) || Global_2404994.f_43.f_67 == 0)
					{
						if (func_165(player::player_id()) && !Global_2404994.f_43.f_67 == 0)
						{
							iVar0 = true;
							if (Global_2404994.f_43.f_170)
							{
							}
						}
						else
						{
							Global_2404994.f_43.f_69.f_66 = entity::get_entity_model(Global_2404994.f_2196);
							func_687(Global_2404994.f_2196, func_272(player::player_id()));
							iVar0 = true;
						}
					}
				}
			}
		}
		if (Global_2404994.f_43.f_67 == 0 && !iVar0)
		{
			func_901();
			vehicle::get_random_vehicle_model_in_memory(1, &(Global_2404994.f_43.f_69.f_66), &uVar1);
			if (Global_2404994.f_43.f_69.f_66 == 0)
			{
				Global_2404994.f_43.f_69.f_66 = func_900();
			}
		}
		else if (!func_882())
		{
			if (Global_2404994.f_43.f_170)
			{
				if (!Global_2404994.f_43.f_69.f_66 == Global_2404994.f_43.f_67)
				{
					func_901();
				}
			}
			else
			{
				Global_2404994.f_43.f_69.f_66 = Global_2404994.f_43.f_67;
			}
		}
		if (!Global_2404994.f_43.f_69.f_66 == 0)
		{
			streaming::request_model(Global_2404994.f_43.f_69.f_66);
			if (streaming::has_model_loaded(Global_2404994.f_43.f_69.f_66))
			{
				return true;
			}
			else
			{
				return false;
			}
		}
		else
		{
			return false;
		}
	}
	else
	{
		return true;
	}
	return false;
}

int func_900()//Position - 0x79ED0
{
	int iVar0;
	
	iVar0 = gameplay::get_random_int_in_range(0, 7);
	switch (iVar0)
	{
		case 0:
			return joaat("premier");
		
		case 1:
			return joaat("cavalcade");
		
		case 2:
			return joaat("emperor");
		
		case 3:
			return joaat("ingot");
		
		case 4:
			return joaat("mesa");
		
		case 5:
			return joaat("primo");
		
		case 6:
			return joaat("washington");
		
		default:
	}
	return joaat("premier");
}

void func_901()//Position - 0x79F4E
{
	struct<101> Var0;
	
	Var0.f_9 = 49;
	Var0.f_59 = 2;
	Var0.f_78 = -1;
	Var0.f_95 = -1;
	Var0.f_96 = 1;
	Var0.f_98 = 132;
	Var0.f_99 = -1;
	Global_2404994.f_43.f_69 = { Var0 };
	Global_2404994.f_43.f_170 = 0;
}

void func_902(int iParam0)//Position - 0x79FA0
{
	func_478(Global_2404994.f_643, iParam0);
}

void func_903(int iParam0)//Position - 0x79FB7
{
	int iVar0;
	int iVar1;
	float fVar2;
	float fVar3;
	struct<2> Var4;
	
	iVar0 = false;
	if (func_485(iParam0, &iVar0))
	{
		vehicle::set_vehicle_fixed(iParam0);
		func_908(iParam0);
		vehicle::set_vehicle_engine_on(iParam0, true, 1, 0);
		vehicle::set_vehicle_lights(iParam0, 3);
		iVar1 = entity::get_entity_model(iParam0);
		if (vehicle::is_this_model_a_car(iVar1))
		{
			if (iVar1 == joaat("trophytruck") || iVar1 == joaat("trophytruck2"))
			{
				fVar2 = 2f;
				fVar3 = vehicle::get_vehicle_dirt_level(iParam0);
				if (fVar3 > fVar2)
				{
					fVar3 = fVar2;
					vehicle::set_vehicle_dirt_level(iParam0, fVar3);
				}
			}
		}
		if (vehicle::is_this_model_a_plane(entity::get_entity_model(iParam0)) || vehicle::is_this_model_a_heli(entity::get_entity_model(iParam0)))
		{
			vehicle::set_heli_blades_full_speed(iParam0);
		}
		func_905(iParam0);
		if (player::get_player_team(player::player_id()) > -1)
		{
			vehicle::set_vehicle_doors_locked_for_team(iParam0, player::get_player_team(player::player_id()), 0);
		}
		if (!ped::is_ped_in_vehicle(player::player_ped_id(), iParam0, 0))
		{
			func_502(player::player_ped_id(), iParam0, -1);
		}
		if (Global_1574255)
		{
			func_904(iParam0);
			vehicle::_0x5E569EC46EC21CAE(iParam0, 1);
		}
		if (Global_1574259)
		{
			vehicle::set_vehicle_engine_can_degrade(iParam0, false);
		}
		streaming::set_model_as_no_longer_needed(entity::get_entity_model(iParam0));
	}
	if (iVar0)
	{
		entity::set_vehicle_as_no_longer_needed(&iParam0);
	}
	Global_2404994.f_2215 = { Var4 };
}

void func_904(int iParam0)//Position - 0x7A0D4
{
	int iVar0;
	
	iVar0 = 0;
	while (iVar0 < 8)
	{
		if (vehicle::does_extra_exist(iParam0, iVar0 + 1))
		{
			vehicle::set_vehicle_extra(iParam0, iVar0 + 1, false);
		}
		iVar0++;
	}
	if (vehicle::is_vehicle_model(iParam0, joaat("bodhi2")))
	{
		vehicle::set_vehicle_extra(iParam0, 5, true);
	}
	if (((((((vehicle::is_vehicle_model(iParam0, joaat("chino")) || vehicle::is_vehicle_model(iParam0, joaat("voltic"))) || vehicle::is_vehicle_model(iParam0, joaat("buccaneer"))) || vehicle::is_vehicle_model(iParam0, joaat("buccaneer2"))) || vehicle::is_vehicle_model(iParam0, joaat("chino2"))) || vehicle::is_vehicle_model(iParam0, joaat("faction"))) || vehicle::is_vehicle_model(iParam0, joaat("faction2"))) || vehicle::is_vehicle_model(iParam0, joaat("mamba")))
	{
		if (vehicle::is_vehicle_a_convertible(iParam0, 0))
		{
			vehicle::set_convertible_roof(iParam0, 1);
		}
		if (vehicle::is_vehicle_model(iParam0, joaat("mamba")))
		{
			vehicle::set_vehicle_extra(iParam0, 1, true);
		}
		vehicle::set_vehicle_extra(iParam0, 2, false);
		vehicle::set_vehicle_extra(iParam0, 3, true);
		vehicle::set_vehicle_extra(iParam0, 4, true);
	}
}

void func_905(int iParam0)//Position - 0x7A1E1
{
	int iVar0;
	
	if (vehicle::is_this_model_a_plane(entity::get_entity_model(iParam0)))
	{
		iVar0 = vehicle::get_landing_gear_state(iParam0);
		if (Global_1574259)
		{
			if (!iVar0 == 3 && !iVar0 == 1)
			{
				vehicle::_set_vehicle_landing_gear(iParam0, 3);
				func_907(iParam0);
			}
		}
		else if (Global_1574249)
		{
			if (!iVar0 == 0 && !iVar0 == 2)
			{
				vehicle::_set_vehicle_landing_gear(iParam0, 2);
				func_907(iParam0);
			}
		}
		else if (func_906(iParam0, 1092616192))
		{
			if (!iVar0 == 3 && !iVar0 == 1)
			{
				vehicle::_set_vehicle_landing_gear(iParam0, 3);
				func_907(iParam0);
			}
		}
		else
		{
			Global_2404994.f_16 = 1;
		}
	}
	else
	{
		Global_2404994.f_16 = 1;
	}
}

bool func_906(int iParam0, float fParam1)//Position - 0x7A291
{
	vector3 vVar0;
	float fVar3;
	
	if (entity::does_entity_exist(iParam0))
	{
		vVar0 = { entity::get_entity_coords(iParam0, 0) };
		if (gameplay::get_ground_z_for_3d_coord(vVar0, &fVar3, 0))
		{
			if (gameplay::absf((vVar0.y - fVar3)) > fParam1)
			{
				return true;
			}
		}
		else if (vVar0.y > (pathfind::_0x336511A34F2E5185(vVar0.x, vVar0.y) + fParam1))
		{
			return true;
		}
		else if (vVar0.y > 300f)
		{
			return true;
		}
	}
	return false;
}

void func_907(int iParam0)//Position - 0x7A301
{
	Global_2404994.f_16 = 0;
	Global_2404994.f_21 = iParam0;
}

void func_908(int iParam0)//Position - 0x7A318
{
	entity::freeze_entity_position(iParam0, true);
	entity::set_entity_collision(iParam0, false, 0);
	entity::set_entity_invincible(iParam0, true);
	vehicle::_0x1CF38D529D7441D9(iParam0, true);
}

void func_909()//Position - 0x7A33D
{
	if (func_910(Global_2404994.f_43.f_171))
	{
		Global_2404994.f_43.f_171 = -1;
	}
	else
	{
		entity::set_vehicle_as_no_longer_needed(&(Global_2404994.f_43.f_171));
	}
}

bool func_910(int iParam0)//Position - 0x7A36C
{
	if (Global_69697)
	{
		if (decorator::decor_exist_on(iParam0, "Player_Vehicle"))
		{
			if (decorator::decor_get_int(iParam0, "Player_Vehicle") == network::_0xBC1D768F2F5D6C05(player::player_id()))
			{
				return true;
			}
		}
	}
	return false;
}

bool func_911(int iParam0)//Position - 0x7A3A2
{
	int iVar0;
	
	iVar0 = *iParam0;
	if (entity::does_entity_exist(*iParam0))
	{
		if (!func_913(&iVar0))
		{
			Global_2404994.f_2195 = *iParam0;
			return true;
		}
	}
	*iParam0 = 0;
	return false;
}

var func_912()//Position - 0x7A3D9
{
	return Global_2404994.f_2196;
}

bool func_913(int iParam0)//Position - 0x7A3E8
{
	if (entity::does_entity_exist(*iParam0))
	{
		if (!func_683(player::player_ped_id(), *iParam0))
		{
			if (func_916(iParam0))
			{
				if (!func_915(*iParam0))
				{
					if (network::network_has_control_of_entity(*iParam0))
					{
						if (!func_884(entity::get_entity_coords(*iParam0, 0), 10f, 1, 1, 0, 1, 1, 0) || !func_891())
						{
							if (!entity::is_entity_a_mission_entity(*iParam0))
							{
								if (network::network_get_entity_is_local(*iParam0))
								{
									if (!ped::is_ped_in_vehicle(player::player_ped_id(), *iParam0, 1))
									{
										entity::set_entity_as_mission_entity(*iParam0, false, 1);
										vehicle::delete_vehicle(iParam0);
										return true;
									}
									else
									{
										*iParam0 = -1;
									}
								}
								else
								{
									*iParam0 = -1;
								}
							}
							else if (entity::does_entity_belong_to_this_script(*iParam0, 0))
							{
								vehicle::delete_vehicle(iParam0);
								return true;
							}
							else
							{
								*iParam0 = -1;
							}
						}
						else
						{
							*iParam0 = -1;
						}
					}
					else if (func_914() && !func_891())
					{
						network::network_request_control_of_entity(*iParam0);
					}
					else
					{
						*iParam0 = -1;
					}
				}
				else
				{
					*iParam0 = -1;
				}
			}
			else
			{
				*iParam0 = -1;
			}
		}
	}
	return false;
}

var func_914()//Position - 0x7A4EE
{
	return Global_1574255;
}

bool func_915(int iParam0)//Position - 0x7A4FA
{
	int iVar0;
	int iVar1;
	
	iVar0 = 0;
	while (iVar0 < 32)
	{
		iVar1 = iVar0;
		if (!iVar1 == player::player_id())
		{
			if (func_387(iVar1, 1, 1))
			{
				if (ped::is_ped_in_any_vehicle(player::player_ped_id(), 1))
				{
					if (ped::get_vehicle_ped_is_using(player::player_ped_id()) == iParam0)
					{
						return true;
					}
				}
			}
		}
		iVar0++;
	}
	return false;
}

bool func_916(var uParam0)//Position - 0x7A54D
{
	int iVar0;
	
	iVar0 = -1;
	while (iVar0 <= 8)
	{
		if (!func_917(uParam0, iVar0))
		{
			return false;
		}
		iVar0++;
	}
	return true;
}

bool func_917(var uParam0, int iParam1)//Position - 0x7A579
{
	int iVar0;
	
	if (!vehicle::is_vehicle_seat_free(*uParam0, iParam1, 0))
	{
		iVar0 = vehicle::get_ped_in_vehicle_seat(*uParam0, iParam1, 0);
		if (!entity::does_entity_exist(iVar0))
		{
			return true;
		}
	}
	else
	{
		return true;
	}
	return false;
}

bool func_918(var uParam0, var uParam1, int iParam2, int iParam3, int iParam4, var uParam5, int iParam6, var uParam7, var uParam8, int iParam9, int iParam10)//Position - 0x7A5B1
{
	int iVar0;
	vector3 vVar1;
	float fVar4;
	
	iVar0 = false;
	if (!func_860(player::player_id()) && !Global_2421621[player::player_id() /*358*/] == 10)
	{
		return false;
	}
	if (!Global_2404994.f_623 == 0 && network::get_time_difference(network::get_network_time(), Global_2404994.f_626) < func_397(0))
	{
		return false;
	}
	if (iParam10)
	{
		if (streaming::is_player_switch_in_progress())
		{
			iParam10 = false;
		}
	}
	if (!script::get_id_of_this_thread() == Global_2404994.f_577)
	{
		if (!Global_2404994.f_571 == 0)
		{
			if (network::get_time_difference(network::get_network_time(), Global_2404994.f_576) < func_397(0))
			{
				return false;
			}
			else
			{
				Global_2404994.f_571 = 0;
			}
		}
	}
	else if (network::get_time_difference(network::get_network_time(), Global_2404994.f_574) > 30000)
	{
		Global_2404994.f_571 = 0;
	}
	if (Global_2404994.f_571 == 0)
	{
		Global_2404994.f_572 = 0;
		Global_2404994.f_573 = 0;
		Global_2404994.f_608 = 0;
		Global_2404994.f_574 = network::get_network_time();
		Global_2404994.f_577 = script::get_id_of_this_thread();
		Global_2404994.f_571 = 1;
		Global_2404994.f_576 = network::get_network_time();
		Global_2404994.f_2218 = uParam5;
		Global_2404994.f_2256 = 0;
		func_851();
		if (iParam10)
		{
			func_859();
		}
	}
	switch (Global_2404994.f_571)
	{
		case 1:
			if (func_925(&(Global_2404994.f_588), iParam2, iParam3, iParam4, iParam6, uParam7, uParam8))
			{
				if (iParam2 == 11 || Global_2404994.f_2218)
				{
					iVar0 = true;
				}
				else
				{
					Global_2404994.f_609 = gameplay::get_random_int_in_range(0, 65535);
					func_924(Global_2404994.f_588, Global_2404994.f_609, iParam9);
					Global_2404994.f_606 = 0;
					Global_2404994.f_607 = 0;
					Global_2404994.f_575 = network::get_network_time();
					Global_2404994.f_574 = network::get_network_time();
					Global_2404994.f_571 = 2;
				}
			}
			break;
		
		case 2:
			if (Global_2404994.f_606)
			{
				if (Global_2404994.f_610 == Global_2404994.f_609)
				{
					if (Global_2404994.f_607 && !Global_2404994.f_608 == -1)
					{
						if (((Global_2404994.f_498 && !func_923()) && func_921(Global_2412527, Global_2412527.f_4, &vVar1, 1)) && Global_2404994.f_2256 == 0)
						{
							func_796(Global_2404994.f_588[Global_2404994.f_608 /*3*/], 0);
							func_920(-1);
						}
						else if (iParam10)
						{
							if (iParam3)
							{
								fVar4 = 2f;
							}
							else
							{
								fVar4 = 0.3f;
							}
							func_797(Global_2404994.f_588[Global_2404994.f_608 /*3*/], fVar4);
							Global_2404994.f_571 = 3;
							Global_2404994.f_627 = network::_0x89023FBBF9200E9F();
						}
						else
						{
							iVar0 = true;
						}
					}
					else
					{
						func_919(&(Global_2404994.f_588));
						func_920(-1);
					}
				}
				else
				{
					Global_2404994.f_606 = 0;
					Global_2404994.f_607 = 0;
					Global_2404994.f_608 = -1;
				}
			}
			else if (network::get_time_difference(network::get_network_time(), Global_2404994.f_575) > 3000 || network::get_time_difference(network::get_network_time(), Global_2404994.f_575) < 0)
			{
				if (Global_2404994.f_573 < 3)
				{
					Global_2404994.f_573++;
					Global_2404994.f_571 = 1;
				}
				else
				{
					Global_2404994.f_571 = 4;
				}
			}
			break;
		
		case 3:
			if (iParam10)
			{
				if (network::get_time_difference(network::get_network_time(), Global_2404994.f_627) < 10000)
				{
					if (network::_0xE64A3CA08DFA37A9(Global_2404994.f_634))
					{
						if (network::_0x4DF7CFFF471A7FB1(Global_2404994.f_634))
						{
							if (!network::_0x4A2D4E8BF4265B0F(Global_2404994.f_634))
							{
								iVar0 = true;
							}
							else
							{
								func_796(Global_2404994.f_588[Global_2404994.f_608 /*3*/], 0);
								func_920(-1);
							}
						}
					}
					else
					{
						func_920(-1);
					}
				}
				else
				{
					func_920(1);
				}
			}
			else
			{
				iVar0 = true;
			}
			break;
		
		case 4:
			if (func_925(&(Global_2404994.f_588), iParam2, iParam3, iParam4, iParam6, uParam7, uParam8))
			{
				Global_2404994.f_571 = 5;
				Global_2404994.f_608 = 0;
			}
			break;
		
		case 5:
			iVar0 = true;
			break;
	}
	Global_2404994.f_576 = network::get_network_time();
	if (iVar0)
	{
		if (Global_2404994.f_476 == 8)
		{
			Global_2404994.f_651.f_503 = Global_2404994.f_651.f_502;
		}
		if (Global_2404994.f_608 == -1)
		{
			Global_2404994.f_608 = 0;
		}
		*uParam0 = { Global_2404994.f_588[Global_2404994.f_608 /*3*/] };
		*uParam1 = Global_2404994.f_588.f_10[Global_2404994.f_608];
		if (Global_2404994.f_43.f_52)
		{
			if (iParam2 == 3 && system::vmag(Global_2404994.f_43.f_49) > 0f)
			{
				if (iParam3)
				{
				}
				else
				{
					vVar1 = { Global_2404994.f_43.f_49 - *uParam0 };
					*uParam1 = gameplay::get_heading_from_vector_2d(vVar1.x, vVar1.y);
					if (Global_2404994.f_43.f_53)
					{
						*uParam1 = (*uParam1 + 180f);
					}
					Global_2404994.f_2200 = 1;
				}
			}
		}
		Global_2404994.f_2256 = 0;
		Global_2404994.f_571 = 0;
		func_851();
		if (iParam10)
		{
			func_859();
		}
		return true;
	}
	return false;
}

void func_919(var uParam0)//Position - 0x7AAB6
{
	int iVar0;
	
	iVar0 = 0;
	while (iVar0 < 3)
	{
		func_796(*(uParam0[iVar0 /*3*/]), 0);
		iVar0++;
	}
}

void func_920(int iParam0)//Position - 0x7AADD
{
	if (Global_2404994.f_572 < 7)
	{
		if (iParam0 == -1 || (iParam0 > -1 && Global_2404994.f_2256 < iParam0))
		{
			Global_2404994.f_572++;
			Global_2404994.f_2256++;
			Global_2404994.f_571 = 1;
		}
		else
		{
			Global_2404994.f_571 = 4;
		}
	}
	else
	{
		Global_2404994.f_571 = 4;
	}
}

bool func_921(vector3 vParam0, float fParam3, var uParam4, int iParam5)//Position - 0x7AB4E
{
	int iVar0;
	int iVar1;
	vector3 vVar2;
	
	iVar0 = 0;
	while (iVar0 < 32)
	{
		iVar1 = iVar0;
		if (!iVar1 == player::player_id())
		{
			if (func_387(iVar1, 0, 0))
			{
				if (func_229(iVar1, player::player_id()))
				{
					if ((!func_398(iVar1, 0, 0) && !func_922(iVar1)) && func_387(iVar1, 1, 1))
					{
						vVar2 = { func_131(iVar1) };
					}
					else if (Global_2415705.f_260[iVar0])
					{
						if (iParam5)
						{
							if (Global_2415705.f_326[iVar0] < Global_2415705.f_326[player::player_id()])
							{
								vVar2 = { Global_2415705.f_130[iVar0 /*3*/] };
							}
						}
						else
						{
							vVar2 = { Global_2415705.f_130[iVar0 /*3*/] };
						}
					}
					if (system::vmag(vVar2) > 0f)
					{
						if (system::vdist(vVar2, vParam0) < fParam3)
						{
							*uParam4 = { vVar2 };
							return true;
						}
					}
				}
			}
		}
		iVar0++;
	}
	return false;
}

bool func_922(int iParam0)//Position - 0x7AC3F
{
	if (Global_2421621[iParam0 /*358*/].f_210 != 0)
	{
		return true;
	}
	return false;
}

bool func_923()//Position - 0x7AC5B
{
	int iVar0;
	int iVar1;
	
	iVar0 = 0;
	while (iVar0 < 32)
	{
		iVar1 = iVar0;
		if (!iVar1 == player::player_id())
		{
			if (func_387(iVar1, 0, 0))
			{
				if (func_229(iVar1, player::player_id()))
				{
					return false;
				}
			}
		}
		iVar0++;
	}
	return true;
}

void func_924(struct<15> Param0, var uParam15, var uParam16, var uParam17, var uParam18, var uParam19)//Position - 0x7ACA2
{
	struct<22> Var0;
	int iVar22;
	
	Var0.f_2 = 3;
	Var0.f_2.f_10 = 3;
	Var0.f_2.f_14 = 3;
	Var0 = 7;
	Var0.f_1 = player::player_id();
	iVar22 = 0;
	while (iVar22 < 3)
	{
		Var0.f_2[iVar22 /*3*/] = { Param0[iVar22 /*3*/] };
		Var0.f_2.f_10[iVar22] = Param0.f_14[iVar22];
		iVar22++;
	}
	Var0.f_20 = uParam18;
	Var0.f_21 = uParam19;
	script::trigger_script_event(1, &Var0, 22, func_123(1, 1));
}

bool func_925(var uParam0, int iParam1, int iParam2, int iParam3, int iParam4, var uParam5, var uParam6)//Position - 0x7AD1D
{
	int iVar0;
	int iVar1;
	int iVar2;
	float fVar3;
	float fVar4;
	float fVar5;
	float fVar6;
	int iVar7;
	int iVar8;
	var uVar9;
	float fVar10;
	float fVar11;
	float fVar12;
	vector3 vVar13;
	vector3 vVar16;
	int iVar19;
	int iVar20;
	vector3 vVar21;
	struct<18> Var24;
	var uVar42;
	int iVar50;
	vector3 vVar51;
	vector3 vVar54;
	vector3 vVar57;
	vector3 vVar60;
	vector3 vVar63[4];
	var uVar76[4];
	int iVar81[4];
	var uVar86[4];
	float fVar91;
	int iVar92;
	int iVar93;
	int iVar94;
	int iVar95;
	float fVar96;
	float fVar97;
	float fVar98;
	int iVar99;
	var uVar100;
	struct<4> Var101;
	struct<4> Var107;
	struct<56> Var113;
	
	iVar2 = false;
	Var24 = 3;
	Var24.f_10 = 3;
	Var24.f_14 = 3;
	uVar42 = 3;
	uVar42.f_4 = 3;
	if (network::network_is_game_in_progress())
	{
		if (!func_387(player::player_id(), 0, 0))
		{
			return false;
		}
	}
	else
	{
		return false;
	}
	if (network::_0x35F0B98A8387274D())
	{
		return false;
	}
	if (network::get_time_difference(network::get_network_time(), Global_2404994.f_557) > 60000 || !script::get_id_of_this_thread() == Global_2404994.f_556)
	{
		Global_2404994.f_552 = 0;
		Global_2404994.f_554 = 0;
		Global_2404994.f_616 = 0;
		Global_2404994.f_617 = 0;
		Global_2404994.f_2031 = 0;
		Global_2404994.f_2032 = 0;
		Global_2404994.f_2030 = 0;
	}
	if (iParam1 == 13 || Global_2404994.f_476 == 13)
	{
		if (!Global_2404994.f_2031)
		{
			if (Global_2404994.f_2030 == 0)
			{
				if (func_884(Global_2412527, 150f, 1, 1, 0, 0, 0, 0))
				{
					func_1084(Global_2412527);
					Global_2404994.f_2032 = 0;
					Global_2404994.f_2029 = network::get_network_time();
					Global_2404994.f_2030 = 1;
				}
				else
				{
					Global_2404994.f_2032 = 1;
					Global_2404994.f_2031 = 1;
					Global_2404994.f_2030 = 2;
				}
			}
			if (Global_2404994.f_2030 == 1)
			{
				if (network::get_time_difference(network::get_network_time(), Global_2404994.f_2029) > 4000 || Global_2404994.f_2032 == 0)
				{
					Global_2404994.f_2031 = 1;
					Global_2404994.f_2030 = 2;
				}
				else if (Global_2404994.f_2032 == 1)
				{
					Global_2404994.f_2031 = 1;
					Global_2404994.f_2030 = 2;
				}
				else
				{
					return false;
				}
			}
		}
	}
	if (Global_2404994.f_552 == 0)
	{
		func_1083();
		Global_2404994.f_557 = network::get_network_time();
		Global_2404994.f_556 = script::get_id_of_this_thread();
		Global_2404994.f_638 = 0;
		Global_2404994.f_496 = 0;
		Global_2404994.f_499 = { Global_2404994.f_43.f_49 };
		Global_2404994.f_499.f_3 = Global_2404994.f_43.f_55;
		Global_2404994.f_499.f_4 = Global_2404994.f_43.f_58;
		Global_2404994.f_499.f_23 = func_1082();
		Global_2404994.f_525.f_16 = Global_2404994.f_43.f_306;
		Global_2404994.f_525.f_15 = Global_2404994.f_43.f_65;
		Global_2404994.f_525.f_25 = 0;
		Global_2404994.f_553 = 0;
		Global_2404994.f_499.f_13[1 /*3*/] = { Global_2404994.f_43.f_307 };
		Global_2404994.f_499.f_20[1] = Global_2404994.f_43.f_310;
		Global_2404994.f_525.f_4 = 125f;
		Global_2404994.f_2200 = 0;
		Global_2404994.f_616 = 0;
		Global_2404994.f_617 = 0;
		Global_2404994.f_555 = 0;
		if (!Global_2404994.f_43.f_52)
		{
			Global_2404994.f_43.f_49 = { 0f, 0f, 0f };
		}
		Global_2404994.f_476 = iParam1;
		if (Global_2404994.f_476 == 0 || func_124(player::player_id(), 0))
		{
			Global_2404994.f_476 = func_1069();
		}
		if ((Global_2404994.f_43.f_65 && Global_2404994.f_43.f_298) && Global_2404994.f_476 == 16)
		{
			Global_2404994.f_476 = 5;
		}
		Global_2404994.f_2203 = 0;
		Global_2404994.f_561 = 0f;
		Global_2404994.f_43.f_298 = 0;
		if (func_857(player::player_id(), 1))
		{
			Global_2404994.f_525.f_17 = 1;
		}
		else
		{
			Global_2404994.f_525.f_17 = 0;
		}
		Global_2404994.f_498 = 0;
		Global_2404994.f_2201 = 0;
		if (Global_2404994.f_476 == 10)
		{
			iVar50 = func_1068(Global_2412527);
			if (!iVar50 == -1)
			{
				if (func_472(iVar50))
				{
					Global_2404994.f_2316 = iVar50;
					Global_2404994.f_476 = 29;
				}
			}
		}
		if (Global_2404994.f_476 == 10)
		{
		}
		switch (Global_2404994.f_476)
		{
			case 9:
				func_1067(&Global_1311923, &(Global_2404994.f_525), &(Global_2404994.f_525.f_3), 10f);
				iVar2 = true;
				break;
			
			case 8:
				if (!Global_2404994.f_1684)
				{
					Global_2404994.f_1684 = 1;
				}
				uVar42 = { func_1065(iParam2) };
				iVar0 = 0;
				while (iVar0 < 3)
				{
					if (iVar0 == 0)
					{
						if (uVar42[iVar0] > -1)
						{
							Global_2404994.f_525 = { Global_2404994.f_651.f_1[uVar42[iVar0] /*5*/] };
							Global_2404994.f_525.f_3 = Global_2404994.f_651.f_1[uVar42[iVar0] /*5*/].f_3;
							Global_2404994.f_651.f_502 = uVar42[0];
							iVar2 = true;
							iParam4 = 1;
						}
						else
						{
							Global_2404994.f_525 = { Global_2404994.f_651.f_1[0 /*5*/] };
							Global_2404994.f_525.f_3 = Global_2404994.f_651.f_1[0 /*5*/].f_3;
							Global_2404994.f_499.f_6 = 1;
							Global_2404994.f_525.f_4 = 150f;
						}
					}
					else if (uVar42[iVar0] > -1)
					{
						Var24[iVar0 /*3*/] = { Global_2404994.f_651.f_1[uVar42[iVar0] /*5*/] };
						Var24.f_10[iVar0] = Global_2404994.f_651.f_1[uVar42[iVar0] /*5*/].f_3;
					}
					iVar0++;
				}
				break;
			
			case 7:
				Global_2404994.f_525 = { 23.6269f, -17.1858f, 0.0025f };
				Global_2404994.f_525.f_3 = 0f;
				Global_2404994.f_2218 = 1;
				iVar2 = true;
				break;
			
			case 12:
				func_1067(&Global_1311956, &(Global_2404994.f_525), &(Global_2404994.f_525.f_3), 1123024896);
				iVar2 = true;
				break;
			
			case 1:
				vVar21 = { Global_2404994.f_493 };
				if (Global_1589933[player::player_id() /*601*/].f_257.f_15 > 0)
				{
					iVar19 = Global_1589933[player::player_id() /*601*/].f_257.f_15;
					vVar21 = { Global_1049427[iVar19 /*1942*/].f_3[0 /*3*/] };
				}
				if (Global_1616548 > -1)
				{
					if (func_387(Global_1616548, 0, 1))
					{
						if (func_809(Global_1616548))
						{
							Global_2404994.f_499.f_13[0 /*3*/] = { func_131(Global_1616548) };
							if (!func_857(player::player_id(), 1))
							{
								if (ped::is_ped_in_any_vehicle(player::get_player_ped(Global_1616548), 0))
								{
									Global_2404994.f_499.f_20[0] = 250f;
								}
								else
								{
									Global_2404994.f_499.f_20[0] = 125f;
								}
							}
							else if (ped::is_ped_in_any_vehicle(player::get_player_ped(Global_1616548), 0))
							{
								Global_2404994.f_499.f_20[0] = 125f;
							}
							else
							{
								Global_2404994.f_499.f_20[0] = 75f;
							}
						}
					}
				}
				iVar0 = 0;
				while (iVar0 < 2)
				{
					if (func_815(vVar21, Global_2404994.f_499.f_13[iVar0 /*3*/], Global_2404994.f_499.f_20[iVar0], 1, 1))
					{
						func_826(&vVar21, Global_2404994.f_499.f_13[iVar0 /*3*/], Global_2404994.f_499.f_20[iVar0], 1036831949, 0, 0);
					}
					iVar0++;
				}
				Global_2404994.f_525 = { vVar21 };
				Global_2404994.f_525.f_3 = gameplay::get_random_float_in_range(0f, 360f);
				if (Global_2404994.f_43.f_301 > -1f)
				{
					Global_2404994.f_499.f_5 = Global_2404994.f_43.f_301;
				}
				if (func_1063(player::player_id()))
				{
					Global_2404994.f_561 = Global_2404994.f_43.f_302;
				}
				else
				{
					Global_2404994.f_561 = 40f;
				}
				fVar12 = (Global_2404994.f_499.f_5 - 65f);
				if (fVar12 < 0f)
				{
					fVar12 = 0f;
				}
				if (func_1063(player::player_id()))
				{
					Global_2404994.f_525.f_4 = (120f + fVar12);
				}
				else
				{
					Global_2404994.f_525.f_4 = (135f + fVar12);
				}
				Global_2404994.f_525.f_4 = ((95f + Global_2404994.f_561) + fVar12);
				if (Global_2404994.f_525.f_4 > 250f)
				{
					Global_2404994.f_525.f_4 = 250f;
				}
				Global_2404994.f_558 = { Global_2404994.f_493 };
				fVar12 = (Global_2404994.f_525.f_4 * 0.5f);
				if (fVar12 < Global_2404994.f_499.f_5)
				{
					fVar12 = Global_2404994.f_499.f_5;
				}
				vVar13 = { func_1062(Global_2404994.f_525, fVar12) };
				if (system::vmag(vVar13) > 0f)
				{
					vVar13.z = Global_2404994.f_525.f_2;
					vVar16 = { Global_2404994.f_525 - vVar13 };
					vVar16 = { vVar16 / FtoV(system::vmag(vVar16)) };
					vVar16 = { vVar16 * Vector(fVar12, fVar12, fVar12) };
					Global_2404994.f_525 = { Global_2404994.f_525 + vVar16 };
				}
				if (func_1060(&(Global_2404994.f_525), 1))
				{
				}
				if (func_1085())
				{
					Global_2404994.f_525.f_4 = 400f;
					Global_2404994.f_561 = 100f;
					iParam2 = true;
				}
				break;
			
			case 20:
				if (!player::is_player_dead(player::player_id()))
				{
					vVar16 = { entity::get_entity_coords(player::player_ped_id(), 1) };
				}
				else
				{
					vVar16 = { Global_2404994.f_493 };
				}
				Global_2404994.f_558 = { vVar16 };
				Global_2404994.f_561 = 125f;
				if (func_1060(&vVar16, 1))
				{
				}
				if (Global_1574250)
				{
					if (Global_1573825.f_14 != func_9())
					{
						if (func_387(Global_1573825.f_14, 0, 1))
						{
							Global_2404994.f_499.f_13[0 /*3*/] = { func_131(Global_1573825.f_14) };
							if (func_1085())
							{
								Global_2404994.f_499.f_20[0] = 250f;
							}
							else
							{
								Global_2404994.f_499.f_20[0] = 125f;
							}
						}
					}
				}
				iVar0 = 0;
				while (iVar0 < 2)
				{
					if (func_815(vVar16, Global_2404994.f_499.f_13[iVar0 /*3*/], Global_2404994.f_499.f_20[iVar0], 1, 1))
					{
						func_826(&vVar16, Global_2404994.f_499.f_13[iVar0 /*3*/], Global_2404994.f_499.f_20[iVar0], 1036831949, 0, 0);
					}
					iVar0++;
				}
				Global_2404994.f_525 = { vVar16 };
				Global_2404994.f_525.f_3 = gameplay::get_random_float_in_range(0f, 360f);
				Global_2404994.f_525.f_4 = 250f;
				if (Global_2404994.f_499.f_3)
				{
					if (!interior::is_valid_interior(interior::get_interior_at_coords(Global_2404994.f_493)))
					{
						Global_2404994.f_499.f_3 = 0;
					}
				}
				if (func_1085())
				{
					Global_2404994.f_525.f_4 = 400f;
					Global_2404994.f_561 = 100f;
					iParam2 = true;
				}
				break;
			
			case 2:
				Global_2404994.f_525 = { func_1059() };
				Global_2404994.f_525.f_3 = gameplay::get_random_float_in_range(0f, 360f);
				break;
			
			case 26:
				if (!player::is_player_dead(player::player_id()))
				{
					uVar9 = func_1058(func_131(player::player_id()));
				}
				else
				{
					uVar9 = func_1058(Global_2404994.f_493);
				}
				func_1057(&(Global_2404994.f_43[uVar9 /*12*/]));
				if (!player::is_player_dead(player::player_id()))
				{
					Global_2404994.f_525.f_18 = { func_131(player::player_id()) };
				}
				else
				{
					Global_2404994.f_525.f_18 = { Global_2404994.f_493 };
				}
				if (func_1063(player::player_id()))
				{
					Global_2404994.f_561 = Global_2404994.f_43.f_302;
				}
				else
				{
					Global_2404994.f_561 = 40f;
				}
				Global_2404994.f_558 = { Global_2404994.f_525.f_18 };
				vVar51 = { Global_2404994.f_525.f_18 };
				switch (Global_2404994.f_43[uVar9 /*12*/].f_10)
				{
					case 0:
						fVar91 = Global_2404994.f_43[uVar9 /*12*/].f_6;
						fVar91 = (fVar91 * 0.5f);
						break;
					
					case 1:
						fVar91 = system::vmag(Global_2404994.f_43[uVar9 /*12*/] - Global_2404994.f_43[uVar9 /*12*/].f_3);
						fVar91 = (fVar91 * 0.5f);
						fVar91 = (fVar91 * 0.5f);
						break;
					
					case 2:
						fVar91 = Global_2404994.f_43[uVar9 /*12*/].f_6;
						fVar91 = (fVar91 * 0.5f);
						fVar91 = (fVar91 * 0.5f);
						break;
				}
				if (!func_824(vVar51, &(Global_2404994.f_43[uVar9 /*12*/]), 1008981770, 0, 0))
				{
					func_1053(&vVar51, &(Global_2404994.f_43[uVar9 /*12*/]), fVar91);
				}
				if (Global_2404994.f_43.f_301 > -1f)
				{
					Global_2404994.f_499.f_5 = Global_2404994.f_43.f_301;
				}
				fVar97 = (Global_2404994.f_499.f_5 * 1.5f);
				iVar92 = func_808(vVar51, fVar97, &uVar100);
				if (iVar92 > 0 || Global_2404994.f_525.f_15)
				{
					if (Global_2404994.f_525.f_15)
					{
						vVar51 = { func_1052(vVar51, Global_2404994.f_43[uVar9 /*12*/], Global_2404994.f_43[uVar9 /*12*/].f_3, Global_2404994.f_43[uVar9 /*12*/].f_6, Global_2404994.f_43[uVar9 /*12*/].f_10, fVar97, 1, Global_2404994.f_499.f_23, &(Global_2404994.f_525.f_25)) };
						Global_2404994.f_561 = 0f;
						fVar98 = 40f;
					}
					else
					{
						iVar93 = false;
						vVar54 = { func_1051(vVar51, fVar97) };
						vVar57 = { func_1050(vVar51, fVar97) };
						vVar60 = { vVar51 - vVar54 };
						vVar60 = { vVar60 / FtoV(system::vmag(vVar60)) };
						vVar60 = { vVar60 * Vector(fVar97, fVar97, fVar97) };
						iVar0 = 0;
						while (iVar0 < 4)
						{
							vVar16 = { vVar60 };
							func_470(&vVar16, 0f, 0f, (system::to_float(iVar0) * 90f));
							vVar63[iVar0 /*3*/] = { vVar54 + vVar16 };
							if (!func_824(vVar63[iVar0 /*3*/], &(Global_2404994.f_43[uVar9 /*12*/]), 1008981770, 0, 0))
							{
								func_1053(&(vVar63[iVar0 /*3*/]), &(Global_2404994.f_43[uVar9 /*12*/]), 1036831949);
							}
							uVar76[iVar0] = func_808(vVar63[iVar0 /*3*/], fVar97, &(uVar86[iVar0]));
							vVar16 = { vVar54 - vVar63[iVar0 /*3*/] };
							if (func_491(vVar16, vVar57) < 0f)
							{
								iVar81[iVar0] = 1;
							}
							else
							{
								iVar81[iVar0] = 0;
							}
							iVar0++;
						}
						iVar0 = 0;
						while (iVar0 < 4)
						{
							if ((uVar76[iVar0] == 0 && iVar81[iVar0] == 0) && !iVar93)
							{
								vVar51 = { vVar63[iVar0 /*3*/] };
								iVar93 = true;
							}
							iVar0++;
						}
						if (!iVar93)
						{
							iVar0 = 0;
							while (iVar0 < 4)
							{
								if (uVar76[iVar0] == 0 && !iVar93)
								{
									vVar51 = { vVar63[iVar0 /*3*/] };
									iVar93 = true;
								}
								iVar0++;
							}
						}
						if (!iVar93)
						{
							iVar94 = 999;
							iVar95 = -1;
							iVar0 = 0;
							while (iVar0 < 4)
							{
								if (uVar76[iVar0] < iVar94)
								{
									iVar95 = iVar0;
									fVar96 = uVar86[iVar0];
									iVar94 = uVar76[iVar0];
								}
								else if (uVar76[iVar0] == iVar94)
								{
									if (uVar86[iVar0] > fVar96)
									{
										fVar96 = uVar86[iVar0];
										iVar95 = iVar0;
									}
								}
								iVar0++;
							}
							if (!iVar95 == -1 && iVar94 < iVar92)
							{
								vVar51 = { vVar63[iVar95 /*3*/] };
								iVar93 = true;
							}
						}
						if (!iVar93)
						{
						}
						else
						{
							Global_2404994.f_561 = 0f;
						}
					}
				}
				Global_2404994.f_525.f_18 = { vVar51 };
				Global_2404994.f_525.f_21 = 1;
				Global_2404994.f_499.f_6 = 1;
				Global_2404994.f_525.f_3 = gameplay::get_random_float_in_range(0f, 360f);
				break;
			
			case 3:
				iVar0 = gameplay::get_random_int_in_range(0, func_1049());
				func_1057(&(Global_2404994.f_43[iVar0 /*12*/]));
				if (func_836(&(Global_2404994.f_525), 0, 0, 0))
				{
					Global_2404994.f_496 = 1;
				}
				break;
			
			case 15:
				if (player::is_player_dead(player::player_id()))
				{
					vVar21 = { Global_2404994.f_493 };
				}
				else
				{
					vVar21 = { func_131(player::player_id()) };
				}
				if (Global_1589933[player::player_id() /*601*/].f_257.f_15 > 0)
				{
					iVar19 = Global_1589933[player::player_id() /*601*/].f_257.f_15;
					vVar21 = { Global_1049427[iVar19 /*1942*/].f_3[0 /*3*/] };
				}
				fVar10 = func_1048(vVar21, &Global_2408977, &iVar7);
				if (func_1047(0, -1) > 0)
				{
					iVar0 = 0;
					iVar0 = 0;
					while (iVar0 < 12)
					{
						iVar19 = func_1047(iVar0, -1);
						if (Global_1049427[iVar19 /*1942*/].f_34 == 0 || Global_1049427[iVar19 /*1942*/].f_34 == 3)
						{
							if (fVar11 == 0f || fVar11 > system::vdist(vVar21, Global_1049427[iVar19 /*1942*/].f_3[0 /*3*/]))
							{
								fVar11 = system::vdist(vVar21, Global_1049427[iVar19 /*1942*/].f_3[0 /*3*/]);
								iVar8 = iVar19;
							}
						}
						else if (fVar11 == 0f)
						{
							fVar11 = 999999.9f;
						}
						iVar0++;
					}
				}
				else
				{
					fVar11 = 999999.9f;
				}
				if (fVar11 < 10000f && fVar11 < fVar10)
				{
					switch (Global_1049427[iVar8 /*1942*/].f_34)
					{
						case 0:
							func_1043(iVar8, &(Global_2404994.f_525), &(Global_2404994.f_525.f_3));
							Global_2404994.f_2205 = 0;
							break;
						
						case 1:
							Global_2404994.f_525 = { Global_1049427[iVar8 /*1942*/].f_1742.f_20 };
							Global_2404994.f_525.f_3 = Global_1049427[iVar8 /*1942*/].f_1742.f_23;
							if (Global_2404994.f_572 == 0)
							{
								Global_2404994.f_2205 = 1;
							}
							Global_2404994.f_2218 = 1;
							break;
					}
					iVar2 = true;
					if (Global_2404994.f_572 == 0)
					{
						Global_2404994.f_2204 = 1;
					}
					Global_2404994.f_2203 = 1;
				}
				else if (fVar10 < fVar11)
				{
					if (iVar7 > -1)
					{
						func_1057(&(Global_2408977[iVar7 /*12*/]));
					}
					else
					{
						func_1057(&(Global_2408977[0 /*12*/]));
					}
					Global_2404994.f_2217 = 1;
				}
				Global_2404994.f_638 = 1;
				break;
			
			case 23:
				if (player::is_player_dead(player::player_id()))
				{
					vVar21 = { Global_2404994.f_493 };
				}
				else
				{
					vVar21 = { func_131(player::player_id()) };
				}
				fVar10 = func_1048(vVar21, &Global_2408977, &iVar7);
				if (iVar7 > -1)
				{
					func_1057(&(Global_2408977[iVar7 /*12*/]));
				}
				else
				{
					func_1057(&(Global_2408977[0 /*12*/]));
				}
				Global_2404994.f_2217 = 1;
				Global_2404994.f_638 = 1;
				break;
			
			case 25:
				vVar21 = { Global_2412527 };
				fVar11 = func_1048(vVar21, &Global_2409123, &iVar8);
				if (iVar8 > -1)
				{
					func_1057(&(Global_2409123[iVar8 /*12*/]));
				}
				else
				{
					func_1057(&(Global_2409123[0 /*12*/]));
				}
				Global_2404994.f_638 = 1;
				break;
			
			case 24:
				if (player::is_player_dead(player::player_id()))
				{
					vVar21 = { Global_2404994.f_493 };
				}
				else
				{
					vVar21 = { func_131(player::player_id()) };
				}
				fVar10 = func_1048(vVar21, &Global_2409038, &iVar7);
				if (iVar7 > -1)
				{
					func_1057(&(Global_2409038[iVar7 /*12*/]));
				}
				else
				{
					func_1057(&(Global_2409038[0 /*12*/]));
				}
				Global_2404994.f_638 = 1;
				break;
			
			case 22:
				vVar21 = { Global_2412527 };
				fVar10 = func_1048(vVar21, &Global_2408977, &iVar7);
				if (func_1047(0, -1) > 0)
				{
					iVar0 = 0;
					iVar0 = 0;
					while (iVar0 < 12)
					{
						iVar19 = func_1047(iVar0, -1);
						if (Global_1049427[iVar19 /*1942*/].f_34 == 0 || Global_1049427[iVar19 /*1942*/].f_34 == 3)
						{
							if (fVar11 == 0f || fVar11 > system::vdist(vVar21, Global_1049427[iVar19 /*1942*/].f_3[0 /*3*/]))
							{
								fVar11 = system::vdist(vVar21, Global_1049427[iVar19 /*1942*/].f_3[0 /*3*/]);
								iVar8 = iVar19;
							}
						}
						else if (fVar11 == 0f)
						{
							fVar11 = 999999.9f;
						}
						iVar0++;
					}
				}
				else
				{
					fVar11 = 999999.9f;
				}
				if (fVar11 < 10000f && fVar11 < fVar10)
				{
					switch (Global_1049427[iVar8 /*1942*/].f_34)
					{
						case 0:
							func_1043(iVar8, &(Global_2404994.f_525), &(Global_2404994.f_525.f_3));
							Global_2404994.f_2205 = 0;
							break;
						
						case 1:
							if (Global_2404994.f_572 == 0)
							{
								Global_2404994.f_2205 = 1;
							}
							Global_2404994.f_525 = { Global_1049427[iVar8 /*1942*/].f_1742.f_20 };
							Global_2404994.f_525.f_3 = Global_1049427[iVar8 /*1942*/].f_1742.f_23;
							Global_2404994.f_2218 = 1;
							break;
					}
					iVar2 = true;
					if (Global_2404994.f_572 == 0)
					{
						Global_2404994.f_2204 = 1;
					}
					Global_2404994.f_2203 = 1;
				}
				else if (fVar10 < fVar11)
				{
					if (iVar7 > -1)
					{
						func_1057(&(Global_2408977[iVar7 /*12*/]));
					}
					else
					{
						func_1057(&(Global_2408977[0 /*12*/]));
					}
					Global_2404994.f_2217 = 1;
				}
				Global_2404994.f_638 = 1;
				break;
			
			case 17:
				if (Global_2411314 > 0)
				{
					iVar20 = Global_2411314;
				}
				else
				{
					iVar20 = func_1041();
				}
				Global_2411314 = 0;
				if (!iVar20 > 0)
				{
				}
				iVar19 = iVar20;
				Global_2404994.f_525 = { Global_1049427[iVar19 /*1942*/].f_1742.f_20 };
				Global_2404994.f_525.f_3 = Global_1049427[iVar19 /*1942*/].f_1742.f_23;
				Global_2404994.f_2218 = 1;
				iVar2 = true;
				Global_2404994.f_638 = 1;
				if (Global_2404994.f_572 == 0)
				{
					Global_2404994.f_2205 = 1;
				}
				if (Global_2404994.f_572 == 0)
				{
					Global_2404994.f_2204 = 1;
				}
				Global_2404994.f_2203 = 1;
				break;
			
			case 18:
				if (Global_2411314 > 0)
				{
					iVar20 = Global_2411314;
				}
				else
				{
					iVar20 = func_1041();
				}
				Global_2411314 = 0;
				if (iVar20 <= 0)
				{
				}
				iVar19 = iVar20;
				switch (Global_1049427[iVar19 /*1942*/].f_34)
				{
					case 0:
					case 3:
						func_1043(iVar19, &(Global_2404994.f_525), &(Global_2404994.f_525.f_3));
						Global_2404994.f_2205 = 0;
						break;
					
					case 1:
					case 5:
						if (Global_2404994.f_572 == 0)
						{
							Global_2404994.f_2205 = 1;
						}
						Global_2404994.f_525 = { Global_1049427[iVar19 /*1942*/].f_1742.f_20 };
						Global_2404994.f_525.f_3 = Global_1049427[iVar19 /*1942*/].f_1742.f_23;
						Global_2404994.f_2218 = 1;
						break;
				}
				iVar2 = true;
				Global_2404994.f_638 = 1;
				if (Global_2404994.f_572 == 0)
				{
					Global_2404994.f_2204 = 1;
				}
				Global_2404994.f_2203 = 1;
				break;
			
			case 34:
				if (func_1038())
				{
					iVar50 = func_1037(func_81());
					if (iVar50 <= 0)
					{
					}
					func_1036(iVar50, &(Global_2404994.f_525), &(Global_2404994.f_525.f_3));
					iVar2 = true;
					Global_2404994.f_638 = 1;
				}
				else
				{
					Global_2404994.f_525 = { func_1030(func_81()) };
					Global_2404994.f_525.f_3 = gameplay::get_random_float_in_range(0f, 360f);
				}
				break;
			
			case 27:
				iVar50 = func_1029();
				if (iVar50 <= 0)
				{
				}
				func_1036(iVar50, &(Global_2404994.f_525), &(Global_2404994.f_525.f_3));
				iVar2 = true;
				Global_2404994.f_638 = 1;
				break;
			
			case 29:
				if (Global_2404994.f_2316 < 0)
				{
				}
				func_1036(Global_2404994.f_2316, &(Global_2404994.f_525), &(Global_2404994.f_525.f_3));
				iVar2 = true;
				Global_2404994.f_638 = 1;
				break;
			
			case 30:
				if (Global_2404994.f_2316 < 0)
				{
				}
				func_1027(0, Global_2404994.f_2316, &(Global_2404994.f_525), &(Global_2404994.f_525.f_3), 1);
				Global_2404994.f_525.f_4 = 150f;
				Global_2404994.f_525.f_7 = 0;
				Global_2404994.f_525.f_8 = { 0f, 0f, 0f };
				Global_2404994.f_525.f_11 = { 0f, 0f, 0f };
				Global_2404994.f_525.f_14 = 0f;
				Global_2404994.f_558 = { Global_2404994.f_525 };
				Global_2404994.f_561 = 12f;
				Global_2404994.f_499.f_13[0 /*3*/] = { Global_2404994.f_558 };
				Global_2404994.f_499.f_20[0] = Global_2404994.f_561;
				Global_2404994.f_499.f_6 = 1;
				Global_2404994.f_499.f_4 = 1;
				Global_2404994.f_499.f_3 = 0;
				Global_2404994.f_525.f_16 = 1;
				Global_2404994.f_499.f_5 = 5f;
				Global_2404994.f_525.f_22 = 0;
				Global_2404994.f_496 = 0;
				break;
			
			case 28:
				iVar50 = func_1029();
				switch (Global_3934109[iVar50 /*2003*/].f_34)
				{
					case 2:
						switch (func_1026())
						{
							case 4:
								Global_2404994.f_525 = { Global_3934109[iVar50 /*2003*/].f_146.f_82[4 /*102*/] };
								Global_2404994.f_525.f_3 = Global_3934109[iVar50 /*2003*/].f_146.f_82[4 /*102*/].f_3;
								break;
							
							case 5:
								Global_2404994.f_525 = { Global_3934109[iVar50 /*2003*/].f_146.f_82[1 /*102*/] };
								Global_2404994.f_525.f_3 = Global_3934109[iVar50 /*2003*/].f_146.f_82[1 /*102*/].f_3;
								break;
							
							default:
								func_1022(iVar50, &(Global_2404994.f_525), &(Global_2404994.f_525.f_3));
								break;
						}
						Global_2404994.f_2205 = 0;
						break;
				}
				gameplay::set_bit(&(Global_1589933[player::player_id() /*601*/].f_257.f_13), 4);
				iVar2 = true;
				Global_2404994.f_638 = 1;
				if (Global_2404994.f_572 == 0)
				{
					Global_2404994.f_2204 = 1;
				}
				Global_2404994.f_2206 = 1;
				Global_2404994.f_2203 = 1;
				break;
			
			case 19:
				iVar20 = func_1041();
				if (iVar20 <= 0)
				{
				}
				if (iVar20 > 115)
				{
					iVar20 = Global_2097152[func_752() /*10730*/].f_7546.f_1029;
				}
				if (iVar20 > 115)
				{
					iVar20 = 0;
				}
				iVar19 = iVar20;
				switch (Global_1049427[iVar19 /*1942*/].f_34)
				{
					case 0:
					case 3:
						switch (func_1026())
						{
							case 4:
								Global_2404994.f_525 = { Global_1049427[iVar19 /*1942*/].f_146.f_82[4 /*102*/] };
								Global_2404994.f_525.f_3 = Global_1049427[iVar19 /*1942*/].f_146.f_82[4 /*102*/].f_3;
								break;
							
							case 5:
								Global_2404994.f_525 = { Global_1049427[iVar19 /*1942*/].f_146.f_82[1 /*102*/] };
								Global_2404994.f_525.f_3 = Global_1049427[iVar19 /*1942*/].f_146.f_82[1 /*102*/].f_3;
								break;
							
							default:
								func_1043(iVar20, &(Global_2404994.f_525), &(Global_2404994.f_525.f_3));
								break;
						}
						Global_2404994.f_2205 = 0;
						break;
					
					case 1:
					case 5:
						if (Global_2404994.f_572 == 0)
						{
							Global_2404994.f_2205 = 1;
						}
						Global_2404994.f_525 = { Global_1049427[iVar19 /*1942*/].f_1742.f_20 };
						Global_2404994.f_525.f_3 = Global_1049427[iVar19 /*1942*/].f_1742.f_23;
						Global_2404994.f_2218 = 1;
						break;
				}
				gameplay::set_bit(&(Global_1589933[player::player_id() /*601*/].f_257.f_13), 4);
				iVar2 = true;
				Global_2404994.f_638 = 1;
				if (Global_2404994.f_572 == 0)
				{
					Global_2404994.f_2204 = 1;
				}
				Global_2404994.f_2203 = 1;
				break;
			
			case 35:
				iVar20 = func_1047(5, -1);
				if (iVar20 <= 0)
				{
				}
				else
				{
					func_1021(iVar20);
				}
				iVar19 = iVar20;
				switch (func_1026())
				{
					case 4:
						Global_2404994.f_525 = { Global_1049427[iVar19 /*1942*/].f_146.f_82[4 /*102*/] };
						Global_2404994.f_525.f_3 = Global_1049427[iVar19 /*1942*/].f_146.f_82[4 /*102*/].f_3;
						break;
					
					case 5:
						func_1016(iVar19, 612, &Var101, func_1020(iVar19), 0);
						Global_2404994.f_525 = { Var101 };
						Global_2404994.f_525.f_3 = Var101.f_3.f_2;
						break;
					
					default:
						func_1043(iVar20, &(Global_2404994.f_525), &(Global_2404994.f_525.f_3));
						break;
				}
				iVar2 = true;
				Global_2404994.f_638 = 1;
				if (Global_2404994.f_572 == 0)
				{
					Global_2404994.f_2204 = 1;
				}
				Global_2404994.f_2203 = 1;
				break;
			
			case 36:
				iVar20 = func_1047(6, -1);
				if (iVar20 <= 0)
				{
					if (Global_2404994.f_2210 == 0)
					{
					}
				}
				else
				{
					func_1021(iVar20);
				}
				if (Global_2404994.f_2211 > -1)
				{
					iVar20 = Global_2404994.f_2211;
					Global_2404994.f_2211 = -1;
				}
				iVar19 = iVar20;
				switch (func_1026())
				{
					case 5:
						func_1016(iVar19, 612, &Var107, func_1020(iVar19), 0);
						Global_2404994.f_525 = { Var107 };
						Global_2404994.f_525.f_3 = Var107.f_3.f_2;
						break;
					
					case 6:
						func_1016(iVar19, 912, &Var107, func_1020(iVar19), 0);
						Global_2404994.f_525 = { Var107 };
						Global_2404994.f_525.f_3 = Var107.f_3.f_2;
						break;
					
					default:
						func_1043(iVar20, &(Global_2404994.f_525), &(Global_2404994.f_525.f_3));
						break;
				}
				iVar2 = true;
				Global_2404994.f_638 = 1;
				if (Global_2404994.f_572 == 0)
				{
					Global_2404994.f_2204 = 1;
				}
				Global_2404994.f_2203 = 1;
				break;
			
			case 4:
				if (!network::_0xFB1F9381E80FA13F(0, &(Global_2404994.f_525)))
				{
					Global_2404994.f_525 = { func_1015() };
					Global_2404994.f_525 = { func_1014(Global_2404994.f_525, 50f, 25f) };
				}
				Global_2404994.f_525.f_3 = gameplay::get_random_float_in_range(0f, 360f);
				break;
			
			case 31:
				if (func_92(player::player_id()))
				{
					iVar99 = func_1013(player::player_id(), 1);
					if (!iVar99 == func_9())
					{
						Global_2404994.f_525 = { func_1030(iVar99) };
					}
					else
					{
						Global_2404994.f_525 = { func_1030(player::player_id()) };
					}
				}
				else
				{
					Global_2404994.f_525 = { func_1030(func_81()) };
				}
				Global_2404994.f_525.f_3 = 0f;
				Global_2404994.f_525.f_4 = 50f;
				Global_2404994.f_525.f_7 = 0;
				Global_2404994.f_525.f_8 = { 0f, 0f, 0f };
				Global_2404994.f_525.f_11 = { 0f, 0f, 0f };
				Global_2404994.f_525.f_14 = 0f;
				Global_2404994.f_558 = { Global_2404994.f_525 };
				Global_2404994.f_561 = 2f;
				Global_2404994.f_499.f_13[0 /*3*/] = { Global_2404994.f_558 };
				Global_2404994.f_499.f_20[0] = Global_2404994.f_561;
				Global_2404994.f_499.f_6 = 0;
				Global_2404994.f_499 = { Global_2404994.f_525 };
				Global_2404994.f_499.f_4 = 1;
				Global_2404994.f_499.f_3 = 0;
				Global_2404994.f_525.f_16 = 1;
				Global_2404994.f_525.f_17 = 1;
				Global_2404994.f_496 = 1;
				break;
			
			case 33:
				if (func_92(player::player_id()))
				{
					iVar99 = func_1013(player::player_id(), 1);
					if (!iVar99 == func_9())
					{
						Global_2404994.f_525 = { func_1030(iVar99) };
					}
					else
					{
						Global_2404994.f_525 = { func_1030(player::player_id()) };
					}
				}
				else
				{
					Global_2404994.f_525 = { func_1030(func_81()) };
				}
				Global_2404994.f_525.f_3 = 0f;
				Global_2404994.f_525.f_4 = 50f;
				Global_2404994.f_525.f_7 = 0;
				Global_2404994.f_525.f_8 = { 0f, 0f, 0f };
				Global_2404994.f_525.f_11 = { 0f, 0f, 0f };
				Global_2404994.f_525.f_14 = 0f;
				Global_2404994.f_558 = { Global_2404994.f_525 };
				Global_2404994.f_561 = 2f;
				Global_2404994.f_499.f_13[0 /*3*/] = { Global_2404994.f_558 };
				Global_2404994.f_499.f_20[0] = Global_2404994.f_561;
				Global_2404994.f_499.f_6 = 0;
				Global_2404994.f_499 = { Global_2404994.f_525 };
				Global_2404994.f_499.f_4 = 1;
				Global_2404994.f_499.f_3 = 0;
				Global_2404994.f_525.f_16 = 1;
				Global_2404994.f_525.f_17 = 1;
				Global_2404994.f_496 = 1;
				break;
			
			case 5:
				Global_2404994.f_525 = { func_131(player::player_id()) };
				Global_2404994.f_558 = { Global_2404994.f_525 };
				Global_2404994.f_561 = 20f;
				Global_2404994.f_499.f_13[0 /*3*/] = { Global_2404994.f_558 };
				Global_2404994.f_499.f_20[0] = Global_2404994.f_561;
				Global_2404994.f_525.f_3 = gameplay::get_random_float_in_range(0f, 360f);
				Global_2404994.f_499.f_6 = 1;
				Global_2404994.f_525.f_4 = 150f;
				break;
			
			case 37:
				Global_2404994.f_525 = { func_131(player::player_id()) };
				Global_2404994.f_558 = { Global_2404994.f_525 };
				Global_2404994.f_561 = 0.01f;
				Global_2404994.f_499.f_13[0 /*3*/] = { Global_2404994.f_558 };
				Global_2404994.f_499.f_20[0] = Global_2404994.f_561;
				Global_2404994.f_525.f_3 = gameplay::get_random_float_in_range(0f, 360f);
				Global_2404994.f_499.f_6 = 1;
				Global_2404994.f_525.f_4 = 150f;
				break;
			
			case 38:
				Global_2404994.f_525 = { func_1030(player::player_id()) };
				Global_2404994.f_558 = { Global_2404994.f_525 };
				Global_2404994.f_561 = 0.01f;
				Global_2404994.f_499.f_13[0 /*3*/] = { Global_2404994.f_558 };
				Global_2404994.f_499.f_20[0] = Global_2404994.f_561;
				Global_2404994.f_525.f_3 = gameplay::get_random_float_in_range(0f, 360f);
				Global_2404994.f_499.f_6 = 1;
				Global_2404994.f_525.f_4 = 150f;
				break;
			
			case 21:
				Global_2404994.f_525 = { func_1012(func_131(player::player_id()), 200f) };
				Global_2404994.f_558 = { Global_2404994.f_525 };
				Global_2404994.f_561 = 0f;
				Global_2404994.f_499.f_13[0 /*3*/] = { Global_2404994.f_558 };
				Global_2404994.f_499.f_20[0] = Global_2404994.f_561;
				Global_2404994.f_525.f_3 = gameplay::get_random_float_in_range(0f, 360f);
				Global_2404994.f_499.f_6 = 0;
				Global_2404994.f_525.f_4 = 150f;
				break;
			
			case 6:
				Global_2404994.f_525 = { func_131(player::player_id()) };
				Global_2404994.f_525.f_3 = gameplay::get_random_float_in_range(0f, 360f);
				break;
			
			case 14:
				if (!Global_2412527.f_10)
				{
				}
				else
				{
					Global_2404994.f_525 = { 0f, 0f, 0f };
					Global_2404994.f_525.f_3 = 0f;
					Global_2404994.f_525.f_4 = 0f;
					Global_2404994.f_525.f_7 = 2;
					Global_2404994.f_525.f_8 = { Global_2412527.f_11 };
					Global_2404994.f_525.f_11 = { Global_2412527.f_14 };
					Global_2404994.f_525.f_14 = Global_2412527.f_17;
					Global_2404994.f_558 = { 0f, 0f, 0f };
					Global_2404994.f_561 = 0f;
					Global_2404994.f_499.f_13[0 /*3*/] = { Global_2404994.f_558 };
					Global_2404994.f_499.f_20[0] = Global_2404994.f_561;
					Global_2404994.f_499.f_6 = Global_2412527.f_22;
					if (system::vmag(Global_2412527.f_18) > 0f)
					{
						Global_2404994.f_499 = { Global_2412527.f_18 };
					}
					else
					{
						Global_2404994.f_499 = { Global_2412527.f_11 + Global_2412527.f_14 / Vector(2f, 2f, 2f) };
					}
					Global_2404994.f_499.f_4 = Global_2412527.f_8;
					Global_2404994.f_499.f_3 = Global_2412527.f_9;
					Global_2404994.f_525.f_16 = Global_2412527.f_7;
					Global_2404994.f_499.f_5 = Global_2412527.f_21;
					Global_2404994.f_525.f_22 = Global_2412527.f_23;
				}
				break;
			
			case 10:
				if (Global_2412527.f_10)
				{
				}
				else
				{
					Global_2404994.f_525 = { Global_2412527 };
					Global_2404994.f_525.f_3 = Global_2412527.f_5;
					Global_2404994.f_525.f_4 = Global_2412527.f_4;
					Global_2404994.f_525.f_7 = 0;
					Global_2404994.f_525.f_8 = { 0f, 0f, 0f };
					Global_2404994.f_525.f_11 = { 0f, 0f, 0f };
					Global_2404994.f_525.f_14 = 0f;
					Global_2404994.f_558 = { Global_2404994.f_525 };
					Global_2404994.f_561 = Global_2412527.f_3;
					Global_2404994.f_499.f_13[0 /*3*/] = { Global_2404994.f_558 };
					Global_2404994.f_499.f_20[0] = Global_2404994.f_561;
					Global_2404994.f_499.f_6 = Global_2412527.f_22;
					Global_2404994.f_499 = { Global_2412527 };
					Global_2404994.f_499.f_4 = Global_2412527.f_8;
					Global_2404994.f_499.f_3 = Global_2412527.f_9;
					Global_2404994.f_525.f_16 = Global_2412527.f_7;
					Global_2404994.f_499.f_5 = Global_2412527.f_21;
					Global_2404994.f_525.f_22 = Global_2412527.f_23;
					Global_2404994.f_496 = Global_2412527.f_24;
				}
				break;
			
			case 32:
				if (Global_2412527.f_10)
				{
				}
				else
				{
					Global_2404994.f_525 = { Global_2412527 };
					Global_2404994.f_525.f_3 = Global_2412527.f_5;
					Global_2404994.f_525.f_4 = Global_2412527.f_4;
					Global_2404994.f_525.f_7 = 0;
					Global_2404994.f_525.f_8 = { 0f, 0f, 0f };
					Global_2404994.f_525.f_11 = { 0f, 0f, 0f };
					Global_2404994.f_525.f_14 = 0f;
					Global_2404994.f_558 = { Global_2404994.f_525 };
					Global_2404994.f_561 = Global_2412527.f_3;
					Global_2404994.f_499.f_13[0 /*3*/] = { Global_2404994.f_558 };
					Global_2404994.f_499.f_20[0] = Global_2404994.f_561;
					Global_2404994.f_499.f_6 = Global_2412527.f_22;
					Global_2404994.f_499 = { Global_2412527 };
					Global_2404994.f_499.f_4 = Global_2412527.f_8;
					Global_2404994.f_499.f_3 = Global_2412527.f_9;
					Global_2404994.f_525.f_16 = Global_2412527.f_7;
					Global_2404994.f_499.f_5 = Global_2412527.f_21;
					Global_2404994.f_525.f_22 = Global_2412527.f_23;
					Global_2404994.f_496 = Global_2412527.f_24;
					if (func_921(Global_2404994.f_525, Global_2404994.f_525.f_4, &(Global_2404994.f_525), 0))
					{
						if (Global_2404994.f_525.f_4 > 50f)
						{
							Global_2404994.f_525.f_4 = 50f;
						}
						Global_2404994.f_558 = { Global_2404994.f_525 };
						Global_2404994.f_561 = 1.5f;
						Global_2404994.f_499.f_5 = 1.5f;
						Global_2404994.f_499.f_6 = 1;
						Global_2404994.f_525.f_16 = 0;
						Global_2404994.f_525.f_17 = 1;
						Global_2404994.f_499 = { Global_2404994.f_525 };
						Global_2404994.f_499.f_3 = interior::is_valid_interior(interior::get_interior_at_coords(Global_2404994.f_525));
					}
					else
					{
						Global_2404994.f_498 = 1;
					}
				}
				break;
			
			case 16:
				if (Global_2404994.f_477.f_3 && !func_1011(Global_2412527))
				{
					Global_2404994.f_525 = { func_1010() };
					Global_2404994.f_525.f_3 = Global_2412527.f_5;
					Global_2404994.f_525.f_4 = Global_2412527.f_4;
					iVar2 = true;
					iParam2 = false;
					Global_2404994.f_2218 = 1;
				}
				else
				{
					Global_2404994.f_525 = { Global_2412527 };
					Global_2404994.f_525.f_3 = Global_2412527.f_5;
					Global_2404994.f_525.f_4 = Global_2412527.f_4;
					iVar2 = true;
					iParam2 = false;
					if (!Global_2404994.f_477.f_3)
					{
						Global_2404994.f_2218 = 1;
					}
				}
				break;
			
			case 11:
				if (Global_2412527.f_10)
				{
				}
				else
				{
					Global_2404994.f_525 = { Global_2412527 };
					Global_2404994.f_525.f_3 = Global_2412527.f_5;
					Global_2404994.f_525.f_4 = Global_2412527.f_4;
					Global_2404994.f_2218 = 1;
					iVar2 = true;
					iParam2 = false;
				}
				break;
			
			case 13:
				if (Global_2412527.f_10)
				{
				}
				else if (Global_2404994.f_2032 == 1)
				{
					Global_2404994.f_525 = { Global_2412527 };
					Global_2404994.f_525.f_3 = Global_2412527.f_5;
					Global_2404994.f_525.f_4 = Global_2412527.f_4;
					iVar2 = true;
				}
				else
				{
					Global_2404994.f_525 = { Global_2412527 };
					Global_2404994.f_525.f_3 = Global_2412527.f_5;
					Global_2404994.f_525.f_4 = Global_2412527.f_4;
					Global_2404994.f_558 = { Global_2404994.f_525 };
					if (Global_2412527.f_3 < (Global_2412527.f_4 / 2f))
					{
						Global_2404994.f_561 = (Global_2412527.f_4 / 2f);
					}
					else
					{
						Global_2404994.f_561 = Global_2412527.f_3;
					}
					Global_2404994.f_499.f_13[0 /*3*/] = { Global_2404994.f_558 };
					Global_2404994.f_499.f_20[0] = Global_2404994.f_561;
					Global_2404994.f_499.f_6 = 1;
				}
				if (func_836(&(Global_2404994.f_525), 0, 0, 0))
				{
					Global_2404994.f_496 = 1;
				}
				break;
		}
		if (system::vmag(Global_2404994.f_499) > 0f)
		{
			Global_2404994.f_2201 = 1;
		}
		if (iParam2 && iParam4 == 0)
		{
			if (func_1082())
			{
				Global_2404994.f_552 = 4;
			}
			else
			{
				if (Global_2404994.f_43.f_303)
				{
					vVar21 = { Global_2404994.f_499 };
					if (system::vmag(vVar21) == 0f)
					{
						vVar21 = { Global_2404994.f_525 };
					}
					if (!func_1009(vVar21))
					{
						Global_2404994.f_525.f_23 = 0;
					}
				}
				Global_2404994.f_525.f_24 = Global_2404994.f_43.f_304;
				Global_2404994.f_552 = 3;
			}
		}
		else if (iVar2)
		{
			Var24[0 /*3*/] = { Global_2404994.f_525 };
			Var24.f_10[0] = Global_2404994.f_525.f_3;
			Global_2404994.f_552 = 0;
			Global_2404994.f_554 = 0;
			Global_2404994.f_616 = 0;
			Global_2404994.f_617 = 0;
			Global_2404994.f_2031 = 0;
			Global_2404994.f_2032 = 0;
			Global_2404994.f_2030 = 0;
			*uParam0 = { Var24 };
			return true;
		}
		else
		{
			func_1008();
		}
	}
	if (Global_2404994.f_552 == 3)
	{
		if (iParam2)
		{
			switch (Global_2404994.f_525.f_7)
			{
				case 0:
					fVar3 = (Global_2404994.f_525 - Global_2404994.f_525.f_4);
					fVar5 = (Global_2404994.f_525.f_1 - Global_2404994.f_525.f_4);
					fVar4 = (Global_2404994.f_525 + Global_2404994.f_525.f_4);
					fVar6 = (Global_2404994.f_525.f_1 + Global_2404994.f_525.f_4);
					break;
				
				case 1:
					if (Global_2404994.f_525.f_8 < Global_2404994.f_525.f_11)
					{
						fVar3 = Global_2404994.f_525.f_8;
						fVar4 = Global_2404994.f_525.f_11;
					}
					else
					{
						fVar3 = Global_2404994.f_525.f_11;
						fVar4 = Global_2404994.f_525.f_8;
					}
					if (Global_2404994.f_525.f_8.f_1 < Global_2404994.f_525.f_11.f_1)
					{
						fVar5 = Global_2404994.f_525.f_8.f_1;
						fVar6 = Global_2404994.f_525.f_11.f_1;
					}
					else
					{
						fVar5 = Global_2404994.f_525.f_11.f_1;
						fVar6 = Global_2404994.f_525.f_8.f_1;
					}
					break;
				
				case 2:
					if (Global_2404994.f_525.f_8 < Global_2404994.f_525.f_11)
					{
						fVar3 = (Global_2404994.f_525.f_8 - (0.5f * Global_2404994.f_525.f_14));
						fVar4 = (Global_2404994.f_525.f_11 + (0.5f * Global_2404994.f_525.f_14));
					}
					else
					{
						fVar3 = (Global_2404994.f_525.f_11 - (0.5f * Global_2404994.f_525.f_14));
						fVar4 = (Global_2404994.f_525.f_8 + (0.5f * Global_2404994.f_525.f_14));
					}
					if (Global_2404994.f_525.f_8.f_1 < Global_2404994.f_525.f_11.f_1)
					{
						fVar5 = (Global_2404994.f_525.f_8.f_1 - (0.5f * Global_2404994.f_525.f_14));
						fVar6 = (Global_2404994.f_525.f_11.f_1 + (0.5f * Global_2404994.f_525.f_14));
					}
					else
					{
						fVar5 = (Global_2404994.f_525.f_11.f_1 - (0.5f * Global_2404994.f_525.f_14));
						fVar6 = (Global_2404994.f_525.f_8.f_1 + (0.5f * Global_2404994.f_525.f_14));
					}
					break;
				}
		}
		pathfind::_0x07FB139B592FA687(fVar3, fVar5, fVar4, fVar6);
		if (pathfind::_0xF7B79A50B905A30D(fVar3, fVar5, fVar4, fVar6))
		{
			if (Global_2404994.f_525.f_21)
			{
				Var24[0 /*3*/] = { Global_2404994.f_525.f_18 };
				Var24.f_10[0] = Global_2404994.f_525.f_3;
			}
			else
			{
				Var24[0 /*3*/] = { Global_2404994.f_525 };
				Var24.f_10[0] = Global_2404994.f_525.f_3;
			}
			Var113.f_6 = 1082130432;
			Var113.f_7 = 1176255488;
			Var113.f_8 = 1;
			Var113.f_10 = 1;
			Var113.f_13 = 1;
			Var113.f_15 = 1;
			Var113.f_16 = 1;
			Var113.f_31 = 1;
			Var113.f_34 = joaat("tailgater");
			Var113.f_38 = 2;
			Var113.f_45 = 2;
			Var113.f_49 = 1123024896;
			Var113.f_53 = 999;
			Var113.f_54 = 1176256410;
			Var113.f_55 = 1;
			Var113.f_56 = 1;
			Var113.f_57 = 1;
			Var113 = { Global_2404994.f_499 };
			Var113.f_4 = Global_2404994.f_561;
			Var113.f_12 = iParam2;
			Var113.f_3 = Global_2404994.f_499.f_5;
			Var113.f_5 = fVar98;
			Var113.f_16 = Global_2404994.f_525.f_23;
			if (Global_2404994.f_499.f_25 > 0f)
			{
				Var113.f_6 = Global_2404994.f_499.f_25;
			}
			Var113.f_18 = 1;
			switch (Global_2404994.f_525.f_7)
			{
				case 0:
					Var113.f_19 = { Global_2404994.f_525 };
					Var113.f_25 = Global_2404994.f_525.f_4;
					Var113.f_4 = 0f;
					break;
				
				case 1:
					Var113.f_19 = { Global_2404994.f_525.f_8 };
					Var113.f_22 = { Global_2404994.f_525.f_11 };
					Var113.f_25 = 0f;
					break;
				
				case 2:
					Var113.f_19 = { Global_2404994.f_525.f_8 };
					Var113.f_22 = { Global_2404994.f_525.f_11 };
					Var113.f_25 = Global_2404994.f_525.f_14;
					break;
			}
			Var113.f_26 = Global_2404994.f_525.f_7;
			if ((func_174() && func_1085()) && func_836(&(Global_2404994.f_493), 0, 0, 0))
			{
				Var113.f_10 = 0;
			}
			Var113.f_9 = uParam5;
			Var113.f_11 = func_1007();
			if (Global_2404994.f_499.f_6)
			{
				Var113.f_30 = 1;
				Var113.f_29 = 0;
			}
			else
			{
				Var113.f_30 = 0;
				Var113.f_29 = 1;
			}
			if (Global_2404994.f_476 == 3)
			{
				Var113.f_28 = 1;
				Var113.f_29 = 1;
				Var113.f_30 = 0;
			}
			else if (Global_2404994.f_476 == 26)
			{
				Var113.f_28 = 1;
				Var113.f_30 = 1;
				Var113.f_29 = 0;
				Var113.f_32 = 1;
			}
			if (Global_2404994.f_476 == 1)
			{
				Var113.f_7 = 15f;
			}
			if (Global_2404994.f_43.f_305 > 0f)
			{
				Var113.f_7 = Global_2404994.f_43.f_305;
			}
			Var113.f_17 = uParam6;
			Var113.f_55 = Global_2404994.f_525.f_16;
			func_799(&(Var24[0 /*3*/]), &(Var24.f_10[0]), &Var113);
			iVar0 = 0;
			while (iVar0 < 3)
			{
				if (iVar0 < Global_2411146.f_162 && iVar0 > 0)
				{
					Var24[iVar0 /*3*/] = { Global_2411146[iVar0 /*3*/] };
					Var24.f_10[iVar0] = Global_2411146.f_121[iVar0];
				}
				iVar0++;
			}
			if (Var113.f_11 && Var113.f_27)
			{
				Global_2404994.f_43.f_298 = 1;
			}
			else
			{
				Global_2404994.f_43.f_298 = 0;
			}
			Global_2404994.f_555++;
			Global_2404994.f_553 = 3;
			Global_2404994.f_552 = 5;
		}
	}
	if (Global_2404994.f_552 == 4)
	{
		iVar0 = 0;
		while (iVar0 < 3)
		{
			Var24[iVar0 /*3*/] = { Global_2404994.f_525.f_18 };
			if (((iVar0 == 0 && Global_2404994.f_476 == 26) && Global_2404994.f_525.f_25) && func_1001(&(Var24[iVar0 /*3*/])))
			{
			}
			else
			{
				switch (Global_2404994.f_525.f_7)
				{
					case 0:
						Var24[iVar0 /*3*/] = { func_998(Global_2404994.f_525, 0f, 0f, 0f, Global_2404994.f_525.f_4, Global_2404994.f_525.f_7) };
						break;
					
					case 1:
						Var24[iVar0 /*3*/] = { func_998(Global_2404994.f_525.f_8, Global_2404994.f_525.f_11, 0f, Global_2404994.f_525.f_7) };
						break;
					
					case 2:
						Var24[iVar0 /*3*/] = { func_998(Global_2404994.f_525.f_8, Global_2404994.f_525.f_11, Global_2404994.f_525.f_14, Global_2404994.f_525.f_7) };
						break;
					}
			}
			if (system::vmag(Global_2404994.f_499) > 0f)
			{
				vVar21 = { Global_2404994.f_499 - Var24[iVar0 /*3*/] };
				Var24.f_10[iVar0] = gameplay::get_heading_from_vector_2d(vVar21.x, vVar21.y);
			}
			iVar0++;
		}
		Global_2404994.f_43.f_298 = 0;
		Global_2404994.f_555++;
		Global_2404994.f_553 = 4;
		Global_2404994.f_552 = 5;
	}
	if (Global_2404994.f_552 == 5)
	{
		if (Global_2404994.f_476 == 11 && Global_2404994.f_43.f_59 > 0f)
		{
			if (system::vdist(Var24[0 /*3*/], Global_2404994.f_43.f_60) > system::vdist(Global_2412527, Global_2404994.f_43.f_60))
			{
				Var24[0 /*3*/] = { Global_2412527 };
				Var24.f_10[0] = Global_2412527.f_5;
			}
		}
		iVar0 = 0;
		while (iVar0 < 3)
		{
			if ((func_997(Global_2404994.f_476) && !func_856(Var24[iVar0 /*3*/], 0.01f)) && !func_1082())
			{
				if (iVar0 == 2 || system::vmag(Var24[iVar0 + 1 /*3*/]) == 0f)
				{
					if ((Global_2404994.f_553 == 4 || Global_2404994.f_553 == 3) && Global_2404994.f_555 < 2)
					{
						Global_2404994.f_552 = Global_2404994.f_553;
						iVar0 = 3;
					}
					else if (Global_2404994.f_525.f_24)
					{
						func_1008();
					}
					else
					{
						func_996(&Var24, &iVar0);
					}
				}
			}
			else if ((func_884(Var24[iVar0 /*3*/], 3.5f, 1, 1, 0, 0, 0, 0) || func_802(Var24[iVar0 /*3*/], 0.5f, player::player_id(), 0, 0)) || Global_2404994.f_43.f_298)
			{
				if (iVar0 == 2 || system::vmag(Var24[iVar0 + 1 /*3*/]) == 0f)
				{
					if ((Global_2404994.f_553 == 4 || Global_2404994.f_553 == 3) && Global_2404994.f_555 < 2)
					{
						Global_2404994.f_552 = Global_2404994.f_553;
						iVar0 = 3;
					}
					else if (Global_2404994.f_525.f_24)
					{
						func_1008();
					}
					else
					{
						func_996(&Var24, &iVar0);
					}
				}
			}
			else
			{
				func_996(&Var24, &iVar0);
			}
			iVar0++;
		}
	}
	if (Global_2404994.f_552 == 6)
	{
		if (Global_2404994.f_554 == 2 || Global_2404994.f_525.f_16 == 0)
		{
			iVar1 = 0;
		}
		else
		{
			iVar1 = iParam3;
		}
		if (Global_2404994.f_525.f_7 == 0)
		{
			if (Global_2404994.f_499.f_5 > (Global_2404994.f_525.f_4 * 2f))
			{
				Global_2404994.f_499.f_5 = (Global_2404994.f_525.f_4 * 2f);
			}
		}
		Global_2404994.f_525.f_5 = 1;
		Global_2404994.f_525.f_6 = iVar1;
		Global_2404994.f_525.f_15 = Global_2404994.f_43.f_65;
		Global_2404994.f_499.f_8 = 0;
		Global_2404994.f_499.f_9 = func_1007();
		Global_2404994.f_499.f_10 = 0;
		if (func_926(&(Global_2404994.f_525), &(Global_2404994.f_499), &Var24))
		{
			Global_2404994.f_492 = 0;
			Global_2404994.f_552 = 2;
		}
	}
	if (Global_2404994.f_552 == 2)
	{
		*uParam0 = { Var24 };
		Global_2404994.f_552 = 0;
		Global_2404994.f_554 = 0;
		Global_2404994.f_616 = 0;
		Global_2404994.f_617 = 0;
		Global_2404994.f_2031 = 0;
		Global_2404994.f_2032 = 0;
		Global_2404994.f_2030 = 0;
		return true;
	}
	return false;
}

bool func_926(var uParam0, var uParam1, var uParam2)//Position - 0x7E090
{
	int iVar0;
	vector3 vVar1;
	float fVar4;
	float fVar5;
	float fVar6;
	float fVar7;
	vector3 vVar8;
	vector3 vVar11;
	vector3 vVar14;
	int iVar17;
	vector3 vVar18;
	vector3 vVar21;
	var uVar24;
	int iVar25;
	struct<56> Var26;
	int iVar84;
	
	iVar25 = false;
	switch (uParam0->f_7)
	{
		case 0:
			if (((!Global_2404994.f_2019 == *uParam0 || !Global_2404994.f_2019.f_1 == uParam0->f_1) || !Global_2404994.f_2019.f_2 == uParam0->f_2) || !Global_2404994.f_2022 == uParam0->f_4)
			{
				iVar25 = true;
			}
			break;
		
		case 1:
			if (((((!Global_2404994.f_2033 == uParam0->f_8 || !Global_2404994.f_2033.f_1 == uParam0->f_8.f_1) || !Global_2404994.f_2033.f_2 == uParam0->f_8.f_2) || !Global_2404994.f_2036 == uParam0->f_11) || !Global_2404994.f_2036.f_1 == uParam0->f_11.f_1) || !Global_2404994.f_2036.f_2 == uParam0->f_11.f_2)
			{
				iVar25 = true;
			}
			break;
		
		case 2:
			if ((((((!Global_2404994.f_2033 == uParam0->f_8 || !Global_2404994.f_2033.f_1 == uParam0->f_8.f_1) || !Global_2404994.f_2033.f_2 == uParam0->f_8.f_2) || !Global_2404994.f_2036 == uParam0->f_11) || !Global_2404994.f_2036.f_1 == uParam0->f_11.f_1) || !Global_2404994.f_2036.f_2 == uParam0->f_11.f_2) || !Global_2404994.f_2039 == uParam0->f_14)
			{
				iVar25 = true;
			}
			break;
	}
	if (iVar25)
	{
		if (Global_2404994.f_2017 == 1)
		{
			if (script::is_thread_active(Global_2404994.f_2026))
			{
				if (Global_2404994.f_2026 == script::get_id_of_this_thread())
				{
					if (network::get_time_difference(network::get_network_time(), Global_2404994.f_2023) < func_397(0))
					{
						return false;
					}
				}
				else if (network::get_time_difference(network::get_network_time(), Global_2404994.f_2023) < func_397(0))
				{
					return false;
				}
			}
			network::_0xFB8F2A6F3DF08CBE();
			ped::_0xFEE4A5459472A9F8();
			func_995();
		}
		Global_2404994.f_2017 = 0;
	}
	else if (network::get_time_difference(network::get_network_time(), Global_2404994.f_2023) > func_397(0))
	{
		Global_2404994.f_2024 = network::get_network_time();
	}
	switch (uParam0->f_7)
	{
		case 0:
			fVar4 = (*uParam0 - uParam0->f_4);
			fVar5 = (uParam0->f_1 - uParam0->f_4);
			fVar6 = (*uParam0 + uParam0->f_4);
			fVar7 = (uParam0->f_1 + uParam0->f_4);
			break;
		
		case 1:
			if (uParam0->f_8 < uParam0->f_11)
			{
				fVar4 = uParam0->f_8;
				fVar6 = uParam0->f_11;
			}
			else
			{
				fVar4 = uParam0->f_11;
				fVar6 = uParam0->f_8;
			}
			if (uParam0->f_8.f_1 < uParam0->f_11.f_1)
			{
				fVar5 = uParam0->f_8.f_1;
				fVar7 = uParam0->f_11.f_1;
			}
			else
			{
				fVar5 = uParam0->f_11.f_1;
				fVar7 = uParam0->f_8.f_1;
			}
			break;
		
		case 2:
			if (uParam0->f_8 < uParam0->f_11)
			{
				fVar4 = (uParam0->f_8 - (0.5f * uParam0->f_14));
				fVar6 = (uParam0->f_11 + (0.5f * uParam0->f_14));
			}
			else
			{
				fVar4 = (uParam0->f_11 - (0.5f * uParam0->f_14));
				fVar6 = (uParam0->f_8 + (0.5f * uParam0->f_14));
			}
			if (uParam0->f_8.f_1 < uParam0->f_11.f_1)
			{
				fVar5 = (uParam0->f_8.f_1 - (0.5f * uParam0->f_14));
				fVar7 = (uParam0->f_11.f_1 + (0.5f * uParam0->f_14));
			}
			else
			{
				fVar5 = (uParam0->f_11.f_1 - (0.5f * uParam0->f_14));
				fVar7 = (uParam0->f_8.f_1 + (0.5f * uParam0->f_14));
			}
			break;
	}
	pathfind::_0x07FB139B592FA687(fVar4, fVar5, fVar6, fVar7);
	if (uParam0->f_7 == 0)
	{
		vVar8 = { *uParam0 };
	}
	else
	{
		vVar8 = { uParam0->f_8 + uParam0->f_11 * Vector(0.5f, 0.5f, 0.5f) };
	}
	vVar11 = { vVar8 + Vector(-0.1f, -0.1f, -0.1f) };
	vVar14 = { vVar8 + Vector(0.1f, 0.1f, 0.1f) };
	if (!Global_2404994.f_2017)
	{
		network::_0xFB8F2A6F3DF08CBE();
		ped::_0xFEE4A5459472A9F8();
		func_995();
		if (uParam1->f_7 && uParam0->f_7 == 0)
		{
			if (system::vmag(*uParam0) > 0f)
			{
				if (func_841(*uParam0, 6f, 1f, 1f, 5f, 1, 1, 1, 120f, 0, -1, 1, uParam1->f_5, uParam0->f_17, 0, 0, 0))
				{
					*(uParam2[0 /*3*/]) = { *uParam0 };
					uParam2->f_10[0] = uParam0->f_3;
					return true;
				}
			}
		}
		if (!ped::_0x3C67506996001F5E())
		{
			Global_2404994.f_2040 = uParam0->f_7;
			switch (uParam0->f_7)
			{
				case 0:
					Global_2404994.f_2019 = { *uParam0 };
					Global_2404994.f_2022 = uParam0->f_4;
					break;
				
				case 1:
					Global_2404994.f_2033 = { uParam0->f_8 };
					Global_2404994.f_2036 = { uParam0->f_11 };
					Global_2404994.f_2039 = 0f;
					Global_2404994.f_2019 = { uParam0->f_8 + uParam0->f_11 / Vector(2f, 2f, 2f) };
					break;
				
				case 2:
					Global_2404994.f_2033 = { uParam0->f_8 };
					Global_2404994.f_2036 = { uParam0->f_11 };
					Global_2404994.f_2039 = uParam0->f_14;
					Global_2404994.f_2019 = { uParam0->f_8 + uParam0->f_11 / Vector(2f, 2f, 2f) };
					break;
			}
			if (!uParam1->f_8 && !uParam1->f_9)
			{
				func_994(vVar8.x, vVar8.y);
			}
			Global_2404994.f_2018 = 1;
			Global_2404994.f_2017 = 1;
			Global_2404994.f_2024 = network::get_network_time();
			Global_2404994.f_2023 = network::get_network_time();
			Global_2404994.f_2026 = script::get_id_of_this_thread();
		}
		else
		{
			return false;
		}
	}
	if (Global_2404994.f_2017)
	{
		if (Global_2404994.f_2018 == 1)
		{
			if (pathfind::_0xF7B79A50B905A30D(fVar4, fVar5, fVar6, fVar7) || network::get_time_difference(network::get_network_time(), Global_2404994.f_2024) > 5000)
			{
				Global_2404994.f_2024 = network::get_network_time();
				if (uParam1->f_8 || uParam1->f_9)
				{
					if (uParam0->f_21)
					{
						*(uParam2[0 /*3*/]) = { uParam0->f_18 };
					}
					else
					{
						*(uParam2[0 /*3*/]) = { vVar8 };
					}
					Var26.f_6 = 1082130432;
					Var26.f_7 = 1176255488;
					Var26.f_8 = 1;
					Var26.f_10 = 1;
					Var26.f_13 = 1;
					Var26.f_15 = 1;
					Var26.f_16 = 1;
					Var26.f_31 = 1;
					Var26.f_34 = joaat("tailgater");
					Var26.f_38 = 2;
					Var26.f_45 = 2;
					Var26.f_49 = 1123024896;
					Var26.f_53 = 999;
					Var26.f_54 = 1176256410;
					Var26.f_55 = 1;
					Var26.f_56 = 1;
					Var26.f_57 = 1;
					Var26 = { *uParam1 };
					Var26.f_3 = uParam1->f_5;
					Var26.f_11 = uParam1->f_9;
					Var26.f_18 = 1;
					if (uParam1->f_25 > 0f)
					{
						Var26.f_6 = uParam1->f_25;
					}
					switch (uParam0->f_7)
					{
						case 0:
							Var26.f_19 = { *uParam0 };
							Var26.f_25 = uParam0->f_4;
							break;
						
						case 1:
							Var26.f_19 = { uParam0->f_8 };
							Var26.f_22 = { uParam0->f_11 };
							Var26.f_25 = 0f;
							break;
						
						case 2:
							Var26.f_19 = { uParam0->f_8 };
							Var26.f_22 = { uParam0->f_11 };
							Var26.f_25 = uParam0->f_14;
							break;
					}
					Var26.f_26 = uParam0->f_7;
					Var26.f_12 = uParam0->f_15;
					if (uParam0->f_21)
					{
						Var26.f_30 = 1;
						Var26.f_32 = 1;
					}
					iVar17 = 0;
					while (iVar17 < 2)
					{
						Var26.f_38[iVar17 /*3*/] = { uParam1->f_13[iVar17 /*3*/] };
						Var26.f_45[iVar17] = uParam1->f_20[iVar17];
						iVar17++;
					}
					Var26.f_51 = uParam1->f_23;
					Var26.f_55 = uParam0->f_16;
					func_799(uParam2[0 /*3*/], &(uParam2->f_10[0]), &Var26);
					if ((uParam1->f_7 && uParam1->f_9) && uParam0->f_7 == 0)
					{
						if (!func_815(*(uParam2[0 /*3*/]), *uParam0, uParam0->f_4, 1, 1))
						{
							*(uParam2[0 /*3*/]) = { *uParam0 };
							uParam2->f_10[0] = uParam0->f_3;
						}
					}
					Global_2404994.f_2018 = 9;
				}
				else
				{
					Global_2404994.f_2018 = 2;
				}
			}
		}
		if (Global_2404994.f_2018 == 2)
		{
			if ((pathfind::is_navmesh_loaded_in_area(vVar11, vVar14) || network::get_time_difference(network::get_network_time(), Global_2404994.f_2024) > 15000) || pathfind::_0x01708E8DD3FF8C65(vVar11, vVar14) == 0)
			{
				Global_2404994.f_2024 = network::get_network_time();
				if (uParam0->f_5 && !func_124(player::player_id(), 0))
				{
					Global_2404994.f_2018 = 3;
				}
				else
				{
					Global_2404994.f_2018 = 4;
				}
			}
			else if (network::get_time_difference(network::get_network_time(), Global_2404994.f_2028) > 7000)
			{
				func_993(vVar8.x, vVar8.y);
			}
		}
		if (Global_2404994.f_2018 == 3)
		{
			if (func_992() || network::get_time_difference(network::get_network_time(), Global_2404994.f_2024) > 10000)
			{
				Global_2404994.f_2024 = network::get_network_time();
				Global_2404994.f_2018 = 4;
			}
		}
		if (Global_2404994.f_2018 == 4)
		{
			if (ped::_0x3C67506996001F5E())
			{
				network::_0xFB8F2A6F3DF08CBE();
				ped::_0xFEE4A5459472A9F8();
			}
			else
			{
				iVar0 = 0;
				func_986();
				if (uParam0->f_5)
				{
					if (system::vmag(*uParam1) == 0f)
					{
						iVar0 += 2;
					}
					if (uParam1->f_3)
					{
						iVar0 += 8;
					}
					iVar0 += 16;
					iVar0 += 32;
					if (!player::get_player_team(player::player_id()) == -1)
					{
						iVar0 += 64;
						iVar0 += 128;
						iVar0 += 256;
					}
					iVar0 += 2048;
					iVar0 += 512;
					iVar0 += 1024;
					switch (uParam0->f_7)
					{
						case 0:
							if (network::_0x5A6FFA2433E2F14C(player::player_id(), *uParam0, uParam0->f_4, *uParam1, iVar0))
							{
								Global_2404994.f_2024 = network::get_network_time();
								Global_2404994.f_2018 = 5;
							}
							break;
						
						case 1:
							func_985(uParam0->f_8, uParam0->f_11, &vVar18, &vVar21, &uVar24);
							if (network::_0x4BA92A18502BCA61(player::player_id(), vVar18, vVar21, uVar24, *uParam1, iVar0))
							{
								Global_2404994.f_2024 = network::get_network_time();
								Global_2404994.f_2018 = 5;
							}
							break;
						
						case 2:
							if (network::_0x4BA92A18502BCA61(player::player_id(), uParam0->f_8, uParam0->f_11, uParam0->f_14, *uParam1, iVar0))
							{
								Global_2404994.f_2024 = network::get_network_time();
								Global_2404994.f_2018 = 5;
							}
							break;
					}
				}
				else
				{
					if (uParam1->f_3)
					{
						iVar0++;
					}
					iVar0 += 2;
					if (uParam1->f_10)
					{
						iVar0 += 32;
					}
					Global_2404994.f_2024 = network::get_network_time();
					Global_2404994.f_2018 = 5;
					switch (uParam0->f_7)
					{
						case 0:
							ped::_0x2DF9038C90AD5264(*uParam0, uParam0->f_4, 5f, iVar0, 2f, 5000);
							break;
						
						case 1:
							func_985(uParam0->f_8, uParam0->f_11, &vVar18, &vVar21, &uVar24);
							ped::_0xB2AFF10216DEFA2F(vVar18, vVar21, uVar24, iVar0, 2f, 5000);
							break;
						
						case 2:
							ped::_0xB2AFF10216DEFA2F(uParam0->f_8, uParam0->f_11, uParam0->f_14, iVar0, 2f, 5000);
							break;
						}
					}
				}
		}
		if (Global_2404994.f_2018 == 5)
		{
			if (func_936(uParam2, uParam0, uParam1, 0))
			{
				if (Global_2404994.f_2044.f_5)
				{
					Global_2404994.f_2024 = network::get_network_time();
					Global_2404994.f_2018 = 6;
				}
				else
				{
					Global_2404994.f_2024 = network::get_network_time();
					if (!uParam0->f_5)
					{
						if (!system::vmag(*uParam1) == 0f)
						{
							vVar1 = { *uParam1 - *(uParam2[0 /*3*/]) };
							uParam2->f_10[0] = gameplay::get_heading_from_vector_2d(vVar1.x, vVar1.y);
						}
					}
					Global_2404994.f_2018 = 9;
				}
			}
			else if (network::get_time_difference(network::get_network_time(), Global_2404994.f_2024) > 20000)
			{
				network::_0xFB8F2A6F3DF08CBE();
				ped::_0xFEE4A5459472A9F8();
				Global_2404994.f_2024 = network::get_network_time();
				Global_2404994.f_2018 = 8;
			}
		}
		if (Global_2404994.f_2018 == 6)
		{
			iVar0 = 0;
			Global_2404994.f_2044.f_1 = 0;
			if (uParam1->f_3)
			{
				iVar0++;
			}
			else if (uParam0->f_7 == 0)
			{
				if (!func_935(uParam0->f_4))
				{
					if (interior::is_valid_interior(interior::get_interior_at_coords(vVar8)))
					{
						iVar0++;
					}
				}
			}
			else if (!func_934(uParam0->f_8, uParam0->f_11, uParam0->f_14))
			{
				if (interior::is_valid_interior(interior::get_interior_at_coords(vVar8)))
				{
					iVar0++;
				}
			}
			iVar0 += 2;
			if (uParam1->f_10)
			{
				iVar0 += 32;
			}
			if (uParam0->f_15)
			{
				iVar0 += 16;
			}
			Global_2404994.f_2024 = network::get_network_time();
			Global_2404994.f_2018 = 7;
			switch (uParam0->f_7)
			{
				case 0:
					ped::_0x2DF9038C90AD5264(*uParam0, uParam0->f_4, 5f, iVar0, 2f, 5000);
					break;
				
				case 1:
					func_985(uParam0->f_8, uParam0->f_11, &vVar18, &vVar21, &uVar24);
					ped::_0xB2AFF10216DEFA2F(vVar18, vVar21, uVar24, iVar0, 2f, 5000);
					break;
				
				case 2:
					ped::_0xB2AFF10216DEFA2F(uParam0->f_8, uParam0->f_11, uParam0->f_14, iVar0, 2f, 5000);
					break;
				}
		}
		if (Global_2404994.f_2018 == 7)
		{
			if (func_936(uParam2, uParam0, uParam1, 1))
			{
				if (system::vmag(*(uParam2[0 /*3*/])) == 0f)
				{
					iVar17 = 0;
					while (iVar17 < 3)
					{
						if (system::vmag(*(uParam2[0 /*3*/])) == 0f)
						{
							if (!system::vmag(Global_2404994.f_2155[iVar17 /*3*/]) == 0f)
							{
								switch (uParam0->f_7)
								{
									case 0:
										if (func_815(Global_2404994.f_2155[iVar17 /*3*/], *uParam0, uParam0->f_4, 0, 0))
										{
											*(uParam2[0 /*3*/]) = { Global_2404994.f_2155[iVar17 /*3*/] };
										}
										break;
									
									case 1:
										if (func_813(Global_2404994.f_2155[iVar17 /*3*/], uParam0->f_8, uParam0->f_11, 0, 0))
										{
											*(uParam2[0 /*3*/]) = { Global_2404994.f_2155[iVar17 /*3*/] };
										}
										break;
									
									case 2:
										if (object::is_point_in_angled_area(Global_2404994.f_2155[iVar17 /*3*/], uParam0->f_8, uParam0->f_11, uParam0->f_14, 0, true))
										{
											*(uParam2[0 /*3*/]) = { Global_2404994.f_2155[iVar17 /*3*/] };
										}
										break;
									}
								}
						}
						iVar17++;
					}
					if (system::vmag(*(uParam2[0 /*3*/])) == 0f)
					{
						switch (uParam0->f_7)
						{
							case 0:
								vVar1 = { *uParam0 };
								break;
							
							case 1:
							case 2:
								vVar1 = { uParam0->f_8 + uParam0->f_11 / Vector(2f, 2f, 2f) };
								break;
						}
						func_928(&vVar1, 0, 1, 1, 0, uParam0, uParam1);
						*(uParam2[0 /*3*/]) = { vVar1 };
					}
				}
				Global_2404994.f_2024 = network::get_network_time();
				if (!system::vmag(*uParam1) == 0f)
				{
					iVar17 = 0;
					while (iVar17 < 3)
					{
						vVar1 = { *uParam1 - *(uParam2[iVar17 /*3*/]) };
						uParam2->f_10[iVar17] = gameplay::get_heading_from_vector_2d(vVar1.x, vVar1.y);
						iVar17++;
					}
				}
				Global_2404994.f_2018 = 9;
			}
			else if (network::get_time_difference(network::get_network_time(), Global_2404994.f_2024) > 20000)
			{
				Global_2404994.f_2024 = network::get_network_time();
				Global_2404994.f_2018 = 8;
			}
		}
		if (Global_2404994.f_2018 == 8)
		{
			if (uParam0->f_5)
			{
				if (func_997(Global_2404994.f_476))
				{
				}
			}
			else if (Global_2404994.f_2044.f_2)
			{
				func_927(uParam2, &(Global_2404994.f_2044.f_6));
			}
			else
			{
				if (uParam0->f_15)
				{
					iVar84 = false;
				}
				else
				{
					iVar84 = true;
				}
				*(uParam2[0 /*3*/]) = { Global_2404994.f_2019 };
				func_928(uParam2[0 /*3*/], 0, iVar84, 0, 0, uParam0, uParam1);
			}
			Global_2404994.f_2024 = network::get_network_time();
			Global_2404994.f_2018 = 9;
		}
		if (Global_2404994.f_2018 == 9)
		{
			Global_2404994.f_2017 = 0;
			network::_0xFB8F2A6F3DF08CBE();
			ped::_0xFEE4A5459472A9F8();
			func_995();
			return true;
		}
		Global_2404994.f_2023 = network::get_network_time();
	}
	return false;
}

void func_927(var uParam0, var uParam1)//Position - 0x7F023
{
	int iVar0;
	
	iVar0 = 0;
	while (iVar0 < 3)
	{
		*(uParam0[iVar0 /*3*/]) = { (uParam1[iVar0 /*9*/])->f_4 };
		uParam0->f_10[iVar0] = (uParam1[iVar0 /*9*/])->f_7;
		uParam0->f_14[iVar0] = (*uParam1)[iVar0 /*9*/];
		iVar0++;
	}
}

void func_928(var uParam0, int iParam1, int iParam2, int iParam3, int iParam4, var uParam5, var uParam6)//Position - 0x7F06D
{
	vector3 vVar0;
	var uVar3;
	struct<56> Var4;
	var uVar62;
	int iVar63;
	int iVar64;
	int iVar65;
	vector3 vVar66;
	vector3 vVar69;
	vector3 vVar72;
	float fVar75;
	
	Var4.f_6 = 1082130432;
	Var4.f_7 = 1176255488;
	Var4.f_8 = 1;
	Var4.f_10 = 1;
	Var4.f_13 = 1;
	Var4.f_15 = 1;
	Var4.f_16 = 1;
	Var4.f_31 = 1;
	Var4.f_34 = joaat("tailgater");
	Var4.f_38 = 2;
	Var4.f_45 = 2;
	Var4.f_49 = 1123024896;
	Var4.f_53 = 999;
	Var4.f_54 = 1176256410;
	Var4.f_55 = 1;
	Var4.f_56 = 1;
	Var4.f_57 = 1;
	if (iParam1)
	{
		iVar65 = 0;
	}
	else
	{
		iVar65 = 16;
	}
	if (!uParam6->f_3)
	{
		if (uParam5->f_5)
		{
			if (!uParam5->f_22)
			{
				iVar65 += 4;
			}
			else
			{
				switch (uParam5->f_7)
				{
					case 0:
						vVar66 = { *uParam5 };
						if (func_935(uParam5->f_4) || !interior::is_valid_interior(interior::get_interior_at_coords(vVar66)))
						{
							iVar65 += 4;
						}
						break;
					
					case 1:
						vVar66 = { uParam5->f_8 + uParam5->f_11 * Vector(0.5f, 0.5f, 0.5f) };
						if (func_934(uParam5->f_8, uParam5->f_11, 0f) || !interior::is_valid_interior(interior::get_interior_at_coords(vVar66)))
						{
							iVar65 += 4;
						}
						break;
					
					case 2:
						vVar66 = { uParam5->f_8 + uParam5->f_11 * Vector(0.5f, 0.5f, 0.5f) };
						if (func_934(uParam5->f_8, uParam5->f_11, uParam5->f_14) || !interior::is_valid_interior(interior::get_interior_at_coords(vVar66)))
						{
							iVar65 += 4;
						}
						break;
					}
			}
		}
		else
		{
			iVar65 += 4;
		}
	}
	if (func_930(*uParam0, &vVar0, iVar65, iParam3, 1))
	{
	}
	else
	{
		iVar64 = true;
	}
	if (iVar64)
	{
		vVar0 = { *uParam0 };
		Var4 = { *uParam6 };
		Var4.f_8 = 1;
		Var4.f_3 = uParam6->f_5;
		if (iParam2)
		{
			Var4.f_10 = 0;
		}
		else
		{
			Var4.f_10 = 1;
		}
		Var4.f_13 = uParam5->f_15;
		Var4.f_15 = iParam3;
		if (uParam6->f_25 > 0f)
		{
			Var4.f_6 = uParam6->f_25;
		}
		if (iParam4)
		{
			Var4.f_18 = 1;
			Var4.f_26 = uParam5->f_7;
			switch (uParam5->f_7)
			{
				case 0:
					Var4.f_19 = { *uParam5 };
					Var4.f_25 = uParam5->f_4;
					break;
				
				case 1:
					Var4.f_19 = { uParam5->f_8 };
					Var4.f_22 = { uParam5->f_11 };
					Var4.f_25 = 0f;
					break;
				
				case 2:
					Var4.f_19 = { uParam5->f_8 };
					Var4.f_22 = { uParam5->f_11 };
					Var4.f_25 = uParam5->f_14;
					break;
				}
		}
		iVar63 = 0;
		while (iVar63 < 2)
		{
			Var4.f_38[iVar63 /*3*/] = { uParam6->f_13[iVar63 /*3*/] };
			Var4.f_45[iVar63] = uParam6->f_20[iVar63];
			iVar63++;
		}
		Var4.f_51 = uParam6->f_23;
		Var4.f_55 = uParam5->f_16;
		func_799(&vVar0, &uVar3, &Var4);
	}
	if (iParam4)
	{
		switch (uParam5->f_7)
		{
			case 0:
				vVar69 = { *uParam5 };
				fVar75 = uParam5->f_4;
				break;
			
			case 1:
				vVar69 = { uParam5->f_8 };
				vVar72 = { uParam5->f_11 };
				break;
			
			case 2:
				vVar69 = { uParam5->f_8 };
				vVar72 = { uParam5->f_11 };
				fVar75 = uParam5->f_14;
				break;
		}
		if (!func_929(vVar0, uParam5->f_7, vVar69, vVar72, fVar75))
		{
			if (func_930(*uParam0, &vVar0, iVar65, iParam3, 0))
			{
				if (!func_929(vVar0, uParam5->f_7, vVar69, vVar72, fVar75))
				{
					if (uParam5->f_7 == 2 || uParam5->f_7 == 1)
					{
						vVar0 = { vVar69 + vVar72 * Vector(0.5f, 0.5f, 0.5f) };
					}
					else
					{
						vVar0 = { vVar69 };
					}
					if (gameplay::get_ground_z_for_3d_coord(vVar0, &uVar62, 0))
					{
						vVar0.z = uVar62;
					}
				}
			}
			else
			{
				if (uParam5->f_7 == 2 || uParam5->f_7 == 1)
				{
					vVar0 = { vVar69 + vVar72 * Vector(0.5f, 0.5f, 0.5f) };
				}
				else
				{
					vVar0 = { vVar69 };
				}
				if (gameplay::get_ground_z_for_3d_coord(vVar0, &uVar62, 0))
				{
					vVar0.z = uVar62;
				}
			}
		}
	}
	*uParam0 = { vVar0 };
	Global_2404994.f_616 = 1;
}

int func_929(vector3 vParam0, int iParam3, vector3 vParam4, vector3 vParam7, float fParam10)//Position - 0x7F4A3
{
	switch (iParam3)
	{
		case 0:
			if (system::vdist(vParam0, vParam4) <= fParam10)
			{
				return true;
			}
			break;
		
		case 1:
			return func_813(vParam0, vParam4, vParam7, 0, 0);
			break;
		
		case 2:
			return object::is_point_in_angled_area(vParam0, vParam4, vParam7, fParam10, 0, true);
			break;
	}
	return false;
}

bool func_930(vector3 vParam0, var uParam3, int iParam4, int iParam5, int iParam6)//Position - 0x7F510
{
	if (func_933(vParam0, uParam3))
	{
		if (func_931(vParam0, uParam3, iParam5, iParam6))
		{
			return true;
		}
	}
	if (pathfind::get_safe_coord_for_ped(vParam0, 0, uParam3, iParam4))
	{
		if (func_931(vParam0, uParam3, iParam5, iParam6))
		{
			return true;
		}
	}
	return false;
}

bool func_931(vector3 vParam0, var uParam3, int iParam4, int iParam5)//Position - 0x7F56C
{
	float fVar0;
	var uVar1;
	var uVar8;
	
	fVar0 = system::vdist(vParam0, *uParam3);
	if (fVar0 < 40f)
	{
		uVar1 = 2;
		uVar8 = 2;
		if ((iParam4 == 1 && !func_832(Global_2404994.f_493, uParam3, &uVar1, &uVar8, iParam5, 1)) || iParam4 == 0)
		{
			if (!func_816(*uParam3, 1056964608))
			{
				if (!func_932(uParam3, 0))
				{
					return true;
				}
			}
		}
	}
	return false;
}

bool func_932(var uParam0, int iParam1)//Position - 0x7F5F1
{
	int iVar0;
	vector3 vVar1;
	var uVar4;
	
	vVar1 = { *uParam0 };
	uVar4 = func_821(vVar1);
	iVar0 = 0;
	while (iVar0 < Global_2410138[uVar4])
	{
		if (func_820(vVar1, &(Global_2409309[uVar4 /*92*/][iVar0 /*7*/])))
		{
			if (iParam1)
			{
				func_830(&vVar1, Global_2409309[uVar4 /*92*/][iVar0 /*7*/], Global_2409309[uVar4 /*92*/][iVar0 /*7*/].f_3, Global_2409309[uVar4 /*92*/][iVar0 /*7*/].f_6, 1036831949, 0);
				*uParam0 = { vVar1 };
			}
			return true;
		}
		iVar0++;
	}
	iVar0 = 0;
	while (iVar0 < Global_2410138[8])
	{
		if (func_820(vVar1, &(Global_2409309[8 /*92*/][iVar0 /*7*/])))
		{
			if (iParam1)
			{
				func_830(&vVar1, Global_2409309[uVar4 /*92*/][iVar0 /*7*/], Global_2409309[uVar4 /*92*/][iVar0 /*7*/].f_3, Global_2409309[uVar4 /*92*/][iVar0 /*7*/].f_6, 1036831949, 0);
				*uParam0 = { vVar1 };
			}
			return true;
		}
		iVar0++;
	}
	return false;
}

bool func_933(vector3 vParam0, var uParam3)//Position - 0x7F6FE
{
	int iVar0;
	int iVar1;
	float fVar2;
	float fVar3;
	
	iVar1 = -1;
	fVar2 = 999999.9f;
	if (Global_2404994.f_1815 > 0)
	{
		iVar0 = 0;
		while (iVar0 < Global_2404994.f_1815)
		{
			fVar3 = system::vdist(Global_2404994.f_1816[iVar0 /*4*/], vParam0);
			if (fVar3 < fVar2)
			{
				iVar1 = iVar0;
				fVar2 = fVar3;
			}
			iVar0++;
		}
		if (!iVar1 == -1)
		{
			*uParam3 = { Global_2404994.f_1816[iVar1 /*4*/] };
			return true;
		}
	}
	return false;
}

bool func_934(vector3 vParam0, vector3 vParam3, float fParam6)//Position - 0x7F778
{
	vector3 vVar0;
	vector3 vVar3;
	
	if (vParam0.x > vParam3.x)
	{
		vVar3.x = vParam0.x;
		vVar0.x = vParam3.x;
	}
	else
	{
		vVar3.x = vParam3.x;
		vVar0.x = vParam0.x;
	}
	if (vParam0.y > vParam3.y)
	{
		vVar3.y = vParam0.y;
		vVar0.y = vParam3.y;
	}
	else
	{
		vVar3.y = vParam3.y;
		vVar0.y = vParam0.y;
	}
	if (vParam0.y > vParam3.y)
	{
		vVar3.z = vParam0.y;
		vVar0.z = vParam3.y;
	}
	else
	{
		vVar3.z = vParam3.y;
		vVar0.z = vParam0.y;
	}
	if (system::vmag(vVar3 - vVar0) > 100f)
	{
		return true;
	}
	if (fParam6 > 50f)
	{
		return true;
	}
	return false;
}

bool func_935(float fParam0)//Position - 0x7F823
{
	if (fParam0 > 50f)
	{
		return true;
	}
	return false;
}

bool func_936(var uParam0, var uParam1, var uParam2, int iParam3)//Position - 0x7F83B
{
	vector3 vVar0;
	float fVar3;
	int iVar4;
	int iVar5;
	int iVar6;
	int iVar7;
	int iVar8;
	
	if (Global_2404994.f_2044.f_1 == 0 && Global_2404994.f_2044 == 0)
	{
		if (uParam1->f_5 && !iParam3)
		{
			switch (network::_0x3C891A251567DFCE(&(Global_2404994.f_2044.f_1)))
			{
				case 0:
					func_983(uParam1, uParam2);
					if (!Global_2404994.f_2044.f_2)
					{
						if (uParam2->f_7 && Global_2404994.f_525.f_7 == 0)
						{
							*(uParam0[0 /*3*/]) = { *uParam1 };
							uParam0->f_10[0] = uParam1->f_3;
							return true;
						}
						else
						{
							if (uParam1->f_21)
							{
								*(uParam0[0 /*3*/]) = { uParam1->f_18 };
							}
							else
							{
								*(uParam0[0 /*3*/]) = { Global_2404994.f_2019 };
							}
							if (uParam1->f_5 && func_997(Global_2404994.f_476))
							{
								if (!Global_2404994.f_2044.f_5)
								{
									Global_2404994.f_2044.f_5 = 1;
								}
								else
								{
									func_928(uParam0[0 /*3*/], 1, 0, 1, 1, uParam1, uParam2);
								}
							}
							else
							{
								func_928(uParam0[0 /*3*/], 0, 0, 1, 0, uParam1, uParam2);
							}
							uParam0->f_10[0] = gameplay::get_random_float_in_range(0f, 360f);
							return true;
						}
					}
					break;
				
				case 1:
					func_983(uParam1, uParam2);
					break;
				
				case 2:
					return false;
					break;
				
				case 3:
					return false;
					break;
			}
		}
		else if (ped::_0x3C67506996001F5E())
		{
			if (!ped::_0xF445DE8DA80A1792())
			{
				if (ped::_0xA586FBEB32A53DBB())
				{
					func_983(uParam1, uParam2);
					Global_2404994.f_2044.f_1 = ped::_0xA635C11B8C44AFC2();
				}
				else
				{
					return false;
				}
			}
			else
			{
				ped::_0xFEE4A5459472A9F8();
				func_983(uParam1, uParam2);
				if (!Global_2404994.f_2044.f_2)
				{
					Global_2404994.f_2044.f_5 = 1;
					return true;
				}
			}
		}
		else
		{
			return false;
		}
	}
	if (uParam1->f_5)
	{
		func_980(Global_2404994.f_525, &(Global_2404994.f_2044.f_34), &(Global_2404994.f_2044.f_67));
	}
	if (uParam2->f_7 && !Global_2404994.f_2044.f_4)
	{
		Global_2404994.f_2044.f_4 = 1;
		func_944(*uParam1, uParam1->f_3, uParam1, uParam2, 1, -1);
	}
	iVar6 = 0;
	if (uParam1->f_5)
	{
		iVar7 = 64;
	}
	else
	{
		iVar7 = 32;
	}
	if (Global_2404994.f_2044.f_1 > 0 || Global_2404994.f_2044 > 0)
	{
		if (uParam1->f_5 || ped::_0x3C67506996001F5E())
		{
			iVar4 = 0;
			while (iVar4 < Global_2404994.f_2044.f_1)
			{
				if (iVar6 < iVar7)
				{
					if (iVar4 <= Global_2404994.f_2044.f_3)
					{
						iVar4 = Global_2404994.f_2044.f_3 + 1;
					}
					if (iVar4 > (Global_2404994.f_2044.f_1 - 1))
					{
						iVar4 = (Global_2404994.f_2044.f_1 - 1);
					}
					if (iVar4 < 0)
					{
						iVar4 = 0;
					}
					if (uParam1->f_5 && !iParam3)
					{
						network::network_get_respawn_result(iVar4, &vVar0, &fVar3);
						fVar3 = (fVar3 * 57.29578f);
					}
					else
					{
						ped::_0x280C7E3AC7F56E90(iVar4, &vVar0, &(vVar0.f_1), &(vVar0.f_2));
					}
					if (uParam1->f_5 && !iParam3)
					{
						iVar5 = network::_0x6C34F1208B8923FD(iVar4);
					}
					else
					{
						ped::_0xB782F8238512BAD5(iVar4, &iVar5);
					}
					func_944(vVar0, fVar3, uParam1, uParam2, 0, iVar5);
					iVar6++;
					Global_2404994.f_2044.f_3 = iVar4;
				}
				else
				{
					return false;
				}
				iVar4++;
			}
		}
		else
		{
			iVar4 = Global_2404994.f_2044.f_1;
		}
		if (Global_2404994.f_2044.f_1 == iVar4)
		{
			if (uParam1->f_5 && Global_2404994.f_2349)
			{
				func_938(&(Global_2404994.f_2044.f_6[0 /*9*/]), &(Global_2404994.f_2044.f_6[1 /*9*/]), &(Global_2404994.f_2044.f_6[2 /*9*/]));
			}
			if (uParam1->f_5 && func_997(Global_2404994.f_476))
			{
				if (Global_2404994.f_2044.f_2)
				{
					func_927(uParam0, &(Global_2404994.f_2044.f_6));
					func_937(*(uParam0[0 /*3*/]));
					return true;
				}
				else
				{
					*(uParam0[0 /*3*/]) = { Global_2404994.f_2019 };
					func_928(uParam0[0 /*3*/], 0, 0, 0, 0, uParam1, uParam2);
					uParam0->f_10[0] = gameplay::get_random_float_in_range(0f, 360f);
					func_937(*(uParam0[0 /*3*/]));
					return true;
				}
			}
			else if (Global_2404994.f_2044.f_2)
			{
				func_927(uParam0, &(Global_2404994.f_2044.f_6));
				func_937(*(uParam0[0 /*3*/]));
				return true;
			}
			else if (uParam1->f_5)
			{
				iVar4 = gameplay::get_random_int_in_range(0, Global_2404994.f_2044.f_1);
				network::network_get_respawn_result(iVar4, uParam0[0 /*3*/], &(uParam0->f_10[0]));
				if (!func_932(uParam0[0 /*3*/], 0))
				{
					uParam0->f_10[0] = (uParam0->f_10[0] * 57.29578f);
					func_937(*(uParam0[0 /*3*/]));
					return true;
				}
				else
				{
					*(uParam0[0 /*3*/]) = { Global_2404994.f_2019 };
					func_928(uParam0[0 /*3*/], 1, 0, 1, 1, uParam1, uParam2);
					uParam0->f_10[0] = gameplay::get_random_float_in_range(0f, 360f);
					func_937(*(uParam0[0 /*3*/]));
					return true;
				}
			}
			else
			{
				*(uParam0[0 /*3*/]) = { Global_2404994.f_2019 };
				func_928(uParam0[0 /*3*/], 0, 0, 0, 0, uParam1, uParam2);
				uParam0->f_10[0] = gameplay::get_random_float_in_range(0f, 360f);
				func_937(*(uParam0[0 /*3*/]));
				return true;
			}
		}
	}
	else
	{
		*(uParam0[0 /*3*/]) = { Global_2404994.f_2019 };
		if (uParam1->f_5 && func_997(Global_2404994.f_476))
		{
			if (!Global_2404994.f_2044.f_5)
			{
				Global_2404994.f_2044.f_5 = 1;
			}
			else
			{
				func_928(uParam0[0 /*3*/], 1, 0, 1, 1, uParam1, uParam2);
			}
		}
		else
		{
			if (uParam1->f_15)
			{
				iVar8 = false;
			}
			else
			{
				iVar8 = true;
			}
			func_928(uParam0[0 /*3*/], 0, iVar8, 0, 0, uParam1, uParam2);
		}
		uParam0->f_10[0] = gameplay::get_random_float_in_range(0f, 360f);
		func_937(*(uParam0[0 /*3*/]));
		return true;
	}
	return false;
}

void func_937(vector3 vParam0)//Position - 0x7FE02
{
	int iVar0;
	
	iVar0 = 0;
	while (iVar0 < 2)
	{
		if (iVar0 > 0)
		{
			Global_2404994.f_2155[(3 - iVar0) /*3*/] = { Global_2404994.f_2155[(3 - iVar0 + 1) /*3*/] };
		}
		iVar0++;
	}
	Global_2404994.f_2155[0 /*3*/] = { vParam0 };
}

void func_938(var uParam0, var uParam1, var uParam2)//Position - 0x7FE52
{
	if (func_997(Global_2404994.f_476) && func_943() < 4096)
	{
		func_942(uParam0, 0f);
		func_942(uParam1, uParam0->f_2);
		func_942(uParam2, uParam1->f_2);
	}
	else
	{
		func_941(uParam0);
		func_940(uParam2, uParam0->f_4);
		func_939(uParam1, uParam0->f_4, uParam2->f_4);
	}
}

void func_939(var uParam0, vector3 vParam1, vector3 vParam4)//Position - 0x7FEB7
{
	int iVar0;
	float fVar1;
	float fVar2;
	float fVar3;
	float fVar4;
	struct<9> Var5;
	
	fVar1 = -1f;
	Var5.f_2 = 1176256410;
	iVar0 = 0;
	while (iVar0 < 128)
	{
		if (Global_2407344[iVar0 /*9*/] > 0)
		{
			fVar2 = system::vdist(Global_2407344[iVar0 /*9*/].f_4, vParam1);
			fVar3 = system::vdist(Global_2407344[iVar0 /*9*/].f_4, vParam4);
			fVar4 = (fVar2 + fVar3);
			fVar4 = (fVar4 * Global_2407344[iVar0 /*9*/].f_1);
			if (fVar4 > fVar1)
			{
				fVar1 = fVar4;
				Var5 = { Global_2407344[iVar0 /*9*/] };
			}
		}
		iVar0++;
	}
	*uParam0 = { Var5 };
}

void func_940(var uParam0, vector3 vParam1)//Position - 0x7FF56
{
	int iVar0;
	float fVar1;
	float fVar2;
	struct<9> Var3;
	
	fVar1 = -1f;
	Var3.f_2 = 1176256410;
	iVar0 = 0;
	while (iVar0 < 128)
	{
		if (Global_2407344[iVar0 /*9*/] > 0)
		{
			fVar2 = system::vdist(Global_2407344[iVar0 /*9*/].f_4, vParam1);
			fVar2 = (fVar2 * Global_2407344[iVar0 /*9*/].f_1);
			if (fVar2 > fVar1)
			{
				fVar1 = fVar2;
				Var3 = { Global_2407344[iVar0 /*9*/] };
			}
		}
		iVar0++;
	}
	*uParam0 = { Var3 };
}

void func_941(var uParam0)//Position - 0x7FFD8
{
	int iVar0;
	float fVar1;
	struct<9> Var2;
	
	fVar1 = -1f;
	Var2.f_2 = 1176256410;
	iVar0 = 0;
	while (iVar0 < 128)
	{
		if (Global_2407344[iVar0 /*9*/] > 0)
		{
			if (Global_2407344[iVar0 /*9*/].f_1 > fVar1)
			{
				fVar1 = Global_2407344[iVar0 /*9*/].f_1;
				Var2 = { Global_2407344[iVar0 /*9*/] };
			}
		}
		iVar0++;
	}
	*uParam0 = { Var2 };
}

void func_942(var uParam0, float fParam1)//Position - 0x80046
{
	int iVar0;
	float fVar1;
	struct<9> Var2;
	
	fVar1 = 999999.9f;
	Var2.f_2 = 1176256410;
	iVar0 = 0;
	while (iVar0 < 128)
	{
		if (Global_2407344[iVar0 /*9*/] > 0)
		{
			if (Global_2407344[iVar0 /*9*/].f_2 < fVar1 && Global_2407344[iVar0 /*9*/].f_2 > fParam1)
			{
				fVar1 = Global_2407344[iVar0 /*9*/].f_2;
				Var2 = { Global_2407344[iVar0 /*9*/] };
			}
		}
		iVar0++;
	}
	*uParam0 = { Var2 };
}

int func_943()//Position - 0x800C9
{
	int iVar0;
	int iVar1;
	
	iVar1 = 0;
	iVar0 = 0;
	while (iVar0 < 128)
	{
		if (Global_2407344[iVar0 /*9*/] > iVar1)
		{
			iVar1 = Global_2407344[iVar0 /*9*/];
		}
		iVar0++;
	}
	return iVar1;
}

void func_944(vector3 vParam0, float fParam3, var uParam4, var uParam5, int iParam6, int iParam7)//Position - 0x80100
{
	float fVar0;
	float fVar1;
	float fVar2;
	float fVar3;
	int iVar4;
	float fVar5;
	float fVar6;
	int iVar7;
	int iVar8;
	int iVar9;
	int iVar10;
	vector3 vVar11;
	int iVar14;
	int iVar15;
	vector3 vVar16;
	vector3 vVar19;
	float fVar22;
	int iVar23;
	struct<9> Var24;
	int iVar33;
	int iVar34;
	
	iVar9 = 0;
	iVar7 = 0;
	iVar8 = false;
	if (uParam4->f_5)
	{
		if (Global_2404994.f_476 == 1)
		{
			if (gameplay::absf((Global_2404994.f_493.f_2 - vParam0.y)) < 25f)
			{
				iVar7++;
			}
		}
		else
		{
			iVar7++;
		}
	}
	else
	{
		iVar7++;
	}
	if (uParam4->f_5)
	{
		if (func_1063(player::player_id()))
		{
			if (iParam7 == -1)
			{
				iVar8 = true;
			}
			else if (!iParam7 & 1 == 0)
			{
				iVar8 = true;
			}
		}
		else if (iParam7 == -1)
		{
			iVar7 += 2;
		}
		else if (!iParam7 & 1 == 0)
		{
			iVar7 += 2;
		}
	}
	else
	{
		iVar7 += 2;
	}
	if (uParam4->f_5 && uParam4->f_6)
	{
		if (!func_979(vParam0, 1084227584, 1123024896, 0))
		{
			iVar7 += 4;
		}
	}
	else
	{
		iVar7 += 4;
	}
	if (uParam4->f_5)
	{
		if (!ped::_0x68772DB2B2526F9F(player::player_ped_id(), vParam0, 65f))
		{
			iVar7 += 8;
			iVar7 += 16;
		}
		else if (!ped::_0x68772DB2B2526F9F(player::player_ped_id(), vParam0, 20f))
		{
			iVar7 += 8;
		}
	}
	else
	{
		iVar7 += 8;
		iVar7 += 16;
	}
	if (uParam4->f_5)
	{
		if (!func_884(vParam0, uParam5->f_5, 1, 1, 1, 1, 1, 1))
		{
			iVar7 += 32;
		}
	}
	else
	{
		iVar7 += 32;
	}
	iVar14 = true;
	iVar10 = 0;
	while (iVar10 < 2)
	{
		if (system::vmag(uParam5->f_13[iVar10 /*3*/]) > 0f)
		{
			if (!system::vdist(vParam0, uParam5->f_13[iVar10 /*3*/]) > uParam5->f_20[iVar10])
			{
				iVar14 = false;
			}
		}
		iVar10++;
	}
	if (iVar14)
	{
		iVar7 += 256;
	}
	if (uParam4->f_5)
	{
		if (func_973(vParam0, fParam3, uParam4->f_15, func_978(1), uParam4->f_16, 0, 1123024896, 1101004800, 1101004800, 1084227584, 1092616192, 0, 0))
		{
			iVar7 += 64;
			iVar7 += 128;
		}
		else
		{
			iVar9 = Global_2404994.f_3;
		}
	}
	else if (!func_802(vParam0, 25f, player::player_id(), 1, 1))
	{
		if (uParam4->f_15)
		{
			fVar1 = 3.5f;
		}
		else
		{
			fVar1 = 1f;
		}
		if (!func_842(vParam0, fVar1, 1, 1, 120f, 0, -1, 0f, 1))
		{
			iVar7 += 128;
			iVar7 += 64;
		}
		else if (!func_842(vParam0, fVar1, 1, 1, 60f, 0, -1, 0f, 1))
		{
			iVar7 += 64;
		}
	}
	if (uParam4->f_5)
	{
		if (!Global_2404994.f_638)
		{
			vVar11 = { Global_2404994.f_493 };
			if (Global_2404994.f_476 == 26)
			{
				vVar11 = { Global_2404994.f_525.f_18 };
			}
			if (func_853(vVar11))
			{
				if (!func_836(&vParam0, 0, 0, 0) && !func_822(&vParam0, 0))
				{
					iVar7 += 512;
				}
			}
			else if (!func_822(&vParam0, 0) && !func_833(vParam0, 0.5f))
			{
				iVar7 += 512;
			}
		}
		else
		{
			iVar7 += 512;
		}
	}
	else if (!func_972(vParam0, 2.5f, 3))
	{
		iVar7 += 512;
	}
	if (uParam4->f_5)
	{
		if (!(func_971(player::player_id()) && func_969(player::player_id())))
		{
			if (!func_968(&vParam0, &(Global_2404994.f_2044.f_67), 0, 1065353216))
			{
				iVar7 += 1024;
			}
		}
		else
		{
			iVar7 += 1024;
		}
	}
	else
	{
		iVar7 += 1024;
	}
	if (uParam4->f_5)
	{
		if (!func_969(player::player_id()))
		{
			if (!func_967(vParam0, &(Global_2404994.f_2044.f_34), &(Global_2404994.f_2044.f_67), 1073741824))
			{
				iVar7 += 2048;
			}
		}
		else
		{
			iVar7 += 2048;
		}
	}
	else
	{
		iVar7 += 2048;
	}
	if (func_966(vParam0))
	{
		if (uParam4->f_5)
		{
			if (func_997(Global_2404994.f_476))
			{
				if (func_856(vParam0, 0.01f))
				{
					iVar7 += 4096;
				}
			}
			else
			{
				iVar7 += 4096;
			}
		}
		else
		{
			iVar7 += 4096;
		}
	}
	if (uParam4->f_5)
	{
		if (func_965(vParam0))
		{
			iVar7 += 8192;
		}
	}
	else
	{
		iVar7 += 8192;
	}
	if (!Global_2404994.f_43.f_55)
	{
		iVar7 += 16384;
	}
	else if (uParam4->f_5)
	{
		if (!iParam7 & 1 == 0)
		{
			if (interior::is_valid_interior(interior::get_interior_at_coords(vParam0)))
			{
				iVar7 += 16384;
			}
		}
	}
	else if (!iParam7 & 2 == 0)
	{
		if (interior::is_valid_interior(interior::get_interior_at_coords(vParam0)))
		{
			iVar7 += 16384;
		}
	}
	if (uParam4->f_5)
	{
		if (!Global_2404994.f_638)
		{
			if (!func_834(&vParam0, 0, 0))
			{
				iVar7 = (iVar7 + 32768);
			}
		}
		else
		{
			iVar7 = (iVar7 + 32768);
		}
	}
	else
	{
		iVar7 = (iVar7 + 32768);
	}
	if (!func_932(&vParam0, 0))
	{
		iVar7 = (iVar7 + 65536);
	}
	else
	{
		iVar15 = func_855(vParam0, 1008981770);
		if (iVar15 > -1)
		{
			func_964(vParam0, &vVar16, &vVar19, &fVar22);
			if (!func_959(&(Global_2404994.f_43[iVar15 /*12*/]), vVar16, vVar19, fVar22))
			{
				iVar7 = -1;
			}
		}
		else
		{
			iVar7 = -1;
		}
	}
	if (func_816(vParam0, 1056964608))
	{
		iVar7 = -1;
	}
	if (uParam4->f_5)
	{
	}
	else if (func_958(vParam0, 1, 0, uParam4->f_15, 1060320051, 1086324736, 1065353216, 1088421888))
	{
		iVar7 = 0;
	}
	Var24.f_2 = 1176256410;
	iVar33 = false;
	iVar34 = false;
	if (Global_2404994.f_2349 && uParam4->f_5)
	{
		if (iVar7 > 0)
		{
			if (iParam6)
			{
				uParam5->f_4 = 0;
				iVar4 = false;
			}
			else
			{
				iVar4 = true;
			}
			if (uParam4->f_21)
			{
				fVar0 = func_951(vParam0, uParam4->f_18, uParam5->f_6, uParam5->f_4, iVar4, iVar9, &(Var24.f_8));
			}
			else
			{
				fVar0 = func_951(vParam0, Global_2404994.f_2019, uParam5->f_6, uParam5->f_4, iVar4, iVar9, &(Var24.f_8));
			}
			if (iVar8)
			{
				fVar0 = (fVar0 * 3f);
			}
			if (func_997(Global_2404994.f_476) && iVar7 < 4096)
			{
				Var24.f_2 = func_950(vParam0);
			}
			Var24.f_4 = { vParam0 };
			Var24.f_7 = fParam3;
			Var24 = iVar7;
			Var24.f_1 = fVar0;
			func_949(Var24);
			Global_2404994.f_2044.f_2 = 1;
		}
	}
	else
	{
		iVar23 = 0;
		while (iVar23 < 3)
		{
			if (iVar7 >= Global_2404994.f_2044.f_6[iVar23 /*9*/])
			{
				if (uParam4->f_5)
				{
					if (!iVar33)
					{
						if (iParam6)
						{
							uParam5->f_4 = 0;
							iVar4 = false;
						}
						else
						{
							iVar4 = true;
						}
						if (uParam4->f_21)
						{
							fVar0 = func_951(vParam0, uParam4->f_18, uParam5->f_6, uParam5->f_4, iVar4, iVar9, &(Var24.f_8));
						}
						else
						{
							fVar0 = func_951(vParam0, Global_2404994.f_2019, uParam5->f_6, uParam5->f_4, iVar4, iVar9, &(Var24.f_8));
						}
						if (iVar8)
						{
							fVar0 = (fVar0 * 3f);
						}
						iVar33 = true;
					}
					if ((func_997(Global_2404994.f_476) && iVar7 == Global_2404994.f_2044.f_6[iVar23 /*9*/]) && iVar7 < 4096)
					{
						if (!iVar34)
						{
							fVar2 = func_950(vParam0);
							iVar34 = true;
						}
						if (fVar2 < Global_2404994.f_2044.f_6[iVar23 /*9*/].f_2)
						{
							Var24.f_4 = { vParam0 };
							Var24.f_7 = fParam3;
							Var24 = iVar7;
							Var24.f_1 = fVar0;
							Var24.f_2 = fVar2;
							func_948(Var24, iVar23);
							Global_2404994.f_2044.f_2 = 1;
							return;
						}
					}
					else if (iVar7 > Global_2404994.f_2044.f_6[iVar23 /*9*/] || (iVar7 == Global_2404994.f_2044.f_6[iVar23 /*9*/] && fVar0 > Global_2404994.f_2044.f_6[iVar23 /*9*/].f_1))
					{
						Var24.f_4 = { vParam0 };
						Var24.f_7 = fParam3;
						Var24 = iVar7;
						Var24.f_1 = fVar0;
						func_948(Var24, iVar23);
						Global_2404994.f_2044.f_2 = 1;
						return;
					}
				}
				else
				{
					if (!iVar33)
					{
						if (uParam4->f_15)
						{
							fVar1 = 3.5f;
						}
						else
						{
							fVar1 = 1f;
						}
						fVar5 = func_947(vParam0, fVar1, 1, 1, 0, -1, 1);
						fVar6 = func_946(vParam0, 1, 1, 1, 1);
						if (fVar5 > 15f && fVar6 > 5f)
						{
							fVar3 = func_945(fVar5, 0f, 80f, 160f, 1f, 1.2f);
						}
						else
						{
							fVar3 = func_945(fVar6, 0f, 80f, 160f, 0f, 0.2f);
						}
						iVar33 = true;
					}
					if (iVar7 > Global_2404994.f_2044.f_6[iVar23 /*9*/] || (iVar7 == Global_2404994.f_2044.f_6[iVar23 /*9*/] && fVar3 > Global_2404994.f_2044.f_6[iVar23 /*9*/].f_3))
					{
						Var24.f_4 = { vParam0 };
						Var24.f_7 = fParam3;
						Var24 = iVar7;
						Var24.f_3 = fVar3;
						func_948(Var24, iVar23);
						Global_2404994.f_2044.f_2 = 1;
						return;
					}
				}
			}
			iVar23++;
		}
	}
}

float func_945(float fParam0, float fParam1, float fParam2, float fParam3, float fParam4, float fParam5)//Position - 0x80A17
{
	float fVar0;
	
	if (fParam1 >= fParam3)
	{
		fParam1 = (fParam3 * 0.5f);
	}
	if (fParam0 < fParam1)
	{
		fParam0 = fParam1;
	}
	if (fParam0 > fParam3)
	{
		fParam0 = fParam3;
	}
	if (fParam2 < fParam3 && fParam2 > fParam1)
	{
		if (fParam0 < fParam2)
		{
			fVar0 = (fParam4 + ((1f - fParam4) - ((1f - fParam4) * ((fParam2 - fParam0) / (fParam2 - fParam1)))));
		}
		else
		{
			fVar0 = (fParam5 + ((1f - fParam5) - ((1f - fParam5) * ((fParam0 - fParam2) / (fParam3 - fParam2)))));
		}
	}
	else
	{
		fVar0 = (fParam4 + (((fParam0 - fParam1) / (fParam3 - fParam1)) * (fParam5 - fParam4)));
	}
	return fVar0;
}

float func_946(vector3 vParam0, int iParam3, int iParam4, int iParam5, int iParam6)//Position - 0x80AB5
{
	int iVar0;
	float fVar1;
	float fVar2;
	float fVar3;
	int iVar4;
	vector3 vVar5;
	vector3 vVar8;
	int iVar11;
	
	fVar3 = 999999.9f;
	iVar4 = false;
	iVar0 = 0;
	while (iVar0 < 32)
	{
		iVar11 = iVar0;
		if (func_387(iVar11, 1, 1))
		{
			if (!iVar11 == player::player_id() || iParam5 == 1)
			{
				iVar4 = false;
				if (iParam3)
				{
					if (func_809(iVar11))
					{
						iVar4 = true;
					}
				}
				if (iParam4)
				{
					if (player::get_player_team(iVar11) == player::get_player_team(player::player_id()))
					{
						if (!player::get_player_team(iVar11) == -1 || !func_857(player::player_id(), 1))
						{
							iVar4 = true;
						}
					}
				}
				if (iVar4)
				{
					if (network::_0x9DE986FC9A87C474(player::player_id(), iVar11) || !iParam6)
					{
						if (func_793(iVar11))
						{
							vVar5 = { func_131(iVar11) };
							if (!iVar11 == player::player_id())
							{
								vVar8 = { unk_0x64D779659BC37B19(player::get_player_ped(iVar11)) };
							}
							else
							{
								vVar8 = { vVar5 };
							}
							if (!iParam6)
							{
								if (vVar5.y < -100f)
								{
									vVar5.z = vParam0.y;
								}
								if (vVar8.y < -100f)
								{
									vVar8.z = vParam0.y;
								}
							}
							fVar1 = gameplay::get_distance_between_coords(vParam0, vVar5, 1);
							fVar2 = gameplay::get_distance_between_coords(vParam0, vVar8, 1);
							if (fVar1 < fVar3)
							{
								fVar3 = fVar1;
							}
							if (fVar2 < fVar3)
							{
								fVar3 = fVar2;
							}
						}
					}
				}
			}
		}
		iVar0++;
	}
	return fVar3;
}

float func_947(vector3 vParam0, float fParam3, int iParam4, int iParam5, int iParam6, int iParam7, int iParam8)//Position - 0x80C01
{
	int iVar0;
	int iVar1;
	int iVar2;
	float fVar3;
	float fVar4;
	
	iVar2 = false;
	fVar3 = 1E+13f;
	if (iParam4 && !iParam6)
	{
		if (func_387(player::player_id(), 1, 1))
		{
			if (!cam::is_screen_faded_out())
			{
				if (cam::is_sphere_visible(vParam0, fParam3))
				{
					fVar4 = system::vdist2(vParam0, entity::get_entity_coords(player::player_ped_id(), 0));
					if (fVar4 < fVar3)
					{
						fVar3 = fVar4;
						iVar2 = true;
					}
				}
			}
		}
	}
	iVar0 = 0;
	while (iVar0 < 32)
	{
		iVar1 = iVar0;
		if (func_387(iVar1, 1, 1))
		{
			if (!func_124(iVar1, 0) && network::_0x9DE986FC9A87C474(player::player_id(), iVar1))
			{
				if (iParam4 == 1 || (iParam4 == 0 && iVar1 != player::player_id()))
				{
					if (func_793(iVar1) || !iParam8)
					{
						if (!iParam6)
						{
							if ((iParam5 || (iParam5 == 0 && player::get_player_team(iVar1) != player::get_player_team(player::player_id()))) || player::get_player_team(iVar1) == -1)
							{
								if (network::is_sphere_visible_to_player(iVar1, vParam0, fParam3))
								{
									fVar4 = system::vdist2(vParam0, entity::get_entity_coords(player::get_player_ped(iVar1), 0));
									if (fVar4 < fVar3)
									{
										fVar3 = fVar4;
										iVar2 = true;
									}
								}
							}
						}
						else if (player::get_player_team(iVar1) != iParam7 || player::get_player_team(iVar1) == -1)
						{
							if (network::is_sphere_visible_to_player(iVar1, vParam0, fParam3))
							{
								fVar4 = system::vdist2(vParam0, entity::get_entity_coords(player::get_player_ped(iVar1), 0));
								if (fVar4 < fVar3)
								{
									fVar3 = fVar4;
									iVar2 = true;
								}
							}
						}
					}
				}
			}
		}
		iVar0++;
	}
	if (iVar2)
	{
		return system::sqrt(fVar3);
	}
	return -1f;
}

void func_948(struct<9> Param0, int iParam9)//Position - 0x80D98
{
	struct<9> Var0;
	
	Var0.f_2 = 1176256410;
	Var0 = { Global_2404994.f_2044.f_6[iParam9 /*9*/] };
	Global_2404994.f_2044.f_6[iParam9 /*9*/] = { Param0 };
	if (iParam9 < 2)
	{
		func_948(Var0, iParam9 + 1);
	}
}

void func_949(struct<9> Param0)//Position - 0x80DEA
{
	int iVar0;
	struct<9> Var1;
	int iVar10;
	float fVar11;
	int iVar12;
	
	Var1.f_2 = 1176256410;
	iVar10 = func_943();
	if (Param0 > iVar10)
	{
		iVar10 = Param0;
	}
	iVar0 = 0;
	while (iVar0 < 128)
	{
		if (Global_2407344[iVar0 /*9*/] < iVar10)
		{
			Global_2407344[iVar0 /*9*/] = { Var1 };
		}
		iVar0++;
	}
	if (Param0 < iVar10)
	{
		return;
	}
	iVar0 = 0;
	while (iVar0 < 128)
	{
		if (Global_2407344[iVar0 /*9*/] == 0)
		{
			Global_2407344[iVar0 /*9*/] = { Param0 };
			return;
		}
		iVar0++;
	}
	fVar11 = 9999.9f;
	iVar12 = -1;
	iVar0 = 0;
	while (iVar0 < 128)
	{
		if (Global_2407344[iVar0 /*9*/] > 0)
		{
			if (Global_2407344[iVar0 /*9*/].f_1 < fVar11)
			{
				fVar11 = Global_2407344[iVar0 /*9*/].f_1;
				iVar12 = iVar0;
			}
		}
		iVar0++;
	}
	if (iVar12 > -1)
	{
		Global_2407344[iVar12 /*9*/] = { Param0 };
	}
}

float func_950(vector3 vParam0)//Position - 0x80EDE
{
	int iVar0;
	
	return func_1048(vParam0, &(Global_2404994.f_43), &iVar0);
}

float func_951(vector3 vParam0, vector3 vParam3, int iParam6, int iParam7, int iParam8, int iParam9, var uParam10)//Position - 0x80EF6
{
	float fVar0;
	float fVar1;
	float fVar2;
	float fVar3;
	float fVar4;
	float fVar5;
	
	fVar1 = 1f;
	if (iParam9 > 0)
	{
		fVar1 = (system::to_float(iParam9) / system::to_float(8));
	}
	if (iParam6)
	{
		fVar0 = func_945(system::vdist(vParam0, vParam3), 0f, 0f, 200f, 1f, 0.1f);
		fVar1 = (fVar1 * (fVar0 * 0.95f));
	}
	*uParam10 = 1E+07f;
	fVar4 = func_946(vParam0, 1, 0, 0, 1);
	fVar0 = func_945(fVar4, 0f, func_957(), func_956(), 0f, 0.3f);
	fVar1 = (fVar1 * (fVar0 * 0.95f));
	if (fVar4 < *uParam10)
	{
		fVar4 = fVar4;
	}
	fVar4 = func_954(vParam0);
	fVar0 = func_945(fVar4, 0f, 0f, 60f, 0.5f, 1f);
	fVar1 = (fVar1 * (fVar0 * 0.95f));
	if (fVar4 < *uParam10)
	{
		fVar4 = fVar4;
	}
	fVar5 = 100f;
	if (player::get_player_team(player::player_id()) == -1 && !func_857(player::player_id(), 1))
	{
		fVar5 = 1f;
	}
	fVar4 = func_953(vParam0, player::player_id(), 0);
	fVar0 = func_945(fVar4, 0f, 0f, fVar5, 0f, 1f);
	fVar1 = (fVar1 * (fVar0 * 0.95f));
	if (fVar4 < *uParam10)
	{
		fVar4 = fVar4;
	}
	if (iParam7)
	{
		if (func_952(vParam0, &fVar2, &fVar3))
		{
			if (fVar2 < 10f)
			{
				fVar2 = 10f;
			}
			if (fVar3 < 0.5f)
			{
				fVar3 = 0.5f;
			}
			fVar0 = func_945(fVar2, 0f, 0f, 200f, 1f, 0.1f);
			fVar0 = (fVar0 + func_945(fVar3, 0f, 0f, 6f, 1f, 0.5f));
			fVar0 = (fVar0 * 0.5f);
			fVar1 = (fVar1 * (fVar0 * 0.85f));
		}
	}
	if (iParam8)
	{
		fVar0 = func_945(system::vdist(Global_2404994.f_493, vParam0), 0f, 100f, 200f, 0.1f, 0.1f);
		fVar1 = (fVar1 * (fVar0 * 0.9f));
	}
	return fVar1;
}

bool func_952(vector3 vParam0, var uParam3, var uParam4)//Position - 0x810DC
{
	vector3 vVar0;
	int iVar3;
	var uVar4;
	var uVar5;
	
	iVar3 = pathfind::get_nth_closest_vehicle_node_id_with_heading(vParam0, 1, &uVar5, &uVar4, 1, 3f, 0f);
	if (pathfind::is_vehicle_node_id_valid(iVar3))
	{
		pathfind::get_vehicle_node_position(iVar3, &vVar0);
		*uParam3 = system::vdist(vParam0.x, vParam0.y, 0f, vVar0.x, vVar0.y, 0f);
		*uParam4 = gameplay::absf((vParam0.y - vVar0.y));
		return true;
	}
	return false;
}

float func_953(vector3 vParam0, int iParam3, int iParam4)//Position - 0x81135
{
	float fVar0;
	float fVar1;
	int iVar2;
	int iVar3;
	
	fVar0 = 999999.9f;
	iVar2 = 0;
	while (iVar2 < 32)
	{
		if (!iParam3 == iVar2 || iParam4 == 1)
		{
			iVar3 = iVar2;
			if (func_387(iVar3, 0, 1))
			{
				if (player::get_player_team(iVar3) != player::get_player_team(iParam3) || (player::get_player_team(iVar3) == -1 && player::get_player_team(iParam3) == -1))
				{
					if (Global_2415705.f_260[iVar2])
					{
						fVar1 = system::vdist(Global_2415705.f_130[iVar2 /*3*/], vParam0);
						if (fVar1 < fVar0)
						{
							fVar0 = fVar1;
						}
					}
				}
			}
		}
		iVar2++;
	}
	return fVar0;
}

float func_954(vector3 vParam0)//Position - 0x811D6
{
	float fVar0;
	float fVar1;
	int iVar2;
	vector3 vVar3;
	var uVar6[32];
	int iVar39;
	
	iVar39 = ped::get_ped_nearby_peds(player::player_ped_id(), &uVar6, -1);
	fVar0 = 1E+07f;
	iVar2 = 0;
	while (iVar2 < iVar39)
	{
		if (entity::does_entity_exist(uVar6[iVar2]))
		{
			if (!entity::is_entity_dead(uVar6[iVar2], 0))
			{
				if (func_955(uVar6[iVar2]))
				{
					vVar3 = { entity::get_entity_coords(uVar6[iVar2], 1) };
					fVar1 = gameplay::get_distance_between_coords(vParam0, vVar3, 1);
					if (fVar1 < fVar0)
					{
						fVar0 = fVar1;
					}
				}
			}
		}
		iVar2++;
	}
	return fVar0;
}

bool func_955(int iParam0)//Position - 0x81263
{
	int iVar0;
	int iVar1;
	
	iVar0 = ped::get_ped_relationship_group_hash(iParam0);
	switch (ped::get_relationship_between_groups(iVar0, 1862763509))
	{
		case 3:
		case 5:
			return true;
			break;
	}
	switch (ped::get_relationship_between_groups(iVar0, Global_1574648[player::player_id()]))
	{
		case 3:
		case 5:
			return true;
			break;
	}
	if (Global_1589933[player::player_id() /*601*/] == 0)
	{
		iVar1 = player::get_player_team(player::player_id());
		if (iVar1 > -1 && iVar1 < 4)
		{
			switch (ped::get_relationship_between_groups(iVar0, Global_1574359[iVar1]))
			{
				case 3:
				case 5:
					return true;
					break;
				}
			}
	}
	return false;
}

float func_956()//Position - 0x8130E
{
	if (func_1085())
	{
		if ((vehicle::is_this_model_a_plane(Global_2404994.f_43.f_67) || vehicle::is_this_model_a_heli(Global_2404994.f_43.f_67)) || Global_2404994.f_43.f_67 == joaat("rhino"))
		{
			return 640f;
		}
		else
		{
			return 320f;
		}
	}
	return 160f;
}

float func_957()//Position - 0x8136A
{
	if (func_1085())
	{
		if ((vehicle::is_this_model_a_plane(Global_2404994.f_43.f_67) || vehicle::is_this_model_a_heli(Global_2404994.f_43.f_67)) || Global_2404994.f_43.f_67 == joaat("rhino"))
		{
			return 320f;
		}
		else
		{
			return 160f;
		}
	}
	return 80f;
}

bool func_958(vector3 vParam0, int iParam3, int iParam4, int iParam5, int iParam6, float fParam7, float fParam8, float fParam9)//Position - 0x813C6
{
	float fVar0;
	
	fVar0 = iParam6;
	if (iParam5)
	{
		fVar0 = fParam7;
	}
	if ((((fParam7 > 0f && vehicle::is_any_vehicle_near_point(vParam0, fParam7)) || (fVar0 > 0f && ped::is_any_ped_near_point(vParam0, fVar0))) || ((iParam4 == 1 && fParam8 > 0f) && object::is_any_object_near_point(vParam0, fParam8, 0))) || ((iParam3 == 1 && fParam9 > 0f) && object::is_any_object_near_point(vParam0, fParam9, 1)))
	{
		return true;
	}
	return false;
}

bool func_959(var uParam0, vector3 vParam1, vector3 vParam4, float fParam7)//Position - 0x81455
{
	switch (uParam0->f_10)
	{
		case 0:
			if (func_963(*uParam0, uParam0->f_6, vParam1, vParam4, fParam7))
			{
				return true;
			}
			break;
		
		case 1:
			if (func_962(*uParam0, uParam0->f_3, vParam1, vParam4, fParam7))
			{
				return true;
			}
			break;
		
		case 2:
			if (func_960(*uParam0, uParam0->f_3, uParam0->f_6, vParam1, vParam4, fParam7))
			{
				return true;
			}
			break;
	}
	return false;
}

bool func_960(vector3 vParam0, vector3 vParam3, float fParam6, vector3 vParam7, vector3 vParam10, float fParam13)//Position - 0x814E1
{
	vector3 vVar0[8];
	int iVar25;
	
	func_961(vParam0, vParam3, fParam6, &vVar0);
	iVar25 = 0;
	while (iVar25 < 8)
	{
		if (!object::is_point_in_angled_area(vVar0[iVar25 /*3*/], vParam7, vParam10, fParam13, 0, true))
		{
			return false;
		}
		iVar25++;
	}
	return true;
}

void func_961(vector3 vParam0, vector3 vParam3, float fParam6, var uParam7)//Position - 0x81533
{
	vector3 vVar0;
	vector3 vVar3;
	var uVar6;
	var uVar7;
	
	if (vParam0.y == vParam3.y)
	{
		vParam3.z = (vParam3.y + 0.01f);
	}
	vVar0 = { vParam0 - vParam3 };
	vVar3 = { func_493(vVar0, vVar0.x, vVar0.y, 0f) };
	vVar3 = { vVar3 / FtoV(system::vmag(vVar3)) };
	vVar3 = { vVar3 * FtoV((fParam6 * 0.5f)) };
	if (vParam0.y > vParam3.y)
	{
		uVar6 = vParam3.y;
		uVar7 = vParam0.y;
	}
	else
	{
		uVar6 = vParam0.y;
		uVar7 = vParam3.y;
	}
	*(uParam7[0 /*3*/]) = { Vector(uVar6, vParam0.y, vParam0.x) + vVar3 };
	*(uParam7[1 /*3*/]) = { Vector(uVar6, vParam0.y, vParam0.x) - vVar3 };
	*(uParam7[2 /*3*/]) = { Vector(uVar7, vParam0.y, vParam0.x) - vVar3 };
	*(uParam7[3 /*3*/]) = { Vector(uVar7, vParam0.y, vParam0.x) + vVar3 };
	*(uParam7[4 /*3*/]) = { Vector(uVar6, vParam3.y, vParam3.x) + vVar3 };
	*(uParam7[5 /*3*/]) = { Vector(uVar6, vParam3.y, vParam3.x) - vVar3 };
	*(uParam7[6 /*3*/]) = { Vector(uVar7, vParam3.y, vParam3.x) - vVar3 };
	*(uParam7[7 /*3*/]) = { Vector(uVar7, vParam3.y, vParam3.x) + vVar3 };
}

bool func_962(vector3 vParam0, vector3 vParam3, vector3 vParam6, vector3 vParam9, float fParam12)//Position - 0x81660
{
	vector3 vVar0[8];
	int iVar25;
	
	vVar0[0 /*3*/] = { vParam0.x, vParam0.y, vParam0.y };
	vVar0[1 /*3*/] = { vParam0.x, vParam0.y, vParam3.y };
	vVar0[2 /*3*/] = { vParam0.x, vParam3.y, vParam3.y };
	vVar0[3 /*3*/] = { vParam0.x, vParam3.y, vParam0.y };
	vVar0[4 /*3*/] = { vParam3.x, vParam0.y, vParam0.y };
	vVar0[5 /*3*/] = { vParam3.x, vParam0.y, vParam3.y };
	vVar0[6 /*3*/] = { vParam3.x, vParam3.y, vParam3.y };
	vVar0[7 /*3*/] = { vParam3.x, vParam3.y, vParam0.y };
	iVar25 = 0;
	while (iVar25 < 8)
	{
		if (!object::is_point_in_angled_area(vVar0[iVar25 /*3*/], vParam6, vParam9, fParam12, 0, true))
		{
			return false;
		}
		iVar25++;
	}
	return true;
}

bool func_963(vector3 vParam0, float fParam3, vector3 vParam4, vector3 vParam7, float fParam10)//Position - 0x8172A
{
	vector3 vVar0[4];
	int iVar13;
	
	vVar0[0 /*3*/] = { vParam0 + Vector(0f, fParam3, 0f) };
	vVar0[1 /*3*/] = { vParam0 + Vector(0f, (-1f * fParam3), 0f) };
	vVar0[2 /*3*/] = { vParam0 + Vector(0f, 0f, fParam3) };
	vVar0[3 /*3*/] = { vParam0 + Vector(0f, 0f, (-1f * fParam3)) };
	iVar13 = 0;
	while (iVar13 < 4)
	{
		if (!object::is_point_in_angled_area(vVar0[iVar13 /*3*/], vParam4, vParam7, fParam10, 0, true))
		{
			return false;
		}
		iVar13++;
	}
	return true;
}

void func_964(vector3 vParam0, var uParam3, var uParam4, var uParam5)//Position - 0x817AE
{
	int iVar0;
	vector3 vVar1;
	var uVar4;
	
	vVar1 = { vParam0 };
	uVar4 = func_821(vVar1);
	iVar0 = 0;
	while (iVar0 < Global_2410138[uVar4])
	{
		if (func_820(vVar1, &(Global_2409309[uVar4 /*92*/][iVar0 /*7*/])))
		{
			*uParam3 = { Global_2409309[uVar4 /*92*/][iVar0 /*7*/] };
			*uParam4 = { Global_2409309[uVar4 /*92*/][iVar0 /*7*/].f_3 };
			*uParam5 = Global_2409309[uVar4 /*92*/][iVar0 /*7*/].f_6;
			return;
		}
		iVar0++;
	}
	iVar0 = 0;
	while (iVar0 < Global_2410138[8])
	{
		if (func_820(vVar1, &(Global_2409309[8 /*92*/][iVar0 /*7*/])))
		{
			*uParam3 = { Global_2409309[8 /*92*/][iVar0 /*7*/] };
			*uParam4 = { Global_2409309[8 /*92*/][iVar0 /*7*/].f_3 };
			*uParam5 = Global_2409309[8 /*92*/][iVar0 /*7*/].f_6;
			return;
		}
		iVar0++;
	}
}

bool func_965(vector3 vParam0)//Position - 0x8189C
{
	int iVar0;
	int iVar1;
	
	if (Global_2404994.f_43.f_55)
	{
		if (interior::is_valid_interior(Global_2404994.f_43.f_56))
		{
			if (!interior::_are_coords_colliding_with_exterior(vParam0))
			{
				iVar0 = interior::get_interior_at_coords(vParam0);
				if (interior::is_valid_interior(iVar0))
				{
					iVar1 = interior::get_interior_group_id(iVar0);
					if (!iVar1 == Global_2404994.f_43.f_57)
					{
						return false;
					}
				}
				else
				{
					return false;
				}
			}
			else
			{
				return false;
			}
		}
	}
	return true;
}

int func_966(vector3 vParam0)//Position - 0x81907
{
	switch (Global_2404994.f_2040)
	{
		case 0:
			return func_815(vParam0, Global_2404994.f_2019, Global_2404994.f_2022, 0, 0);
			break;
		
		case 1:
			return func_813(vParam0, Global_2404994.f_2033, Global_2404994.f_2036, 0, 0);
			break;
		
		case 2:
			return object::is_point_in_angled_area(vParam0, Global_2404994.f_2033, Global_2404994.f_2036, Global_2404994.f_2039, 0, true);
			break;
	}
	return false;
}

bool func_967(vector3 vParam0, var uParam3, var uParam4, float fParam5)//Position - 0x81999
{
	float fVar0;
	int iVar1;
	vector3 vVar2;
	vector3 vVar5;
	float fVar8;
	
	fVar0 = 0f;
	iVar1 = 0;
	iVar1 = 0;
	while (iVar1 < *uParam3)
	{
		fVar0 = ((uParam3[iVar1 /*4*/])->f_3 + fParam5);
		if (system::vdist(*(uParam3[iVar1 /*4*/]), vParam0) < fVar0)
		{
			return true;
		}
		iVar1++;
	}
	vVar2 = { 0f, 0f, 0f };
	vVar5 = { 0f, 0f, 0f };
	fVar8 = 0f;
	iVar1 = 0;
	while (iVar1 < *uParam4)
	{
		vVar2 = { *(uParam4[iVar1 /*10*/]) };
		vVar5 = { (uParam4[iVar1 /*10*/])->f_3 };
		fVar8 = (uParam4[iVar1 /*10*/])->f_6;
		if (object::is_point_in_angled_area(vParam0, vVar2, vVar5, fVar8, 0, true))
		{
			return true;
		}
		iVar1++;
	}
	return false;
}

bool func_968(var uParam0, var uParam1, int iParam2, float fParam3)//Position - 0x81A47
{
	int iVar0;
	vector3 vVar1;
	
	iVar0 = 0;
	iVar0 = 0;
	while (iVar0 < *uParam1)
	{
		if (system::vdist((uParam1[iVar0 /*10*/])->f_7, *uParam0) < (80f * fParam3))
		{
			if (iParam2)
			{
				vVar1 = { *uParam0 };
				func_826(&vVar1, (uParam1[iVar0 /*10*/])->f_7, 80f, 1036831949, 0, 0);
				*uParam0 = { vVar1 };
			}
			return true;
		}
		iVar0++;
	}
	return false;
}

bool func_969(int iParam0)//Position - 0x81ABA
{
	switch (Global_1312443)
	{
		case 0:
			if (!func_970(iParam0))
			{
				if (Global_1589933[iParam0 /*601*/] == 0)
				{
					return true;
				}
			}
			break;
	}
	return false;
}

int func_970(var uParam0)//Position - 0x81AF0
{
	return Global_1589933[uParam0 /*601*/].f_187 != 0;
}

bool func_971(int iParam0)//Position - 0x81B05
{
	if (func_170(iParam0, 1))
	{
		if (Global_1589933[iParam0 /*601*/] != 6)
		{
			return true;
		}
	}
	return false;
}

bool func_972(vector3 vParam0, float fParam3, int iParam4)//Position - 0x81B29
{
	int iVar0;
	
	iVar0 = 0;
	while (iVar0 < iParam4)
	{
		if (system::vdist2(Global_2404994.f_2155[iVar0 /*3*/], vParam0) < (fParam3 * fParam3))
		{
			return true;
		}
		iVar0++;
	}
	return false;
}

bool func_973(vector3 vParam0, float fParam3, int iParam4, int iParam5, int iParam6, int iParam7, float fParam8, float fParam9, float fParam10, float fParam11, float fParam12, float fParam13, int iParam14)//Position - 0x81B67
{
	Global_2404994.f_3 = 0;
	if (!func_802(vParam0, 0.5f, player::player_id(), 0, 0))
	{
		Global_2404994.f_3++;
		if (iParam5)
		{
			if (func_841(vParam0, 3.65f, 0.5f, 1.5f, 1f, 0, iParam6, iParam7, fParam8, 0, -1, 1, 0, 0, fParam13, iParam14, 0))
			{
				Global_2404994.f_3 = (Global_2404994.f_3 + Global_2404994.f_2);
				if (!func_977(vParam0, fParam12))
				{
					Global_2404994.f_3++;
					if (!func_816(vParam0, 1056964608))
					{
						Global_2404994.f_3++;
						return true;
					}
				}
			}
			else
			{
				Global_2404994.f_3 = (Global_2404994.f_3 + Global_2404994.f_2);
			}
		}
		else if (!iParam4)
		{
			if (func_841(vParam0, 3.65f, 0.5f, 1.5f, 1f, 0, iParam6, iParam7, fParam8, 0, -1, 1, 0, 0, fParam13, iParam14, 0))
			{
				Global_2404994.f_3 = (Global_2404994.f_3 + Global_2404994.f_2);
				if (!func_977(vParam0, fParam12))
				{
					Global_2404994.f_3++;
					if (!func_974(vParam0, fParam3, fParam9, fParam10, 1084227584))
					{
						Global_2404994.f_3++;
						if (!func_816(vParam0, 1056964608))
						{
							Global_2404994.f_3++;
							return true;
						}
					}
				}
			}
			else
			{
				Global_2404994.f_3 = (Global_2404994.f_3 + Global_2404994.f_2);
			}
		}
		else if (func_841(vParam0, 6f, 5f, 5f, 5f, 0, iParam6, iParam7, fParam8, 0, -1, 1, 0, 0, fParam13, iParam14, 0))
		{
			Global_2404994.f_3 = (Global_2404994.f_3 + Global_2404994.f_2);
			if (!func_977(vParam0, fParam12))
			{
				Global_2404994.f_3++;
				if (!func_974(vParam0, fParam3, fParam9, fParam10, fParam11))
				{
					Global_2404994.f_3++;
					if (!func_816(vParam0, 1056964608))
					{
						Global_2404994.f_3++;
						return true;
					}
				}
			}
		}
		else
		{
			Global_2404994.f_3 = (Global_2404994.f_3 + Global_2404994.f_2);
		}
	}
	return false;
}

bool func_974(vector3 vParam0, float fParam3, float fParam4, float fParam5, float fParam6)//Position - 0x81DA4
{
	int iVar0;
	int iVar1;
	
	iVar0 = 0;
	while (iVar0 < 32)
	{
		iVar1 = iVar0;
		if (!player::player_id() == iVar1)
		{
			if ((func_387(iVar1, 1, 1) && func_793(iVar1)) && network::_0x9DE986FC9A87C474(player::player_id(), iVar1))
			{
				if (!func_976(player::player_id(), iVar1, -2, 0))
				{
					if (func_975(func_131(iVar1), vParam0, fParam3, fParam4, fParam5, fParam6))
					{
						return true;
					}
				}
			}
		}
		iVar0++;
	}
	return false;
}

int func_975(vector3 vParam0, vector3 vParam3, float fParam6, float fParam7, float fParam8, float fParam9)//Position - 0x81E23
{
	vector3 vVar0;
	vector3 vVar3;
	
	fParam6 = (fParam6 * -1f);
	fParam6 = (fParam6 + 360f);
	vVar0.x = system::sin(fParam6);
	vVar0.y = system::cos(fParam6);
	vVar0.z = 0f;
	vVar0 = { vVar0 / FtoV(system::vmag(vVar0)) };
	vVar0 = { vVar0 * Vector(fParam7, fParam7, fParam7) };
	vVar3 = { vParam3 + vVar0 };
	vVar3.z = vParam3.y;
	vVar3.z = (vVar3.y + fParam9);
	vParam3.z = (vParam3.y + fParam9);
	return object::is_point_in_angled_area(vParam0, vParam3, vVar3, fParam8, 0, true);
}

int func_976(int iParam0, int iParam1, int iParam2, int iParam3)//Position - 0x81EAF
{
	if (iParam2 == -2)
	{
		if (iParam3 == 0)
		{
			if (player::get_player_team(iParam0) == -1 && player::get_player_team(iParam1) == -1)
			{
				return false;
			}
		}
		return player::get_player_team(iParam0) == player::get_player_team(iParam1);
	}
	else
	{
		if (iParam3 == 0)
		{
			if (player::get_player_team(iParam0) == -1 && iParam2 == -1)
			{
				return false;
			}
		}
		return player::get_player_team(iParam0) == iParam2;
	}
	return player::get_player_team(iParam0) == iParam2;
}

bool func_977(vector3 vParam0, float fParam3)//Position - 0x81F27
{
	int iVar0;
	int iVar1;
	
	iVar0 = 0;
	while (iVar0 < 32)
	{
		iVar1 = iVar0;
		if ((func_387(iVar1, 1, 1) && func_793(iVar1)) && network::_0x9DE986FC9A87C474(player::player_id(), iVar1))
		{
			if ((player::get_player_team(player::player_id()) == -1 && player::get_player_team(iVar1) == -1) && !func_857(player::player_id(), 1))
			{
				return false;
			}
			else if ((player::get_player_team(player::player_id()) == -1 && !player::player_id() == iVar1) || !func_976(player::player_id(), iVar1, -2, 0))
			{
				if (system::vdist(vParam0, func_131(iVar1)) < fParam3)
				{
					return true;
				}
			}
		}
		iVar0++;
	}
	return false;
}

bool func_978(int iParam0)//Position - 0x81FE3
{
	if ((Global_2404994.f_476 == 9 || Global_2404994.f_476 == 9) || (Global_2404994.f_476 == 15 && iParam0 == 1))
	{
		return true;
	}
	return false;
}

bool func_979(vector3 vParam0, float fParam3, int iParam4, float fParam5)//Position - 0x82026
{
	int iVar0;
	int iVar1;
	float fVar2;
	int iVar3;
	
	iVar3 = player::get_player_team(player::player_id());
	if (!iVar3 == -1)
	{
		iVar0 = 0;
		while (iVar0 < 32)
		{
			iVar1 = iVar0;
			if (func_387(iVar1, 1, 1))
			{
				if ((!func_124(iVar1, 0) && network::_0x9DE986FC9A87C474(player::player_id(), iVar1)) && iVar1 != player::player_id())
				{
					fVar2 = iParam4;
					if (fParam5 > 0f)
					{
						if (!player::get_player_team(iVar1) == -1)
						{
							if (player::get_player_team(iVar1) == player::get_player_team(player::player_id()))
							{
								fVar2 = fParam5;
							}
						}
					}
					if (player::get_player_team(iVar1) == iVar3)
					{
						if (gameplay::get_distance_between_coords(func_131(iVar1), vParam0, 1) <= (fVar2 + fParam3))
						{
							if (network::is_sphere_visible_to_player(iVar1, vParam0, fParam3))
							{
								return true;
							}
						}
					}
				}
			}
			iVar0++;
		}
	}
	return false;
}

void func_980(vector3 vParam0, var uParam3, var uParam4)//Position - 0x820EB
{
	int iVar0;
	int iVar1;
	struct<4> Var2;
	struct<8> Var6;
	vector3 vVar16;
	vector3 vVar19;
	
	iVar0 = 0;
	while (iVar0 < *uParam3)
	{
		*(uParam3[iVar0 /*4*/]) = { Var2 };
		iVar0++;
	}
	iVar0 = 0;
	while (iVar0 < *uParam4)
	{
		*(uParam4[iVar0 /*10*/]) = { Var6 };
		iVar0++;
	}
	iVar0 = 0;
	iVar1 = 0;
	iVar1 = 0;
	while (iVar1 < Global_1311741)
	{
		iVar0 = 0;
		while (iVar0 < *uParam3)
		{
			if (!gameplay::is_bit_set(Global_2359719[iVar1 /*26*/].f_12, 11))
			{
				if (system::vmag(*(uParam3[iVar0 /*4*/])) == 0f || system::vdist(Global_2359719[iVar1 /*26*/].f_3, vParam0) < system::vdist(*(uParam3[iVar0 /*4*/]), vParam0))
				{
					Var2 = { Global_2359719[iVar1 /*26*/].f_3 };
					Var2.f_3 = Global_2359719[iVar1 /*26*/].f_6.f_2;
					func_982(&Var2, uParam3, iVar0);
					iVar0 = *uParam3;
				}
			}
			iVar0++;
		}
		iVar1++;
	}
	iVar0 = 0;
	iVar1 = 0;
	iVar1 = 0;
	while (iVar1 < Global_1311706)
	{
		iVar0 = 0;
		while (iVar0 < *uParam4)
		{
			vVar16 = { Global_1311025[iVar1 /*8*/].f_1 + Global_1311025[iVar1 /*8*/].f_4 * Vector(0.5f, 0.5f, 0.5f) };
			vVar19 = { *(uParam4[iVar0 /*10*/]) + (uParam4[iVar0 /*10*/])->f_3 * Vector(0.5f, 0.5f, 0.5f) };
			if (system::vmag(*(uParam4[iVar0 /*10*/])) == 0f || system::vdist(vVar16, vParam0) < system::vdist(vVar19, vParam0))
			{
				Var6 = { Global_1311025[iVar1 /*8*/].f_1 };
				Var6.f_3 = { Global_1311025[iVar1 /*8*/].f_4 };
				Var6.f_6 = Global_1311025[iVar1 /*8*/].f_7;
				Var6.f_7 = { Global_2359395[iVar1 /*3*/] };
				func_981(&Var6, uParam4, iVar0);
				iVar0 = *uParam4;
			}
			iVar0++;
		}
		iVar1++;
	}
}

void func_981(var uParam0, var uParam1, int iParam2)//Position - 0x822D3
{
	Global_2411136 = { *(uParam1[iParam2 /*10*/]) };
	*(uParam1[iParam2 /*10*/]) = { *uParam0 };
	if (iParam2 + 1 < *uParam1)
	{
		func_981(&Global_2411136, uParam1, iParam2 + 1);
	}
}

void func_982(var uParam0, var uParam1, int iParam2)//Position - 0x82311
{
	Global_2411132 = { *(uParam1[iParam2 /*4*/]) };
	*(uParam1[iParam2 /*4*/]) = { *uParam0 };
	if (iParam2 + 1 < *uParam1)
	{
		func_982(&Global_2411132, uParam1, iParam2 + 1);
	}
}

void func_983(var uParam0, var uParam1)//Position - 0x8234B
{
	int iVar0;
	vector3 vVar1;
	float fVar4;
	
	if (Global_2404994.f_1815 > 0)
	{
		iVar0 = 0;
		while (iVar0 < Global_2404994.f_1815)
		{
			if (func_984(Global_2404994.f_1816[iVar0 /*4*/], uParam0))
			{
				fVar4 = Global_2404994.f_1816[iVar0 /*4*/].f_3;
				if (system::vmag(*uParam1) > 0.01f)
				{
					vVar1 = { *uParam1 - Global_2404994.f_1816[iVar0 /*4*/] };
					fVar4 = gameplay::get_heading_from_vector_2d(vVar1.x, vVar1.y);
				}
				func_944(Global_2404994.f_1816[iVar0 /*4*/], fVar4, uParam0, uParam1, 0, -1);
				Global_2404994.f_2044++;
			}
			iVar0++;
		}
	}
	if (uParam0->f_5 && Global_2404994.f_2349)
	{
		func_938(&(Global_2404994.f_2044.f_6[0 /*9*/]), &(Global_2404994.f_2044.f_6[1 /*9*/]), &(Global_2404994.f_2044.f_6[2 /*9*/]));
	}
}

int func_984(vector3 vParam0, var uParam3)//Position - 0x82438
{
	switch (uParam3->f_7)
	{
		case 0:
			return func_929(vParam0, uParam3->f_7, *uParam3, 0f, 0f, 0f, uParam3->f_4);
		
		case 1:
		case 2:
			return func_929(vParam0, uParam3->f_7, uParam3->f_8, uParam3->f_11, uParam3->f_14);
		
		default:
	}
	return false;
}

void func_985(vector3 vParam0, vector3 vParam3, var uParam6, var uParam7, var uParam8)//Position - 0x82495
{
	float fVar0;
	
	func_814(&vParam0, &vParam3);
	fVar0 = (vParam3.x - vParam0.x);
	*uParam6 = (vParam0.x + (fVar0 * 0.5f));
	uParam6->f_1 = vParam0.y;
	uParam6->f_2 = vParam0.y;
	*uParam7 = *uParam6;
	uParam7->f_1 = vParam3.y;
	uParam7->f_2 = vParam3.y;
	*uParam8 = (fVar0 * 0.5f);
}

void func_986()//Position - 0x824EB
{
	func_991();
	func_990();
	func_989();
	func_988();
	func_987();
}

void func_987()//Position - 0x82507
{
	struct<9> Var0;
	int iVar9;
	
	Var0.f_2 = 1176256410;
	iVar9 = 0;
	while (iVar9 < 128)
	{
		Global_2407344[iVar9 /*9*/] = { Var0 };
		iVar9++;
	}
}

void func_988()//Position - 0x8253F
{
	struct<10> Var0;
	int iVar10;
	
	iVar10 = 0;
	while (iVar10 < 4)
	{
		Global_2404994.f_2044.f_67[iVar10 /*10*/] = { Var0 };
		iVar10++;
	}
}

void func_989()//Position - 0x8256E
{
	struct<4> Var0;
	int iVar4;
	
	iVar4 = 0;
	while (iVar4 < 8)
	{
		Global_2404994.f_2044.f_34[iVar4 /*4*/] = { Var0 };
		iVar4++;
	}
}

void func_990()//Position - 0x8259C
{
	struct<9> Var0;
	int iVar9;
	
	Var0.f_2 = 1176256410;
	iVar9 = 0;
	while (iVar9 < 3)
	{
		Global_2404994.f_2044.f_6[iVar9 /*9*/] = { Var0 };
		iVar9++;
	}
}

void func_991()//Position - 0x825D8
{
	struct<6> Var0;
	
	Var0.f_3 = -1;
	Global_2404994.f_2044 = { Var0 };
}

var func_992()//Position - 0x825F6
{
	return Global_1310987.f_4;
}

void func_993(float fParam0, float fParam1)//Position - 0x82604
{
	func_995();
	func_994(fParam0, fParam1);
}

void func_994(float fParam0, float fParam1)//Position - 0x82618
{
	pathfind::add_navmesh_required_region(fParam0, fParam1, 0.1f);
	Global_2404994.f_2027 = script::get_id_of_this_thread();
	Global_2404994.f_2025 = 1;
	Global_2404994.f_2028 = network::get_network_time();
}

void func_995()//Position - 0x8264B
{
	if (Global_2404994.f_2025)
	{
		if (script::get_id_of_this_thread() == Global_2404994.f_2027)
		{
			pathfind::remove_navmesh_required_regions();
		}
		else
		{
			pathfind::remove_navmesh_required_regions();
		}
		Global_2404994.f_2025 = 0;
	}
}

void func_996(var uParam0, int iParam1)//Position - 0x8267E
{
	int iVar0;
	
	iVar0 = 0;
	while (iVar0 < 3)
	{
		if ((*iParam1 + iVar0) < 3)
		{
			*(uParam0[iVar0 /*3*/]) = { *(uParam0[(*iParam1 + iVar0) /*3*/]) };
			uParam0->f_10[iVar0] = uParam0->f_10[(*iParam1 + iVar0)];
			uParam0->f_14[iVar0] = uParam0->f_14[(*iParam1 + iVar0)];
		}
		else
		{
			*(uParam0[iVar0 /*3*/]) = { 0f, 0f, 0f };
			uParam0->f_10[iVar0] = 0f;
			uParam0->f_14[iVar0] = 0;
		}
		iVar0++;
	}
	Global_2404994.f_552 = 2;
	*iParam1 = 3;
}

bool func_997(int iParam0)//Position - 0x8270A
{
	if (iParam0 == 3 || iParam0 == 26)
	{
		return true;
	}
	return false;
}

Vector3 func_998(vector3 vParam0, vector3 vParam3, float fParam6, int iParam7)//Position - 0x82729
{
	int iVar0;
	vector3 vVar1;
	
	iVar0 = 0;
	while (iVar0 < 10)
	{
		switch (iParam7)
		{
			case 0:
				vVar1 = { func_1014(vParam0, fParam6, 0) };
				break;
			
			case 1:
				vVar1 = { func_1000(vParam0, vParam3) };
				break;
			
			case 2:
				vVar1 = { func_999(vParam0, vParam3, fParam6) };
				break;
		}
		if (func_1001(&vVar1))
		{
			return vVar1;
		}
		iVar0++;
	}
	return vVar1;
}

Vector3 func_999(vector3 vParam0, vector3 vParam3, float fParam6)//Position - 0x827AE
{
	vector3 vVar0;
	vector3 vVar3;
	
	vVar0 = { vParam3 - vParam0 };
	vVar3 = { func_493(vVar0, vVar0.x, vVar0.y, 0f) };
	vVar0 = { vVar0 / FtoV(system::vmag(vVar0)) };
	vVar3 = { vVar3 / FtoV(system::vmag(vVar3)) };
	vVar3 = { vVar3 * FtoV(gameplay::get_random_float_in_range((fParam6 * -0.5f), (fParam6 * 0.5f))) };
	vVar0 = { vVar0 * FtoV(gameplay::get_random_float_in_range(0f, system::vdist(vParam0, vParam3))) };
	return vParam0 + vVar0 + vVar3;
}

Vector3 func_1000(vector3 vParam0, vector3 vParam3)//Position - 0x82841
{
	return gameplay::get_random_float_in_range(vParam0.x, vParam3.x), gameplay::get_random_float_in_range(vParam0.y, vParam3.y), gameplay::get_random_float_in_range(vParam0.y, vParam3.y);
}

bool func_1001(var uParam0)//Position - 0x82869
{
	func_1002(uParam0);
	if (func_841(*uParam0, 6f, 1f, 1f, 5f, 0, 0, 0, 120f, 0, -1, 1, 0f, 0, 0, 0, 0))
	{
		return true;
	}
	return false;
}

void func_1002(var uParam0)//Position - 0x8289E
{
	float fVar0;
	
	func_1004(uParam0, 1, 1, 1, 1);
	fVar0 = pathfind::_0x29C24BFBED8AB8FB(*uParam0, uParam0->f_1);
	fVar0 = (fVar0 + 100f);
	if (uParam0->f_2 < fVar0)
	{
		uParam0->f_2 = fVar0;
	}
	func_1003(uParam0);
}

void func_1003(var uParam0)//Position - 0x828DD
{
	int iVar0;
	
	iVar0 = 0;
	while (iVar0 < 4)
	{
		if (object::is_point_in_angled_area(*uParam0, Global_2410885[iVar0 /*7*/], Global_2410885[iVar0 /*7*/].f_3, Global_2410885[iVar0 /*7*/].f_6, 0, true))
		{
			if (Global_2410885[iVar0 /*7*/].f_3.f_2 > Global_2410885[iVar0 /*7*/].f_2)
			{
				uParam0->f_2 = Global_2410885[iVar0 /*7*/].f_3.f_2;
			}
			else
			{
				uParam0->f_2 = Global_2410885[iVar0 /*7*/].f_2;
			}
		}
		iVar0++;
	}
}

void func_1004(var uParam0, int iParam1, int iParam2, int iParam3, int iParam4)//Position - 0x8295F
{
	if (iParam1)
	{
		if (func_853(Global_2404994.f_493))
		{
			if (func_836(uParam0, 1, 0, 0))
			{
			}
		}
	}
	if (iParam2)
	{
		if (func_834(uParam0, 1, 0))
		{
		}
	}
	if (iParam3)
	{
		if (func_822(uParam0, 1))
		{
		}
	}
	if (iParam4)
	{
		func_1006(uParam0, 7f, player::player_id(), 0);
	}
	func_1005(uParam0, 1120403456);
}

void func_1005(var uParam0, float fParam1)//Position - 0x829C3
{
	if (*uParam0 < -8000f)
	{
		*uParam0 = (-8000f + fParam1);
	}
	if (*uParam0 > 8000f)
	{
		*uParam0 = (8000f - fParam1);
	}
	if (uParam0->f_1 < -8000f)
	{
		uParam0->f_1 = (-8000f + fParam1);
	}
	if (uParam0->f_1 > 8000f)
	{
		uParam0->f_1 = (8000f - fParam1);
	}
}

void func_1006(var uParam0, float fParam1, int iParam2, int iParam3)//Position - 0x82A2B
{
	int iVar0;
	int iVar1;
	
	iVar0 = 0;
	while (iVar0 < 32)
	{
		if (!iParam2 == iVar0 || iParam3 == 1)
		{
			iVar1 = iVar0;
			if (func_387(iVar1, 0, 1) && func_387(iParam2, 0, 1))
			{
				if (Global_2415705.f_260[iVar0])
				{
					if (system::vdist(Global_2415705.f_130[iVar0 /*3*/], *uParam0) < fParam1)
					{
						func_826(uParam0, Global_2415705.f_130[iVar0 /*3*/], fParam1, 1036831949, 0, 0);
					}
				}
				else if (system::vdist(func_131(iVar1), *uParam0) < fParam1)
				{
					func_826(uParam0, func_131(iVar1), fParam1, 1036831949, 0, 0);
				}
			}
			else if (Global_2415705.f_260[iVar0])
			{
				if (system::vdist(Global_2415705.f_130[iVar0 /*3*/], *uParam0) < fParam1)
				{
					func_826(uParam0, Global_2415705.f_130[iVar0 /*3*/], fParam1, 1036831949, 0, 0);
				}
			}
			else if (func_387(iVar1, 0, 1))
			{
				if (system::vdist(func_131(iVar1), *uParam0) < fParam1)
				{
					func_826(uParam0, func_131(iVar1), fParam1, 1036831949, 0, 0);
				}
			}
		}
		iVar0++;
	}
}

bool func_1007()//Position - 0x82B61
{
	if (func_1085())
	{
		if (!Global_2404994.f_43.f_67 == 0)
		{
			if (func_897(Global_2404994.f_43.f_67))
			{
				return true;
			}
		}
	}
	return false;
}

void func_1008()//Position - 0x82B92
{
	if (!Global_2404994.f_638)
	{
		if (func_853(Global_2404994.f_525))
		{
			if (func_836(&(Global_2404994.f_525), 1, 0, 0))
			{
				Global_2404994.f_499.f_7 = 0;
			}
			if (Global_2404994.f_525.f_2 <= 0f)
			{
				if (func_1060(&(Global_2404994.f_525), 1))
				{
					Global_2404994.f_499.f_7 = 0;
				}
			}
		}
		if (func_834(&(Global_2404994.f_525), 1, 0))
		{
			Global_2404994.f_499.f_7 = 0;
		}
		if (func_822(&(Global_2404994.f_525), 1))
		{
			Global_2404994.f_499.f_7 = 0;
		}
	}
	if (func_1082())
	{
		Global_2404994.f_552 = 4;
	}
	else
	{
		Global_2404994.f_2200 = 1;
		Global_2404994.f_552 = 6;
	}
}

bool func_1009(vector3 vParam0)//Position - 0x82C4C
{
	int iVar0;
	
	iVar0 = pathfind::get_nth_closest_vehicle_node_id(vParam0, 1, 1, 1077936128, 0);
	if (pathfind::is_vehicle_node_id_valid(iVar0))
	{
		if (pathfind::_get_is_slow_road_flag(iVar0))
		{
			return true;
		}
	}
	return false;
}

Vector3 func_1010()//Position - 0x82C7D
{
	int iVar0;
	int iVar1;
	int iVar2;
	vector3 vVar3[32];
	int iVar100;
	
	iVar100 = 0;
	if (Global_1574259)
	{
		iVar0 = 0;
		iVar2 = 0;
	}
	else
	{
		iVar0 = gameplay::get_random_int_in_range(0, 32);
		iVar2 = iVar0;
	}
	while (iVar1 < 32)
	{
		if (system::vmag(Global_2404994.f_43.f_196[iVar2 /*3*/]) > 0f)
		{
			vVar3[iVar100 /*3*/] = { Global_2404994.f_43.f_196[iVar2 /*3*/] };
			iVar100++;
			if (func_1011(Global_2404994.f_43.f_196[iVar2 /*3*/]))
			{
				return Global_2404994.f_43.f_196[iVar2 /*3*/];
			}
		}
		iVar2++;
		if (iVar2 >= 32)
		{
			iVar2 = 0;
		}
		iVar1++;
	}
	if (iVar100 > 0)
	{
		iVar2 = gameplay::get_random_int_in_range(0, iVar100);
		return vVar3[iVar2 /*3*/];
	}
	return Global_2412527;
}

bool func_1011(vector3 vParam0)//Position - 0x82D44
{
	if (func_804(vParam0, 0.5f, player::player_id(), 0, 0) || !func_841(vParam0, 3f, 1f, 1f, 5f, 0, 0, 0, 0f, 1, -1, 0, 0f, 1, 0f, 0, 0))
	{
		return false;
	}
	return true;
}

Vector3 func_1012(vector3 vParam0, float fParam3)//Position - 0x82D86
{
	vector3 vVar0;
	float fVar3;
	
	vVar0 = { 0f, 1f, 0f };
	fVar3 = (IntToFloat(player::player_id()) * (360f / 32f));
	func_470(&vVar0, 0f, 0f, fVar3);
	vVar0 = { vVar0 * Vector(fParam3, fParam3, fParam3) };
	return vParam0 + vVar0;
}

int func_1013(int iParam0, int iParam1)//Position - 0x82DC7
{
	int iVar0;
	float fVar1;
	float fVar2;
	int iVar3;
	int iVar4;
	vector3 vVar5;
	vector3 vVar8;
	
	fVar2 = 999999.9f;
	iVar3 = -1;
	vVar5 = { entity::get_entity_coords(player::get_player_ped(iParam0), 0) };
	iVar0 = 0;
	while (iVar0 < 32)
	{
		iVar4 = iVar0;
		if (!iParam0 == iVar4)
		{
			if (func_387(iVar4, iParam1, 1))
			{
				if (func_229(iParam0, iVar4))
				{
					vVar8 = { entity::get_entity_coords(player::get_player_ped(iVar4), 0) };
					fVar1 = system::vdist(vVar5, vVar8);
					if (fVar1 < fVar2)
					{
						iVar3 = iVar0;
						fVar2 = fVar1;
					}
				}
			}
		}
		iVar0++;
	}
	return iVar3;
}

Vector3 func_1014(vector3 vParam0, float fParam3, float fParam4)//Position - 0x82E4E
{
	vector3 vVar0;
	
	vVar0 = { 0f, gameplay::get_random_float_in_range(fParam4, fParam3), 0f };
	func_470(&vVar0, 0f, 0f, gameplay::get_random_float_in_range(0f, 360f));
	return vParam0 + vVar0;
}

Vector3 func_1015()//Position - 0x82E7F
{
	vector3 vVar0;
	int iVar3;
	int iVar4;
	int iVar5;
	
	iVar4 = 0;
	while (iVar4 < 32)
	{
		iVar5 = iVar4;
		if (func_387(iVar5, 1, 1))
		{
			if (!iVar5 == player::player_id())
			{
				if (network::_0x9DE986FC9A87C474(player::player_id(), iVar5))
				{
					vVar0 = { vVar0 + func_131(iVar5) };
					iVar3++;
				}
			}
		}
		iVar4++;
	}
	if (iVar3 > 0)
	{
		vVar0 = { vVar0 / FtoV(system::to_float(iVar3)) };
	}
	else
	{
		vVar0 = { func_131(player::player_id()) };
	}
	return vVar0;
}

void func_1016(int iParam0, int iParam1, var uParam2, int iParam3, int iParam4)//Position - 0x82EFF
{
	struct<6> Var0[2];
	vector3 vVar13;
	
	Var0[0 /*6*/] = { func_1019(iParam3, iParam4) };
	Var0[1 /*6*/] = { func_1019(iParam0, iParam4) };
	*uParam2 = { func_1017(iParam1, iParam3) };
	vVar13 = { *uParam2 - Var0[0 /*6*/] };
	vVar13 = { func_326(vVar13, -Var0[0 /*6*/].f_3.f_2) };
	vVar13 = { func_326(vVar13, Var0[1 /*6*/].f_3.f_2) };
	*uParam2 = { object::_get_object_offset_from_coords(Var0[1 /*6*/], 0f, vVar13) };
	switch (iParam1)
	{
		case 6:
		case 2:
		case 9:
		case 10:
		case 11:
		case 12:
		case 13:
		case 14:
		case 34:
		case 35:
		case 36:
		case 38:
		case 39:
		case 120:
		case 121:
		case 125:
		case 40:
		case 41:
		case 43:
		case 44:
		case 45:
		case 42:
		case 46:
		case 47:
		case 48:
		case 49:
		case 50:
		case 51:
		case 52:
		case 53:
		case 54:
		case 55:
		case 56:
		case 64:
		case 65:
		case 57:
		case 58:
		case 59:
		case 60:
		case 61:
		case 62:
		case 63:
		case 66:
		case 67:
		case 68:
		case 109:
		case 69:
		case 70:
		case 71:
		case 72:
		case 73:
		case 74:
		case 75:
		case 76:
		case 77:
		case 78:
		case 79:
		case 80:
		case 81:
		case 82:
		case 83:
		case 85:
		case 84:
		case 89:
		case 90:
		case 91:
		case 92:
		case 94:
		case 95:
		case 96:
		case 97:
		case 98:
		case 93:
		case 99:
		case 100:
		case 106:
		case 107:
		case 108:
		case 119:
		case 122:
		case 123:
		case 124:
		case 138:
		case 139:
		case 140:
		case 130:
		case 128:
		case 141:
		case 142:
		case 143:
		case 144:
		case 145:
		case 146:
		case 147:
		case 148:
		case 153:
		case 154:
		case 155:
		case 157:
		case 234:
		case 174:
		case 175:
		case 176:
		case 177:
		case 178:
		case 179:
		case 180:
		case 235:
		case 149:
		case 150:
		case 151:
		case 152:
		case 172:
		case 187:
		case 173:
		case 201:
		case 188:
		case 189:
		case 190:
		case 191:
		case 192:
		case 193:
		case 194:
		case 195:
		case 196:
		case 197:
		case 198:
		case 199:
		case 200:
		case 284:
		case 285:
		case 286:
		case 287:
		case 202:
		case 203:
		case 204:
		case 205:
		case 206:
		case 207:
		case 208:
		case 209:
		case 210:
		case 211:
		case 212:
		case 213:
		case 214:
		case 216:
		case 217:
		case 182:
		case 183:
		case 181:
		case 156:
		case 236:
		case 237:
		case 238:
		case 239:
		case 240:
		case 241:
		case 242:
		case 243:
		case 244:
		case 245:
		case 246:
		case 247:
		case 248:
		case 249:
		case 250:
		case 251:
		case 252:
		case 253:
		case 254:
		case 255:
		case 256:
		case 257:
		case 258:
		case 259:
		case 260:
		case 261:
		case 262:
		case 263:
		case 264:
		case 265:
		case 266:
		case 267:
		case 268:
		case 269:
		case 270:
		case 271:
		case 272:
		case 273:
		case 274:
		case 275:
			while (Var0[0 /*6*/].f_3.f_2 > 180f)
			{
				Var0[0 /*6*/].f_3.f_2 = (Var0[0 /*6*/].f_3.f_2 - 360f);
			}
			while (Var0[0 /*6*/].f_3.f_2 < -180f)
			{
				Var0[0 /*6*/].f_3.f_2 = (Var0[0 /*6*/].f_3.f_2 + 360f);
			}
			while (Var0[1 /*6*/].f_3.f_2 > 180f)
			{
				Var0[1 /*6*/].f_3.f_2 = (Var0[1 /*6*/].f_3.f_2 - 360f);
			}
			while (Var0[1 /*6*/].f_3.f_2 < -180f)
			{
				Var0[1 /*6*/].f_3.f_2 = (Var0[1 /*6*/].f_3.f_2 + 360f);
			}
			uParam2->f_3.f_2 = (uParam2->f_3.f_2 + (Var0[1 /*6*/].f_3.f_2 - Var0[0 /*6*/].f_3.f_2));
			while (uParam2->f_3.f_2 > 180f)
			{
				uParam2->f_3.f_2 = (uParam2->f_3.f_2 - 360f);
			}
			while (uParam2->f_3.f_2 < -180f)
			{
				uParam2->f_3.f_2 = (uParam2->f_3.f_2 + 360f);
			}
			break;
	}
	switch (iParam1)
	{
		case 278:
		case 279:
		case 280:
		case 281:
		case 282:
		case 283:
		case 300:
		case 301:
		case 302:
		case 303:
		case 304:
		case 306:
		case 305:
		case 308:
		case 309:
		case 312:
		case 313:
		case 314:
		case 315:
		case 316:
		case 317:
		case 318:
		case 319:
		case 320:
		case 321:
		case 322:
		case 323:
		case 324:
		case 325:
		case 326:
		case 327:
		case 328:
		case 329:
		case 307:
		case 331:
		case 332:
		case 333:
		case 334:
		case 310:
		case 335:
		case 336:
		case 337:
		case 338:
		case 339:
		case 311:
		case 340:
		case 435:
		case 436:
		case 437:
		case 470:
		case 477:
		case 504:
		case 507:
		case 510:
		case 513:
		case 528:
		case 531:
		case 534:
		case 537:
		case 540:
		case 547:
		case 445:
		case 446:
		case 447:
		case 448:
		case 449:
		case 450:
		case 471:
		case 472:
		case 478:
		case 479:
		case 505:
		case 506:
		case 508:
		case 509:
		case 511:
		case 512:
		case 514:
		case 515:
		case 529:
		case 530:
		case 532:
		case 533:
		case 535:
		case 536:
		case 538:
		case 539:
		case 541:
		case 542:
		case 548:
		case 549:
		case 432:
		case 433:
		case 434:
		case 451:
		case 452:
		case 453:
		case 454:
		case 455:
		case 456:
		case 459:
		case 460:
		case 461:
		case 462:
		case 463:
		case 464:
		case 560:
		case 546:
		case 587:
		case 588:
		case 589:
		case 590:
		case 591:
		case 592:
		case 501:
		case 502:
		case 500:
		case 616:
		case 615:
		case 612:
		case 629:
		case 630:
		case 631:
		case 714:
		case 633:
		case 634:
		case 635:
		case 636:
		case 637:
		case 638:
		case 639:
		case 640:
		case 643:
		case 644:
		case 641:
		case 642:
		case 646:
		case 645:
		case 647:
		case 648:
		case 649:
		case 650:
		case 666:
		case 667:
		case 668:
		case 669:
		case 670:
		case 671:
		case 673:
		case 674:
		case 675:
		case 676:
		case 677:
		case 689:
		case 690:
		case 691:
		case 692:
		case 693:
		case 694:
		case 695:
		case 696:
		case 697:
		case 698:
		case 699:
		case 700:
		case 701:
		case 702:
		case 703:
		case 704:
		case 705:
		case 706:
		case 707:
		case 708:
		case 709:
		case 710:
		case 711:
		case 712:
		case 713:
		case 632:
		case 738:
		case 739:
		case 740:
		case 741:
		case 742:
		case 743:
		case 744:
		case 745:
		case 746:
			while (Var0[0 /*6*/].f_3.f_2 > 180f)
			{
				Var0[0 /*6*/].f_3.f_2 = (Var0[0 /*6*/].f_3.f_2 - 360f);
			}
			while (Var0[0 /*6*/].f_3.f_2 < -180f)
			{
				Var0[0 /*6*/].f_3.f_2 = (Var0[0 /*6*/].f_3.f_2 + 360f);
			}
			while (Var0[1 /*6*/].f_3.f_2 > 180f)
			{
				Var0[1 /*6*/].f_3.f_2 = (Var0[1 /*6*/].f_3.f_2 - 360f);
			}
			while (Var0[1 /*6*/].f_3.f_2 < -180f)
			{
				Var0[1 /*6*/].f_3.f_2 = (Var0[1 /*6*/].f_3.f_2 + 360f);
			}
			uParam2->f_3.f_2 = (uParam2->f_3.f_2 + (Var0[1 /*6*/].f_3.f_2 - Var0[0 /*6*/].f_3.f_2));
			while (uParam2->f_3.f_2 > 180f)
			{
				uParam2->f_3.f_2 = (uParam2->f_3.f_2 - 360f);
			}
			while (uParam2->f_3.f_2 < -180f)
			{
				uParam2->f_3.f_2 = (uParam2->f_3.f_2 + 360f);
			}
			break;
	}
	switch (iParam1)
	{
		case 715:
		case 716:
		case 717:
		case 718:
		case 719:
		case 720:
		case 721:
		case 722:
		case 723:
		case 724:
		case 725:
		case 726:
		case 727:
		case 728:
		case 729:
		case 730:
		case 731:
		case 732:
		case 733:
		case 734:
		case 735:
		case 736:
		case 737:
		case 747:
		case 748:
		case 749:
		case 750:
		case 751:
		case 752:
		case 753:
		case 754:
		case 755:
		case 756:
		case 757:
		case 758:
		case 759:
		case 760:
		case 761:
		case 762:
		case 763:
		case 764:
		case 765:
		case 766:
		case 767:
		case 768:
		case 769:
		case 770:
		case 771:
		case 772:
		case 773:
		case 774:
		case 775:
		case 776:
		case 777:
		case 778:
		case 779:
		case 780:
		case 781:
		case 782:
		case 783:
		case 784:
		case 785:
		case 786:
		case 787:
		case 788:
		case 789:
		case 790:
		case 791:
		case 792:
		case 793:
		case 794:
		case 795:
		case 796:
		case 797:
		case 798:
		case 799:
		case 800:
		case 802:
		case 801:
		case 803:
		case 804:
		case 805:
		case 806:
		case 807:
		case 808:
		case 809:
		case 678:
		case 679:
		case 680:
		case 681:
		case 682:
		case 683:
		case 684:
		case 685:
		case 810:
		case 811:
		case 812:
		case 813:
		case 814:
		case 815:
		case 817:
		case 816:
		case 819:
		case 818:
		case 820:
		case 821:
		case 822:
		case 823:
		case 824:
		case 825:
		case 826:
		case 827:
		case 828:
		case 829:
		case 830:
		case 831:
		case 832:
		case 833:
		case 834:
		case 835:
		case 836:
		case 837:
		case 838:
		case 839:
		case 840:
		case 841:
		case 842:
		case 843:
		case 844:
		case 845:
		case 846:
		case 847:
		case 848:
		case 849:
		case 850:
		case 851:
		case 852:
		case 853:
		case 854:
		case 855:
		case 856:
		case 686:
		case 687:
		case 688:
			while (Var0[0 /*6*/].f_3.f_2 > 180f)
			{
				Var0[0 /*6*/].f_3.f_2 = (Var0[0 /*6*/].f_3.f_2 - 360f);
			}
			while (Var0[0 /*6*/].f_3.f_2 < -180f)
			{
				Var0[0 /*6*/].f_3.f_2 = (Var0[0 /*6*/].f_3.f_2 + 360f);
			}
			while (Var0[1 /*6*/].f_3.f_2 > 180f)
			{
				Var0[1 /*6*/].f_3.f_2 = (Var0[1 /*6*/].f_3.f_2 - 360f);
			}
			while (Var0[1 /*6*/].f_3.f_2 < -180f)
			{
				Var0[1 /*6*/].f_3.f_2 = (Var0[1 /*6*/].f_3.f_2 + 360f);
			}
			uParam2->f_3.f_2 = (uParam2->f_3.f_2 + (Var0[1 /*6*/].f_3.f_2 - Var0[0 /*6*/].f_3.f_2));
			while (uParam2->f_3.f_2 > 180f)
			{
				uParam2->f_3.f_2 = (uParam2->f_3.f_2 - 360f);
			}
			while (uParam2->f_3.f_2 < -180f)
			{
				uParam2->f_3.f_2 = (uParam2->f_3.f_2 + 360f);
			}
			break;
	}
	switch (iParam1)
	{
		case 857:
		case 858:
		case 859:
		case 860:
		case 861:
		case 862:
		case 863:
		case 864:
		case 865:
		case 866:
		case 867:
		case 868:
		case 869:
		case 870:
		case 871:
		case 872:
		case 873:
		case 874:
		case 875:
		case 876:
		case 877:
		case 878:
		case 879:
		case 880:
		case 881:
		case 882:
		case 883:
		case 884:
		case 888:
		case 889:
		case 890:
		case 891:
		case 651:
		case 652:
		case 653:
		case 654:
		case 655:
		case 656:
		case 657:
		case 658:
		case 659:
		case 660:
		case 661:
		case 662:
		case 663:
		case 664:
		case 665:
		case 887:
		case 894:
		case 895:
		case 896:
		case 897:
		case 898:
		case 899:
		case 900:
		case 901:
		case 902:
		case 903:
		case 904:
		case 905:
		case 906:
		case 907:
		case 908:
		case 911:
		case 913:
		case 914:
		case 915:
		case 916:
		case 917:
		case 918:
		case 919:
		case 920:
		case 921:
		case 922:
		case 923:
		case 924:
		case 925:
		case 926:
		case 927:
		case 928:
		case 929:
		case 930:
		case 931:
		case 932:
		case 954:
		case 955:
		case 956:
		case 957:
		case 958:
		case 959:
		case 968:
		case 969:
		case 970:
		case 971:
		case 972:
		case 973:
		case 974:
		case 975:
		case 976:
		case 977:
		case 978:
		case 979:
		case 980:
		case 981:
		case 982:
		case 983:
		case 984:
		case 985:
		case 986:
		case 987:
		case 988:
		case 989:
		case 990:
		case 1008:
		case 1009:
		case 1010:
		case 991:
		case 992:
		case 993:
		case 994:
		case 995:
		case 996:
		case 997:
		case 998:
		case 999:
		case 960:
		case 961:
		case 962:
		case 963:
		case 964:
		case 965:
		case 966:
		case 967:
		case 1000:
		case 1001:
		case 1002:
		case 1003:
		case 1004:
		case 1005:
		case 1006:
		case 1007:
		case 1011:
		case 1012:
		case 1013:
			while (Var0[0 /*6*/].f_3.f_2 > 180f)
			{
				Var0[0 /*6*/].f_3.f_2 = (Var0[0 /*6*/].f_3.f_2 - 360f);
			}
			while (Var0[0 /*6*/].f_3.f_2 < -180f)
			{
				Var0[0 /*6*/].f_3.f_2 = (Var0[0 /*6*/].f_3.f_2 + 360f);
			}
			while (Var0[1 /*6*/].f_3.f_2 > 180f)
			{
				Var0[1 /*6*/].f_3.f_2 = (Var0[1 /*6*/].f_3.f_2 - 360f);
			}
			while (Var0[1 /*6*/].f_3.f_2 < -180f)
			{
				Var0[1 /*6*/].f_3.f_2 = (Var0[1 /*6*/].f_3.f_2 + 360f);
			}
			uParam2->f_3.f_2 = (uParam2->f_3.f_2 + (Var0[1 /*6*/].f_3.f_2 - Var0[0 /*6*/].f_3.f_2));
			while (uParam2->f_3.f_2 > 180f)
			{
				uParam2->f_3.f_2 = (uParam2->f_3.f_2 - 360f);
			}
			while (uParam2->f_3.f_2 < -180f)
			{
				uParam2->f_3.f_2 = (uParam2->f_3.f_2 + 360f);
			}
			break;
	}
}

struct<6> func_1017(int iParam0, int iParam1)//Position - 0x84487
{
	struct<6> Var0;
	int iVar6;
	int iVar23;
	
	iVar23 = 0;
	if (func_1018(iParam1, &iVar6))
	{
		iVar23 = 1;
	}
	if (iVar23 && gameplay::_0xB335F761606DB47C(&Var0, &(Var0.f_3), iParam0, iVar6))
	{
		return Var0;
	}
	return Var0;
}

bool func_1018(int iParam0, var uParam1)//Position - 0x844C9
{
	switch (iParam0)
	{
		case -1:
		case 1:
			*uParam1 = 0;
			StringCopy(&(uParam1->f_1), "BaseElementLocationsMap", 64);
			return true;
			break;
		
		case 61:
			*uParam1 = 1;
			StringCopy(&(uParam1->f_1), "BaseElementLocationsMap_HighApt", 64);
			return true;
			break;
		
		case 73:
			*uParam1 = 2;
			StringCopy(&(uParam1->f_1), "ExtraBaseElementLocMap1", 64);
			return true;
			break;
		
		case 77:
			*uParam1 = 3;
			StringCopy(&(uParam1->f_1), "ExtraBaseElementLocMap2", 64);
			return true;
			break;
		
		case 83:
			*uParam1 = 4;
			StringCopy(&(uParam1->f_1), "ExtraBaseElementLocMap3", 64);
			return true;
			break;
		
		case 86:
			*uParam1 = 5;
			StringCopy(&(uParam1->f_1), "ExtraBaseElementLocMap4", 64);
			return true;
			break;
		
		case 88:
			*uParam1 = 6;
			StringCopy(&(uParam1->f_1), "ExtraBaseElementLocMap5", 64);
			return true;
			break;
		
		case 91:
			*uParam1 = 7;
			StringCopy(&(uParam1->f_1), "ExtraBaseElementLocMap6", 64);
			return true;
			break;
		
		case 97:
			*uParam1 = 8;
			StringCopy(&(uParam1->f_1), "ExtraBaseElementLocMap7", 64);
			return true;
			break;
		
		case 109:
			*uParam1 = 9;
			StringCopy(&(uParam1->f_1), "ExtraBaseElementLocMap8", 64);
			return true;
			break;
	}
	return false;
}

struct<6> func_1019(int iParam0, int iParam1)//Position - 0x845EF
{
	struct<6> Var0;
	
	switch (iParam0)
	{
		case -1:
			Var0 = { -794.9184f, 339.6266f, 200.4135f };
			Var0.f_3 = { 0f, 0f, 180f };
			break;
		
		case 1:
			Var0 = { -794.9184f, 339.6266f, 200.4135f };
			Var0.f_3 = { 0f, 0f, 180f };
			break;
		
		case 2:
			Var0 = { -761.0982f, 317.6259f, 169.5963f };
			Var0.f_3 = { 0f, 0f, 0f };
			break;
		
		case 3:
			Var0 = { -761.1888f, 317.6295f, 216.0503f };
			Var0.f_3 = { 0f, 0f, 0f };
			break;
		
		case 4:
			Var0 = { -795.3856f, 340.0188f, 152.7941f };
			Var0.f_3 = { 0f, 0f, 180f };
			break;
		
		case 61:
			Var0 = { -778.5056f, 332.3779f, 212.1968f };
			Var0.f_3 = { 0f, 0f, 90f };
			break;
		
		case 5:
			Var0 = { -258.1807f, -950.6853f, 70.0239f };
			Var0.f_3 = { 0f, 0f, 70f };
			break;
		
		case 6:
			Var0 = { -285.0051f, -957.6552f, 85.3035f };
			Var0.f_3 = { 0f, 0f, -110f };
			break;
		
		case 7:
			Var0 = { -1471.882f, -530.7484f, 62.34918f };
			Var0.f_3 = { 0f, 0f, -145f };
			break;
		
		case 34:
			Var0 = { -1471.882f, -530.7484f, 49.72156f };
			Var0.f_3 = { 0f, 0f, -145f };
			break;
		
		case 62:
			Var0 = { -1463.15f, -540.2369f, 74.2439f };
			Var0.f_3 = { 0f, 0f, -145f };
			break;
		
		case 35:
			Var0 = { -885.3702f, -451.4775f, 119.327f };
			Var0.f_3 = { 0f, 0f, 27.55617f };
			break;
		
		case 36:
			Var0 = { -913.0385f, -438.4284f, 114.3997f };
			Var0.f_3 = { 0f, 0f, -153.3093f };
			break;
		
		case 37:
			Var0 = { -892.5499f, -430.4789f, 88.25368f };
			Var0.f_3 = { 0f, 0f, 116.9193f };
			break;
		
		case 38:
			Var0 = { -35.0462f, -576.317f, 82.90739f };
			Var0.f_3 = { 0f, 0f, 160f };
			break;
		
		case 39:
			Var0 = { -10.3788f, -590.7431f, 93.02542f };
			Var0.f_3 = { 0f, 0f, 70f };
			break;
		
		case 65:
			Var0 = { -22.2487f, -589.1461f, 80.2305f };
			Var0.f_3 = { 0f, 0f, 69.88f };
			break;
		
		case 40:
			Var0 = { -900.6311f, -376.7462f, 78.27306f };
			Var0.f_3 = { 0f, 0f, 26.92611f };
			break;
		
		case 41:
			Var0 = { -929.483f, -374.5104f, 102.2329f };
			Var0.f_3 = { 0f, 0f, -152.5531f };
			break;
		
		case 63:
			Var0 = { -914.4202f, -375.8189f, 114.4743f };
			Var0.f_3 = { 0f, 0f, -63f };
			break;
		
		case 42:
			Var0 = { -617.1647f, 64.6042f, 100.8196f };
			Var0.f_3 = { 0f, 0f, 180f };
			break;
		
		case 43:
			Var0 = { -584.2015f, 42.7133f, 86.4187f };
			Var0.f_3 = { 0f, 0f, 0f };
			break;
		
		case 64:
			Var0 = { -609.5665f, 50.2203f, 98.3998f };
			Var0.f_3 = { 0f, 0f, -90f };
			break;
		
		case 73:
			Var0 = { -171.3969f, 494.2671f, 134.4935f };
			Var0.f_3 = { 0f, 0f, 11f };
			break;
		
		case 74:
			Var0 = { 339.4982f, 434.0887f, 146.2206f };
			Var0.f_3 = { 0f, 0f, -63.5f };
			break;
		
		case 75:
			Var0 = { -761.3884f, 615.7333f, 140.9805f };
			Var0.f_3 = { 0f, 0f, -71.5f };
			break;
		
		case 76:
			Var0 = { -678.1752f, 591.0076f, 142.2196f };
			Var0.f_3 = { 0f, 0f, 40.5f };
			break;
		
		case 77:
			Var0 = { 120.0541f, 553.793f, 181.0943f };
			Var0.f_3 = { 0f, 0f, 6f };
			break;
		
		case 78:
			Var0 = { -571.4039f, 655.2008f, 142.6293f };
			Var0.f_3 = { 0f, 0f, -14.5f };
			break;
		
		case 79:
			Var0 = { -742.2565f, 587.6547f, 143.0577f };
			Var0.f_3 = { 0f, 0f, -29f };
			break;
		
		case 80:
			Var0 = { -857.2222f, 685.051f, 149.6502f };
			Var0.f_3 = { 0f, 0f, 4.5f };
			break;
		
		case 81:
			Var0 = { -1287.65f, 443.2707f, 94.6919f };
			Var0.f_3 = { 0f, 0f, 0f };
			break;
		
		case 82:
			Var0 = { 374.2012f, 416.9688f, 142.6977f };
			Var0.f_3 = { 0f, 0f, -14f };
			break;
		
		case 83:
			Var0 = { -787.7805f, 334.9232f, 186.1134f };
			Var0.f_3 = { 0f, 0f, 90f };
			break;
		
		case 84:
			Var0 = { -787.7805f, 334.9232f, 215.8384f };
			Var0.f_3 = { 0f, 0f, 90f };
			break;
		
		case 85:
			Var0 = { -773.2258f, 322.8252f, 194.8862f };
			Var0.f_3 = { 0f, 0f, -90f };
			break;
		
		case 86:
			Var0 = { -1573.098f, -4085.806f, 9.7851f };
			Var0.f_3 = { 0f, 0f, 162f };
			break;
		
		case 8:
		case 9:
		case 10:
		case 11:
		case 12:
		case 13:
		case 14:
		case 15:
		case 16:
		case 66:
		case 67:
		case 68:
		case 69:
			Var0 = { 342.8157f, -997.4288f, -100f };
			Var0.f_3 = { 0f, 0f, 0f };
			break;
		
		case 17:
		case 18:
		case 19:
		case 20:
		case 21:
		case 22:
		case 23:
		case 70:
		case 71:
		case 72:
			Var0 = { 260.3297f, -997.4288f, -100f };
			Var0.f_3 = { 0f, 0f, 0f };
			break;
		
		case 87:
			Var0 = { -1572.187f, -570.8315f, 109.9879f };
			Var0.f_3 = { 0f, 0f, -54f };
			break;
		
		case 88:
			Var0 = { -1383.954f, -476.7112f, 73.507f };
			Var0.f_3 = { 0f, 0f, 8f };
			break;
		
		case 89:
			Var0 = { -138.0029f, -629.739f, 170.2854f };
			Var0.f_3 = { 0f, 0f, -84f };
			break;
		
		case 90:
			Var0 = { -74.8895f, -817.6883f, 244.8508f };
			Var0.f_3 = { 0f, 0f, 70f };
			break;
		
		case 91:
		case 92:
		case 93:
		case 94:
		case 95:
		case 96:
			Var0 = { 1100.764f, -3159.384f, -34.9342f };
			Var0.f_3 = { 0f, 0f, 0f };
			break;
		
		case 97:
		case 98:
		case 99:
		case 100:
		case 101:
		case 102:
			Var0 = { 1005.806f, -3157.67f, -36.0897f };
			Var0.f_3 = { 0f, 0f, 0f };
			break;
		
		case 103:
			if (!iParam1)
			{
				Var0 = { -1576.571f, -569.7595f, 85.5f };
				Var0.f_3 = { 0f, 0f, 36.1f };
			}
			else
			{
				Var0 = { -1578.022f, -576.4251f, 104.2f };
				Var0.f_3 = { 0f, 0f, -144.04f };
			}
			break;
		
		case 104:
			if (!iParam1)
			{
				Var0 = { -1571.254f, -566.5865f, 85.5f };
				Var0.f_3 = { 0f, 0f, -53.9f };
			}
			else
			{
				Var0 = { -1578.022f, -576.4251f, 104.2f };
				Var0.f_3 = { 0f, 0f, -144.04f };
			}
			break;
		
		case 105:
			if (!iParam1)
			{
				Var0 = { -1568.098f, -571.9171f, 85.5f };
				Var0.f_3 = { 0f, 0f, -143.9f };
			}
			else
			{
				Var0 = { -1578.022f, -576.4251f, 104.2f };
				Var0.f_3 = { 0f, 0f, -144.04f };
			}
			break;
		
		case 106:
			if (!iParam1)
			{
				Var0 = { -1384.518f, -475.8657f, 56.1f };
				Var0.f_3 = { 0f, 0f, 98.7f };
			}
			else
			{
				Var0 = { -1391.245f, -473.9638f, 77.2f };
				Var0.f_3 = { 0f, 0f, 98.86f };
			}
			break;
		
		case 107:
			if (!iParam1)
			{
				Var0 = { -1384.538f, -475.8829f, 48.1f };
				Var0.f_3 = { 0f, 0f, 98.7f };
			}
			else
			{
				Var0 = { -1391.245f, -473.9638f, 77.2f };
				Var0.f_3 = { 0f, 0f, 98.86f };
			}
			break;
		
		case 108:
			if (!iParam1)
			{
				Var0 = { -1378.994f, -477.2481f, 56.1f };
				Var0.f_3 = { 0f, 0f, -81.1f };
			}
			else
			{
				Var0 = { -1391.245f, -473.9638f, 77.2f };
				Var0.f_3 = { 0f, 0f, 98.86f };
			}
			break;
		
		case 109:
			if (!iParam1)
			{
				Var0 = { -186.5683f, -576.4624f, 135f };
				Var0.f_3 = { 0f, 0f, 96.16f };
			}
			else
			{
				Var0 = { -146.6167f, -596.6301f, 166f };
				Var0.f_3 = { 0f, 0f, -140f };
			}
			break;
		
		case 110:
			if (!iParam1)
			{
				Var0 = { -113.886f, -564.3862f, 135f };
				Var0.f_3 = { 0f, 0f, 110.96f };
			}
			else
			{
				Var0 = { -146.6167f, -596.6301f, 166f };
				Var0.f_3 = { 0f, 0f, -140f };
			}
			break;
		
		case 111:
			if (!iParam1)
			{
				Var0 = { -134.6568f, -635.1774f, 135f };
				Var0.f_3 = { 0f, 0f, -9.04f };
			}
			else
			{
				Var0 = { -146.6167f, -596.6301f, 166f };
				Var0.f_3 = { 0f, 0f, -140f };
			}
			break;
		
		case 112:
			if (!iParam1)
			{
				Var0 = { -79.0479f, -822.6393f, 221f };
				Var0.f_3 = { 0f, 0f, 70f };
			}
			else
			{
				Var0 = { -73.904f, -821.6204f, 284f };
				Var0.f_3 = { 0f, 0f, -110f };
			}
			break;
		
		case 113:
			if (!iParam1)
			{
				Var0 = { -70.3086f, -819.5784f, 221f };
				Var0.f_3 = { 0f, 0f, 160f };
			}
			else
			{
				Var0 = { -73.904f, -821.6204f, 284f };
				Var0.f_3 = { 0f, 0f, -110f };
			}
			break;
		
		case 114:
			if (!iParam1)
			{
				Var0 = { -79.9861f, -818.425f, 221f };
				Var0.f_3 = { 0f, 0f, -20f };
			}
			else
			{
				Var0 = { -73.904f, -821.6204f, 284f };
				Var0.f_3 = { 0f, 0f, -110f };
			}
			break;
	}
	return Var0;
}

int func_1020(int iParam0)//Position - 0x851A5
{
	switch (iParam0)
	{
		case 1:
		case 2:
		case 3:
		case 4:
		case 5:
		case 6:
		case 7:
			return 1;
			break;
		
		case 8:
		case 9:
		case 10:
		case 11:
		case 12:
		case 13:
		case 14:
		case 15:
		case 16:
		case 69:
		case 68:
		case 66:
		case 67:
			return 8;
			break;
		
		case 17:
		case 18:
		case 19:
		case 20:
		case 21:
		case 22:
		case 23:
		case 70:
		case 71:
		case 72:
			return 17;
			break;
		
		case 61:
		case 62:
		case 63:
		case 64:
		case 65:
			return 61;
			break;
		
		case 73:
		case 74:
		case 75:
		case 76:
			return 73;
			break;
		
		case 77:
		case 78:
		case 79:
		case 80:
		case 81:
		case 82:
			return 77;
			break;
		
		case 83:
		case 84:
		case 85:
			return 83;
			break;
		
		case 86:
			return 86;
			break;
		
		case 87:
		case 88:
		case 89:
		case 90:
			return 88;
			break;
		
		case 91:
		case 92:
		case 93:
		case 94:
		case 95:
		case 96:
			return 91;
			break;
		
		case 97:
		case 98:
		case 99:
		case 100:
		case 101:
		case 102:
			return 97;
			break;
		
		case 103:
		case 106:
		case 109:
		case 112:
		case 104:
		case 107:
		case 110:
		case 113:
		case 105:
		case 108:
		case 111:
		case 114:
			return 109;
			break;
	}
	return -1;
}

void func_1021(int iParam0)//Position - 0x853E2
{
	Global_2097152[func_752() /*10730*/].f_7546.f_1029 = iParam0;
}

void func_1022(int iParam0, var uParam1, var uParam2)//Position - 0x853FD
{
	struct<4> Var0[3];
	int iVar13;
	
	func_1023(iParam0, &Var0, 1);
	iVar13 = gameplay::get_random_int_in_range(0, 3);
	*uParam1 = { Var0[iVar13 /*4*/] };
	*uParam2 = Var0[iVar13 /*4*/].f_3;
}

void func_1023(int iParam0, var uParam1, int iParam2)//Position - 0x85432
{
	int iVar0;
	
	if (func_466(iParam0))
	{
		if (!iParam2)
		{
			iVar0 = 0;
			while (iVar0 < 30)
			{
				*(uParam1[iVar0 /*4*/]) = { func_1025(iParam0, Global_4007946[iVar0 /*4*/]) };
				(uParam1[iVar0 /*4*/])->f_3 = func_1024(iParam0, Global_4007946[iVar0 /*4*/].f_3);
				iVar0++;
			}
		}
		else
		{
			iVar0 = 0;
			while (iVar0 < 3)
			{
				*(uParam1[iVar0 /*4*/]) = { func_1025(iParam0, Global_4008067[iVar0 /*4*/]) };
				(uParam1[iVar0 /*4*/])->f_3 = func_1024(iParam0, Global_4008067[iVar0 /*4*/].f_3);
				iVar0++;
			}
		}
	}
}

float func_1024(int iParam0, float fParam1)//Position - 0x854D4
{
	float fVar0;
	
	fVar0 = func_471(iParam0);
	fParam1 = (fParam1 + fVar0);
	while (fParam1 < 0f)
	{
		fParam1 = (fParam1 + 360f);
	}
	while (fParam1 >= 360f)
	{
		fParam1 = (fParam1 - 360f);
	}
	return fParam1;
}

Vector3 func_1025(int iParam0, vector3 vParam1)//Position - 0x85519
{
	return object::_get_object_offset_from_coords(func_463(iParam0), func_471(iParam0), vParam1);
}

var func_1026()//Position - 0x85535
{
	return Global_2408497;
}

void func_1027(int iParam0, int iParam1, var uParam2, var uParam3, int iParam4)//Position - 0x85541
{
	if (!iParam4)
	{
		*uParam2 = { func_1025(iParam1, Global_4007839[iParam0 /*10*/]) };
		*uParam3 = func_1024(iParam1, Global_4007839[iParam0 /*10*/].f_3);
	}
	else if (func_1028(iParam0, 1))
	{
		*uParam2 = { Global_4006218[iParam1 /*45*/].f_32[2 /*4*/] };
		*uParam3 = Global_4006218[iParam1 /*45*/].f_32[2 /*4*/].f_3;
	}
	else
	{
		*uParam2 = { Global_4006218[iParam1 /*45*/].f_32[1 /*4*/] };
		*uParam3 = Global_4006218[iParam1 /*45*/].f_32[1 /*4*/].f_3;
	}
}

bool func_1028(var uParam0, int iParam1)//Position - 0x855D0
{
	if ((Global_4007839[uParam0 /*10*/].f_6 && iParam1) != 0)
	{
		return true;
	}
	return false;
}

var func_1029()//Position - 0x855EE
{
	return func_1037(player::player_id());
}

Vector3 func_1030(int iParam0)//Position - 0x855FE
{
	vector3 vVar0;
	
	if (ui::does_blip_exist(Global_2414704[iParam0]))
	{
		vVar0 = { ui::get_blip_coords(Global_2414704[iParam0]) };
	}
	else if (ui::does_blip_exist(Global_2414704.f_33[iParam0]) && !iParam0 == Global_2433082)
	{
		vVar0 = { ui::get_blip_coords(Global_2414704.f_33[iParam0]) };
	}
	if (system::vmag(vVar0) > 0f)
	{
		return vVar0;
	}
	return func_1031(iParam0);
}

Vector3 func_1031(int iParam0)//Position - 0x85672
{
	int iVar0;
	
	if (Global_1589933[iParam0 /*601*/].f_257.f_15 > 0)
	{
		return func_1034(func_1035(Global_1589933[player::player_id() /*601*/].f_257.f_15));
	}
	else
	{
		func_1032(func_131(iParam0), &iVar0);
		if (iVar0 > 0)
		{
			return func_1034(func_1035(iVar0));
		}
	}
	if (func_440(iParam0))
	{
		return Global_1760739.f_20[Global_2421621[iParam0 /*358*/].f_312.f_1 /*3*/];
	}
	return func_131(iParam0);
}

void func_1032(vector3 vParam0, var uParam3)//Position - 0x856F3
{
	int iVar0;
	int iVar1;
	
	iVar0 = 1;
	iVar1 = 7;
	while (iVar0 <= iVar1)
	{
		if (func_1033(vParam0, iVar0))
		{
			*uParam3 = iVar0;
			return;
		}
		iVar0++;
	}
	iVar0 = 34;
	iVar1 = 43;
	while (iVar0 <= iVar1)
	{
		if (func_1033(vParam0, iVar0))
		{
			*uParam3 = iVar0;
			return;
		}
		iVar0++;
	}
	iVar0 = 61;
	iVar1 = 65;
	while (iVar0 <= iVar1)
	{
		if (func_1033(vParam0, iVar0))
		{
			*uParam3 = iVar0;
			return;
		}
		iVar0++;
	}
	iVar0 = 8;
	if (func_1033(vParam0, iVar0))
	{
		if (Global_1589933[player::player_id() /*601*/].f_257.f_15 > 0)
		{
			*uParam3 = Global_1589933[player::player_id() /*601*/].f_257.f_15;
		}
		else if (Global_2404580.f_1 > 0)
		{
			*uParam3 = Global_2404580.f_1;
		}
		else
		{
			*uParam3 = iVar0;
		}
		return;
	}
	iVar0 = 17;
	if (func_1033(vParam0, iVar0))
	{
		if (Global_1589933[player::player_id() /*601*/].f_257.f_15 > 0)
		{
			*uParam3 = Global_1589933[player::player_id() /*601*/].f_257.f_15;
		}
		else if (Global_2404580.f_1 > 0)
		{
			*uParam3 = Global_2404580.f_1;
		}
		else
		{
			*uParam3 = iVar0;
		}
		return;
	}
}

bool func_1033(vector3 vParam0, int iParam3)//Position - 0x85832
{
	int iVar0;
	
	if (iParam3 != 999)
	{
		if ((object::is_point_in_angled_area(vParam0, Global_1049427[iParam3 /*1942*/].f_146.f_57[0 /*8*/], Global_1049427[iParam3 /*1942*/].f_146.f_57[0 /*8*/].f_3, Global_1049427[iParam3 /*1942*/].f_146.f_57[0 /*8*/].f_6, 0, true) || (Global_1049427[iParam3 /*1942*/].f_146.f_57[1 /*8*/].f_6 != 0f && object::is_point_in_angled_area(vParam0, Global_1049427[iParam3 /*1942*/].f_146.f_57[1 /*8*/], Global_1049427[iParam3 /*1942*/].f_146.f_57[1 /*8*/].f_3, Global_1049427[iParam3 /*1942*/].f_146.f_57[1 /*8*/].f_6, 0, true))) || (Global_1049427[iParam3 /*1942*/].f_146.f_57[2 /*8*/].f_6 != 0f && object::is_point_in_angled_area(vParam0, Global_1049427[iParam3 /*1942*/].f_146.f_57[2 /*8*/], Global_1049427[iParam3 /*1942*/].f_146.f_57[2 /*8*/].f_3, Global_1049427[iParam3 /*1942*/].f_146.f_57[2 /*8*/].f_6, 0, true)))
		{
			return true;
		}
	}
	else
	{
		iVar0 = 1;
		while (iVar0 <= 7)
		{
			if (func_1033(vParam0, iVar0))
			{
				return true;
			}
			iVar0++;
		}
		iVar0 = 34;
		while (iVar0 <= 43)
		{
			if (func_1033(vParam0, iVar0))
			{
				return true;
			}
			iVar0++;
		}
		iVar0 = 61;
		while (iVar0 <= 65)
		{
			if (func_1033(vParam0, iVar0))
			{
				return true;
			}
			iVar0++;
		}
		iVar0 = 73;
		while (iVar0 <= 76)
		{
			if (func_1033(vParam0, iVar0))
			{
				return true;
			}
			iVar0++;
		}
		iVar0 = 77;
		while (iVar0 <= 82)
		{
			if (func_1033(vParam0, iVar0))
			{
				return true;
			}
			iVar0++;
		}
		iVar0 = 83;
		while (iVar0 <= 85)
		{
			if (func_1033(vParam0, iVar0))
			{
				return true;
			}
			iVar0++;
		}
		iVar0 = 87;
		while (iVar0 <= 90)
		{
			if (func_1033(vParam0, iVar0))
			{
				return true;
			}
			iVar0++;
		}
		if (func_1033(vParam0, 8))
		{
			return true;
		}
		if (func_1033(vParam0, 17))
		{
			return true;
		}
	}
	return false;
}

Vector3 func_1034(int iParam0)//Position - 0x85A74
{
	vector3 vVar0;
	
	switch (iParam0)
	{
		case 1:
			vVar0 = { -773.4775f, 310.6321f, 84.6981f };
			break;
		
		case 2:
			vVar0 = { -252.5713f, -949.9199f, 30.221f };
			break;
		
		case 3:
			vVar0 = { -1443.094f, -544.7684f, 33.7424f };
			break;
		
		case 4:
			vVar0 = { -913.85f, -455.1392f, 38.5999f };
			break;
		
		case 5:
			vVar0 = { -47.3145f, -585.9766f, 36.9593f };
			break;
		
		case 6:
			vVar0 = { -932.7474f, -383.9246f, 37.9613f };
			break;
		
		case 7:
			vVar0 = { -619.1315f, 37.8841f, 42.5883f };
			break;
		
		case 8:
			vVar0 = { 284.9614f, -159.9891f, 63.6221f };
			break;
		
		case 9:
			vVar0 = { 2.8889f, 35.7762f, 70.5349f };
			break;
		
		case 10:
			vVar0 = { 9.74f, 84.6906f, 77.3975f };
			break;
		
		case 11:
			vVar0 = { -512.1465f, 111.2223f, 62.351f };
			break;
		
		case 12:
			vVar0 = { -197.3405f, 88.1053f, 68.7422f };
			break;
		
		case 13:
			vVar0 = { -628.3212f, 165.8364f, 60.1651f };
			break;
		
		case 14:
			vVar0 = { -973.3757f, -1429.425f, 6.6791f };
			break;
		
		case 15:
			vVar0 = { -829.1362f, -855.0104f, 18.6297f };
			break;
		
		case 16:
			vVar0 = { -757.5739f, -755.5591f, 25.5697f };
			break;
		
		case 17:
			vVar0 = { -45.1289f, -57.0925f, 62.2531f };
			break;
		
		case 18:
			vVar0 = { -206.7293f, 184.142f, 79.3279f };
			break;
		
		case 19:
			vVar0 = { -811.7045f, -984.1961f, 13.1538f };
			break;
		
		case 20:
			vVar0 = { -664.0032f, -853.6744f, 23.4325f };
			break;
		
		case 21:
			vVar0 = { -1534.025f, -324.5247f, 46.5237f };
			break;
		
		case 22:
			vVar0 = { -1561.381f, -412.1974f, 41.389f };
			break;
		
		case 23:
			vVar0 = { -1608.851f, -429.184f, 39.439f };
			break;
		
		case 24:
			vVar0 = { 964.3583f, -1034.199f, 39.8303f };
			break;
		
		case 25:
			vVar0 = { 894.2868f, -885.5679f, 26.1212f };
			break;
		
		case 26:
			vVar0 = { 821.1741f, -924.1658f, 25.1998f };
			break;
		
		case 27:
			vVar0 = { 759.7933f, -759.8209f, 25.759f };
			break;
		
		case 28:
			vVar0 = { 844.7289f, -1164.1f, 24.2681f };
			break;
		
		case 29:
			vVar0 = { 526.2521f, -1604.613f, 28.2625f };
			break;
		
		case 30:
			vVar0 = { 572.0462f, -1570.736f, 27.4904f };
			break;
		
		case 31:
			vVar0 = { 722.2852f, -1190.617f, 23.282f };
			break;
		
		case 32:
			vVar0 = { 497.6212f, -1494.084f, 28.2893f };
			break;
		
		case 33:
			vVar0 = { 480.3127f, -1549.937f, 28.2828f };
			break;
		
		case 34:
			vVar0 = { -68.702f, 6426.148f, 30.439f };
			break;
		
		case 35:
			vVar0 = { -247.4374f, 6240.294f, 30.4892f };
			break;
		
		case 36:
			vVar0 = { 2554.165f, 4668.059f, 33.0233f };
			break;
		
		case 37:
			vVar0 = { 2461.22f, 1589.255f, 32.0443f };
			break;
		
		case 38:
			vVar0 = { -2203.335f, 4244.427f, 47.3305f };
			break;
		
		case 39:
			vVar0 = { 218.0665f, 2601.817f, 44.7668f };
			break;
		
		case 40:
			vVar0 = { 186.1719f, 2786.343f, 45.0144f };
			break;
		
		case 41:
			vVar0 = { 642.0746f, 2791.729f, 40.9795f };
			break;
		
		case 42:
			vVar0 = { -1130.938f, 2701.133f, 17.8004f };
			break;
		
		case 43:
			vVar0 = { -10.944f, -1646.76f, 28.3125f };
			break;
		
		case 44:
			vVar0 = { 1024.263f, -2398.404f, 29.1261f };
			break;
		
		case 45:
			vVar0 = { 870.8577f, -2232.323f, 29.5508f };
			break;
		
		case 46:
			vVar0 = { -663.8541f, -2380.389f, 12.9446f };
			break;
		
		case 47:
			vVar0 = { -1088.616f, -2235.098f, 12.2182f };
			break;
		
		case 48:
			vVar0 = { -342.5126f, -1468.675f, 29.6107f };
			break;
		
		case 49:
			vVar0 = { -1241.54f, -259.8841f, 37.9445f };
			break;
		
		case 50:
			vVar0 = { 899.8448f, -147.528f, 75.5674f };
			break;
		
		case 51:
			vVar0 = { -1405.411f, 526.8572f, 122.8361f };
			break;
		
		case 52:
			vVar0 = { 1341.552f, -1578.037f, 53.4443f };
			break;
		
		case 53:
			vVar0 = { -105.7029f, 6528.539f, 29.1719f };
			break;
		
		case 54:
			vVar0 = { -302.3985f, 6327.434f, 31.8918f };
			break;
		
		case 55:
			vVar0 = { -15.258f, 6557.378f, 32.2454f };
			break;
		
		case 56:
			vVar0 = { 1899.673f, 3773.178f, 31.8829f };
			break;
		
		case 57:
			vVar0 = { 1662.121f, 4776.317f, 41.0075f };
			break;
		
		case 58:
			vVar0 = { -178.2278f, 490.886f, 134.0466f };
			break;
		
		case 59:
			vVar0 = { 339.5743f, 439.7083f, 145.5896f };
			break;
		
		case 60:
			vVar0 = { -764.6163f, 618.3144f, 137.5536f };
			break;
		
		case 61:
			vVar0 = { -679.5461f, 592.5162f, 139.693f };
			break;
		
		case 62:
			vVar0 = { 124.4571f, 551.8877f, 181.658f };
			break;
		
		case 63:
			vVar0 = { -563.7349f, 689.099f, 151.6596f };
			break;
		
		case 64:
			vVar0 = { -743.0927f, 590.0371f, 140.9221f };
			break;
		
		case 65:
			vVar0 = { -861.252f, 684.8923f, 146.2643f };
			break;
		
		case 66:
			vVar0 = { -1292.456f, 440.9454f, 93.7572f };
			break;
		
		case 67:
			vVar0 = { 369.5891f, 417.4813f, 136.8344f };
			break;
		
		case 68:
			vVar0 = { -1581.501f, -558.2578f, 33.9528f };
			break;
		
		case 69:
			vVar0 = { -1379.546f, -499.1783f, 32.1574f };
			break;
		
		case 70:
			vVar0 = { -117.5296f, -605.7157f, 35.2857f };
			break;
		
		case 71:
			vVar0 = { -67.0943f, -802.4415f, 43.2273f };
			break;
		
		case 72:
			vVar0 = { 254.1892f, -1809.183f, 26.1805f };
			break;
		
		case 73:
			vVar0 = { -1472.278f, -920.0677f, 8.9683f };
			break;
		
		case 74:
			vVar0 = { 38.9478f, -1026.629f, 28.6354f };
			break;
		
		case 75:
			vVar0 = { 46.903f, 2789.825f, 57.1124f };
			break;
		
		case 76:
			vVar0 = { -342.3246f, 6065.316f, 30.4895f };
			break;
		
		case 77:
			vVar0 = { 1737.878f, 3709.088f, 33.1348f };
			break;
		
		case 78:
			vVar0 = { 939.7161f, -1459.204f, 30.467f };
			break;
		
		case 79:
			vVar0 = { 189.7624f, 309.7488f, 104.4714f };
			break;
		
		case 80:
			vVar0 = { -21.9593f, -191.3618f, 51.5599f };
			break;
		
		case 81:
			vVar0 = { 2472.22f, 4110.493f, 36.9629f };
			break;
		
		case 82:
			vVar0 = { -39.3286f, 6420.603f, 30.7017f };
			break;
		
		case 83:
			vVar0 = { -1134.762f, -1568.848f, 3.4077f };
			break;
	}
	return vVar0;
}

int func_1035(int iParam0)//Position - 0x8639B
{
	switch (iParam0)
	{
		case 1:
		case 2:
		case 3:
		case 4:
		case 61:
		case 83:
		case 84:
		case 85:
			return 1;
			break;
		
		case 5:
		case 6:
			return 2;
			break;
		
		case 7:
		case 34:
		case 62:
			return 3;
			break;
		
		case 35:
		case 36:
		case 37:
			return 4;
			break;
		
		case 38:
		case 39:
		case 65:
			return 5;
			break;
		
		case 40:
		case 41:
		case 63:
			return 6;
			break;
		
		case 42:
		case 43:
		case 64:
			return 7;
			break;
		
		case 8:
			return 8;
			break;
		
		case 9:
			return 9;
			break;
		
		case 10:
			return 10;
			break;
		
		case 11:
			return 11;
			break;
		
		case 12:
			return 12;
			break;
		
		case 13:
			return 13;
			break;
		
		case 14:
			return 14;
			break;
		
		case 15:
			return 15;
			break;
		
		case 16:
			return 16;
			break;
		
		case 17:
			return 17;
			break;
		
		case 18:
			return 18;
			break;
		
		case 19:
			return 19;
			break;
		
		case 20:
			return 20;
			break;
		
		case 21:
			return 21;
			break;
		
		case 22:
			return 22;
			break;
		
		case 23:
			return 23;
			break;
		
		case 24:
			return 24;
			break;
		
		case 25:
			return 25;
			break;
		
		case 26:
			return 26;
			break;
		
		case 27:
			return 27;
			break;
		
		case 28:
			return 28;
			break;
		
		case 29:
			return 29;
			break;
		
		case 30:
			return 30;
			break;
		
		case 31:
			return 31;
			break;
		
		case 32:
			return 32;
			break;
		
		case 33:
			return 33;
			break;
		
		case 44:
			return 34;
			break;
		
		case 45:
			return 35;
			break;
		
		case 46:
			return 36;
			break;
		
		case 47:
			return 37;
			break;
		
		case 48:
			return 38;
			break;
		
		case 49:
			return 39;
			break;
		
		case 50:
			return 40;
			break;
		
		case 51:
			return 41;
			break;
		
		case 52:
			return 42;
			break;
		
		case 53:
			return 43;
			break;
		
		case 54:
			return 44;
			break;
		
		case 55:
			return 45;
			break;
		
		case 56:
			return 46;
			break;
		
		case 57:
			return 47;
			break;
		
		case 58:
			return 48;
			break;
		
		case 59:
			return 49;
			break;
		
		case 60:
			return 50;
			break;
		
		case 66:
			return 51;
			break;
		
		case 67:
			return 52;
			break;
		
		case 68:
			return 53;
			break;
		
		case 69:
			return 54;
			break;
		
		case 70:
			return 55;
			break;
		
		case 71:
			return 56;
			break;
		
		case 72:
			return 57;
			break;
		
		case 73:
			return 58;
			break;
		
		case 74:
			return 59;
			break;
		
		case 75:
			return 60;
			break;
		
		case 76:
			return 61;
			break;
		
		case 77:
			return 62;
			break;
		
		case 78:
			return 63;
			break;
		
		case 79:
			return 64;
			break;
		
		case 80:
			return 65;
			break;
		
		case 81:
			return 66;
			break;
		
		case 82:
			return 67;
			break;
		
		case 87:
		case 103:
		case 104:
		case 105:
			return 68;
			break;
		
		case 88:
		case 106:
		case 107:
		case 108:
			return 69;
			break;
		
		case 89:
		case 109:
		case 110:
		case 111:
			return 70;
			break;
		
		case 90:
		case 112:
		case 113:
		case 114:
			return 71;
			break;
		
		case 91:
			return 72;
			break;
		
		case 92:
			return 73;
			break;
		
		case 93:
			return 74;
			break;
		
		case 94:
			return 75;
			break;
		
		case 95:
			return 76;
			break;
		
		case 96:
			return 77;
			break;
		
		case 97:
			return 78;
			break;
		
		case 98:
			return 79;
			break;
		
		case 99:
			return 80;
			break;
		
		case 100:
			return 81;
			break;
		
		case 101:
			return 82;
			break;
		
		case 102:
			return 83;
			break;
	}
	return 0;
}

void func_1036(int iParam0, var uParam1, var uParam2)//Position - 0x868E2
{
	struct<4> Var0[30];
	int iVar121;
	
	func_1023(iParam0, &Var0, 0);
	iVar121 = gameplay::get_random_int_in_range(0, 30);
	*uParam1 = { Var0[iVar121 /*4*/] };
	*uParam2 = Var0[iVar121 /*4*/].f_3;
}

var func_1037(int iParam0)//Position - 0x86919
{
	return Global_2415705.f_659[iParam0 /*3*/];
}

bool func_1038()//Position - 0x8692C
{
	int iVar0;
	
	if (func_91(player::player_id(), 0))
	{
		iVar0 = func_81();
		if (func_387(iVar0, 0, 0))
		{
			if (func_1039(iVar0, 0))
			{
				return true;
			}
		}
	}
	return false;
}

int func_1039(int iParam0, float fParam1)//Position - 0x86960
{
	int iVar0;
	
	if (func_1040(iParam0))
	{
		iVar0 = func_1037(iParam0);
		if (func_466(iVar0))
		{
			return func_467(iParam0, iVar0, fParam1, 0);
		}
	}
	return false;
}

var func_1040(var uParam0)//Position - 0x86991
{
	return Global_2421621[uParam0 /*358*/].f_264;
}

int func_1041()//Position - 0x869A5
{
	if (Global_2097152[func_752() /*10730*/].f_7546.f_1029 > 0 && func_1042(Global_2097152[func_752() /*10730*/].f_7546.f_1029))
	{
		return Global_2097152[func_752() /*10730*/].f_7546.f_1029;
	}
	else
	{
		return func_1047(0, -1);
	}
	return 0;
}

bool func_1042(int iParam0)//Position - 0x869FE
{
	int iVar0;
	
	if (iParam0 > 0)
	{
		iVar0 = 0;
		while (iVar0 < 12)
		{
			if (func_1047(iVar0, -1) == iParam0)
			{
				return true;
			}
			iVar0++;
		}
		if (iParam0 == func_1047(99, -1))
		{
			return true;
		}
	}
	return false;
}

void func_1043(int iParam0, var uParam1, var uParam2)//Position - 0x86A40
{
	struct<4> Var0[4];
	int iVar17;
	
	func_1044(iParam0, &Var0, -1);
	iVar17 = gameplay::get_random_int_in_range(0, 4);
	*uParam1 = { Var0[iVar17 /*4*/] };
	*uParam2 = Var0[iVar17 /*4*/].f_3;
}

void func_1044(int iParam0, var uParam1, int iParam2)//Position - 0x86A75
{
	struct<4> Var0;
	
	switch (iParam0)
	{
		case 1:
		case 2:
		case 3:
		case 4:
		case 5:
		case 6:
		case 7:
		case 34:
		case 35:
		case 36:
		case 37:
		case 38:
		case 39:
		case 40:
		case 41:
		case 42:
		case 43:
			func_1016(iParam0, 9, &Var0, -1, 0);
			*(uParam1[0 /*4*/]) = { Var0 };
			(uParam1[0 /*4*/])->f_3 = Var0.f_3.f_2;
			func_1016(iParam0, 10, &Var0, -1, 0);
			*(uParam1[1 /*4*/]) = { Var0 };
			(uParam1[1 /*4*/])->f_3 = Var0.f_3.f_2;
			func_1016(iParam0, 11, &Var0, -1, 0);
			*(uParam1[2 /*4*/]) = { Var0 };
			(uParam1[2 /*4*/])->f_3 = Var0.f_3.f_2;
			func_1016(iParam0, 12, &Var0, -1, 0);
			*(uParam1[3 /*4*/]) = { Var0 };
			(uParam1[3 /*4*/])->f_3 = Var0.f_3.f_2;
			break;
		
		case 8:
		case 9:
		case 10:
		case 11:
		case 12:
		case 13:
		case 14:
		case 15:
		case 16:
		case 66:
		case 67:
		case 68:
		case 69:
			*(uParam1[0 /*4*/]) = { 351.8605f, -995.1919f, -100.203f };
			(uParam1[0 /*4*/])->f_3 = 177.5208f;
			*(uParam1[1 /*4*/]) = { 342.7552f, -1002.421f, -100.2024f };
			(uParam1[1 /*4*/])->f_3 = 270.6484f;
			*(uParam1[2 /*4*/]) = { 339.4581f, -997.6315f, -100.2058f };
			(uParam1[2 /*4*/])->f_3 = 11.316f;
			*(uParam1[3 /*4*/]) = { 341.5853f, -995.2015f, -100.2033f };
			(uParam1[3 /*4*/])->f_3 = 82.7126f;
			break;
		
		case 17:
		case 18:
		case 19:
		case 20:
		case 21:
		case 22:
		case 23:
		case 70:
		case 71:
		case 72:
			*(uParam1[0 /*4*/]) = { 260.7131f, -1002.99f, -100.0086f };
			(uParam1[0 /*4*/])->f_3 = 37.9253f;
			*(uParam1[1 /*4*/]) = { 260.7037f, -998.3527f, -100.001f };
			(uParam1[1 /*4*/])->f_3 = 49.2925f;
			*(uParam1[2 /*4*/]) = { 261.4858f, -995.5132f, -100.0086f };
			(uParam1[2 /*4*/])->f_3 = 93.5996f;
			*(uParam1[3 /*4*/]) = { 255.5316f, -1000.62f, -100.0086f };
			(uParam1[3 /*4*/])->f_3 = 272.3036f;
			break;
		
		case 61:
		case 62:
		case 63:
		case 64:
		case 65:
			func_1016(iParam0, 9, &Var0, 61, 0);
			*(uParam1[0 /*4*/]) = { Var0 };
			(uParam1[0 /*4*/])->f_3 = Var0.f_3.f_2;
			func_1016(iParam0, 10, &Var0, 61, 0);
			*(uParam1[1 /*4*/]) = { Var0 };
			(uParam1[1 /*4*/])->f_3 = Var0.f_3.f_2;
			func_1016(iParam0, 11, &Var0, 61, 0);
			*(uParam1[2 /*4*/]) = { Var0 };
			(uParam1[2 /*4*/])->f_3 = Var0.f_3.f_2;
			func_1016(iParam0, 12, &Var0, 61, 0);
			*(uParam1[3 /*4*/]) = { Var0 };
			(uParam1[3 /*4*/])->f_3 = Var0.f_3.f_2;
			break;
		
		case 83:
		case 84:
		case 85:
			func_1016(iParam0, 9, &Var0, 83, 0);
			*(uParam1[0 /*4*/]) = { Var0 };
			(uParam1[0 /*4*/])->f_3 = Var0.f_3.f_2;
			func_1016(iParam0, 10, &Var0, 83, 0);
			*(uParam1[1 /*4*/]) = { Var0 };
			(uParam1[1 /*4*/])->f_3 = Var0.f_3.f_2;
			func_1016(iParam0, 11, &Var0, 83, 0);
			*(uParam1[2 /*4*/]) = { Var0 };
			(uParam1[2 /*4*/])->f_3 = Var0.f_3.f_2;
			func_1016(iParam0, 12, &Var0, 83, 0);
			*(uParam1[3 /*4*/]) = { Var0 };
			(uParam1[3 /*4*/])->f_3 = Var0.f_3.f_2;
			break;
		
		case 73:
		case 74:
		case 75:
		case 76:
			func_1016(iParam0, 9, &Var0, 73, 0);
			*(uParam1[0 /*4*/]) = { Var0 };
			(uParam1[0 /*4*/])->f_3 = Var0.f_3.f_2;
			func_1016(iParam0, 10, &Var0, 73, 0);
			*(uParam1[1 /*4*/]) = { Var0 };
			(uParam1[1 /*4*/])->f_3 = Var0.f_3.f_2;
			func_1016(iParam0, 11, &Var0, 73, 0);
			*(uParam1[2 /*4*/]) = { Var0 };
			(uParam1[2 /*4*/])->f_3 = Var0.f_3.f_2;
			func_1016(iParam0, 12, &Var0, 73, 0);
			*(uParam1[3 /*4*/]) = { Var0 };
			(uParam1[3 /*4*/])->f_3 = Var0.f_3.f_2;
			break;
		
		case 77:
		case 78:
		case 79:
		case 80:
		case 81:
		case 82:
			func_1016(iParam0, 9, &Var0, 77, 0);
			*(uParam1[0 /*4*/]) = { Var0 };
			(uParam1[0 /*4*/])->f_3 = Var0.f_3.f_2;
			func_1016(iParam0, 10, &Var0, 77, 0);
			*(uParam1[1 /*4*/]) = { Var0 };
			(uParam1[1 /*4*/])->f_3 = Var0.f_3.f_2;
			func_1016(iParam0, 11, &Var0, 77, 0);
			*(uParam1[2 /*4*/]) = { Var0 };
			(uParam1[2 /*4*/])->f_3 = Var0.f_3.f_2;
			func_1016(iParam0, 12, &Var0, 77, 0);
			*(uParam1[3 /*4*/]) = { Var0 };
			(uParam1[3 /*4*/])->f_3 = Var0.f_3.f_2;
			break;
		
		case 86:
			func_1045(iParam2, 9, &Var0, 0);
			*(uParam1[0 /*4*/]) = { Var0 };
			(uParam1[0 /*4*/])->f_3 = Var0.f_3.f_2;
			func_1045(iParam2, 10, &Var0, 0);
			*(uParam1[1 /*4*/]) = { Var0 };
			(uParam1[1 /*4*/])->f_3 = Var0.f_3.f_2;
			func_1045(iParam2, 11, &Var0, 0);
			*(uParam1[2 /*4*/]) = { Var0 };
			(uParam1[2 /*4*/])->f_3 = Var0.f_3.f_2;
			func_1045(iParam2, 12, &Var0, 0);
			*(uParam1[3 /*4*/]) = { Var0 };
			(uParam1[3 /*4*/])->f_3 = Var0.f_3.f_2;
			break;
		
		case 87:
		case 88:
		case 89:
		case 90:
			func_1016(iParam0, 9, &Var0, 88, 0);
			*(uParam1[0 /*4*/]) = { Var0 };
			(uParam1[0 /*4*/])->f_3 = Var0.f_3.f_2;
			func_1016(iParam0, 10, &Var0, 88, 0);
			*(uParam1[1 /*4*/]) = { Var0 };
			(uParam1[1 /*4*/])->f_3 = Var0.f_3.f_2;
			func_1016(iParam0, 11, &Var0, 88, 0);
			*(uParam1[2 /*4*/]) = { Var0 };
			(uParam1[2 /*4*/])->f_3 = Var0.f_3.f_2;
			func_1016(iParam0, 12, &Var0, 88, 0);
			*(uParam1[3 /*4*/]) = { Var0 };
			(uParam1[3 /*4*/])->f_3 = Var0.f_3.f_2;
			break;
		
		case 91:
		case 92:
		case 93:
		case 94:
		case 95:
		case 96:
			func_1016(iParam0, 9, &Var0, 91, 0);
			*(uParam1[0 /*4*/]) = { Var0 };
			(uParam1[0 /*4*/])->f_3 = Var0.f_3.f_2;
			func_1016(iParam0, 10, &Var0, 91, 0);
			*(uParam1[1 /*4*/]) = { Var0 };
			(uParam1[1 /*4*/])->f_3 = Var0.f_3.f_2;
			func_1016(iParam0, 11, &Var0, 91, 0);
			*(uParam1[2 /*4*/]) = { Var0 };
			(uParam1[2 /*4*/])->f_3 = Var0.f_3.f_2;
			func_1016(iParam0, 12, &Var0, 91, 0);
			*(uParam1[3 /*4*/]) = { Var0 };
			(uParam1[3 /*4*/])->f_3 = Var0.f_3.f_2;
			break;
		
		case 97:
		case 98:
		case 99:
		case 100:
		case 101:
		case 102:
			func_1016(iParam0, 9, &Var0, 97, 0);
			*(uParam1[0 /*4*/]) = { Var0 };
			(uParam1[0 /*4*/])->f_3 = Var0.f_3.f_2;
			func_1016(iParam0, 10, &Var0, 97, 0);
			*(uParam1[1 /*4*/]) = { Var0 };
			(uParam1[1 /*4*/])->f_3 = Var0.f_3.f_2;
			func_1016(iParam0, 11, &Var0, 97, 0);
			*(uParam1[2 /*4*/]) = { Var0 };
			(uParam1[2 /*4*/])->f_3 = Var0.f_3.f_2;
			func_1016(iParam0, 12, &Var0, 97, 0);
			*(uParam1[3 /*4*/]) = { Var0 };
			(uParam1[3 /*4*/])->f_3 = Var0.f_3.f_2;
			break;
	}
}

void func_1045(int iParam0, int iParam1, var uParam2, int iParam3)//Position - 0x8729F
{
	struct<6> Var0[2];
	vector3 vVar13;
	
	if (!iParam3)
	{
		Var0[0 /*6*/] = { func_1046(-1) };
	}
	else
	{
		Var0[0 /*6*/] = { Global_4006218[iParam0 /*45*/].f_4 };
		Var0[0 /*6*/].f_3 = { 0f, 0f, Global_4006218[iParam0 /*45*/].f_7 };
	}
	if (!iParam3)
	{
		Var0[1 /*6*/] = { func_1046(iParam0) };
	}
	else
	{
		Var0[1 /*6*/] = { Global_4006218[iParam0 /*45*/].f_4 };
		Var0[1 /*6*/].f_3 = { 0f, 0f, Global_4006218[iParam0 /*45*/].f_7 };
	}
	*uParam2 = { func_1017(iParam1, 86) };
	vVar13 = { *uParam2 - Var0[0 /*6*/] };
	vVar13 = { func_326(vVar13, -Var0[0 /*6*/].f_3.f_2) };
	vVar13 = { func_326(vVar13, Var0[1 /*6*/].f_3.f_2) };
	*uParam2 = { object::_get_object_offset_from_coords(Var0[1 /*6*/], 0f, vVar13) };
	switch (iParam1)
	{
		case 6:
		case 2:
		case 9:
		case 10:
		case 11:
		case 12:
		case 13:
		case 14:
		case 34:
		case 35:
		case 36:
		case 560:
		case 38:
		case 39:
		case 120:
		case 121:
		case 125:
		case 40:
		case 41:
		case 43:
		case 44:
		case 45:
		case 42:
		case 46:
		case 47:
		case 343:
		case 349:
		case 48:
		case 49:
		case 50:
		case 51:
		case 52:
		case 53:
		case 54:
		case 55:
		case 56:
		case 64:
		case 65:
		case 57:
		case 58:
		case 59:
		case 60:
		case 61:
		case 62:
		case 63:
		case 66:
		case 67:
		case 68:
		case 109:
		case 69:
		case 70:
		case 71:
		case 72:
		case 73:
		case 74:
		case 75:
		case 76:
		case 77:
		case 78:
		case 79:
		case 80:
		case 81:
		case 82:
		case 83:
		case 85:
		case 84:
		case 89:
		case 90:
		case 91:
		case 92:
		case 94:
		case 95:
		case 96:
		case 97:
		case 98:
		case 93:
		case 99:
		case 100:
		case 106:
		case 107:
		case 108:
		case 119:
		case 122:
		case 123:
		case 124:
		case 138:
		case 139:
		case 140:
		case 130:
		case 128:
		case 201:
		case 284:
		case 285:
		case 286:
		case 287:
		case 202:
		case 203:
		case 204:
		case 205:
		case 206:
		case 207:
		case 208:
		case 209:
		case 210:
		case 211:
		case 212:
		case 213:
		case 214:
		case 216:
		case 217:
		case 182:
		case 183:
		case 181:
		case 156:
		case 236:
		case 237:
		case 238:
		case 239:
		case 240:
		case 241:
		case 242:
		case 243:
		case 244:
		case 245:
		case 246:
		case 247:
		case 248:
		case 249:
		case 250:
		case 251:
		case 252:
		case 253:
		case 254:
		case 255:
		case 256:
		case 257:
		case 258:
		case 259:
		case 260:
		case 311:
		case 340:
		case 391:
		case 392:
		case 393:
		case 394:
		case 395:
		case 396:
		case 397:
		case 398:
		case 399:
		case 400:
		case 401:
		case 402:
		case 403:
		case 404:
		case 405:
		case 406:
		case 407:
		case 408:
		case 409:
		case 410:
		case 411:
		case 412:
		case 413:
		case 414:
		case 415:
		case 416:
		case 417:
		case 418:
		case 419:
		case 438:
		case 439:
		case 440:
		case 441:
		case 442:
		case 443:
		case 357:
		case 358:
		case 359:
		case 467:
		case 468:
		case 469:
		case 497:
		case 498:
		case 499:
		case 503:
		case 598:
			while (Var0[0 /*6*/].f_3.f_2 > 180f)
			{
				Var0[0 /*6*/].f_3.f_2 = (Var0[0 /*6*/].f_3.f_2 - 360f);
			}
			while (Var0[0 /*6*/].f_3.f_2 < -180f)
			{
				Var0[0 /*6*/].f_3.f_2 = (Var0[0 /*6*/].f_3.f_2 + 360f);
			}
			while (Var0[1 /*6*/].f_3.f_2 > 180f)
			{
				Var0[1 /*6*/].f_3.f_2 = (Var0[1 /*6*/].f_3.f_2 - 360f);
			}
			while (Var0[1 /*6*/].f_3.f_2 < -180f)
			{
				Var0[1 /*6*/].f_3.f_2 = (Var0[1 /*6*/].f_3.f_2 + 360f);
			}
			uParam2->f_3.f_2 = (uParam2->f_3.f_2 + (Var0[1 /*6*/].f_3.f_2 - Var0[0 /*6*/].f_3.f_2));
			while (uParam2->f_3.f_2 > 180f)
			{
				uParam2->f_3.f_2 = (uParam2->f_3.f_2 - 360f);
			}
			while (uParam2->f_3.f_2 < -180f)
			{
				uParam2->f_3.f_2 = (uParam2->f_3.f_2 + 360f);
			}
			break;
	}
	switch (iParam1)
	{
		case 362:
		case 363:
		case 364:
		case 365:
		case 366:
		case 367:
		case 368:
		case 360:
		case 361:
		case 383:
		case 386:
		case 372:
		case 373:
		case 374:
		case 375:
		case 376:
		case 377:
		case 378:
		case 370:
		case 371:
		case 384:
		case 387:
		case 486:
		case 487:
		case 488:
		case 489:
		case 490:
		case 491:
		case 492:
		case 485:
		case 544:
		case 543:
		case 545:
		case 516:
		case 517:
		case 583:
		case 584:
		case 518:
		case 519:
		case 520:
		case 521:
		case 522:
		case 523:
		case 524:
		case 525:
		case 526:
		case 527:
		case 553:
		case 552:
		case 551:
		case 550:
		case 556:
		case 555:
		case 593:
		case 594:
		case 595:
		case 596:
		case 554:
		case 587:
		case 588:
		case 589:
		case 590:
		case 591:
		case 592:
		case 597:
		case 118:
		case 117:
		case 599:
		case 600:
		case 601:
		case 602:
		case 603:
		case 604:
		case 605:
		case 606:
		case 607:
		case 608:
		case 609:
		case 610:
		case 612:
		case 618:
		case 624:
			while (Var0[0 /*6*/].f_3.f_2 > 180f)
			{
				Var0[0 /*6*/].f_3.f_2 = (Var0[0 /*6*/].f_3.f_2 - 360f);
			}
			while (Var0[0 /*6*/].f_3.f_2 < -180f)
			{
				Var0[0 /*6*/].f_3.f_2 = (Var0[0 /*6*/].f_3.f_2 + 360f);
			}
			while (Var0[1 /*6*/].f_3.f_2 > 180f)
			{
				Var0[1 /*6*/].f_3.f_2 = (Var0[1 /*6*/].f_3.f_2 - 360f);
			}
			while (Var0[1 /*6*/].f_3.f_2 < -180f)
			{
				Var0[1 /*6*/].f_3.f_2 = (Var0[1 /*6*/].f_3.f_2 + 360f);
			}
			uParam2->f_3.f_2 = (uParam2->f_3.f_2 + (Var0[1 /*6*/].f_3.f_2 - Var0[0 /*6*/].f_3.f_2));
			while (uParam2->f_3.f_2 > 180f)
			{
				uParam2->f_3.f_2 = (uParam2->f_3.f_2 - 360f);
			}
			while (uParam2->f_3.f_2 < -180f)
			{
				uParam2->f_3.f_2 = (uParam2->f_3.f_2 + 360f);
			}
			break;
	}
}

struct<6> func_1046(int iParam0)//Position - 0x87C1C
{
	struct<6> Var0;
	
	switch (iParam0)
	{
		case -1:
		case default:
			Var0 = { -1478.436f, -3753.538f, 9.7027f };
			Var0.f_3 = { 0f, 0f, -18f };
			break;
		
		case 0:
			Var0 = { -3555.115f, 1473.013f, 9.7027f };
			Var0.f_3 = { 0f, 0f, 57f };
			break;
		
		case 1:
			Var0 = { -3147.049f, 2827.088f, 9.7027f };
			Var0.f_3 = { 0f, 0f, -88f };
			break;
		
		case 2:
			Var0 = { -3277.473f, 2159.85f, 9.7027f };
			Var0.f_3 = { 0f, 0f, -93f };
			break;
		
		case 3:
			Var0 = { -2822.419f, 4054.84f, 9.7027f };
			Var0.f_3 = { 0f, 0f, 72f };
			break;
		
		case 4:
			Var0 = { -3249.849f, 3704.681f, 9.7027f };
			Var0.f_3 = { 0f, 0f, -98f };
			break;
		
		case 5:
			Var0 = { -2383.193f, 4685.003f, 9.7027f };
			Var0.f_3 = { 0f, 0f, 47f };
			break;
		
		case 6:
			Var0 = { -3224.686f, -215.9825f, 9.7027f };
			Var0.f_3 = { 0f, 0f, -3f };
			break;
		
		case 7:
			Var0 = { -3447.876f, 291.9275f, 9.7027f };
			Var0.f_3 = { 0f, 0f, 97f };
			break;
		
		case 8:
			Var0 = { -2713.098f, -528.3185f, 9.7027f };
			Var0.f_3 = { 0f, 0f, -33f };
			break;
		
		case 9:
			Var0 = { -1981.618f, -1537.269f, 9.7027f };
			Var0.f_3 = { 0f, 0f, 142f };
			break;
		
		case 10:
			Var0 = { -2100.817f, -2533.233f, 9.7027f };
			Var0.f_3 = { 0f, 0f, -143f };
			break;
		
		case 11:
			Var0 = { -1599.642f, -1891.277f, 9.7027f };
			Var0.f_3 = { 0f, 0f, 112f };
			break;
		
		case 12:
			Var0 = { -733.6151f, -3916.985f, 9.7027f };
			Var0.f_3 = { 0f, 0f, -168f };
			break;
		
		case 13:
			Var0 = { -363.3534f, -3568.56f, 9.7027f };
			Var0.f_3 = { 0f, 0f, 57f };
			break;
		
		case 14:
			Var0 = { -1478.436f, -3753.538f, 9.7027f };
			Var0.f_3 = { 0f, 0f, -18f };
			break;
		
		case 15:
			Var0 = { 1535.974f, -3061.877f, 9.7027f };
			Var0.f_3 = { 0f, 0f, 62f };
			break;
		
		case 16:
			Var0 = { 2471.418f, -2430.93f, 9.7027f };
			Var0.f_3 = { 0f, 0f, 12f };
			break;
		
		case 17:
			Var0 = { 2067.371f, -2813.01f, 9.7027f };
			Var0.f_3 = { 0f, 0f, -148f };
			break;
		
		case 18:
			Var0 = { 3021.088f, -1513.602f, 9.7027f };
			Var0.f_3 = { 0f, 0f, 72f };
			break;
		
		case 19:
			Var0 = { 3025.956f, -704.3854f, 9.7027f };
			Var0.f_3 = { 0f, 0f, -98f };
			break;
		
		case 20:
			Var0 = { 2961.863f, -2007.631f, 9.7027f };
			Var0.f_3 = { 0f, 0f, 47f };
			break;
		
		case 21:
			Var0 = { 3398.169f, 1958.521f, 9.7027f };
			Var0.f_3 = { 0f, 0f, 77f };
			break;
		
		case 22:
			Var0 = { 3428.681f, 1202.06f, 9.7027f };
			Var0.f_3 = { 0f, 0f, -148f };
			break;
		
		case 23:
			Var0 = { 3787.83f, 2567.884f, 9.7027f };
			Var0.f_3 = { 0f, 0f, -93f };
			break;
		
		case 24:
			Var0 = { 4235.946f, 4004.252f, 9.7027f };
			Var0.f_3 = { 0f, 0f, -118f };
			break;
		
		case 25:
			Var0 = { 4245.151f, 4595.375f, 9.7027f };
			Var0.f_3 = { 0f, 0f, -68f };
			break;
		
		case 26:
			Var0 = { 4209.057f, 3392.705f, 9.7027f };
			Var0.f_3 = { 0f, 0f, -98f };
			break;
		
		case 27:
			Var0 = { 3738.81f, 5768.252f, 9.7027f };
			Var0.f_3 = { 0f, 0f, -43f };
			break;
		
		case 28:
			Var0 = { 3472.966f, 6315.245f, 9.7027f };
			Var0.f_3 = { 0f, 0f, -23f };
			break;
		
		case 29:
			Var0 = { 3693.468f, 5194.659f, 9.7027f };
			Var0.f_3 = { 0f, 0f, 122f };
			break;
		
		case 30:
			Var0 = { 572.9806f, 7142.138f, 9.7027f };
			Var0.f_3 = { 0f, 0f, -58f };
			break;
		
		case 31:
			Var0 = { 2024.036f, 6907.536f, 9.7027f };
			Var0.f_3 = { 0f, 0f, -173f };
			break;
		
		case 32:
			Var0 = { 1377.296f, 6863.23f, 9.7027f };
			Var0.f_3 = { 0f, 0f, -3f };
			break;
		
		case 33:
			Var0 = { -1169.36f, 6000.214f, 9.7027f };
			Var0.f_3 = { 0f, 0f, -88f };
			break;
		
		case 34:
			Var0 = { -759.2205f, 6573.955f, 9.7027f };
			Var0.f_3 = { 0f, 0f, -153f };
			break;
		
		case 35:
			Var0 = { -373.8432f, 6964.86f, 9.7027f };
			Var0.f_3 = { 0f, 0f, -108f };
			break;
	}
	return Var0;
}

int func_1047(int iParam0, int iParam1)//Position - 0x8821D
{
	var uVar0;
	
	uVar0 = iParam1;
	if (iParam1 == -1)
	{
		uVar0 = func_126();
	}
	if (iParam0 == 7 && !Global_262145.f_14977)
	{
		return 0;
	}
	if (iParam0 == 0)
	{
		return Global_1362455[uVar0];
	}
	else if (iParam0 == 99)
	{
		return Global_2524295[uVar0];
	}
	else if (iParam0 >= 1)
	{
		if (iParam0 >= 12)
		{
			return 0;
		}
		return Global_2524224[(iParam0 - 1) /*3*/][uVar0];
	}
	return 0;
}

float func_1048(vector3 vParam0, var uParam3, int iParam4)//Position - 0x88299
{
	int iVar0;
	float fVar1;
	float fVar2;
	int iVar3;
	
	iVar3 = -1;
	fVar2 = 1E+07f;
	iVar0 = 0;
	while (iVar0 < *uParam3)
	{
		if ((uParam3[iVar0 /*12*/])->f_9)
		{
			fVar1 = 0f;
			switch ((uParam3[iVar0 /*12*/])->f_10)
			{
				case 0:
					fVar1 = system::vdist(*(uParam3[iVar0 /*12*/]), vParam0);
					fVar1 = (fVar1 - ((uParam3[iVar0 /*12*/])->f_6 + (IntToFloat(Global_2404994.f_2256) * (uParam3[iVar0 /*12*/])->f_8)));
					break;
				
				case 1:
				case 2:
					if (vParam0.x < (*uParam3)[iVar0 /*12*/])
					{
						fVar1 = (fVar1 + ((*uParam3)[iVar0 /*12*/] - vParam0.x));
					}
					else if (vParam0.x > (uParam3[iVar0 /*12*/])->f_3)
					{
						fVar1 = (fVar1 + (vParam0.x - (uParam3[iVar0 /*12*/])->f_3));
					}
					if (vParam0.y < (uParam3[iVar0 /*12*/])->f_1)
					{
						fVar1 = (fVar1 + ((uParam3[iVar0 /*12*/])->f_1 - vParam0.y));
					}
					else if (vParam0.y > (uParam3[iVar0 /*12*/])->f_3.f_1)
					{
						fVar1 = (fVar1 + (vParam0.y - (uParam3[iVar0 /*12*/])->f_3.f_1));
					}
					if (vParam0.y < (uParam3[iVar0 /*12*/])->f_2)
					{
						fVar1 = (fVar1 + ((uParam3[iVar0 /*12*/])->f_2 - vParam0.y));
					}
					else if (vParam0.y > (uParam3[iVar0 /*12*/])->f_3.f_2)
					{
						fVar1 = (fVar1 + (vParam0.y - (uParam3[iVar0 /*12*/])->f_3.f_2));
					}
					break;
			}
			if (fVar1 < fVar2)
			{
				fVar2 = fVar1;
				iVar3 = iVar0;
			}
		}
		iVar0++;
	}
	if (fVar2 < 0f)
	{
		fVar2 = 0f;
	}
	*iParam4 = iVar3;
	return fVar2;
}

int func_1049()//Position - 0x88415
{
	int iVar0;
	int iVar1;
	
	iVar0 = 0;
	while (iVar0 < 4)
	{
		if (Global_2404994.f_43[iVar0 /*12*/].f_9)
		{
			iVar1++;
		}
		iVar0++;
	}
	return iVar1;
}

Vector3 func_1050(vector3 vParam0, float fParam3)//Position - 0x88446
{
	int iVar0;
	float fVar1;
	vector3 vVar2;
	vector3 vVar5;
	vector3 vVar8;
	int iVar11;
	int iVar12;
	
	iVar0 = 0;
	while (iVar0 < 32)
	{
		iVar12 = iVar0;
		if (func_809(iVar12))
		{
			vVar2 = { func_131(iVar12) };
			if (system::vdist(vParam0, vVar2) < fParam3 && !entity::is_entity_dead(player::get_player_ped(iVar12), 0))
			{
				fVar1 = entity::get_entity_heading(player::get_player_ped(iVar12));
				vVar5 = { 0f, 1f, 0f };
				func_470(&vVar5, 0f, 0f, fVar1);
				vVar8 = { vVar8 + vVar5 };
				iVar11++;
			}
		}
		iVar0++;
	}
	vVar8 = { vVar8 / FtoV(system::to_float(iVar11)) };
	return vVar8;
}

Vector3 func_1051(vector3 vParam0, float fParam3)//Position - 0x884DF
{
	int iVar0;
	vector3 vVar1;
	vector3 vVar4;
	int iVar7;
	int iVar8;
	
	iVar0 = 0;
	while (iVar0 < 32)
	{
		iVar8 = iVar0;
		if (func_809(iVar8))
		{
			vVar1 = { func_131(iVar8) };
			if (system::vdist(vParam0, vVar1) < fParam3)
			{
				vVar4 = { vVar4 + vVar1 };
				iVar7++;
			}
		}
		iVar0++;
	}
	vVar4 = { vVar4 / FtoV(system::to_float(iVar7)) };
	return vVar4;
}

Vector3 func_1052(vector3 vParam0, vector3 vParam3, vector3 vParam6, float fParam9, int iParam10, float fParam11, int iParam12, int iParam13, var uParam14)//Position - 0x8854A
{
	int iVar0;
	int iVar1;
	int iVar2;
	vector3 vVar3;
	vector3 vVar6;
	int iVar9;
	float fVar10;
	float fVar11;
	
	iVar1 = 999;
	fVar10 = 0f;
	vVar6 = { vParam0 };
	iVar0 = 0;
	while (iVar0 < 200)
	{
		pathfind::get_nth_closest_vehicle_node(vParam0, iVar0, &vVar3, 1, 0f, 0f);
		if (iParam13)
		{
			switch (iParam10)
			{
				case 0:
					if (vVar3.y < (vParam3.y - fParam9))
					{
						vVar3.z = vParam3.y;
					}
					break;
				
				case 1:
				case 2:
					if (vVar3.y < vParam3.y && vVar3.y < vParam6.y)
					{
						vVar3.z = ((vParam3.y + vParam6.y) * 0.5f);
					}
					break;
				}
		}
		switch (iParam10)
		{
			case 0:
				iVar9 = func_815(vVar3, vParam3, fParam9, 0, 0);
				break;
			
			case 1:
				iVar9 = func_813(vVar3, vParam3, vParam6, 0, 0);
				break;
			
			case 2:
				iVar9 = object::is_point_in_angled_area(vVar3, vParam3, vParam6, fParam9, 0, true);
				break;
		}
		if (iParam12)
		{
			if (iVar9)
			{
				if (func_834(&vVar3, 0, 0))
				{
					iVar9 = false;
				}
			}
		}
		if (iVar9)
		{
			*uParam14 = 1;
			iVar2 = func_808(vVar3, fParam11, &fVar11);
			if (iVar2 == 0)
			{
				return vVar3;
			}
			else if (iVar2 < iVar1)
			{
				fVar10 = fVar11;
				vVar6 = { vVar3 };
				iVar1 = iVar2;
			}
			else if (iVar2 == iVar1)
			{
				if (fVar11 > fVar10)
				{
					fVar10 = fVar11;
					vVar6 = { vVar3 };
				}
			}
		}
		iVar0++;
	}
	return vVar6;
}

void func_1053(var uParam0, var uParam1, float fParam2)//Position - 0x886C6
{
	switch (uParam1->f_10)
	{
		case 0:
			func_1056(uParam0, *uParam1, uParam1->f_6, fParam2);
			break;
		
		case 1:
			func_1055(uParam0, *uParam1, uParam1->f_3, fParam2);
			break;
		
		case 2:
			func_1054(uParam0, *uParam1, uParam1->f_3, uParam1->f_6, fParam2);
			break;
	}
}

void func_1054(var uParam0, vector3 vParam1, vector3 vParam4, float fParam7, float fParam8)//Position - 0x8872A
{
	vector3 vVar0;
	vector3 vVar3;
	vector3 vVar6;
	vector3 vVar9;
	float fVar12;
	float fVar13;
	vector3 vVar14;
	vector3 vVar17;
	vector3 vVar20;
	vector3 vVar23;
	float fVar26;
	float fVar27;
	float fVar28;
	
	vVar0 = { vParam4 - vParam1 };
	vVar0.z = 0f;
	vVar3 = { *uParam0 - vParam1 };
	vVar3.z = 0f;
	vVar6 = { vParam4 - *uParam0 };
	vVar6.z = 0f;
	vVar9 = { func_493(0f, 0f, 1f, vVar0) };
	vVar9 = { vVar9 / FtoV(system::vmag(vVar9)) };
	fVar12 = (system::vmag(vVar3) * system::sin(gameplay::get_angle_between_2d_vectors(vVar0.x, vVar0.y, vVar3.x, vVar3.y)));
	vVar9 = { vVar9 * Vector(fVar12, fVar12, fVar12) };
	if (!func_491(vVar9, vVar3) >= 0f)
	{
		vVar9 = { vVar9 * Vector(-1f, -1f, -1f) };
	}
	vVar14 = { vParam1 + vVar9 };
	vVar17 = { vParam4 + vVar9 };
	vVar20 = { vVar14 - *uParam0 };
	vVar23 = { vVar17 - *uParam0 };
	if (gameplay::get_angle_between_2d_vectors(vVar0.x, vVar0.y, vVar3.x, vVar3.y) > 90f)
	{
		fVar13 = system::vmag(vVar20);
		vVar20 = { vVar20 / Vector(fVar13, fVar13, fVar13) };
		vVar20 = { vVar20 * FtoV((fVar13 + fParam8)) };
		*uParam0 = { *uParam0 + vVar20 };
	}
	if (gameplay::get_angle_between_2d_vectors(vVar0.x, vVar0.y, vVar6.x, vVar6.y) > 90f)
	{
		fVar13 = system::vmag(vVar23);
		vVar23 = { vVar23 / Vector(fVar13, fVar13, fVar13) };
		vVar23 = { vVar23 * FtoV((fVar13 + fParam8)) };
		*uParam0 = { *uParam0 + vVar23 };
	}
	if (fVar12 > ((fParam7 * 0.5f) - fParam8))
	{
		vVar9 = { vVar9 / FtoV(system::vmag(vVar9)) };
		fVar13 = (fVar12 - (fParam7 * 0.5f));
		fVar13 = (fVar13 + fParam8);
		vVar9 = { vVar9 * Vector(fVar13, fVar13, fVar13) };
		vVar9 = { vVar9 * Vector(-1f, -1f, -1f) };
		*uParam0 = { *uParam0 + vVar9 };
	}
	if (vParam1.y > vParam4.y)
	{
		fVar26 = vParam4.y;
		fVar27 = vParam1.y;
	}
	else
	{
		fVar26 = vParam1.y;
		fVar27 = vParam4.y;
	}
	fVar28 = (fVar27 - fVar26);
	if (uParam0->f_2 > (fVar27 - (fVar28 * 0.25f)))
	{
		uParam0->f_2 = (fVar27 - (fVar28 * 0.25f));
	}
	if (uParam0->f_2 < (fVar26 + (fVar28 * 0.25f)))
	{
		uParam0->f_2 = (fVar26 + (fVar28 * 0.25f));
	}
}

void func_1055(var uParam0, vector3 vParam1, vector3 vParam4, float fParam7)//Position - 0x88968
{
	float fVar0;
	float fVar1;
	float fVar2;
	
	if (*uParam0 < vParam1.x)
	{
		*uParam0 = (vParam1.x + fParam7);
	}
	if (*uParam0 > vParam4.x)
	{
		*uParam0 = (vParam4.x - fParam7);
	}
	if (uParam0->f_1 < vParam1.y)
	{
		uParam0->f_1 = (vParam1.y + fParam7);
	}
	if (uParam0->f_1 > vParam4.y)
	{
		uParam0->f_1 = (vParam4.y - fParam7);
	}
	if (vParam1.y > vParam4.y)
	{
		fVar0 = vParam4.y;
		fVar1 = vParam1.y;
	}
	else
	{
		fVar0 = vParam1.y;
		fVar1 = vParam4.y;
	}
	fVar2 = (fVar1 - fVar0);
	if (uParam0->f_2 > (fVar1 - (fVar2 * 0.25f)))
	{
		uParam0->f_2 = (fVar1 - (fVar2 * 0.25f));
	}
	if (uParam0->f_2 < (fVar0 + (fVar2 * 0.25f)))
	{
		uParam0->f_2 = (fVar0 + (fVar2 * 0.25f));
	}
}

void func_1056(var uParam0, vector3 vParam1, float fParam4, float fParam5)//Position - 0x88A32
{
	vector3 vVar0;
	
	vVar0 = { *uParam0 - vParam1 };
	vVar0.z = 0f;
	if (system::vmag(vVar0) > 0f)
	{
		vVar0 = { vVar0 / FtoV(system::vmag(vVar0)) };
	}
	else
	{
		vVar0 = { 0f, 1f, 0f };
	}
	vVar0 = { vVar0 * FtoV((fParam4 - fParam5)) };
	*uParam0 = { vParam1 + vVar0 };
}

void func_1057(var uParam0)//Position - 0x88A91
{
	vector3 vVar0;
	vector3 vVar3;
	vector3 vVar6;
	
	Global_2404994.f_551 = 0;
	switch (uParam0->f_10)
	{
		case 0:
			Global_2404994.f_525 = { *uParam0 };
			Global_2404994.f_525.f_4 = (uParam0->f_6 + (IntToFloat(Global_2404994.f_2256) * uParam0->f_8));
			Global_2404994.f_499.f_7 = uParam0->f_11;
			if (uParam0->f_8 > 0f)
			{
				Global_2404994.f_551 = 1;
			}
			if (Global_2404994.f_499.f_7)
			{
				Global_2404994.f_525.f_3 = uParam0->f_7;
			}
			break;
		
		case 1:
			Global_2404994.f_525 = { 0f, 0f, 0f };
			Global_2404994.f_525.f_3 = 0f;
			Global_2404994.f_525.f_4 = 0f;
			Global_2404994.f_525.f_7 = 2;
			vVar0 = { *uParam0 };
			vVar3 = { uParam0->f_3 };
			vVar6 = { *uParam0 + uParam0->f_3 * Vector(0.5f, 0.5f, 0.5f) };
			Global_2404994.f_525.f_8 = { vVar0.x, vVar6.y, vVar0.y };
			Global_2404994.f_525.f_11 = { vVar3.x, vVar6.y, vVar3.y };
			Global_2404994.f_525.f_14 = (vVar3.y - vVar0.y);
			Global_2404994.f_525 = { Global_2404994.f_525.f_8 + Global_2404994.f_525.f_11 * Vector(0.5f, 0.5f, 0.5f) };
			break;
		
		case 2:
			Global_2404994.f_525.f_3 = 0f;
			Global_2404994.f_525.f_4 = 0f;
			Global_2404994.f_525.f_7 = 2;
			Global_2404994.f_525.f_8 = { *uParam0 };
			Global_2404994.f_525.f_11 = { uParam0->f_3 };
			Global_2404994.f_525.f_14 = uParam0->f_6;
			Global_2404994.f_525 = { Global_2404994.f_525.f_8 + Global_2404994.f_525.f_11 * Vector(0.5f, 0.5f, 0.5f) };
			break;
	}
}

var func_1058(vector3 vParam0)//Position - 0x88C4B
{
	var uVar0;
	
	func_1048(vParam0, &(Global_2404994.f_43), &uVar0);
	return uVar0;
}

Vector3 func_1059()//Position - 0x88C66
{
	vector3 vVar0;
	int iVar3;
	int iVar4;
	int iVar5;
	
	iVar4 = 0;
	while (iVar4 < 32)
	{
		iVar5 = iVar4;
		if (func_387(iVar5, 1, 1))
		{
			if (!iVar5 == player::player_id())
			{
				if (network::_0x9DE986FC9A87C474(player::player_id(), iVar5))
				{
					if (func_976(player::player_id(), iVar5, -2, 0))
					{
						vVar0 = { vVar0 + func_131(iVar5) };
						iVar3++;
					}
				}
			}
		}
		iVar4++;
	}
	if (iVar3 > 0)
	{
		vVar0 = { vVar0 / FtoV(system::to_float(iVar3)) };
	}
	else
	{
		vVar0 = { func_131(player::player_id()) };
	}
	return vVar0;
}

bool func_1060(var uParam0, int iParam1)//Position - 0x88CF7
{
	int iVar0;
	vector3 vVar1;
	
	iVar0 = 0;
	while (iVar0 < 8)
	{
		if (Global_2409172[iVar0 /*17*/].f_9 == 1)
		{
			if (func_824(*uParam0, &(Global_2409172[iVar0 /*17*/]), 1008981770, 0, 1) && !func_824(*uParam0, &(Global_2409172[iVar0 /*17*/]), 1008981770, 0, 0))
			{
				if (iParam1)
				{
					if (Global_2409172[iVar0 /*17*/].f_12)
					{
						*uParam0 = { Global_2409172[iVar0 /*17*/].f_13 };
					}
					else
					{
						vVar1 = { *uParam0 };
						vVar1.z = func_1061(&(Global_2409172[iVar0 /*17*/]));
						func_835(&vVar1, &(Global_2409172[iVar0 /*17*/]), 1036831949, 0, 0);
						if (func_836(&vVar1, 0, 0, 0))
						{
							vVar1 = { *uParam0 };
							func_835(&vVar1, &(Global_2409172[iVar0 /*17*/]), 1036831949, 1, 0);
						}
						*uParam0 = { vVar1 };
					}
				}
				return true;
			}
		}
		iVar0++;
	}
	return false;
}

float func_1061(var uParam0)//Position - 0x88DDF
{
	switch (uParam0->f_10)
	{
		case 0:
			return uParam0->f_2;
			break;
		
		case 1:
		case 2:
			return ((uParam0->f_2 + uParam0->f_3.f_2) * 0.5f);
			break;
	}
	return uParam0->f_2;
}

Vector3 func_1062(vector3 vParam0, float fParam3)//Position - 0x88E27
{
	int iVar0;
	int iVar1;
	int iVar2;
	vector3 vVar3;
	vector3 vVar6;
	
	iVar0 = 0;
	while (iVar0 < 32)
	{
		iVar1 = iVar0;
		if (func_809(iVar1))
		{
			vVar3 = { func_131(iVar1) };
			vVar3.z = vParam0.y;
			if (system::vdist(vVar3, vParam0) <= fParam3)
			{
				vVar6 = { vVar6 + func_131(iVar1) };
				iVar2++;
			}
		}
		iVar0++;
	}
	if (iVar2 > 0)
	{
		vVar6 = { vVar6 / FtoV(system::to_float(iVar2)) };
	}
	return vVar6;
}

bool func_1063(int iParam0)//Position - 0x88EA2
{
	if ((func_857(iParam0, 1) || func_1064(iParam0)) || func_141(iParam0, 0))
	{
		return true;
	}
	return false;
}

int func_1064(int iParam0)//Position - 0x88ED2
{
	int iVar0;
	
	iVar0 = iParam0;
	if (iVar0 != -1)
	{
		return Global_1618089[iVar0 /*390*/] != -1;
	}
	return false;
}

struct<8> func_1065(int iParam0)//Position - 0x88EF3
{
	struct<8> Var0;
	int iVar8;
	float fVar9;
	float fVar10;
	float fVar11;
	int iVar12;
	float fVar13;
	
	Var0 = 3;
	Var0.f_4 = 3;
	iVar8 = 0;
	while (iVar8 < 3)
	{
		Var0[iVar8] = -1;
		Var0.f_4[iVar8] = -1f;
		iVar8++;
	}
	if (Global_2404994.f_651 == 1)
	{
		Var0[0] = 0;
		Var0.f_4[0] = 1f;
		return Var0;
	}
	fVar13 = 0f;
	if (Global_2404994.f_651.f_507)
	{
		fVar13 = 0.001f;
	}
	iVar8 = 0;
	while (iVar8 < Global_2404994.f_651)
	{
		fVar10 = 1f;
		if (Global_2404994.f_651.f_503 == iVar8 && Global_2404994.f_651.f_504)
		{
			fVar10 = fVar13;
		}
		else
		{
			if (!Global_2404994.f_651.f_505)
			{
				if (func_958(Global_2404994.f_651.f_1[iVar8 /*5*/], 0, 1, iParam0, Global_2404994.f_651.f_510, Global_2404994.f_651.f_511, Global_2404994.f_651.f_508, Global_2404994.f_651.f_509))
				{
					fVar10 = fVar13;
				}
			}
			if (func_833(Global_2404994.f_651.f_1[iVar8 /*5*/], 0.1f))
			{
				fVar10 = fVar13;
			}
			if (func_842(Global_2404994.f_651.f_1[iVar8 /*5*/], 1f, 0, 0, 100f, 1, -1, 0, 1))
			{
				fVar10 = (fVar10 * 0.94f);
			}
			if (func_842(Global_2404994.f_651.f_1[iVar8 /*5*/], 1f, 0, 0, 50f, 1, -1, 0, 1))
			{
				fVar10 = (fVar10 * 0.94f);
			}
			if (func_842(Global_2404994.f_651.f_1[iVar8 /*5*/], 1f, 0, 0, 25f, 1, -1, 0, 1))
			{
				fVar10 = (fVar10 * 0.94f);
			}
			if (!Global_2404994.f_651.f_506)
			{
				fVar11 = func_953(Global_2404994.f_651.f_1[iVar8 /*5*/], player::player_id(), 0);
				if (fVar11 < 10000f)
				{
					fVar9 = func_945(fVar11, Global_2404994.f_651.f_512, -1f, 100f, fVar13, 1f);
					fVar10 = (fVar10 * (fVar9 * 0.91f));
				}
				fVar11 = func_946(Global_2404994.f_651.f_1[iVar8 /*5*/], 1, 0, 0, 0);
				fVar9 = func_945(fVar11, Global_2404994.f_651.f_513, func_957(), func_956(), fVar13, 0.3f);
				fVar10 = (fVar10 * (fVar9 * 0.91f));
				fVar11 = func_946(Global_2404994.f_651.f_1[iVar8 /*5*/], 0, 1, 0, 0);
				if (fVar11 < 10000f)
				{
					fVar9 = func_945(fVar11, Global_2404994.f_651.f_514, 15f, 150f, fVar13, 0.2f);
					fVar10 = (fVar10 * (fVar9 * 0.92f));
				}
				fVar11 = gameplay::get_distance_between_coords(Global_2404994.f_651.f_1[iVar8 /*5*/], Global_2404994.f_493, 1);
				fVar9 = func_945(fVar11, 0f, 0f, 40f, fVar13, 1f);
				fVar10 = (fVar10 * (fVar9 * 0.93f));
			}
			fVar10 = (fVar10 * Global_2404994.f_651.f_1[iVar8 /*5*/].f_4);
		}
		iVar12 = 0;
		while (iVar12 < 3)
		{
			if (fVar10 > 0f || Global_2404994.f_651.f_507)
			{
				if (fVar10 > Var0.f_4[iVar12])
				{
					func_1066(&Var0, iVar8, fVar10, iVar12);
					iVar12 = 3;
				}
				else if (fVar10 == Var0.f_4[iVar12])
				{
					if (gameplay::get_random_int_in_range(0, 2) > 0)
					{
						func_1066(&Var0, iVar8, fVar10, iVar12);
						iVar12 = 3;
					}
				}
			}
			iVar12++;
		}
		iVar8++;
	}
	return Var0;
}

void func_1066(var uParam0, int iParam1, float fParam2, int iParam3)//Position - 0x8925D
{
	var uVar0;
	var uVar1;
	
	uVar0 = (*uParam0)[iParam3];
	uVar1 = uParam0->f_4[iParam3];
	(*uParam0)[iParam3] = iParam1;
	uParam0->f_4[iParam3] = fParam2;
	if (iParam3 < 2)
	{
		func_1066(uParam0, uVar0, uVar1, iParam3 + 1);
	}
}

void func_1067(var uParam0, var uParam1, var uParam2, float fParam3)//Position - 0x8929D
{
	int iVar0;
	int iVar1;
	int iVar2;
	
	iVar2 = gameplay::get_random_int_in_range(0, *uParam0);
	iVar0 = 0;
	while (iVar0 < *uParam0)
	{
		iVar1 = (iVar0 + iVar2);
		if (!iVar1 < *uParam0)
		{
			iVar1 = (iVar1 - *uParam0);
		}
		if (func_973(*(uParam0[iVar1 /*4*/]), (uParam0[iVar1 /*4*/])->f_3, 0, 1, 0, 0, fParam3, 1101004800, 1101004800, 1084227584, 1092616192, 0, 0))
		{
			*uParam1 = { *(uParam0[iVar1 /*4*/]) };
			*uParam2 = (uParam0[iVar1 /*4*/])->f_3;
			return;
		}
		iVar0++;
	}
	iVar0 = gameplay::get_random_int_in_range(0, *uParam0);
	*uParam1 = { *(uParam0[iVar0 /*4*/]) };
	*uParam2 = (uParam0[iVar0 /*4*/])->f_3;
}

int func_1068(vector3 vParam0)//Position - 0x8934A
{
	int iVar0;
	
	iVar0 = 0;
	while (iVar0 < 36)
	{
		if (func_468(vParam0, iVar0, 0))
		{
			return iVar0;
		}
		iVar0++;
	}
	return -1;
}

int func_1069()//Position - 0x89379
{
	int iVar0;
	
	if (gameplay::get_index_of_current_level() == 5)
	{
		return 7;
	}
	else
	{
		if (!Global_2404994.f_477 == 0)
		{
			if (!script::is_thread_active(Global_2404994.f_477.f_1))
			{
				if (Global_2404994.f_477 == 8)
				{
					func_1081();
				}
				Global_2404994.f_477 = 0;
			}
		}
		if (!Global_2404994.f_477 == 0)
		{
			return Global_2404994.f_477;
		}
		else if (func_124(player::player_id(), 0))
		{
			return 6;
		}
		else if (Global_2404994.f_43[0 /*12*/].f_9)
		{
			if (func_1080())
			{
				Global_2404994.f_43.f_54 = 1;
			}
			else
			{
				Global_2404994.f_43.f_54 = 0;
			}
			if (Global_2404994.f_43.f_54)
			{
				return 26;
			}
			else
			{
				return 3;
			}
		}
		else
		{
			if (!Global_2404994.f_24 == 0)
			{
				if (!script::is_thread_active(Global_2404994.f_24.f_1))
				{
					Global_2404994.f_24 = 0;
				}
			}
			if (!Global_2404994.f_24 == 0)
			{
				return Global_2404994.f_24;
			}
			else if (func_173())
			{
				if (func_1079(player::player_id()))
				{
					return 33;
				}
				else
				{
					return 20;
				}
			}
			else if (func_174())
			{
				return 20;
			}
			else if ((((((func_257(1) && func_1079(player::player_id())) && (func_140(player::player_id()) != 157 || (func_140(player::player_id()) == 157 && func_81() != func_1078()))) && !func_1077()) && !func_369(player::player_id())) && !func_253(1)) && !(func_141(player::player_id(), 0) == 0 && func_1076(player::player_id()) == 1))
			{
				if (func_1038())
				{
					return 34;
				}
				else if (func_1075(10f))
				{
					return 27;
				}
				else
				{
					iVar0 = func_1074(player::player_id(), 0);
					if ((func_472(iVar0) && func_1071(iVar0)) && (func_1070(iVar0) || func_92(player::player_id())))
					{
						Global_2404994.f_2316 = iVar0;
						return 29;
					}
					else
					{
						return 31;
					}
				}
			}
			else if (func_1075(10f))
			{
				return 27;
			}
			else
			{
				iVar0 = func_1074(player::player_id(), 0);
				if (func_472(iVar0) && func_1071(iVar0))
				{
					Global_2404994.f_2316 = iVar0;
					return 29;
				}
				else
				{
					return 1;
				}
			}
		}
	}
	return 1;
}

bool func_1070(int iParam0)//Position - 0x895E7
{
	int iVar0;
	
	if (func_91(player::player_id(), 0))
	{
		iVar0 = func_81();
		if (func_387(iVar0, 0, 0))
		{
			if (func_467(iVar0, iParam0, 0, 0))
			{
				return true;
			}
		}
	}
	return false;
}

bool func_1071(int iParam0)//Position - 0x8961E
{
	int iVar0;
	int iVar1;
	int iVar2;
	struct<13> Var3;
	int iVar16;
	int iVar17;
	int iVar18;
	int iVar19;
	
	iVar0 = func_1073(iParam0);
	if (iVar0 > -1)
	{
		iVar1 = func_1072(iParam0);
		if (!iVar1 == func_9())
		{
			if (iVar1 == player::player_id())
			{
				return true;
			}
			iVar2 = func_792(player::player_id(), iVar1);
			Var3 = { func_272(iVar1) };
			iVar16 = network::network_is_friend(&Var3);
			if (!entity::is_entity_dead(player::get_player_ped(iVar1), 0))
			{
				if (ped::is_ped_in_any_vehicle(player::get_player_ped(iVar1), 0))
				{
					iVar18 = ped::get_vehicle_ped_is_in(player::get_player_ped(iVar1), 0);
					if (!entity::is_entity_dead(iVar18, 0))
					{
						if (ped::is_ped_in_vehicle(player::player_ped_id(), iVar18, 0))
						{
							iVar17 = 1;
						}
					}
				}
			}
			iVar19 = func_791(player::player_id(), iVar1);
			switch (iVar0)
			{
				case 0:
					return true;
					break;
				
				case 1:
					if (iVar2)
					{
						return true;
					}
					break;
				
				case 2:
					if (iVar16)
					{
						return true;
					}
					break;
				
				case 3:
					if (iVar2 || iVar16)
					{
						return true;
					}
					break;
				
				case 4:
					if (iVar19)
					{
						return true;
					}
					break;
				
				case 5:
					if (((iVar2 || iVar16) || iVar17) || iVar19)
					{
						return true;
					}
					break;
				
				case 6:
					return false;
					break;
				}
			}
	}
	return false;
}

var func_1072(int iParam0)//Position - 0x89761
{
	return Global_2415705.f_756[iParam0 /*33*/];
}

int func_1073(int iParam0)//Position - 0x89774
{
	int iVar0;
	
	if (func_466(iParam0))
	{
		iVar0 = func_1072(iParam0);
		if (!iVar0 == func_9())
		{
			return Global_2421621[iVar0 /*358*/].f_264.f_47;
		}
	}
	return -1;
}

int func_1074(int iParam0, int iParam1)//Position - 0x897AA
{
	if (func_387(iParam0, 0, 1))
	{
		if (!iParam1)
		{
			return Global_2421621[iParam0 /*358*/].f_264.f_14;
		}
		else
		{
			return Global_2421621[iParam0 /*358*/].f_264.f_16;
		}
	}
	return -1;
}

int func_1075(float fParam0)//Position - 0x897E9
{
	return func_1039(player::player_id(), fParam0);
}

int func_1076(int iParam0)//Position - 0x897FB
{
	int iVar0;
	vector3 vVar1;
	
	if (func_91(iParam0, 0))
	{
		iVar0 = func_90(iParam0);
		vVar1 = { func_1030(iVar0) };
		return func_836(&vVar1, 0, 0, 0);
	}
	return 0;
}

bool func_1077()//Position - 0x8982C
{
	int iVar0;
	int iVar1;
	
	iVar0 = func_81();
	iVar1 = player::get_player_ped(iVar0);
	if ((entity::does_entity_exist(iVar1) && !ped::is_ped_injured(iVar1)) && (((ped::is_ped_in_flying_vehicle(iVar1) || gameplay::is_bit_set(Global_2421621[iVar0 /*358*/].f_69.f_2, 10)) || gameplay::is_bit_set(Global_2421621[iVar0 /*358*/].f_69.f_2, 11)) || gameplay::is_bit_set(Global_2421621[iVar0 /*358*/].f_69.f_2, 12)))
	{
		return true;
	}
	return false;
}

var func_1078()//Position - 0x898B2
{
	return Global_1618089[player::player_id() /*390*/].f_11.f_34;
}

bool func_1079(int iParam0)//Position - 0x898C9
{
	vector3 vVar0;
	int iVar3;
	vector3 vVar4;
	int iVar7;
	vector3 vVar8;
	
	vVar0 = { func_1030(iParam0) };
	if (func_91(iParam0, 0))
	{
		iVar3 = func_90(iParam0);
		vVar4 = { func_1030(iVar3) };
		vVar0.z = 0f;
		vVar4.z = 0f;
		if (system::vdist2(vVar0, vVar4) < 250000f)
		{
			return true;
		}
	}
	else
	{
		iVar7 = func_1013(iParam0, 1);
		if (!iVar7 == func_9())
		{
			vVar8 = { func_1030(iVar7) };
			vVar0.z = 0f;
			vVar8.z = 0f;
			if (system::vdist2(vVar0, vVar8) < 250000f)
			{
				return true;
			}
		}
	}
	return false;
}

int func_1080()//Position - 0x8995F
{
	int iVar0;
	
	iVar0 = 0;
	while (iVar0 < 4)
	{
		if (Global_2404994.f_43[iVar0 /*12*/].f_9)
		{
			switch (Global_2404994.f_43[iVar0 /*12*/].f_10)
			{
				case 0:
					return func_935(Global_2404994.f_43[iVar0 /*12*/].f_6);
					break;
				
				case 1:
					return func_934(Global_2404994.f_43[iVar0 /*12*/], Global_2404994.f_43[iVar0 /*12*/].f_3, 0f);
					break;
				
				case 2:
					return func_934(Global_2404994.f_43[iVar0 /*12*/], Global_2404994.f_43[iVar0 /*12*/].f_3, Global_2404994.f_43[iVar0 /*12*/].f_6);
					break;
				}
		}
		iVar0++;
	}
	return 0;
}

void func_1081()//Position - 0x89A17
{
	func_456();
	Global_2404994.f_1684 = 0;
}

bool func_1082()//Position - 0x89A2B
{
	if (func_1085() && (vehicle::is_this_model_a_plane(Global_2404994.f_43.f_67) || vehicle::is_this_model_a_heli(Global_2404994.f_43.f_67)))
	{
		return true;
	}
	return false;
}

void func_1083()//Position - 0x89A62
{
	struct<26> Var0;
	struct<26> Var26;
	
	Var0.f_5 = 1115815936;
	Var0.f_13 = 2;
	Var0.f_20 = 2;
	Var0.f_25 = -1082130432;
	Var26.f_16 = 1;
	Var26.f_22 = 1;
	Var26.f_23 = 1;
	Var26.f_24 = 1;
	Global_2404994.f_499 = { Var0 };
	Global_2404994.f_525 = { Var26 };
}

void func_1084(vector3 vParam0)//Position - 0x89AC6
{
	vector3 vVar0;
	
	vVar0.x = 349;
	vVar0.y = player::player_id();
	vVar0.f_2 = { vParam0 };
	script::trigger_script_event(1, &vVar0, 5, func_123(1, 1));
}

bool func_1085()//Position - 0x89AF3
{
	if (Global_2404994.f_43.f_65 && !Global_2404994.f_43.f_298)
	{
		if (!func_165(player::player_id()))
		{
			return true;
		}
	}
	return false;
}

void func_1086()//Position - 0x89B29
{
	Global_17151.f_6 = 1;
}

var func_1087(int iParam0)//Position - 0x89B37
{
	struct<20> Var0;
	
	func_23(iParam0, &Var0, 19);
	Stack.Push(iParam0);
	Call_Loc(Var0.f_19);
	return StackVal;
}

void func_1088()//Position - 0x89B50
{
	int iVar0;
	int iVar1;
	int iVar2;
	vector3 vVar3;
	float fVar6;
	float fVar7;
	
	if (!entity::is_entity_dead(player::player_ped_id(), 0))
	{
		if (func_426())
		{
			return;
		}
		iVar0 = false;
		func_447(&iVar1);
		if (((!entity::is_entity_dead(player::player_ped_id(), 0) && ped::is_ped_in_any_vehicle(player::player_ped_id(), 0)) && (func_257(1) || iVar1 == player::player_id())) && !gameplay::is_bit_set(uLocal_100[network::participant_id_to_int()], 4))
		{
			if (func_262(player::player_ped_id(), 0) == -1)
			{
				iVar0 = true;
			}
			else
			{
				func_4(13);
				return;
			}
		}
		if (func_395(Local_133.f_6 - Vector(10f, 0f, 0f), 0f, iVar0, 0, 0, 0, 1, 0, 1, 0))
		{
			if (gameplay::is_bit_set(Global_1589609.f_22, 2))
			{
				gameplay::clear_bit(&(Global_1589609.f_22), 2);
			}
			if (func_1087(Local_133.f_1) != -1)
			{
				func_4(11);
			}
			else
			{
				func_448(1, 0, 1, 0.01f, 3f, 1065353216, 1088421888, 0.01f, 0, 1066192077, 1, 0);
				if (!func_457(Local_133.f_1))
				{
					func_1089(Local_133.f_6, 0f, 1f);
					func_4(9);
					return;
				}
				while (func_458(Local_133.f_1, iVar2, &vVar3, &fVar6, iVar0))
				{
					iVar2++;
					fVar7 = (1f - (system::to_float(iVar2) / system::to_float(32)));
					func_1089(vVar3, fVar6, fVar7);
				}
				func_4(11);
			}
		}
	}
}

void func_1089(vector3 vParam0, float fParam3, float fParam4)//Position - 0x89CAA
{
	if (!Global_2404994.f_1684)
	{
	}
	if (Global_2404994.f_651 < 100)
	{
		if (system::vmag(vParam0) <= 0.01f)
		{
			return;
		}
		Global_2404994.f_651.f_1[Global_2404994.f_651 /*5*/] = { vParam0 };
		Global_2404994.f_651.f_1[Global_2404994.f_651 /*5*/].f_3 = fParam3;
		Global_2404994.f_651.f_1[Global_2404994.f_651 /*5*/].f_4 = fParam4;
		Global_2404994.f_651++;
	}
}

void func_1090()//Position - 0x89D34
{
	int iVar0;
	int iVar1;
	
	func_431();
	if (!cam::is_screen_fading_out() && !cam::is_screen_faded_out())
	{
		cam::do_screen_fade_out(322);
	}
	if (cam::is_screen_faded_out())
	{
		if (network::network_is_in_mp_cutscene())
		{
			func_1091(1, 1);
		}
		func_14(player::player_id(), 0, 524288);
		if ((!entity::is_entity_dead(player::player_ped_id(), 0) && ped::is_ped_in_any_vehicle(player::player_ped_id(), 0)) && !gameplay::is_bit_set(uLocal_100[network::participant_id_to_int()], 4))
		{
			iVar0 = ped::get_vehicle_ped_is_in(player::player_ped_id(), 0);
			if (!entity::is_entity_dead(iVar0, 0))
			{
				if (network::network_has_control_of_entity(iVar0))
				{
					entity::freeze_entity_position(iVar0, true);
				}
			}
			if (func_313(iVar0) && func_262(player::player_ped_id(), 0) == -1)
			{
				Global_2433082.f_501.f_6 = 1;
			}
		}
		if (func_443(player::player_id()))
		{
			Global_1760739.f_707 = 1;
		}
		if (!gameplay::is_string_null_or_empty(Local_133.f_9.f_22.f_63) && !gameplay::is_string_null_or_empty(Local_133.f_9.f_22.f_64))
		{
			iVar1 = audio::get_sound_id();
			audio::play_sound_frontend(iVar1, Local_133.f_9.f_22.f_63, Local_133.f_9.f_22.f_64, 1);
			audio::set_variable_on_sound(iVar1, "hold", 2.25f);
		}
		func_4(10);
	}
}

void func_1091(int iParam0, int iParam1)//Position - 0x89E58
{
	func_1110();
	if (iParam0)
	{
		func_1108(1);
		ui::clear_help(1);
	}
	ui::clear_prints();
	func_1102();
	graphics::set_particle_fx_cam_inside_vehicle(0);
	func_1098(0, 1, 1, 0);
	func_1097();
	func_1096(12, 0, -1);
	func_1095(1);
	cam::set_widescreen_borders(false, -1);
	ui::display_radar(true);
	ui::display_hud(true);
	func_1094();
	audio::set_user_radio_control_enabled(1);
	if (network::network_is_game_in_progress())
	{
		if (network::network_is_in_mp_cutscene())
		{
			network::network_set_in_mp_cutscene(0, 0);
		}
	}
	func_1093(0);
	if (((func_476() == 0 && func_1092() == 0) && iParam1) && !func_165(player::player_id()))
	{
		func_14(player::player_id(), 1, 0);
	}
	Global_2433082.f_3205 = 0;
}

int func_1092()//Position - 0x89F06
{
	return gameplay::is_bit_set(Global_2443089, 7);
}

void func_1093(int iParam0)//Position - 0x89F17
{
	if (iParam0 == 1)
	{
		gameplay::set_bit(&Global_2313, 13);
	}
	else
	{
		gameplay::clear_bit(&Global_2313, 13);
	}
}

void func_1094()//Position - 0x89F3A
{
	Global_17151.f_5 = 0;
}

void func_1095(int iParam0)//Position - 0x89F48
{
	Global_2494149.f_4393 = iParam0;
}

void func_1096(int iParam0, int iParam1, int iParam2)//Position - 0x89F59
{
	switch (iParam0)
	{
		case 5:
			if (iParam2 > -1)
			{
				Global_1352862.f_137[iParam2] = iParam1;
			}
			break;
		
		default:
			if (iParam1)
			{
				gameplay::set_bit(&(Global_1352862.f_1013), iParam0);
			}
			else
			{
				gameplay::clear_bit(&(Global_1352862.f_1013), iParam0);
			}
			break;
	}
}

void func_1097()//Position - 0x89FA8
{
	func_1095(1);
	func_1096(4, 0, -1);
	func_1096(6, 0, -1);
	func_1096(7, 0, -1);
	func_1096(3, 0, -1);
	func_1096(1, 0, -1);
	func_1096(2, 0, -1);
	func_1096(11, 0, -1);
	func_1096(13, 0, -1);
	func_1096(14, 0, -1);
	func_1096(16, 0, -1);
}

void func_1098(int iParam0, int iParam1, int iParam2, int iParam3)//Position - 0x89FFF
{
	if (iParam0)
	{
		player::special_ability_deactivate_fast(player::player_id());
		player::set_all_random_peds_flee(player::player_id(), 1);
		player::set_police_ignore_player(player::player_id(), 1);
		func_1093(1);
		ui::_0xA8FDB297A8D25FBA();
		ui::_0xFDB423997FA30340();
		if (Global_14443.f_1 > 3)
		{
			if (audio::is_mobile_phone_call_ongoing())
			{
				audio::stop_scripted_conversation(false);
			}
			if (!func_1101())
			{
				Global_14443.f_1 = 3;
			}
			Global_15745 = 5;
		}
		func_1100(1, iParam3, iParam2, 0);
		Global_55824 = 1;
		Global_68130 = 1;
		Global_69695 = 1;
	}
	else
	{
		func_1093(0);
		ui::_0xE1CD1E48E025E661();
		Global_55824 = 0;
		if (iParam1)
		{
			graphics::_0x03FC694AE06C5A20();
		}
		player::set_all_random_peds_flee(player::player_id(), 0);
		player::set_police_ignore_player(player::player_id(), 0);
		func_1100(0, iParam3, iParam2, 0);
		if (network::network_is_game_in_progress())
		{
			if (((!ped::is_ped_injured(player::player_ped_id()) && !func_165(player::player_id())) && !func_124(player::player_id(), 0)) && !func_1099())
			{
				entity::set_entity_invincible(player::player_ped_id(), false);
			}
		}
		else if (!ped::is_ped_injured(player::player_ped_id()) && !func_165(player::player_id()))
		{
			entity::set_entity_invincible(player::player_ped_id(), false);
		}
		Global_69695 = 0;
	}
}

int func_1099()//Position - 0x8A118
{
	return gameplay::is_bit_set(Global_1589933[player::player_id() /*601*/].f_39.f_18, 14);
}

int func_1100(int iParam0, int iParam1, var uParam2, int iParam3)//Position - 0x8A135
{
	int iVar0;
	
	iVar0 = 0;
	if (gameplay::is_pc_version())
	{
		if (cutscene::_0xA0FE76168A189DDB() != iParam0 && uParam2)
		{
			cutscene::_0x20746F7B1032A3C7(iParam0, iParam1, 1, iParam3);
			iVar0 = 1;
		}
	}
	return iVar0;
}

bool func_1101()//Position - 0x8A168
{
	if (Global_14443.f_1 == 1 || Global_14443.f_1 == 0)
	{
		return true;
	}
	return false;
}

void func_1102()//Position - 0x8A18F
{
	func_1103(0);
}

void func_1103(int iParam0)//Position - 0x8A19C
{
	if (iParam0)
	{
		func_1107();
		if (Global_14443.f_1 == 10 || Global_14443.f_1 == 9)
		{
			gameplay::set_bit(&Global_2314, 16);
		}
		Global_14443.f_1 = 1;
		if (func_1106(0))
		{
			func_1104(0);
		}
	}
	else if (Global_14443.f_1 == 1)
	{
		if (!Global_14443.f_1 == 0)
		{
			Global_14443.f_1 = 3;
		}
	}
}

void func_1104(int iParam0)//Position - 0x8A1FF
{
	if (Global_14604)
	{
		func_1105(0, 0);
	}
	if (Global_14443.f_1 == 10 || Global_14443.f_1 == 9)
	{
		gameplay::set_bit(&Global_2314, 16);
	}
	if (audio::is_mobile_phone_call_ongoing())
	{
		audio::stop_scripted_conversation(false);
	}
	Global_15745 = 5;
	if (iParam0 == 1)
	{
		gameplay::set_bit(&Global_2313, 30);
	}
	else
	{
		gameplay::clear_bit(&Global_2313, 30);
	}
	if (!func_1101())
	{
		Global_14443.f_1 = 3;
	}
}

void func_1105(int iParam0, int iParam1)//Position - 0x8A26F
{
	if (iParam0)
	{
		if (func_1106(0))
		{
			Global_14604 = 1;
			if (iParam1)
			{
				mobile::get_mobile_phone_position(&Global_14380);
			}
			Global_14371 = { Global_14389[Global_14388 /*3*/] };
			mobile::set_mobile_phone_position(Global_14371);
		}
	}
	else if (Global_14604 == 1)
	{
		Global_14604 = 0;
		Global_14371 = { Global_14396[Global_14388 /*3*/] };
		if (iParam1)
		{
			mobile::set_mobile_phone_position(Global_14380);
		}
		else
		{
			mobile::set_mobile_phone_position(Global_14371);
		}
	}
}

bool func_1106(int iParam0)//Position - 0x8A2E3
{
	if (iParam0 == 1)
	{
		if (Global_14443.f_1 > 3)
		{
			if (gameplay::is_bit_set(Global_2313, 14))
			{
				return true;
			}
			else
			{
				return false;
			}
		}
		else
		{
			return false;
		}
	}
	if (script::_get_number_of_instances_of_streamed_script(joaat("cellphone_flashhand")) > 0)
	{
		return true;
	}
	if (Global_14443.f_1 > 3)
	{
		return true;
	}
	return false;
}

void func_1107()//Position - 0x8A33D
{
	if (Global_14443.f_1 == 9 || Global_14443.f_1 == 10)
	{
		Global_15798 = 0;
		Global_15794 = 1;
	}
}

void func_1108(int iParam0)//Position - 0x8A366
{
	int iVar0;
	
	iVar0 = 0;
	iVar0 = 0;
	while (iVar0 < Global_100306)
	{
		ui::clear_floating_help(iVar0, iParam0);
		func_1109(iVar0);
		iVar0++;
	}
}

void func_1109(int iParam0)//Position - 0x8A394
{
	Global_100306[iParam0 /*28*/].f_21 = 0;
	StringCopy(&(Global_100306[iParam0 /*28*/]), "", 16);
	StringCopy(&(Global_100306[iParam0 /*28*/].f_4), "", 64);
	Global_100306[iParam0 /*28*/].f_23 = 0;
	Global_100306[iParam0 /*28*/].f_24 = { 0f, 0f, 0f };
	Global_100306[iParam0 /*28*/].f_27 = 0;
	Global_100306[iParam0 /*28*/].f_20 = 0;
	Global_100306[iParam0 /*28*/].f_22 = 0;
}

void func_1110()//Position - 0x8A3FC
{
	if (!Global_1312563)
	{
		return;
	}
	func_1111();
}

void func_1111()//Position - 0x8A413
{
	Global_1312563 = 0;
	StringCopy(&(Global_1312563.f_1), "", 24);
	Global_1312563.f_7 = 0;
}

void func_1112()//Position - 0x8A431
{
	if (func_218(player::player_id()))
	{
		func_1113();
	}
	func_428(1, Local_133.f_1, 0);
	if (!cam::is_screen_fading_out() && !cam::is_screen_faded_out())
	{
		cam::do_screen_fade_out(322);
		func_13(0);
	}
	func_431();
	gameplay::clear_bit(&Local_133, 2);
	streaming::_new_load_scene_start_safe(Local_133.f_6, 30f, 0);
	Local_133.f_187 = gameplay::_0x32C7A7E8C43A1F80(Local_133.f_6, 10f, 0f, 1f, 1, 1);
	func_4(9);
}

void func_1113()//Position - 0x8A4A9
{
	int iVar0;
	
	iVar0 = 0;
	while (iVar0 <= 3)
	{
		Global_1572864[iVar0 /*101*/].f_99 = -1;
		iVar0++;
	}
}

void func_1114()//Position - 0x8A4CE
{
	int iVar0;
	int iVar1;
	int iVar2;
	
	if (func_388(&(Local_133.f_167), 1000, 0))
	{
		if (func_1196(Local_133.f_1, Local_133.f_4))
		{
			StringCopy(&(Local_133.f_170), "", 64);
			Local_133.f_169 = func_1195(Local_133.f_1, &(Local_133.f_170), Local_133.f_4);
			gameplay::set_bit(&(uLocal_100[network::participant_id_to_int()]), 4);
			func_4(8);
			return;
		}
		func_391(&(Local_133.f_167), 0, 0);
	}
	if (!Local_133.f_9.f_3)
	{
		if (func_1191(Local_133.f_1))
		{
			func_447(&iVar0);
			if (iVar0 == player::player_id())
			{
				gameplay::clear_bit(&(uLocal_100[network::participant_id_to_int()]), 3);
			}
			func_4(8);
			return;
		}
	}
	if (gameplay::is_bit_set(Global_1760739, 0))
	{
		script::set_no_loading_screen(false);
		gameplay::clear_bit(&Global_1760739, 0);
	}
	if (Global_1760739.f_591)
	{
		func_4(8);
		Local_133.f_165 = 1;
		StringCopy(&(Local_133.f_170), "", 64);
		Local_133.f_169 = func_1195(Local_133.f_1, &(Local_133.f_170), Local_133.f_4);
		Global_1760739.f_591 = 0;
		func_428(1, Local_133.f_1, 0);
		return;
	}
	if (Local_133.f_9.f_3)
	{
		return;
	}
	iVar1 = func_1189();
	Local_133.f_164 = 1;
	func_1130(&(Local_133.f_125));
	if (!(iVar1 || Global_1760739.f_600))
	{
		Local_133.f_164 = 0;
	}
	else
	{
		if (ui::is_pause_menu_active() && ui::get_pause_menu_state() == 30)
		{
			if (!func_219(&(Local_133.f_162)))
			{
				func_8(&(Local_133.f_162), 0, 0);
			}
		}
		if (func_219(&(Local_133.f_162)))
		{
			if (func_388(&(Local_133.f_162), 500, 0))
			{
				func_7(&(Local_133.f_162));
			}
			else
			{
				Local_133.f_164 = 0;
			}
		}
		if (func_1129() && !func_1128(1, &(Local_133.f_125)))
		{
			Local_133.f_164 = 0;
		}
		if (Local_133.f_164 && ((((((ui::is_pause_menu_active() || ai::is_ped_sprinting(player::player_ped_id())) || func_1127("WHSECUROINPUT")) || func_1126(8, -1)) || func_1125()) || func_1106(0)) || network::network_is_in_mp_cutscene()))
		{
			Local_133.f_164 = 0;
		}
	}
	if (Local_133.f_164)
	{
		controls::disable_control_action(2, 202, 1);
		iVar2 = func_1122(player::player_id());
		if (func_1121(Local_133.f_1) && iVar2 > 0)
		{
			func_128(&(Local_133.f_125), 1, 1);
		}
		else
		{
			func_128(&(Local_133.f_125), 1, 0);
		}
		func_1120(1, &(Local_133.f_125));
		if (func_127(0, &(Local_133.f_125)) || func_127(1, &(Local_133.f_125)))
		{
			if (iVar1)
			{
				func_4(8);
			}
			if (func_127(1, &(Local_133.f_125)))
			{
				func_1119(iVar2, Local_133.f_1, Local_133.f_3);
			}
			func_1115(&(Local_133.f_125));
			Global_1760739.f_601 = 1;
		}
	}
	else if (func_1128(1, &(Local_133.f_125)))
	{
		func_1120(0, &(Local_133.f_125));
		func_1115(&(Local_133.f_125));
		Global_1760739.f_601 = 0;
	}
}

void func_1115(var uParam0)//Position - 0x8A794
{
	func_1116(1, -1);
	uParam0->f_2 = 0;
	uParam0->f_1 = 0;
	*uParam0 = 0;
}

void func_1116(int iParam0, int iParam1)//Position - 0x8A7B0
{
	var uVar0;
	
	if (!func_1118(&uVar0, 0, iParam1))
	{
		return;
	}
	if (Global_17290.f_7894)
	{
		ui::reset_hud_component_values(15);
		Global_17290.f_7894 = 0;
	}
	ui::_0x55598D21339CB998(0f);
	if (Global_17290.f_5498[uVar0])
	{
		ui::clear_additional_text(9, false);
		Global_17290.f_5498[uVar0] = 0;
	}
	if (Global_17290.f_5484[uVar0])
	{
		graphics::set_streamed_texture_dict_as_no_longer_needed("CommonMenu");
		Global_17290.f_5484[uVar0] = 0;
	}
	if (Global_17290.f_5491[uVar0])
	{
		graphics::set_streamed_texture_dict_as_no_longer_needed("MPShopSale");
		Global_17290.f_5491[uVar0] = 0;
	}
	if (iParam0)
	{
		func_1117(&(Global_17290.f_5530[uVar0 /*10*/]));
		Global_17290.f_5591[uVar0] = 0;
	}
	else
	{
		Global_17290.f_5591[uVar0] = 0;
	}
}

void func_1117(int iParam0)//Position - 0x8A86E
{
	if (iParam0->f_9 != 0)
	{
		if (graphics::has_scaleform_movie_loaded(*iParam0))
		{
			graphics::set_scaleform_movie_as_no_longer_needed(iParam0);
		}
		*iParam0 = 0;
		iParam0->f_9 = 0;
	}
}

bool func_1118(var uParam0, int iParam1, int iParam2)//Position - 0x8A897
{
	char cVar0[64];
	int iVar16;
	int iVar17;
	int iVar18;
	
	if (iParam2 == -1)
	{
		if (network::network_is_game_in_progress() && network::network_get_this_script_is_network_script())
		{
			iParam2 = network::_0x638A3A81733086DB();
		}
	}
	StringCopy(&cVar0, script::get_this_script_name(), 64);
	StringIntConCat(&cVar0, iParam2, 64);
	iVar16 = gameplay::get_hash_key(&cVar0);
	iVar18 = -1;
	iVar17 = 0;
	while (iVar17 < 6)
	{
		if (Global_17290.f_5591[iVar17] == iVar16)
		{
			*uParam0 = iVar17;
			return true;
		}
		else if (Global_17290.f_5591[iVar17] == 0)
		{
			iVar18 = iVar17;
		}
		iVar17++;
	}
	if (iParam1)
	{
		if (iVar18 != -1)
		{
			Global_17290.f_5591[iVar18] = iVar16;
			*uParam0 = iVar18;
			return true;
		}
	}
	return false;
}

void func_1119(int iParam0, var uParam1, var uParam2)//Position - 0x8A934
{
	struct<4> Var0;
	
	Var0 = 518;
	Var0.f_2 = uParam1;
	Var0.f_3 = uParam2;
	if (!iParam0 == 0)
	{
		script::trigger_script_event(1, &Var0, 4, iParam0);
	}
}

void func_1120(int iParam0, var uParam1)//Position - 0x8A962
{
	if (*uParam1 != iParam0)
	{
		*uParam1 = iParam0;
	}
}

var func_1121(int iParam0)//Position - 0x8A977
{
	struct<23> Var0;
	
	func_23(iParam0, &Var0, 22);
	Stack.Push(iParam0);
	Call_Loc(Var0.f_22);
	return StackVal;
}

var func_1122(int iParam0)//Position - 0x8A990
{
	var uVar0;
	int iVar1;
	int iVar2;
	int iVar3;
	
	iVar1 = 0;
	while (iVar1 < network::_network_get_num_participants_host())
	{
		iVar2 = iVar1;
		if (network::network_is_participant_active(iVar2))
		{
			iVar3 = network::network_get_player_index(iVar2);
			if (((iVar3 != iParam0 && func_387(iVar3, 1, 1)) && func_1124(iVar3) == Local_133.f_1) && !func_1123(iVar3))
			{
				gameplay::set_bit(&uVar0, iVar3);
			}
		}
		iVar1++;
	}
	return uVar0;
}

int func_1123(int iParam0)//Position - 0x8A9FD
{
	if (iParam0 != func_9() && func_387(iParam0, 1, 1))
	{
		return gameplay::is_bit_set(Global_2421621[iParam0 /*358*/].f_312, 3);
	}
	return false;
}

int func_1124(int iParam0)//Position - 0x8AA31
{
	if (iParam0 != func_9())
	{
		if (func_387(iParam0, 1, 1))
		{
			return Global_2421621[iParam0 /*358*/].f_312.f_1;
		}
	}
	return -1;
}

var func_1125()//Position - 0x8AA5F
{
	return Global_68127;
}

int func_1126(int iParam0, int iParam1)//Position - 0x8AA6B
{
	switch (iParam0)
	{
		case 5:
			if (iParam1 > -1)
			{
				return Global_1352862.f_203[iParam1];
			}
			break;
	}
	return gameplay::is_bit_set(Global_1352862.f_1015, iParam0);
}

int func_1127(char* sParam0)//Position - 0x8AAA6
{
	ui::_0x0A24DA3A41B718F5(sParam0);
	return ui::_0x10BDDBFC529428DD(0);
}

int func_1128(int iParam0, var uParam1)//Position - 0x8AAB9
{
	return uParam1->f_1 == iParam0;
}

int func_1129()//Position - 0x8AAC8
{
	return gameplay::get_game_timer() <= Global_17290.f_5745 + 100;
}

void func_1130(var uParam0)//Position - 0x8AADD
{
	int iVar0;
	int iVar1;
	int iVar2;
	
	if (uParam0->f_1 == *uParam0)
	{
		if (uParam0->f_1 == 1)
		{
			iVar0 = 0;
			func_1179(uParam0, &iVar0);
			ui::hide_hud_and_radar_this_frame();
			ui::hide_help_text_this_frame();
			func_1178();
			func_1086();
			func_1158(1, -1, 1, 0, 1, -1082130432, 0, 0);
			if (!gameplay::is_bit_set(uParam0->f_2, 3))
			{
				return;
			}
			if (controls::is_control_pressed(2, 201) || gameplay::is_bit_set(iVar0, 0))
			{
				gameplay::set_bit(&(uParam0->f_2), 1);
				gameplay::clear_bit(&(uParam0->f_2), 3);
				audio::play_sound_frontend(-1, "SELECT", "HUD_FREEMODE_SOUNDSET", 1);
			}
			else if (controls::is_control_pressed(2, 202) || gameplay::is_bit_set(iVar0, 1))
			{
				if (func_1157(uParam0, 1))
				{
					gameplay::set_bit(&(uParam0->f_2), 2);
					gameplay::clear_bit(&(uParam0->f_2), 3);
					audio::play_sound_frontend(-1, "BACK", "HUD_FREEMODE_SOUNDSET", 1);
				}
			}
			else if (func_1156(&(uParam0->f_30), &(uParam0->f_31), 1))
			{
				if (controls::is_control_pressed(2, 188) || gameplay::is_bit_set(iVar0, 2))
				{
					if (func_129(uParam0, (uParam0->f_4 - 1)))
					{
						iVar1 = (uParam0->f_4 - 1);
						while (!func_1155(uParam0, iVar1))
						{
							if (!func_129(uParam0, (iVar1 - 1)))
							{
								iVar1 = func_1154(uParam0);
							}
							else
							{
								iVar1 = (iVar1 - 1);
							}
						}
					}
					else
					{
						iVar1 = func_1154(uParam0);
					}
					if (iVar1 != uParam0->f_4)
					{
						uParam0->f_4 = iVar1;
						func_1152(func_1153(uParam0, uParam0->f_4), 1, 1);
						audio::play_sound_frontend(-1, "NAV_UP_DOWN", "HUD_FREEMODE_SOUNDSET", 1);
					}
				}
				else if (controls::is_control_pressed(2, 187) || gameplay::is_bit_set(iVar0, 3))
				{
					if (func_129(uParam0, uParam0->f_4 + 1))
					{
						iVar2 = uParam0->f_4 + 1;
						while (!func_1155(uParam0, iVar2))
						{
							if (!func_129(uParam0, iVar2 + 1))
							{
								iVar2 = func_1151(uParam0);
							}
							else
							{
								iVar2++;
							}
						}
					}
					else
					{
						iVar2 = func_1151(uParam0);
					}
					if (iVar2 != uParam0->f_4)
					{
						uParam0->f_4 = iVar2;
						func_1152(func_1153(uParam0, uParam0->f_4), 1, 1);
						audio::play_sound_frontend(-1, "NAV_UP_DOWN", "HUD_FREEMODE_SOUNDSET", 1);
					}
				}
			}
		}
		return;
	}
	if (*uParam0 == 1)
	{
		if (!gameplay::is_bit_set(uParam0->f_2, 0))
		{
			func_1131(uParam0);
		}
		else
		{
			uParam0->f_1 = 1;
		}
		return;
	}
	if (*uParam0 == 0)
	{
		if (gameplay::is_bit_set(uParam0->f_2, 0))
		{
			func_1115(uParam0);
		}
		else
		{
			uParam0->f_1 = 0;
		}
		return;
	}
}

void func_1131(var uParam0)//Position - 0x8AD37
{
	int iVar0;
	int iVar1;
	int iVar2;
	
	if (func_1149(0, -1, 0))
	{
		func_1148(0);
		func_1147(&(uParam0->f_6));
		func_1146(1, 2, 1, 1, 1);
		func_1145(1, 1, 0, 0, 0);
		iVar2 = -1;
		iVar0 = 0;
		while (iVar0 < uParam0->f_5)
		{
			if (func_1155(uParam0, iVar0))
			{
				if (iVar2 == -1)
				{
					iVar2 = iVar0;
				}
				if (iVar1 == 0)
				{
					func_1133(iVar0, uParam0->f_22[iVar0], 0, 1, 0, 0);
				}
				else
				{
					func_1133(iVar0, uParam0->f_22[iVar0], 0, 1, 0, 0);
				}
			}
			iVar0++;
		}
		if (iVar2 > -1)
		{
			uParam0->f_4 = iVar2;
			func_1152(iVar2, 1, 1);
		}
		func_1132(201, "ITEM_SELECT", -1, 0);
		if (func_1157(uParam0, 1))
		{
			func_1132(202, "ITEM_BACK", -1, 0);
		}
		gameplay::set_bit(&(uParam0->f_2), 0);
		gameplay::set_bit(&(uParam0->f_2), 3);
		if (func_1157(uParam0, 0))
		{
			audio::play_sound_frontend(-1, "SELECT", "HUD_FREEMODE_SOUNDSET", 1);
		}
	}
}

void func_1132(int iParam0, char* sParam1, int iParam2, int iParam3)//Position - 0x8AE22
{
	char* sVar0;
	
	sVar0 = controls::_get_control_action_name(2, iParam0, true);
	if (Global_17290.f_4639 >= 12)
	{
		StringCopy(&Global_2593914, sVar0, 64);
		StringCopy(&(Global_2593914.f_16), sParam1, 16);
		Global_2593914.f_20 = iParam2;
		return;
		return;
	}
	if (!iParam3)
	{
		gameplay::set_bit(&(Global_17290.f_4922), Global_17290.f_4639);
	}
	StringCopy(&(Global_17290.f_4641[Global_17290.f_4639 /*16*/]), sVar0, 64);
	StringCopy(&(Global_17290.f_4834[Global_17290.f_4639 /*4*/]), sParam1, 16);
	Global_17290.f_4883[Global_17290.f_4639] = iParam2;
	Global_17290.f_4896[Global_17290.f_4639] = iParam0;
	Global_17290.f_4909[Global_17290.f_4639] = 32;
	Global_17290.f_4639++;
}

void func_1133(int iParam0, char* sParam1, int iParam2, int iParam3, int iParam4, int iParam5)//Position - 0x8AED7
{
	int iVar0;
	float fVar1;
	float fVar2;
	float fVar3;
	float fVar4;
	
	if (Global_17290.f_5088 > iParam0)
	{
		return;
	}
	if (Global_17290.f_5088 >= 128)
	{
		return;
	}
	if (Global_17290.f_5090 >= 256)
	{
		return;
	}
	if (Global_17290.f_5610 < Global_17290.f_5608)
	{
		return;
	}
	if (Global_17290.f_5088 != iParam0)
	{
		Global_17290.f_5088 = iParam0;
		Global_17290.f_5089 = 0;
	}
	iVar0 = Global_17290.f_4926[Global_17290.f_5089];
	if (iVar0 != 1)
	{
		while (Global_17290.f_5089 < 4 && iVar0 != 1)
		{
			Global_17290.f_5089++;
			iVar0 = Global_17290.f_4926[Global_17290.f_5089];
		}
		if (iVar0 != 1)
		{
			return;
		}
	}
	StringCopy(&(Global_17290.f_73[Global_17290.f_5090 /*6*/]), sParam1, 24);
	if (!gameplay::is_string_null_or_empty(sParam1) && !ui::does_text_label_exist(sParam1))
	{
	}
	Global_17290.f_1610[Global_17290.f_5090] = iParam3;
	Global_17290.f_1867[Global_17290.f_5090] = iParam4;
	Global_17290.f_5090++;
	if (!iParam3)
	{
		func_1144(Global_17290.f_5088, 1);
	}
	else
	{
		func_1144(Global_17290.f_5088, 0);
	}
	if (iParam2 == 0)
	{
		fVar1 = func_1141(&(Global_17290.f_73[Global_17290.f_5090 /*6*/]));
		if (Global_17290.f_4945[Global_17290.f_5089])
		{
			func_1135(26, 1, 0, &fVar2, &fVar3, 0);
			fVar1 = (fVar1 + (fVar2 * 2f));
		}
		if (fVar1 > Global_17290.f_4938[Global_17290.f_5089])
		{
			Global_17290.f_4938[Global_17290.f_5089] = fVar1;
		}
	}
	if (iParam5)
	{
		if (iParam2 == 0)
		{
			fVar4 = func_1134(&(Global_17290.f_73[Global_17290.f_5090 /*6*/]));
			if (fVar4 > Global_17290.f_5612[iParam0])
			{
				Global_17290.f_5612[iParam0] = fVar4;
			}
		}
	}
	gameplay::set_bit(&(Global_17290.f_4959[iParam0]), Global_17290.f_5089);
	Global_17290.f_5089++;
	Global_17290.f_5611 = 1;
	Global_17290.f_5609 = (Global_17290.f_5090 - 1);
	Global_17290.f_5610 = 0;
	Global_17290.f_5608 = iParam2;
}

float func_1134(char* sParam0)//Position - 0x8B0E3
{
	if (!ui::does_text_label_exist(sParam0))
	{
	}
	return ui::_get_text_scale_height(0.35f, 0);
}

bool func_1135(int iParam0, int iParam1, int iParam2, float fParam3, float fParam4, int iParam5)//Position - 0x8B0FF
{
	char cVar0[64];
	char cVar16[64];
	int iVar32;
	int iVar33;
	float fVar34;
	float fVar35;
	float fVar36;
	vector3 vVar37;
	
	StringCopy(&cVar0, func_1140(iParam0), 64);
	StringCopy(&cVar16, func_1138(iParam0, iParam1), 64);
	if (gameplay::get_hash_key(&cVar16) != 0)
	{
		fVar34 = 1f;
		if (iParam5)
		{
			graphics::_get_screen_active_resolution(&iVar32, &iVar33);
			fVar35 = graphics::_get_screen_aspect_ratio(0);
			if (func_1137())
			{
				iVar32 = system::round((system::to_float(iVar33) * fVar35));
			}
			fVar36 = (system::to_float(iVar32) / system::to_float(iVar33));
			fVar34 = (fVar36 / fVar35);
			if (func_1137())
			{
				fVar34 = 1f;
			}
			if (script::_get_number_of_instances_of_streamed_script(joaat("director_mode")) > 0)
			{
				graphics::get_screen_resolution(&iVar32, &iVar33);
			}
			iVar32 = system::round((system::to_float(iVar32) / fVar34));
			iVar33 = system::round((system::to_float(iVar33) / fVar34));
		}
		else
		{
			graphics::get_screen_resolution(&iVar32, &iVar33);
		}
		vVar37 = { graphics::get_texture_resolution(&cVar0, &cVar16) };
		vVar37.x = (vVar37.x * (func_1136(iParam0) / fVar34));
		vVar37.y = (vVar37.y * (func_1136(iParam0) / fVar34));
		if (!iParam2)
		{
			vVar37.x = (vVar37.x - 2f);
			vVar37.y = (vVar37.y - 2f);
		}
		if (iParam0 == 30)
		{
			vVar37.x = 288f;
			vVar37.y = 106f;
		}
		if (iParam0 == 29 && gameplay::get_hash_key(&(Global_17290.f_6703[29 /*16*/])) == -1487683087)
		{
			vVar37.x = 106f;
			vVar37.y = 106f;
		}
		*fParam3 = ((vVar37.x / IntToFloat(iVar32)) * IntToFloat((iVar32 / iVar33)));
		*fParam4 = (((vVar37.y / IntToFloat(iVar33)) / (vVar37.x / IntToFloat(iVar32))) * *fParam3);
		if (!iParam5)
		{
			if (!graphics::get_is_widescreen() && iParam0 != 30)
			{
				*fParam3 = (*fParam3 * 1.33f);
			}
		}
		if (iParam0 == 29)
		{
			if (*fParam3 > Global_17289)
			{
				*fParam4 = (*fParam4 * (Global_17289 / *fParam3));
				*fParam3 = Global_17289;
			}
		}
		return true;
	}
	return false;
}

float func_1136(int iParam0)//Position - 0x8B2B0
{
	switch (iParam0)
	{
		case 33:
		case 4:
		case 11:
		case 31:
		case 20:
		case 15:
		case 10:
		case 12:
		case 13:
		case 32:
		case 9:
		case 5:
		case 6:
		case 7:
		case 14:
		case 18:
		case 19:
		case 17:
		case 28:
		case 26:
		case 27:
		case 49:
			return 0.5f;
			break;
	}
	return 1f;
}

bool func_1137()//Position - 0x8B34F
{
	int iVar0;
	int iVar1;
	float fVar2;
	
	graphics::_get_screen_active_resolution(&iVar0, &iVar1);
	fVar2 = (system::to_float(iVar0) / system::to_float(iVar1));
	if (fVar2 > 3.5f)
	{
		return true;
	}
	return false;
}

var func_1138(int iParam0, int iParam1)//Position - 0x8B381
{
	char* sVar0[2];
	var uVar3;
	struct<13> Var19;
	
	if (!gameplay::is_string_null_or_empty(&(Global_17290.f_6703[iParam0 /*16*/])))
	{
		if (gameplay::get_hash_key(&(Global_17290.f_6703[iParam0 /*16*/])) == -1487683087)
		{
			Var19 = { func_272(player::player_id()) };
			if (network::_0x5835D9CD92E83184(&Var19, &uVar3))
			{
				return func_1139(&uVar3);
			}
		}
		else
		{
			return func_1139(&(Global_17290.f_6703[iParam0 /*16*/]));
		}
	}
	switch (iParam0)
	{
		case 3:
			sVar0[0] = "MP_hostCrown";
			sVar0[1] = "MP_hostCrown";
			break;
		
		case 21:
			sVar0[0] = "MP_SpecItem_Coke";
			sVar0[1] = "MP_SpecItem_Coke";
			break;
		
		case 22:
			sVar0[0] = "MP_SpecItem_Heroin";
			sVar0[1] = "MP_SpecItem_Heroin";
			break;
		
		case 23:
			sVar0[0] = "MP_SpecItem_Weed";
			sVar0[1] = "MP_SpecItem_Weed";
			break;
		
		case 24:
			sVar0[0] = "MP_SpecItem_Meth";
			sVar0[1] = "MP_SpecItem_Meth";
			break;
		
		case 25:
			sVar0[0] = "MP_SpecItem_Cash";
			sVar0[1] = "MP_SpecItem_Cash";
			break;
		
		case 1:
			sVar0[0] = "shop_NEW_Star";
			sVar0[1] = "shop_NEW_Star";
			break;
		
		case 2:
			sVar0[0] = "shop_NEW_Star";
			sVar0[1] = "shop_NEW_Star";
			break;
		
		case 4:
			sVar0[0] = "Shop_Tick_Icon";
			sVar0[1] = "Shop_Tick_Icon";
			break;
		
		case 6:
			sVar0[0] = "Shop_Box_CrossB";
			sVar0[1] = "Shop_Box_Cross";
			break;
		
		case 7:
			sVar0[0] = "Shop_Box_BlankB";
			sVar0[1] = "Shop_Box_Blank";
			break;
		
		case 5:
			sVar0[0] = "Shop_Box_TickB";
			sVar0[1] = "Shop_Box_Tick";
			break;
		
		case 8:
			sVar0[0] = "shop_NEW_Star";
			sVar0[1] = "shop_NEW_Star";
			break;
		
		case 9:
			sVar0[0] = "Shop_Clothing_Icon_B";
			sVar0[1] = "Shop_Clothing_Icon_A";
			break;
		
		case 10:
			sVar0[0] = "Shop_GunClub_Icon_B";
			sVar0[1] = "Shop_GunClub_Icon_A";
			break;
		
		case 17:
			sVar0[0] = "Shop_Ammo_Icon_B";
			sVar0[1] = "Shop_Ammo_Icon_A";
			break;
		
		case 18:
			sVar0[0] = "Shop_Armour_Icon_B";
			sVar0[1] = "Shop_Armour_Icon_A";
			break;
		
		case 19:
			sVar0[0] = "Shop_Health_Icon_B";
			sVar0[1] = "Shop_Health_Icon_A";
			break;
		
		case 20:
			sVar0[0] = "Shop_MakeUp_Icon_B";
			sVar0[1] = "Shop_MakeUp_Icon_A";
			break;
		
		case 11:
			sVar0[0] = "Shop_Tattoos_Icon_B";
			sVar0[1] = "Shop_Tattoos_Icon_A";
			break;
		
		case 12:
			sVar0[0] = "Shop_Garage_Icon_B";
			sVar0[1] = "Shop_Garage_Icon_A";
			break;
		
		case 13:
			sVar0[0] = "Shop_Garage_Bike_Icon_B";
			sVar0[1] = "Shop_Garage_Bike_Icon_A";
			break;
		
		case 14:
			sVar0[0] = "Shop_Barber_Icon_B";
			sVar0[1] = "Shop_Barber_Icon_A";
			break;
		
		case 15:
			sVar0[0] = "shop_Lock";
			sVar0[1] = "shop_Lock";
			break;
		
		case 16:
			sVar0[0] = "Shop_Tick_Icon";
			sVar0[1] = "Shop_Tick_Icon";
			break;
		
		case 26:
			sVar0[0] = "arrowleft";
			sVar0[1] = "arrowleft";
			break;
		
		case 27:
			sVar0[0] = "arrowright";
			sVar0[1] = "arrowright";
			break;
		
		case 28:
			sVar0[0] = "MP_AlertTriangle";
			sVar0[1] = "MP_AlertTriangle";
			break;
		
		case 29:
			sVar0[0] = "shop_NEW_Star";
			sVar0[1] = "shop_NEW_Star";
			break;
		
		case 31:
			sVar0[0] = "Shop_Michael_Icon_B";
			sVar0[1] = "Shop_Michael_Icon_A";
			break;
		
		case 32:
			sVar0[0] = "Shop_Franklin_Icon_B";
			sVar0[1] = "Shop_Franklin_Icon_A";
			break;
		
		case 33:
			sVar0[0] = "Shop_Trevor_Icon_B";
			sVar0[1] = "Shop_Trevor_Icon_A";
			break;
		
		case 48:
			sVar0[0] = "SaleIcon";
			sVar0[1] = "SaleIcon";
			break;
		
		case 49:
			sVar0[0] = "Shop_Tick_Icon";
			sVar0[1] = "Shop_Tick_Icon";
			break;
		
		case 0:
			sVar0[0] = "";
			sVar0[1] = "";
			break;
	}
	if (iParam1)
	{
		return sVar0[0];
	}
	return sVar0[1];
}

var func_1139(var uParam0)//Position - 0x8B7B4
{
	return uParam0;
}

char* func_1140(int iParam0)//Position - 0x8B7BE
{
	var uVar0;
	struct<13> Var16;
	
	if (!gameplay::is_string_null_or_empty(&(Global_17290.f_5886[iParam0 /*16*/])))
	{
		if (gameplay::get_hash_key(&(Global_17290.f_5886[iParam0 /*16*/])) == -1487683087)
		{
			Var16 = { func_272(player::player_id()) };
			network::_0x5835D9CD92E83184(&Var16, &uVar0);
			return func_1139(&uVar0);
		}
		else
		{
			return func_1139(&(Global_17290.f_5886[iParam0 /*16*/]));
		}
	}
	if (iParam0 == 48)
	{
		return "MPShopSale";
	}
	return "CommonMenu";
}

float func_1141(char* sParam0)//Position - 0x8B833
{
	if (!gameplay::is_string_null(sParam0))
	{
		if (gameplay::get_hash_key(sParam0) == 0)
		{
			return 0f;
		}
	}
	else
	{
		return 0f;
	}
	func_1142(0, 1, 0, 0, 0, 0, 0);
	ui::_set_text_entry_for_width(sParam0);
	return ui::_get_text_screen_width(1);
}

void func_1142(int iParam0, int iParam1, int iParam2, int iParam3, int iParam4, int iParam5, int iParam6)//Position - 0x8B870
{
	int iVar0;
	int iVar1;
	int iVar2;
	int iVar3;
	
	if (iParam2)
	{
		if (iParam3)
		{
			func_1143(Global_17290.f_5878[iParam4], &iVar0, &iVar1, &iVar2);
			if ((iVar0 < 20 && iVar1 < 20) && iVar2 < 20)
			{
				if (iParam0 == 0)
				{
					ui::get_hud_colour(1, &iVar0, &iVar1, &iVar2, &iVar3);
				}
			}
			else if ((iVar0 > 230 && iVar1 > 230) && iVar2 > 230)
			{
				if (iParam0)
				{
					iVar0 = 0;
					iVar1 = 0;
					iVar2 = 0;
				}
			}
			ui::set_text_colour(iVar0, iVar1, iVar2, 255);
		}
		else if (iParam1)
		{
			if (iParam0)
			{
				ui::get_hud_colour(14, &iVar0, &iVar1, &iVar2, &iVar3);
				ui::set_text_colour(iVar0, iVar1, iVar2, 255);
			}
			else
			{
				ui::get_hud_colour(12, &iVar0, &iVar1, &iVar2, &iVar3);
				ui::set_text_colour(iVar0, iVar1, iVar2, 255);
			}
		}
		else if (iParam0)
		{
			ui::set_text_colour(155, 155, 155, 255);
		}
		else
		{
			ui::set_text_colour(155, 155, 155, 255);
		}
	}
	else if (iParam1)
	{
		if (iParam0)
		{
			ui::set_text_colour(0, 0, 0, system::floor((255f * 0.8f)));
		}
		else
		{
			ui::get_hud_colour(1, &iVar0, &iVar1, &iVar2, &iVar3);
			ui::set_text_colour(iVar0, iVar1, iVar2, iVar3);
		}
	}
	else if (iParam0)
	{
		ui::set_text_colour(155, 155, 155, 255);
	}
	else
	{
		ui::set_text_colour(155, 155, 155, 255);
	}
	ui::set_text_scale(0f, 0.35f);
	ui::set_text_justification(1);
	if (iParam5)
	{
		ui::set_text_scale(0f, 0.425f);
		ui::set_text_font(4);
	}
	else if (iParam6)
	{
		ui::set_text_scale(0f, 0.425f);
		ui::set_text_font(6);
	}
	else
	{
		ui::set_text_font(0);
	}
	ui::set_text_wrap(0f, 1f);
	ui::set_text_centre(0);
	ui::set_text_dropshadow(0, 0, 0, 0, 0);
	ui::set_text_edge(0, 0, 0, 0, 0);
}

void func_1143(int iParam0, var uParam1, var uParam2, var uParam3)//Position - 0x8BA1E
{
	switch (iParam0)
	{
		case 0:
			*uParam1 = 8;
			*uParam2 = 8;
			*uParam3 = 8;
			break;
		
		case 1:
			*uParam1 = 37;
			*uParam2 = 37;
			*uParam3 = 39;
			break;
		
		case 22:
			*uParam1 = 140;
			*uParam2 = 146;
			*uParam3 = 154;
			break;
		
		case 23:
			*uParam1 = 91;
			*uParam2 = 93;
			*uParam3 = 94;
			break;
		
		case 6:
			*uParam1 = 81;
			*uParam2 = 84;
			*uParam3 = 89;
			break;
		
		case 111:
			*uParam1 = 240;
			*uParam2 = 240;
			*uParam3 = 240;
			break;
		
		case 28:
			*uParam1 = 150;
			*uParam2 = 8;
			*uParam3 = 0;
			break;
		
		case 34:
			*uParam1 = 38;
			*uParam2 = 3;
			*uParam3 = 6;
			break;
		
		case 88:
			*uParam1 = 245;
			*uParam2 = 137;
			*uParam3 = 15;
			break;
		
		case 45:
			*uParam1 = 74;
			*uParam2 = 22;
			*uParam3 = 7;
			break;
		
		case 56:
			*uParam1 = 45;
			*uParam2 = 58;
			*uParam3 = 53;
			break;
		
		case 58:
			*uParam1 = 71;
			*uParam2 = 120;
			*uParam3 = 60;
			break;
		
		case 54:
			*uParam1 = 77;
			*uParam2 = 98;
			*uParam3 = 104;
			break;
		
		case 73:
			*uParam1 = 14;
			*uParam2 = 49;
			*uParam3 = 109;
			break;
		
		case 68:
			*uParam1 = 22;
			*uParam2 = 34;
			*uParam3 = 72;
			break;
		
		case 140:
			*uParam1 = 0;
			*uParam2 = 174;
			*uParam3 = 239;
			break;
		
		case 131:
			*uParam1 = 255;
			*uParam2 = 183;
			*uParam3 = 0;
			break;
		
		case 90:
			*uParam1 = 142;
			*uParam2 = 140;
			*uParam3 = 70;
			break;
		
		case 97:
			*uParam1 = 156;
			*uParam2 = 141;
			*uParam3 = 113;
			break;
		
		case 89:
			*uParam1 = 145;
			*uParam2 = 115;
			*uParam3 = 71;
			break;
		
		case 105:
			*uParam1 = 98;
			*uParam2 = 68;
			*uParam3 = 40;
			break;
		
		case 100:
			*uParam1 = 124;
			*uParam2 = 27;
			*uParam3 = 68;
			break;
		
		case 99:
			*uParam1 = 114;
			*uParam2 = 42;
			*uParam3 = 63;
			break;
		
		case 136:
			*uParam1 = 246;
			*uParam2 = 151;
			*uParam3 = 153;
			break;
		
		case 49:
			*uParam1 = 32;
			*uParam2 = 32;
			*uParam3 = 44;
			break;
		
		case 146:
			*uParam1 = 26;
			*uParam2 = 1;
			*uParam3 = 23;
			break;
		
		default:
			*uParam1 = 255;
			*uParam2 = 255;
			*uParam3 = 255;
			break;
	}
}

void func_1144(int iParam0, int iParam1)//Position - 0x8BCA8
{
	int iVar0;
	
	iVar0 = system::floor((system::to_float(iParam0) / 32f));
	if (iParam1)
	{
		gameplay::set_bit(&(Global_17290.f_5881[iVar0]), (iParam0 - iVar0 * 32));
	}
	else
	{
		gameplay::clear_bit(&(Global_17290.f_5881[iVar0]), (iParam0 - iVar0 * 32));
	}
}

void func_1145(int iParam0, int iParam1, int iParam2, int iParam3, int iParam4)//Position - 0x8BCF4
{
	Global_17290.f_4926[0] = iParam0;
	Global_17290.f_4926[1] = iParam1;
	Global_17290.f_4926[2] = iParam2;
	Global_17290.f_4926[3] = iParam3;
	Global_17290.f_4926[4] = iParam4;
	Global_17290.f_5096 = 0;
	if (iParam0 != 0)
	{
		Global_17290.f_5096++;
	}
	if (iParam1 != 0)
	{
		Global_17290.f_5096++;
	}
	if (iParam2 != 0)
	{
		Global_17290.f_5096++;
	}
	if (iParam3 != 0)
	{
		Global_17290.f_5096++;
	}
	if (iParam4 != 0)
	{
		Global_17290.f_5096++;
	}
}

void func_1146(int iParam0, int iParam1, int iParam2, int iParam3, int iParam4)//Position - 0x8BD9E
{
	Global_17290.f_4953[0] = iParam0;
	Global_17290.f_4953[1] = iParam1;
	Global_17290.f_4953[2] = iParam2;
	Global_17290.f_4953[3] = iParam3;
	Global_17290.f_4953[4] = iParam4;
}

void func_1147(char* sParam0)//Position - 0x8BDDD
{
	int iVar0;
	
	StringCopy(&(Global_17290.f_1), sParam0, 16);
	Global_17290.f_68 = 0;
	Global_17290.f_69 = 0;
	Global_17290.f_70 = 0;
	Global_17290.f_71 = 0;
	Global_17290.f_72 = 0;
	iVar0 = 0;
	while (iVar0 < 4)
	{
		Global_17290.f_5[iVar0] = 0;
		iVar0++;
	}
}

void func_1148(int iParam0)//Position - 0x8BE28
{
	int iVar0;
	int iVar1;
	float fVar2;
	
	iVar0 = 0;
	while (iVar0 < 256)
	{
		StringCopy(&(Global_17290.f_73[iVar0 /*6*/]), "", 24);
		iVar1 = 0;
		while (iVar1 < 4)
		{
			Global_17290.f_2124[iVar0 /*5*/][iVar1] = 0;
			iVar1++;
		}
		iVar0++;
	}
	iVar0 = 0;
	while (iVar0 < 32)
	{
		StringCopy(&(Global_2453012[iVar0 /*16*/]), "", 64);
		iVar0++;
	}
	iVar0 = 0;
	while (iVar0 < 256)
	{
		Global_17290.f_3918[iVar0] = 0;
		iVar0++;
	}
	iVar0 = 0;
	while (iVar0 < 128)
	{
		Global_17290.f_4175[iVar0] = 0f;
		iVar0++;
	}
	iVar0 = 0;
	while (iVar0 < 128)
	{
		Global_17290.f_4433[iVar0] = 0;
		iVar0++;
	}
	iVar0 = 0;
	while (iVar0 < 128)
	{
		Global_17290.f_4959[iVar0] = 0;
		Global_17290.f_5097[iVar0] = 0;
		Global_17290.f_5226[iVar0] = 0;
		Global_17290.f_5746[iVar0] = 0f;
		Global_17290.f_5355[iVar0] = 0;
		Global_17290.f_5612[iVar0] = 0f;
		iVar0++;
	}
	iVar0 = 0;
	while (iVar0 < 5)
	{
		Global_17290.f_4926[iVar0] = 0;
		Global_17290.f_4938[iVar0] = 0f;
		Global_17290.f_4932[iVar0] = -1f;
		Global_17290.f_4945[iVar0] = 0;
		Global_17290.f_4953[iVar0] = 1;
		iVar0++;
	}
	iVar0 = 0;
	while (iVar0 < 12)
	{
		StringCopy(&(Global_17290.f_4834[iVar0 /*4*/]), "", 16);
		Global_17290.f_4883[iVar0] = -1;
		Global_17290.f_4896[iVar0] = 353;
		Global_17290.f_4909[iVar0] = 32;
		iVar0++;
	}
	iVar0 = 0;
	while (iVar0 < 51)
	{
		StringCopy(&(Global_17290.f_5886[iVar0 /*16*/]), "", 64);
		StringCopy(&(Global_17290.f_6703[iVar0 /*16*/]), "", 64);
		iVar0++;
	}
	StringCopy(&(Global_2593914.f_16), "", 16);
	Global_2593914.f_20 = -1;
	Global_17290 = 0;
	Global_17290.f_5088 = 0;
	Global_17290.f_5089 = 0;
	Global_17290.f_5090 = 0;
	Global_17290.f_5092 = 0;
	Global_17290.f_5093 = 0;
	Global_17290.f_5094 = 0;
	Global_17290.f_5091 = 0;
	Global_17290.f_5741 = 0;
	Global_17290.f_5606 = 0;
	Global_17290.f_5605 = 0;
	Global_17290.f_5607 = 0;
	StringCopy(&(Global_17290.f_4562), "", 16);
	Global_17290.f_4632 = 0;
	Global_17290.f_4633 = 0;
	Global_17290.f_4634 = 0;
	Global_17290.f_4635 = 0;
	Global_17290.f_4636 = 0;
	Global_17290.f_4637 = 0;
	iVar0 = 0;
	while (iVar0 < 4)
	{
		Global_17290.f_4566[iVar0] = 0;
		iVar0++;
	}
	Global_17290.f_4638 = 0;
	StringCopy(&(Global_2593914.f_21), "", 16);
	Global_2593914.f_61 = 0;
	Global_2593914.f_62 = 0;
	Global_2593914.f_63 = 0;
	Global_2593914.f_64 = 0;
	Global_2593914.f_65 = 0;
	Global_2593914.f_66 = 0;
	iVar0 = 0;
	while (iVar0 < 4)
	{
		Global_2593914.f_25[iVar0] = 0;
		iVar0++;
	}
	Global_2593914.f_67 = 0;
	StringCopy(&(Global_17290.f_1), "", 16);
	Global_17290.f_4944 = 0f;
	Global_17290.f_68 = 0;
	Global_17290.f_69 = 0;
	Global_17290.f_70 = 0;
	Global_17290.f_71 = 0;
	Global_17290.f_72 = 0;
	iVar0 = 0;
	while (iVar0 < 4)
	{
		Global_17290.f_5[iVar0] = 0;
		iVar0++;
	}
	Global_17290.f_5611 = 0;
	Global_17290.f_5610 = 0;
	Global_17290.f_5608 = 0;
	Global_17290.f_5609 = 0;
	Global_17290.f_4639 = 0;
	Global_17290.f_4640 = 0;
	Global_17290.f_5095 = 10;
	Global_17290.f_5096 = 0;
	Global_17290.f_5743 = 0f;
	Global_17290.f_5744 = 0f;
	Global_17290.f_5598 = 0;
	Global_17290.f_5599 = 0;
	Global_17290.f_5600 = 0f;
	Global_17290.f_5601 = 0;
	Global_17290.f_5603 = 0;
	Global_17290.f_5602 = 0;
	Global_17290.f_5604 = 0;
	Global_17290.f_7890 = 0;
	iVar0 = 0;
	while (iVar0 < 2)
	{
		Global_17290.f_5875[iVar0] = -1;
		Global_17290.f_5878[iVar0] = -1;
		iVar0++;
	}
	Global_17290.f_4951 = 0f;
	Global_17290.f_4922 = 0;
	Global_17290.f_4952 = 0;
	iVar0 = 0;
	while (iVar0 < Global_17290.f_5881)
	{
		Global_17290.f_5881[iVar0] = 0;
		iVar0++;
	}
	Global_17290.f_7869 = 0;
	Global_17290.f_7864 = 0;
	Global_17290.f_7874 = 0;
	Global_17290.f_7879 = 0;
	Global_17290.f_7884 = 0;
	Global_17290.f_7886 = 0;
	Global_17290.f_7892 = 0;
	Global_17287 = 0.05f;
	Global_17288 = 0.05f;
	Global_17289 = 0.225f;
	fVar2 = graphics::_get_screen_aspect_ratio(0);
	if (iParam0)
	{
		Global_17289 = (0.225f * ((16f / 9f) / fVar2));
	}
	else if (fVar2 < 1.77777f)
	{
		Global_17289 = (0.225f * ((16f / 9f) / fVar2));
	}
	else
	{
		Global_17289 = 0.225f;
	}
}

int func_1149(char* sParam0, int iParam1, int iParam2)//Position - 0x8C2D7
{
	var uVar0;
	int iVar1;
	int iVar2;
	
	if (!func_1118(&uVar0, 1, iParam1))
	{
		return false;
	}
	iVar1 = true;
	StringCopy(&(Global_17290.f_5505[uVar0 /*4*/]), sParam0, 16);
	if (!gameplay::is_string_null_or_empty(&(Global_17290.f_5505[uVar0 /*4*/])))
	{
		ui::request_additional_text(&(Global_17290.f_5505[uVar0 /*4*/]), 9);
		Global_17290.f_5498[uVar0] = 1;
		if (!ui::has_this_additional_text_loaded(&(Global_17290.f_5505[uVar0 /*4*/]), 9))
		{
			iVar1 = false;
		}
	}
	graphics::request_streamed_texture_dict("CommonMenu", false);
	Global_17290.f_5484[uVar0] = 1;
	if (!graphics::has_streamed_texture_dict_loaded("CommonMenu"))
	{
		iVar1 = false;
	}
	if (iParam2)
	{
		graphics::request_streamed_texture_dict("MPShopSale", false);
		Global_17290.f_5491[uVar0] = 1;
		if (!graphics::has_streamed_texture_dict_loaded("MPShopSale"))
		{
			iVar1 = false;
		}
	}
	iVar2 = false;
	StringCopy(&(Global_17290.f_5530[uVar0 /*10*/].f_1), "instructional_buttons", 24);
	iVar2 = func_1150(&(Global_17290.f_5530[uVar0 /*10*/]));
	if (!iVar1 || !iVar2)
	{
	}
	return (iVar1 && iVar2);
}

int func_1150(var uParam0)//Position - 0x8C3CD
{
	switch (uParam0->f_9)
	{
		case 0:
			if (!graphics::has_scaleform_movie_loaded(*uParam0))
			{
				*uParam0 = unk_0x67D02A194A2FC2BD(&(uParam0->f_1));
				uParam0->f_9 = 1;
				if (uParam0->f_7)
				{
					if (graphics::has_scaleform_movie_loaded(*uParam0))
					{
						uParam0->f_8 = gameplay::get_game_timer();
						uParam0->f_9 = 2;
					}
				}
			}
			else
			{
				uParam0->f_8 = gameplay::get_game_timer();
				uParam0->f_9 = 2;
			}
			break;
		
		case 1:
			if (graphics::has_scaleform_movie_loaded(*uParam0))
			{
				uParam0->f_8 = gameplay::get_game_timer();
				uParam0->f_9 = 2;
			}
			break;
		
		case 2:
			if (!graphics::has_scaleform_movie_loaded(*uParam0))
			{
				uParam0->f_9 = 0;
			}
			break;
	}
	return uParam0->f_9 == 2;
}

int func_1151(var uParam0)//Position - 0x8C46F
{
	int iVar0;
	
	iVar0 = 0;
	while (iVar0 < uParam0->f_5)
	{
		if (func_1155(uParam0, iVar0))
		{
			return iVar0;
		}
		iVar0++;
	}
	return 0;
}

void func_1152(int iParam0, int iParam1, int iParam2)//Position - 0x8C49D
{
	int iVar0;
	int iVar1;
	
	Global_17290.f_5606 = iParam0;
	Global_17290.f_5741 = iParam2;
	if (Global_17290.f_5606 < Global_17290.f_5605)
	{
		Global_17290.f_5605 = Global_17290.f_5606;
	}
	else if ((Global_17290.f_5599 && Global_17290.f_5606 > Global_17290.f_5607) || (!Global_17290.f_5599 && Global_17290.f_5606 >= (Global_17290.f_5605 + Global_17290.f_5095)))
	{
		iVar0 = Global_17290.f_5605;
		while (iVar0 <= Global_17290.f_5606)
		{
			if (iVar0 >= 0 && iVar0 < 127)
			{
				if (Global_17290.f_4959[iVar0] != 0)
				{
					iVar1++;
				}
			}
			iVar0++;
		}
		while (iVar1 > Global_17290.f_5095 && Global_17290.f_5605 < 128)
		{
			Global_17290.f_5605++;
			iVar1 = 0;
			iVar0 = Global_17290.f_5605;
			while (iVar0 <= Global_17290.f_5606)
			{
				if (iVar0 >= 0 && iVar0 < 127)
				{
					if (Global_17290.f_4959[iVar0] != 0)
					{
						iVar1++;
					}
				}
				iVar0++;
			}
		}
	}
	Global_17290.f_5598 = 0;
	Global_17290.f_5599 = 0;
	if (iParam1)
	{
		StringCopy(&(Global_17290.f_4562), "", 16);
		StringCopy(&(Global_2593914.f_21), "", 16);
	}
}

int func_1153(var uParam0, int iParam1)//Position - 0x8C5EB
{
	int iVar0;
	int iVar1;
	
	iVar0 = 0;
	while (iVar0 < uParam0->f_5)
	{
		if (func_1155(uParam0, iVar0))
		{
			if (iParam1 == iVar0)
			{
				return iVar1;
			}
			iVar1++;
		}
		iVar0++;
	}
	return -1;
}

int func_1154(var uParam0)//Position - 0x8C626
{
	int iVar0;
	int iVar1;
	
	iVar0 = 0;
	while (iVar0 < uParam0->f_5)
	{
		if (func_1155(uParam0, iVar0))
		{
			iVar1 = iVar0;
		}
		iVar0++;
	}
	return iVar1;
}

int func_1155(var uParam0, int iParam1)//Position - 0x8C654
{
	if (func_129(uParam0, iParam1))
	{
		return gameplay::is_bit_set(uParam0->f_3, iParam1);
	}
	return false;
}

int func_1156(var uParam0, var uParam1, int iParam2)//Position - 0x8C675
{
	int iVar0;
	int iVar1;
	
	iVar1 = 150;
	if (iParam2)
	{
		if (((controls::is_disabled_control_pressed(2, 188) || controls::get_control_normal(2, 219) < -0.3f) || controls::is_disabled_control_pressed(2, 241)) || controls::is_control_just_pressed(2, 188))
		{
			if (controls::is_disabled_control_pressed(2, 241))
			{
				iVar1 = 100;
			}
			if (gameplay::absi(network::get_time_difference(*uParam0, network::get_network_time())) > iVar1)
			{
				*uParam0 = network::get_network_time();
				iVar0 = 1;
				*uParam1 = 1;
			}
		}
		if (((controls::is_disabled_control_pressed(2, 187) || controls::get_control_normal(2, 219) > 0.3f) || controls::is_disabled_control_pressed(2, 242)) || controls::is_control_just_pressed(2, 187))
		{
			if (controls::is_disabled_control_pressed(2, 242))
			{
				iVar1 = 100;
			}
			if (gameplay::absi(network::get_time_difference(*uParam0, network::get_network_time())) > iVar1)
			{
				*uParam0 = network::get_network_time();
				iVar0 = 1;
				*uParam1 = -1;
			}
		}
	}
	else
	{
		if ((controls::is_disabled_control_pressed(2, 190) || controls::get_control_normal(2, 218) > 0.3f) || controls::is_control_just_released(2, 201))
		{
			if (gameplay::absi(network::get_time_difference(*uParam0, network::get_network_time())) > iVar1)
			{
				*uParam0 = network::get_network_time();
				iVar0 = 1;
				*uParam1 = 1;
			}
		}
		if (controls::is_disabled_control_pressed(2, 189) || controls::get_control_normal(2, 218) < -0.3f)
		{
			if (gameplay::absi(network::get_time_difference(*uParam0, network::get_network_time())) > iVar1)
			{
				*uParam0 = network::get_network_time();
				iVar0 = 1;
				*uParam1 = -1;
			}
		}
	}
	return iVar0;
}

int func_1157(var uParam0, int iParam1)//Position - 0x8C7E4
{
	return gameplay::is_bit_set(uParam0->f_32, iParam1);
}

void func_1158(int iParam0, int iParam1, int iParam2, int iParam3, int iParam4, float fParam5, int iParam6, int iParam7)//Position - 0x8C7F6
{
	int iVar0;
	int iVar1;
	int iVar2;
	int iVar3;
	int iVar4;
	int iVar5;
	int iVar6;
	int iVar7;
	int iVar8;
	int iVar9;
	int iVar10;
	int iVar11;
	int iVar12;
	int iVar13;
	int iVar14;
	int iVar15;
	int iVar16;
	int iVar17;
	int iVar18;
	int iVar19;
	int iVar20;
	int iVar21;
	int iVar22;
	int iVar23;
	int iVar24;
	int iVar25;
	int iVar26;
	int iVar27;
	int iVar28;
	int iVar29;
	int iVar30;
	int iVar31;
	int iVar32;
	float fVar33;
	float fVar34;
	float fVar35;
	float fVar36;
	vector3 vVar37;
	int iVar40;
	float fVar41;
	float fVar42;
	float fVar43;
	float fVar44;
	float fVar45;
	int iVar46;
	int iVar47;
	int iVar48;
	float fVar49;
	int iVar50;
	int iVar51;
	int iVar52;
	int iVar53;
	int iVar54;
	float fVar55;
	float fVar56;
	float fVar57;
	float fVar58;
	int iVar59;
	int iVar60;
	float fVar61;
	float fVar62;
	float fVar63;
	char cVar64[64];
	char cVar80[64];
	float fVar96;
	int iVar97;
	float fVar98;
	float fVar99;
	int iVar100;
	int iVar101;
	int iVar102;
	int iVar103;
	int iVar104;
	
	if (!func_1118(&iVar0, 0, iParam1))
	{
		return;
	}
	if (iVar0 == -1)
	{
	}
	if (!func_1176(0, iParam6))
	{
		return;
	}
	graphics::_set_screen_draw_position(76, 84);
	graphics::_0xF5A2C681787E579D(-0.05f, -0.05f, 0f, 0f);
	fVar56 = 0f;
	fVar57 = 0f;
	if (Global_17290)
	{
		if (func_1135(29, 1, 1, &fVar35, &fVar36, iParam7))
		{
			fVar56 = fVar36;
			fVar57 = fVar35;
			fVar56 = (fVar56 + 0f);
		}
		else
		{
			Global_17290 = 0;
		}
	}
	if (gameplay::get_hash_key(&(Global_17290.f_1)) == gameplay::get_hash_key("HIDE"))
	{
		fVar58 = Global_17288;
	}
	else
	{
		fVar58 = (((Global_17288 + fVar56) + 0.034722f) + 0f);
	}
	if (fParam5 == -1f)
	{
		fParam5 = Global_17289;
	}
	fVar61 = 1f;
	if (iParam7)
	{
		graphics::_get_screen_active_resolution(&iVar59, &iVar60);
		fVar62 = graphics::_get_screen_aspect_ratio(0);
		if (func_1137())
		{
			iVar59 = system::round((system::to_float(iVar60) * fVar62));
		}
		fVar63 = (system::to_float(iVar59) / system::to_float(iVar60));
		fVar61 = (fVar63 / fVar62);
		if (func_1137())
		{
			fVar61 = 1f;
		}
		iVar59 = system::round((system::to_float(iVar59) / fVar61));
		iVar60 = system::round((system::to_float(iVar60) / fVar61));
	}
	else
	{
		graphics::get_screen_resolution(&iVar59, &iVar60);
	}
	iVar5 = 0;
	while (iVar5 < 2)
	{
		if (iVar5 == 1 && Global_17290.f_5598)
		{
			if (gameplay::get_hash_key(&(Global_17290.f_1)) == gameplay::get_hash_key("HIDE"))
			{
				fVar49 = Global_17288;
			}
			else
			{
				if (Global_17290)
				{
					StringCopy(&cVar64, func_1140(29), 64);
					StringCopy(&cVar80, func_1138(29, 1), 64);
					if (gameplay::get_hash_key(&(Global_17290.f_6703[29 /*16*/])) == -1487683087)
					{
						func_1175(Global_17287, Global_17288, fParam5, (fVar56 - 0f), 0, 0, 0, 255);
						graphics::draw_sprite(&cVar64, &cVar80, (Global_17287 + (fParam5 * 0.5f)), (Global_17288 + ((fVar56 - 0f) * 0.5f)), fVar57, (fVar56 - 0f), 0f, 255, 255, 255, 255, 0);
					}
					else
					{
						graphics::draw_sprite(&cVar64, &cVar80, (Global_17287 + (fParam5 * 0.5f)), (Global_17288 + ((fVar56 - 0f) * 0.5f)), fParam5, (fVar56 - 0f), 0f, 255, 255, 255, 255, 0);
					}
				}
				if (Global_17290.f_7864)
				{
					iVar1 = Global_17290.f_7860;
					iVar2 = Global_17290.f_7861;
					iVar3 = Global_17290.f_7862;
					iVar4 = Global_17290.f_7863;
				}
				else
				{
					iVar1 = 0;
					iVar2 = 0;
					iVar3 = 0;
					iVar4 = 255;
				}
				func_1175(Global_17287, (Global_17288 + fVar56), fParam5, 0.034722f, iVar1, iVar2, iVar3, iVar4);
				fVar49 = (((Global_17288 + fVar56) + 0.034722f) + 0f);
				if (gameplay::get_hash_key(&(Global_17290.f_1)) != 0)
				{
					func_1174();
					ui::_set_text_entry(&(Global_17290.f_1));
					iVar15 = 0;
					iVar16 = 0;
					iVar17 = 0;
					iVar18 = 0;
					iVar14 = 0;
					while (iVar14 < Global_17290.f_68)
					{
						if (Global_17290.f_5[iVar14] == 2)
						{
							ui::add_text_component_integer(Global_17290.f_10[iVar15]);
							iVar15++;
						}
						else if (Global_17290.f_5[iVar14] == 3)
						{
							ui::add_text_component_float(Global_17290.f_14[iVar16], Global_17290.f_18[iVar16]);
							iVar16++;
						}
						else if (Global_17290.f_5[iVar14] == 1)
						{
							ui::_add_text_component_item_string(&(Global_17290.f_22[iVar17 /*4*/]));
							iVar17++;
						}
						else if (Global_17290.f_5[iVar14] == 8)
						{
							ui::_add_text_component_item_string(&(Global_17290.f_22[iVar17 /*4*/]));
							iVar17++;
						}
						else if (Global_17290.f_5[iVar14] == 5)
						{
							ui::add_text_component_substring_player_name(&(Global_17290.f_35[iVar18 /*16*/]));
							iVar18++;
						}
						else if (Global_17290.f_5[iVar14] == 6)
						{
							ui::_add_text_component_item_string(&(Global_17290.f_35[iVar18 /*16*/]));
							iVar18++;
						}
						else if (Global_17290.f_5[iVar14] == 7)
						{
							ui::add_text_component_substring_player_name(&(Global_17290.f_35[iVar18 /*16*/]));
							iVar18++;
						}
						else if (Global_17290.f_5[iVar14] == 9)
						{
							ui::add_text_component_substring_player_name(&(Global_17290.f_35[iVar18 /*16*/]));
							iVar18++;
						}
						iVar14++;
					}
					ui::_draw_text((Global_17287 + 0.00390625f), ((Global_17288 + fVar56) + 0.00416664f), 0);
				}
				if (Global_17290.f_5601 > Global_17290.f_5095)
				{
					if (Global_17290.f_5604 != 0)
					{
						func_1174();
						func_1172((((Global_17287 + fParam5) - 0.00390625f) - func_1173("CM_ITEM_COUNT", Global_17290.f_5604, Global_17290.f_5603)), ((Global_17288 + fVar56) + 0.00416664f), "CM_ITEM_COUNT", Global_17290.f_5604, Global_17290.f_5603);
					}
				}
			}
			iVar6 = Global_17290.f_5605;
			iVar9 = 0;
			fVar96 = fVar49;
			if (Global_17290.f_7874)
			{
				iVar1 = Global_17290.f_7870;
				iVar2 = Global_17290.f_7871;
				iVar3 = Global_17290.f_7872;
				iVar4 = Global_17290.f_7873;
			}
			else
			{
				ui::get_hud_colour(140, &iVar1, &iVar2, &iVar3, &iVar4);
			}
			while (iVar9 < Global_17290.f_5095 && iVar6 <= Global_17290.f_5088)
			{
				if (iVar6 >= 0)
				{
					if (Global_17290.f_5355[iVar6])
					{
						if (Global_17290.f_5226[iVar6] && iVar6 != Global_17290.f_5605)
						{
							fVar49 = (fVar49 + 0.00277776f);
						}
						fVar55 = 0.034722f;
						if (Global_17290.f_5612[iVar6] != 0f)
						{
							fVar55 = Global_17290.f_5612[iVar6];
						}
						fVar49 = (fVar49 + fVar55);
						iVar9++;
					}
				}
				iVar6++;
			}
			if (iParam3)
			{
				if (iVar9 <= 1)
				{
					fVar55 = 0.034722f;
					fVar49 = (fVar49 + fVar55);
					iVar9++;
					if (Global_17290.f_5088 <= 1)
					{
						Global_17290.f_5088++;
					}
					iVar53 = 1;
				}
			}
			graphics::draw_sprite("CommonMenu", "Gradient_Bgd", (Global_17287 + (fParam5 * 0.5f)), ((fVar96 + ((fVar49 - fVar96) * 0.5f)) - 0.00138888f), fParam5, (fVar49 - fVar96), 0f, 255, 255, 255, 255, 0);
			if (Global_17290.f_5601 > Global_17290.f_5095)
			{
				if (Global_17290.f_7879)
				{
					iVar1 = Global_17290.f_7875;
					iVar2 = Global_17290.f_7876;
					iVar3 = Global_17290.f_7877;
					iVar4 = Global_17290.f_7878;
				}
				else
				{
					iVar1 = 0;
					iVar2 = 0;
					iVar3 = 0;
					iVar4 = 204;
				}
				func_1175(Global_17287, (fVar49 + 0f), fParam5, 0.034722f, iVar1, iVar2, iVar3, iVar4);
				vVar37 = { graphics::get_texture_resolution("CommonMenu", "shop_arrows_upANDdown") };
				vVar37.x = (vVar37.x * (0.5f / fVar61));
				vVar37.y = (vVar37.y * (0.5f / fVar61));
				if (Global_17290.f_7892)
				{
					iVar1 = 0;
					iVar2 = 0;
					iVar3 = 0;
					iVar4 = 255;
				}
				else
				{
					ui::get_hud_colour(1, &iVar1, &iVar2, &iVar3, &iVar4);
				}
				graphics::draw_sprite("CommonMenu", "shop_arrows_upANDdown", (Global_17287 + (fParam5 * 0.5f)), ((fVar49 + 0f) + (0.034722f * 0.5f)), ((vVar37.x / 1280f) * fVar61), ((vVar37.y / 720f) * fVar61), 0f, iVar1, iVar2, iVar3, iVar4, 0);
				fVar49 = (fVar49 + (0f + 0.034722f));
			}
			if (gameplay::get_hash_key(&(Global_17290.f_4562)) != 0 && Global_17290.f_4636 != -1)
			{
				fVar49 = (fVar49 + (0.00277776f * 2f));
				fVar41 = (Global_17287 + 0.0046875f);
				if (Global_17290.f_4638 != 0)
				{
					func_1135(Global_17290.f_4638, 1, 1, &fVar35, &fVar36, iParam7);
					fVar41 = (((Global_17287 + fVar35) + (0.00078125f * 4f)) - (0.00078125f * 1f));
				}
				func_1171(fVar41);
				ui::_set_text_gxt_entry(&(Global_17290.f_4562));
				iVar15 = 0;
				iVar16 = 0;
				iVar17 = 0;
				iVar14 = 0;
				while (iVar14 < Global_17290.f_4632)
				{
					if (Global_17290.f_4566[iVar14] == 2)
					{
						ui::add_text_component_integer(Global_17290.f_4571[iVar15]);
						iVar15++;
					}
					else if (Global_17290.f_4566[iVar14] == 3)
					{
						ui::add_text_component_float(Global_17290.f_4575[iVar16], Global_17290.f_4579[iVar16]);
						iVar16++;
					}
					else if (Global_17290.f_4566[iVar14] == 1)
					{
						ui::_add_text_component_item_string(&(Global_17290.f_4583[iVar17 /*16*/]));
						iVar17++;
					}
					else if (Global_17290.f_4566[iVar14] == 5)
					{
						ui::add_text_component_substring_player_name(&(Global_17290.f_4583[iVar17 /*16*/]));
						iVar17++;
					}
					else if (Global_17290.f_4566[iVar14] == 6)
					{
						ui::_add_text_component_item_string(&(Global_17290.f_4583[iVar17 /*16*/]));
						iVar17++;
					}
					else if (Global_17290.f_4566[iVar14] == 7)
					{
						ui::add_text_component_substring_player_name(&(Global_17290.f_4583[iVar17 /*16*/]));
						iVar17++;
					}
					else if (Global_17290.f_4566[iVar14] == 9)
					{
						ui::add_text_component_substring_player_name(&(Global_17290.f_4583[iVar17 /*16*/]));
						iVar17++;
					}
					iVar14++;
				}
				iVar6 = ui::_0x9040DFB09BE75706(fVar41, (fVar49 + 0.00277776f));
				ui::get_hud_colour(2, &iVar1, &iVar2, &iVar3, &iVar4);
				func_1175(Global_17287, (fVar49 - 0.00277776f), fParam5, 0.00277776f, iVar1, iVar2, iVar3, iVar4);
				if (Global_17290.f_7884)
				{
					iVar1 = Global_17290.f_7880;
					iVar2 = Global_17290.f_7881;
					iVar3 = Global_17290.f_7882;
					iVar4 = Global_17290.f_7883;
				}
				else
				{
					ui::get_hud_colour(140, &iVar1, &iVar2, &iVar3, &iVar4);
				}
				graphics::draw_sprite("CommonMenu", "Gradient_Bgd", (Global_17287 + (fParam5 * 0.5f)), ((fVar49 + ((((ui::_get_text_scale_height(0.35f, 0) * IntToFloat(iVar6)) + (0.00138888f * 13f)) + ((0.00138888f * 5f) * IntToFloat((iVar6 - 1)))) * 0.5f)) - 0.00138888f), fParam5, (((ui::_get_text_scale_height(0.35f, 0) * IntToFloat(iVar6)) + (0.00138888f * 13f)) + ((0.00138888f * 5f) * IntToFloat((iVar6 - 1)))), 0f, iVar1, iVar2, iVar3, iVar4, 0);
				func_1171(fVar41);
				ui::_set_text_entry(&(Global_17290.f_4562));
				iVar15 = 0;
				iVar16 = 0;
				iVar17 = 0;
				iVar14 = 0;
				while (iVar14 < Global_17290.f_4632)
				{
					if (Global_17290.f_4566[iVar14] == 2)
					{
						ui::add_text_component_integer(Global_17290.f_4571[iVar15]);
						iVar15++;
					}
					else if (Global_17290.f_4566[iVar14] == 3)
					{
						ui::add_text_component_float(Global_17290.f_4575[iVar16], Global_17290.f_4579[iVar16]);
						iVar16++;
					}
					else if (Global_17290.f_4566[iVar14] == 1)
					{
						ui::_add_text_component_item_string(&(Global_17290.f_4583[iVar17 /*16*/]));
						iVar17++;
					}
					else if (Global_17290.f_4566[iVar14] == 5)
					{
						ui::add_text_component_substring_player_name(&(Global_17290.f_4583[iVar17 /*16*/]));
						iVar17++;
					}
					else if (Global_17290.f_4566[iVar14] == 6)
					{
						ui::_add_text_component_item_string(&(Global_17290.f_4583[iVar17 /*16*/]));
						iVar17++;
					}
					else if (Global_17290.f_4566[iVar14] == 7)
					{
						ui::add_text_component_substring_player_name(&(Global_17290.f_4583[iVar17 /*16*/]));
						iVar17++;
					}
					else if (Global_17290.f_4566[iVar14] == 9)
					{
						ui::add_text_component_substring_player_name(&(Global_17290.f_4583[iVar17 /*16*/]));
						iVar17++;
					}
					else if (Global_17290.f_4566[iVar14] == 8)
					{
						ui::_add_text_component_item_string(&(Global_17290.f_4583[iVar17 /*16*/]));
						iVar17++;
					}
					iVar14++;
				}
				ui::_draw_text(fVar41, (fVar49 + 0.00277776f), 0);
				if (Global_17290.f_4638 != 0)
				{
					func_1135(Global_17290.f_4638, 1, 1, &fVar35, &fVar36, iParam7);
					func_1170(Global_17290.f_4638, 1, &iVar46, &iVar47, &iVar48);
					graphics::draw_sprite(func_1140(Global_17290.f_4638), func_1138(Global_17290.f_4638, 1), ((Global_17287 + (fVar35 * 0.5f)) + (0.00078125f * 2f)), ((fVar49 + (fVar36 * 0.5f)) - (0.00138888f * 4f)), fVar35, fVar36, 0f, iVar46, iVar47, iVar48, 255, 0);
				}
				fVar49 = (fVar49 + (((ui::_get_text_scale_height(0.35f, 0) * IntToFloat(iVar6)) + (0.00138888f * 13f)) + ((0.00138888f * 5f) * IntToFloat((iVar6 - 1)))));
				if (Global_17290.f_4636 > 0)
				{
					if ((gameplay::get_game_timer() - Global_17290.f_4637) > Global_17290.f_4636)
					{
						StringCopy(&(Global_17290.f_4562), "", 16);
						Global_17290.f_4636 = -1;
					}
				}
			}
			if (gameplay::get_hash_key(&(Global_2593914.f_21)) != 0 && Global_2593914.f_65 != -1)
			{
				fVar49 = (fVar49 + (0.00277776f * 2f));
				fVar41 = (Global_17287 + 0.0046875f);
				if (Global_2593914.f_67 != 0)
				{
					func_1135(Global_2593914.f_67, 1, 1, &fVar35, &fVar36, iParam7);
					fVar41 = (((Global_17287 + fVar35) + (0.00078125f * 4f)) - (0.00078125f * 1f));
				}
				func_1171(fVar41);
				ui::_set_text_gxt_entry(&(Global_2593914.f_21));
				iVar15 = 0;
				iVar16 = 0;
				iVar17 = 0;
				iVar14 = 0;
				while (iVar14 < Global_2593914.f_61)
				{
					if (Global_2593914.f_25[iVar14] == 2)
					{
						ui::add_text_component_integer(Global_2593914.f_30[iVar15]);
						iVar15++;
					}
					else if (Global_2593914.f_25[iVar14] == 3)
					{
						ui::add_text_component_float(Global_2593914.f_34[iVar16], Global_2593914.f_38[iVar16]);
						iVar16++;
					}
					else if (Global_2593914.f_25[iVar14] == 1)
					{
						ui::_add_text_component_item_string(&(Global_2593914.f_42[iVar17 /*6*/]));
						iVar17++;
					}
					else if (Global_2593914.f_25[iVar14] == 5)
					{
						ui::add_text_component_substring_player_name(&(Global_2593914.f_42[iVar17 /*6*/]));
						iVar17++;
					}
					else if (Global_2593914.f_25[iVar14] == 6)
					{
						ui::_add_text_component_item_string(&(Global_2593914.f_42[iVar17 /*6*/]));
						iVar17++;
					}
					else if (Global_2593914.f_25[iVar14] == 7)
					{
						ui::add_text_component_substring_player_name(&(Global_2593914.f_42[iVar17 /*6*/]));
						iVar17++;
					}
					else if (Global_2593914.f_25[iVar14] == 9)
					{
						ui::add_text_component_substring_player_name(&(Global_2593914.f_42[iVar17 /*6*/]));
						iVar17++;
					}
					else if (Global_2593914.f_25[iVar14] == 8)
					{
						ui::_add_text_component_item_string(&(Global_2593914.f_42[iVar17 /*6*/]));
						iVar17++;
					}
					iVar14++;
				}
				iVar6 = ui::_0x9040DFB09BE75706(fVar41, (fVar49 + 0.00277776f));
				ui::get_hud_colour(2, &iVar1, &iVar2, &iVar3, &iVar4);
				func_1175(Global_17287, (fVar49 - 0.00277776f), fParam5, 0.00277776f, iVar1, iVar2, iVar3, iVar4);
				if (Global_17290.f_7884)
				{
					iVar1 = Global_17290.f_7880;
					iVar2 = Global_17290.f_7881;
					iVar3 = Global_17290.f_7882;
					iVar4 = Global_17290.f_7883;
				}
				else
				{
					ui::get_hud_colour(140, &iVar1, &iVar2, &iVar3, &iVar4);
				}
				graphics::draw_sprite("CommonMenu", "Gradient_Bgd", (Global_17287 + (fParam5 * 0.5f)), ((fVar49 + ((((ui::_get_text_scale_height(0.35f, 0) * IntToFloat(iVar6)) + (0.00138888f * 13f)) + ((0.00138888f * 5f) * IntToFloat((iVar6 - 1)))) * 0.5f)) - 0.00138888f), fParam5, (((ui::_get_text_scale_height(0.35f, 0) * IntToFloat(iVar6)) + (0.00138888f * 13f)) + ((0.00138888f * 5f) * IntToFloat((iVar6 - 1)))), 0f, iVar1, iVar2, iVar3, iVar4, 0);
				func_1171(fVar41);
				ui::_set_text_entry(&(Global_2593914.f_21));
				iVar15 = 0;
				iVar16 = 0;
				iVar17 = 0;
				iVar14 = 0;
				while (iVar14 < Global_2593914.f_61)
				{
					if (Global_2593914.f_25[iVar14] == 2)
					{
						ui::add_text_component_integer(Global_2593914.f_30[iVar15]);
						iVar15++;
					}
					else if (Global_2593914.f_25[iVar14] == 3)
					{
						ui::add_text_component_float(Global_2593914.f_34[iVar16], Global_2593914.f_38[iVar16]);
						iVar16++;
					}
					else if (Global_2593914.f_25[iVar14] == 1)
					{
						ui::_add_text_component_item_string(&(Global_2593914.f_42[iVar17 /*6*/]));
						iVar17++;
					}
					else if (Global_2593914.f_25[iVar14] == 8)
					{
						ui::_add_text_component_item_string(&(Global_2593914.f_42[iVar17 /*6*/]));
						iVar17++;
					}
					else if (Global_2593914.f_25[iVar14] == 5)
					{
						ui::add_text_component_substring_player_name(&(Global_2593914.f_42[iVar17 /*6*/]));
						iVar17++;
					}
					else if (Global_2593914.f_25[iVar14] == 6)
					{
						ui::_add_text_component_item_string(&(Global_2593914.f_42[iVar17 /*6*/]));
						iVar17++;
					}
					else if (Global_2593914.f_25[iVar14] == 7)
					{
						ui::add_text_component_substring_player_name(&(Global_2593914.f_42[iVar17 /*6*/]));
						iVar17++;
					}
					else if (Global_2593914.f_25[iVar14] == 9)
					{
						ui::add_text_component_substring_player_name(&(Global_2593914.f_42[iVar17 /*6*/]));
						iVar17++;
					}
					iVar14++;
				}
				ui::_draw_text(fVar41, (fVar49 + 0.00277776f), 0);
				if (Global_2593914.f_67 != 0)
				{
					func_1135(Global_2593914.f_67, 1, 1, &fVar35, &fVar36, iParam7);
					func_1170(Global_2593914.f_67, 1, &iVar46, &iVar47, &iVar48);
					graphics::draw_sprite(func_1140(Global_2593914.f_67), func_1138(Global_2593914.f_67, 1), ((Global_17287 + (fVar35 * 0.5f)) + (0.00078125f * 2f)), ((fVar49 + (fVar36 * 0.5f)) - (0.00138888f * 4f)), fVar35, fVar36, 0f, iVar46, iVar47, iVar48, 255, 0);
				}
				fVar49 = (fVar49 + (((ui::_get_text_scale_height(0.35f, 0) * IntToFloat(iVar6)) + (0.00138888f * 13f)) + ((0.00138888f * 5f) * IntToFloat((iVar6 - 1)))));
				if (Global_2593914.f_65 > 0)
				{
					if ((gameplay::get_game_timer() - Global_2593914.f_66) > Global_2593914.f_65)
					{
						StringCopy(&(Global_2593914.f_21), "", 16);
						Global_2593914.f_65 = -1;
					}
				}
			}
			func_1165(iVar59, iParam1, 0, 0, 0, 0, iParam4, 1, 0);
			graphics::_set_screen_draw_position(76, 84);
			graphics::_0xF5A2C681787E579D(-0.05f, -0.05f, 0f, 0f);
		}
		if (iVar5 == 1 || !Global_17290.f_5598)
		{
			iVar19 = 0;
			iVar23 = 0;
			iVar20 = 0;
			iVar21 = 0;
			iVar22 = 0;
			iVar9 = 0;
			iVar10 = 0;
			iVar11 = 0;
			iVar12 = 0;
			iVar13 = 0;
			iVar97 = Global_17290.f_5088;
			if (Global_17290.f_5599)
			{
				iVar97 = (Global_17290.f_5602 - 1);
			}
			fVar98 = 0f;
			fVar99 = 0f;
			iVar7 = 0;
			while (iVar7 <= iVar97)
			{
				fVar55 = 0.034722f;
				if (Global_17290.f_5612[iVar6] != 0f)
				{
					fVar55 = Global_17290.f_5612[iVar6];
				}
				if (Global_17290.f_5599)
				{
					iVar6 = Global_17290.f_7520[iVar7];
				}
				else
				{
					iVar6 = iVar7;
				}
				iVar12 = iVar13;
				iVar32 = false;
				if (iVar6 >= Global_17290.f_5605 && iVar9 < Global_17290.f_5095)
				{
					iVar32 = true;
					if (Global_17290.f_5606 == iVar6)
					{
						fVar99 = fVar98;
					}
					if (Global_17290.f_5226[iVar6])
					{
						iVar12++;
					}
					fVar34 = (((fVar58 + fVar98) + (0.00277776f * IntToFloat(iVar12))) + 0.00277776f);
				}
				Global_17290.f_5746[iVar6] = fVar34;
				fVar33 = (Global_17287 + 0.0046875f);
				iVar40 = false;
				iVar31 = Global_17290.f_5606 == iVar6;
				if ((iVar31 && iVar5 == 1) && iVar32)
				{
					iVar100 = 255;
					iVar101 = 255;
					iVar102 = 255;
					iVar103 = 255;
					if (Global_17290.f_7886)
					{
						ui::get_hud_colour(Global_17290.f_7885, &iVar100, &iVar101, &iVar102, &iVar103);
					}
					else
					{
						ui::get_hud_colour(1, &iVar100, &iVar101, &iVar102, &iVar103);
					}
					graphics::draw_sprite("CommonMenu", "Gradient_Nav", (Global_17287 + (fParam5 * 0.5f)), (((fVar58 + fVar99) + (0.00277776f * IntToFloat(iVar12))) + (fVar55 * 0.5f)), fParam5, fVar55, 0f, iVar100, iVar101, iVar102, iVar103, 0);
					Global_17290.f_5744 = fVar34;
				}
				if (iVar53 && iVar7 == iVar97)
				{
					func_1142(iVar31, 1, 0, 0, 0, 0, 0);
					ui::_set_text_entry("DFLT_MNU_OPT");
					ui::_draw_text(fVar33, fVar34, 0);
					iVar40 = true;
				}
				else
				{
					iVar8 = 0;
					while (iVar8 < Global_17290.f_5096)
					{
						if (gameplay::is_bit_set(Global_17290.f_4959[iVar6], iVar8) || Global_17290.f_4926[iVar8] == 5)
						{
							if (Global_17290.f_5599)
							{
								iVar19 = Global_17290.f_7531[((iVar9 * Global_17290.f_5096) + iVar8)];
								iVar20 = Global_17290.f_7572[((iVar9 * Global_17290.f_5096) + iVar8)];
								iVar21 = Global_17290.f_7613[((iVar9 * Global_17290.f_5096) + iVar8)];
								iVar22 = Global_17290.f_7654[((iVar9 * Global_17290.f_5096) + iVar8)];
								iVar23 = Global_17290.f_7695[((iVar9 * Global_17290.f_5096) + iVar8)];
							}
							else
							{
								Global_17290.f_7531[((iVar9 * Global_17290.f_5096) + iVar8)] = iVar19;
								Global_17290.f_7572[((iVar9 * Global_17290.f_5096) + iVar8)] = iVar20;
								Global_17290.f_7613[((iVar9 * Global_17290.f_5096) + iVar8)] = iVar21;
								Global_17290.f_7654[((iVar9 * Global_17290.f_5096) + iVar8)] = iVar22;
								Global_17290.f_7695[((iVar9 * Global_17290.f_5096) + iVar8)] = iVar23;
							}
							iVar104 = 0;
							iVar54 = false;
							if (Global_17290.f_5878[0] != -1)
							{
								if ((iVar6 * 5 + iVar8) == Global_17290.f_5875[0])
								{
									iVar54 = true;
									iVar104 = 0;
								}
							}
							if (Global_17290.f_5878[1] != -1)
							{
								if ((iVar6 * 5 + iVar8) == Global_17290.f_5875[1])
								{
									iVar54 = true;
									iVar104 = 1;
								}
							}
							if (Global_17290.f_4932[iVar8] != -1f)
							{
								fVar33 = ((Global_17287 + 0.0046875f) + Global_17290.f_4932[iVar8]);
							}
							if ((iVar8 < 4 && Global_17290.f_4932[iVar8 + 1] != -1f) && fVar33 < Global_17290.f_4932[iVar8 + 1])
							{
								fVar45 = (Global_17290.f_4932[iVar8 + 1] - fVar33);
							}
							else
							{
								fVar45 = (((Global_17287 + Global_17289) - 0.0046875f) - fVar33);
							}
							if ((Global_17290.f_4945[iVar8] && Global_17290.f_5741) && iVar31)
							{
								iVar52 = true;
							}
							else
							{
								iVar52 = false;
							}
							switch (Global_17290.f_4926[iVar8])
							{
								case 0:
									break;
								
								case 1:
									iVar24 = iVar19;
									if (iVar5 == 1 && iVar32)
									{
										if (!Global_17290.f_5599)
										{
											fVar42 = 0f;
											fVar43 = 0f;
											iVar25 = 0;
											iVar26 = 0;
											iVar27 = 0;
											iVar28 = 0;
											iVar29 = 0;
											if (gameplay::get_hash_key(&(Global_17290.f_73[iVar24 /*6*/])) != 0)
											{
												iVar50 = false;
												iVar51 = false;
												iVar14 = 0;
												while (iVar14 < 4)
												{
													if (Global_17290.f_2124[iVar24 /*5*/][iVar14] == 5 || Global_17290.f_2124[iVar24 /*5*/][iVar14] == 8)
													{
														iVar51 = true;
													}
													else if (Global_17290.f_2124[iVar24 /*5*/][iVar14] == 9)
													{
														iVar50 = true;
													}
													iVar14++;
												}
												func_1142(iVar31, Global_17290.f_1610[iVar24], Global_17290.f_1867[iVar24], iVar54, iVar104, iVar51, iVar50);
												ui::_set_text_entry_for_width(&(Global_17290.f_73[iVar24 /*6*/]));
											}
											iVar14 = 0;
											while (iVar14 < 4)
											{
												if (Global_17290.f_2124[iVar24 /*5*/][iVar14] == 1)
												{
													iVar25++;
													if (gameplay::get_hash_key(&(Global_17290.f_73[iVar24 /*6*/])) != 0)
													{
														ui::_add_text_component_item_string(&(Global_17290.f_73[(iVar24 + iVar25) /*6*/]));
													}
												}
												else if (Global_17290.f_2124[iVar24 /*5*/][iVar14] == 8)
												{
													iVar25++;
													if (gameplay::get_hash_key(&(Global_17290.f_73[iVar24 /*6*/])) != 0)
													{
														ui::_add_text_component_item_string(&(Global_17290.f_73[(iVar24 + iVar25) /*6*/]));
													}
												}
												else if (Global_17290.f_2124[iVar24 /*5*/][iVar14] == 5)
												{
													if (gameplay::get_hash_key(&(Global_17290.f_73[iVar24 /*6*/])) != 0)
													{
														ui::add_text_component_substring_player_name(&(Global_2453012[(iVar23 + iVar29) /*16*/]));
													}
													iVar29++;
												}
												else if (Global_17290.f_2124[iVar24 /*5*/][iVar14] == 6)
												{
													if (gameplay::get_hash_key(&(Global_17290.f_73[iVar24 /*6*/])) != 0)
													{
														ui::_add_text_component_item_string(&(Global_2453012[(iVar23 + iVar29) /*16*/]));
													}
													iVar29++;
												}
												else if (Global_17290.f_2124[iVar24 /*5*/][iVar14] == 7)
												{
													if (gameplay::get_hash_key(&(Global_17290.f_73[iVar24 /*6*/])) != 0)
													{
														ui::add_text_component_substring_player_name(&(Global_2453012[(iVar23 + iVar29) /*16*/]));
													}
													iVar29++;
												}
												else if (Global_17290.f_2124[iVar24 /*5*/][iVar14] == 9)
												{
													if (gameplay::get_hash_key(&(Global_17290.f_73[iVar24 /*6*/])) != 0)
													{
														ui::add_text_component_substring_player_name(&(Global_2453012[(iVar23 + iVar29) /*16*/]));
													}
													iVar29++;
												}
												else if (Global_17290.f_2124[iVar24 /*5*/][iVar14] == 2)
												{
													if (gameplay::get_hash_key(&(Global_17290.f_73[iVar24 /*6*/])) != 0)
													{
														ui::add_text_component_integer(Global_17290.f_3918[(iVar20 + iVar26)]);
													}
													iVar26++;
												}
												else if (Global_17290.f_2124[iVar24 /*5*/][iVar14] == 3)
												{
													if (gameplay::get_hash_key(&(Global_17290.f_73[iVar24 /*6*/])) != 0)
													{
														ui::add_text_component_float(Global_17290.f_4175[(iVar21 + iVar27)], Global_17290.f_4304[(iVar21 + iVar27)]);
													}
													iVar27++;
												}
												else if (Global_17290.f_2124[iVar24 /*5*/][iVar14] == 4)
												{
													iVar28++;
												}
												iVar14++;
											}
											if (gameplay::get_hash_key(&(Global_17290.f_73[iVar24 /*6*/])) != 0)
											{
												fVar42 = ui::_get_text_screen_width(1);
											}
											if (iVar28 > 0)
											{
												iVar14 = 0;
												while (iVar14 < iVar28)
												{
													if (func_1135(Global_17290.f_4433[(iVar22 + iVar14)], iVar31, 0, &fVar35, &fVar36, iParam7))
													{
														fVar43 = (fVar43 + fVar35);
														if (iVar14 > 0)
														{
															fVar43 = (fVar43 - (0.00078125f * 4f));
														}
														if (Global_17290.f_4433[(iVar22 + iVar14)] == 2 || Global_17290.f_4433[(iVar22 + iVar14)] == 48)
														{
															fVar43 = (fVar43 - (0.00078125f * 5f));
														}
													}
													iVar14++;
												}
											}
											fVar41 = 0f;
											if (Global_17290.f_4953[iVar8] == 2)
											{
												fVar41 = (fVar41 + ((fVar45 - (fVar42 + fVar43)) + (0.00078125f * 1f)));
											}
											else if (Global_17290.f_4953[iVar8] == 0)
											{
												fVar41 = (fVar41 + (((fVar45 - fVar33) * 0.5f) - ((fVar42 + fVar43) * 0.5f)));
											}
											Global_17290.f_7736[((iVar9 * Global_17290.f_5096) + iVar8)] = fVar41;
											Global_17290.f_7777[((iVar9 * Global_17290.f_5096) + iVar8)] = fVar42;
											Global_17290.f_7818[((iVar9 * Global_17290.f_5096) + iVar8)] = fVar43;
										}
										else
										{
											fVar41 = Global_17290.f_7736[((iVar9 * Global_17290.f_5096) + iVar8)];
											fVar42 = Global_17290.f_7777[((iVar9 * Global_17290.f_5096) + iVar8)];
											fVar43 = Global_17290.f_7818[((iVar9 * Global_17290.f_5096) + iVar8)];
										}
										if (iVar52)
										{
											if (func_1135(26, 1, 0, &fVar35, &fVar36, iParam7))
											{
												if (Global_17290.f_4953[iVar8] == 2)
												{
													fVar41 = (fVar41 - (fVar35 * 2f));
												}
												fVar44 = (fVar35 * 0.5f);
												if (func_1135(26, 1, 1, &fVar35, &fVar36, iParam7))
												{
													func_1170(26, 1, &iVar46, &iVar47, &iVar48);
													graphics::draw_sprite(func_1140(26), func_1138(26, 1), ((fVar33 + fVar41) + fVar44), ((fVar34 - 0.00277776f) + (fVar55 * 0.5f)), fVar35, fVar36, 0f, iVar46, iVar47, iVar48, 255, 0);
												}
											}
											if (func_1135(27, 1, 0, &fVar35, &fVar36, iParam7))
											{
												fVar41 = (fVar41 + fVar35);
												fVar44 = (fVar35 * 0.5f);
												if (func_1135(27, 1, 1, &fVar35, &fVar36, iParam7))
												{
													func_1170(27, 1, &iVar46, &iVar47, &iVar48);
													graphics::draw_sprite(func_1140(27), func_1138(27, 1), (((fVar33 + fVar41) + fVar44) + (fVar42 + fVar43)), ((fVar34 - 0.00277776f) + (fVar55 * 0.5f)), fVar35, fVar36, 0f, iVar46, iVar47, iVar48, 255, 0);
												}
											}
										}
										iVar25 = 0;
										iVar26 = 0;
										iVar27 = 0;
										iVar28 = 0;
										iVar29 = 0;
										iVar30 = 0;
										if (gameplay::get_hash_key(&(Global_17290.f_73[iVar24 /*6*/])) != 0)
										{
											iVar50 = false;
											iVar51 = false;
											iVar14 = 0;
											while (iVar14 < 4)
											{
												if (Global_17290.f_2124[iVar24 /*5*/][iVar14] == 5 || Global_17290.f_2124[iVar24 /*5*/][iVar14] == 8)
												{
													iVar51 = true;
												}
												else if (Global_17290.f_2124[iVar24 /*5*/][iVar14] == 9)
												{
													iVar50 = true;
												}
												iVar14++;
											}
											func_1142(iVar31, Global_17290.f_1610[iVar24], Global_17290.f_1867[iVar24], iVar54, 0, iVar51, iVar50);
											if (Global_17290.f_7890 && Global_17290.f_7891 == iVar6)
											{
												func_1164(iVar31);
											}
											ui::_set_text_entry(&(Global_17290.f_73[iVar24 /*6*/]));
										}
										iVar14 = 0;
										while (iVar14 < 4)
										{
											if (Global_17290.f_2124[iVar24 /*5*/][iVar14] == 1)
											{
												iVar25++;
												if (gameplay::get_hash_key(&(Global_17290.f_73[iVar24 /*6*/])) != 0)
												{
													ui::_add_text_component_item_string(&(Global_17290.f_73[(iVar24 + iVar25) /*6*/]));
												}
												iVar30 = 1;
											}
											else if (Global_17290.f_2124[iVar24 /*5*/][iVar14] == 8)
											{
												iVar25++;
												if (gameplay::get_hash_key(&(Global_17290.f_73[iVar24 /*6*/])) != 0)
												{
													ui::_add_text_component_item_string(&(Global_17290.f_73[(iVar24 + iVar25) /*6*/]));
												}
												iVar30 = 8;
											}
											else if (Global_17290.f_2124[iVar24 /*5*/][iVar14] == 5)
											{
												if (gameplay::get_hash_key(&(Global_17290.f_73[iVar24 /*6*/])) != 0)
												{
													ui::add_text_component_substring_player_name(&(Global_2453012[(iVar23 + iVar29) /*16*/]));
												}
												iVar29++;
												iVar30 = 5;
											}
											else if (Global_17290.f_2124[iVar24 /*5*/][iVar14] == 6)
											{
												if (gameplay::get_hash_key(&(Global_17290.f_73[iVar24 /*6*/])) != 0)
												{
													ui::_add_text_component_item_string(&(Global_2453012[(iVar23 + iVar29) /*16*/]));
												}
												iVar29++;
												iVar30 = 6;
											}
											else if (Global_17290.f_2124[iVar24 /*5*/][iVar14] == 7)
											{
												if (gameplay::get_hash_key(&(Global_17290.f_73[iVar24 /*6*/])) != 0)
												{
													ui::add_text_component_substring_player_name(&(Global_2453012[(iVar23 + iVar29) /*16*/]));
												}
												iVar29++;
												iVar30 = 7;
											}
											else if (Global_17290.f_2124[iVar24 /*5*/][iVar14] == 9)
											{
												if (gameplay::get_hash_key(&(Global_17290.f_73[iVar24 /*6*/])) != 0)
												{
													ui::add_text_component_substring_player_name(&(Global_2453012[(iVar23 + iVar29) /*16*/]));
												}
												iVar29++;
												iVar30 = 9;
											}
											else if (Global_17290.f_2124[iVar24 /*5*/][iVar14] == 2)
											{
												if (gameplay::get_hash_key(&(Global_17290.f_73[iVar24 /*6*/])) != 0)
												{
													ui::add_text_component_integer(Global_17290.f_3918[(iVar20 + iVar26)]);
												}
												iVar26++;
												iVar30 = 2;
											}
											else if (Global_17290.f_2124[iVar24 /*5*/][iVar14] == 3)
											{
												if (gameplay::get_hash_key(&(Global_17290.f_73[iVar24 /*6*/])) != 0)
												{
													ui::add_text_component_float(Global_17290.f_4175[(iVar21 + iVar27)], Global_17290.f_4304[(iVar21 + iVar27)]);
												}
												iVar27++;
												iVar30 = 3;
											}
											else if (Global_17290.f_2124[iVar24 /*5*/][iVar14] == 4)
											{
												if (Global_17290.f_4433[(iVar22 + iVar28)] == 2 || Global_17290.f_4433[(iVar22 + iVar28)] == 48)
												{
													if (func_1135(Global_17290.f_4433[(iVar22 + iVar28)], iVar31, 0, &fVar35, &fVar36, iParam7))
													{
														fVar41 = (fVar41 + (fVar35 * 0.5f));
														if (func_1135(Global_17290.f_4433[(iVar22 + iVar28)], iVar31, 1, &fVar35, &fVar36, iParam7))
														{
															func_1170(Global_17290.f_4433[(iVar22 + iVar28)], iVar31, &iVar46, &iVar47, &iVar48);
															if (Global_17290.f_4953[iVar8] == 2)
															{
																graphics::draw_sprite(func_1140(Global_17290.f_4433[(iVar22 + iVar28)]), func_1138(Global_17290.f_4433[(iVar22 + iVar28)], iVar31), (((fVar33 + fVar41) - (0.00078125f * 8f)) + (0.00078125f * 4f)), ((fVar34 - 0.00277776f) + (fVar55 * 0.5f)), fVar35, fVar36, 0f, iVar46, iVar47, iVar48, 255, 0);
															}
															else
															{
																graphics::draw_sprite(func_1140(Global_17290.f_4433[(iVar22 + iVar28)]), func_1138(Global_17290.f_4433[(iVar22 + iVar28)], iVar31), ((fVar33 + fVar41) - (0.00078125f * 8f)), ((fVar34 - 0.00277776f) + (fVar55 * 0.5f)), fVar35, fVar36, 0f, iVar46, iVar47, iVar48, 255, 0);
															}
															fVar41 = (fVar41 + (0.00078125f * 3f));
														}
													}
												}
												iVar28++;
												iVar30 = 4;
											}
											iVar14++;
										}
										if (gameplay::get_hash_key(&(Global_17290.f_73[iVar24 /*6*/])) != 0)
										{
											if (iVar30 == 4 && Global_17290.f_4953[iVar8] == 2)
											{
												ui::_draw_text(((fVar33 + fVar41) + (0.00078125f * 7f)), fVar34, 0);
											}
											else
											{
												ui::_draw_text((fVar33 + fVar41), fVar34, 0);
											}
										}
										if (iVar28 > 0)
										{
											fVar41 = (fVar41 + (6f * 0.00078125f));
											iVar14 = 0;
											while (iVar14 < iVar28)
											{
												if (Global_17290.f_4433[(iVar22 + iVar14)] != 2 && Global_17290.f_4433[(iVar22 + iVar14)] != 48)
												{
													if (func_1135(Global_17290.f_4433[(iVar22 + iVar14)], iVar31, 0, &fVar35, &fVar36, iParam7))
													{
														fVar41 = (fVar41 + (fVar35 * 0.5f));
														if (func_1135(Global_17290.f_4433[(iVar22 + iVar14)], iVar31, 1, &fVar35, &fVar36, iParam7))
														{
															func_1170(Global_17290.f_4433[(iVar22 + iVar14)], iVar31, &iVar46, &iVar47, &iVar48);
															if (Global_17290.f_4433[(iVar22 + iVar14)] == 30)
															{
																graphics::draw_sprite(func_1140(Global_17290.f_4433[(iVar22 + iVar14)]), func_1138(Global_17290.f_4433[(iVar22 + iVar14)], iVar31), (Global_17287 + (fVar35 * 0.5f)), (((fVar34 + 0.00277776f) + (fVar36 * 0.5f)) - (0.00078125f * 11f)), fVar35, fVar36, 0f, iVar46, iVar47, iVar48, 255, 0);
															}
															else if (Global_17290.f_4953[iVar8] == 2)
															{
																graphics::draw_sprite(func_1140(Global_17290.f_4433[(iVar22 + iVar14)]), func_1138(Global_17290.f_4433[(iVar22 + iVar14)], iVar31), ((((fVar33 + fVar41) + fVar42) - (0.00078125f * 8f)) + (0.00078125f * 4f)), ((fVar34 - 0.00277776f) + (fVar55 * 0.5f)), fVar35, fVar36, 0f, iVar46, iVar47, iVar48, 255, 0);
															}
															else
															{
																graphics::draw_sprite(func_1140(Global_17290.f_4433[(iVar22 + iVar14)]), func_1138(Global_17290.f_4433[(iVar22 + iVar14)], iVar31), (((fVar33 + fVar41) + fVar42) - (0.00078125f * 12f)), ((fVar34 - 0.00277776f) + (fVar55 * 0.5f)), fVar35, fVar36, 0f, iVar46, iVar47, iVar48, 255, 0);
															}
														}
														fVar41 = (fVar41 + (12f * 0.00078125f));
													}
												}
												iVar14++;
											}
										}
									}
									iVar40 = true;
									iVar19++;
									iVar14 = 0;
									while (iVar14 < 4)
									{
										if (Global_17290.f_2124[iVar24 /*5*/][iVar14] == 1)
										{
											iVar19++;
										}
										else if (Global_17290.f_2124[iVar24 /*5*/][iVar14] == 8)
										{
											iVar19++;
										}
										else if (Global_17290.f_2124[iVar24 /*5*/][iVar14] == 2)
										{
											iVar20++;
										}
										else if (Global_17290.f_2124[iVar24 /*5*/][iVar14] == 3)
										{
											iVar21++;
										}
										else if (Global_17290.f_2124[iVar24 /*5*/][iVar14] == 4)
										{
											iVar22++;
										}
										else if (Global_17290.f_2124[iVar24 /*5*/][iVar14] == 5)
										{
											iVar23++;
										}
										else if (Global_17290.f_2124[iVar24 /*5*/][iVar14] == 6)
										{
											iVar23++;
										}
										else if (Global_17290.f_2124[iVar24 /*5*/][iVar14] == 7)
										{
											iVar23++;
										}
										else if (Global_17290.f_2124[iVar24 /*5*/][iVar14] == 9)
										{
											iVar23++;
										}
										iVar14++;
									}
									break;
								
								case 2:
									if (iVar5 == 1 && iVar32)
									{
										if (!Global_17290.f_5599)
										{
											func_1142(iVar31, Global_17290.f_1610[iVar24], Global_17290.f_1867[iVar24], iVar54, 0, 0, 0);
											if (Global_17290.f_7890 && Global_17290.f_7891 == iVar6)
											{
												func_1164(iVar31);
											}
											ui::_set_text_entry_for_width("NUMBER");
											ui::add_text_component_integer(Global_17290.f_3918[iVar20]);
											fVar42 = ui::_get_text_screen_width(1);
											fVar41 = 0f;
											if (Global_17290.f_4953[iVar8] == 2)
											{
												fVar41 = (fVar41 + ((fVar45 - fVar42) + (0.00078125f * 1f)));
											}
											else if (Global_17290.f_4953[iVar8] == 0)
											{
												fVar41 = (fVar41 + (((fVar45 - fVar33) * 0.5f) - (fVar42 * 0.5f)));
											}
											Global_17290.f_7736[((iVar9 * Global_17290.f_5096) + iVar8)] = fVar41;
											Global_17290.f_7777[((iVar9 * Global_17290.f_5096) + iVar8)] = fVar42;
										}
										else
										{
											fVar41 = Global_17290.f_7736[((iVar9 * Global_17290.f_5096) + iVar8)];
											fVar42 = Global_17290.f_7777[((iVar9 * Global_17290.f_5096) + iVar8)];
										}
										if (iVar52)
										{
											if (func_1135(26, 1, 0, &fVar35, &fVar36, iParam7))
											{
												if (Global_17290.f_4953[iVar8] == 2)
												{
													fVar41 = (fVar41 - (fVar35 * 2f));
												}
												fVar44 = (fVar35 * 0.5f);
												if (func_1135(26, 1, 1, &fVar35, &fVar36, iParam7))
												{
													func_1170(26, 1, &iVar46, &iVar47, &iVar48);
													graphics::draw_sprite(func_1140(26), func_1138(26, 1), ((fVar33 + fVar41) + fVar44), ((fVar34 - 0.00277776f) + (fVar55 * 0.5f)), fVar35, fVar36, 0f, iVar46, iVar47, iVar48, 255, 0);
												}
											}
											if (func_1135(27, 1, 0, &fVar35, &fVar36, iParam7))
											{
												fVar41 = (fVar41 + fVar35);
												fVar44 = (fVar35 * 0.5f);
												if (func_1135(27, 1, 1, &fVar35, &fVar36, iParam7))
												{
													func_1170(27, 1, &iVar46, &iVar47, &iVar48);
													graphics::draw_sprite(func_1140(27), func_1138(27, 1), (((fVar33 + fVar41) + fVar44) + (fVar42 + fVar43)), ((fVar34 - 0.00277776f) + (fVar55 * 0.5f)), fVar35, fVar36, 0f, iVar46, iVar47, iVar48, 255, 0);
												}
											}
										}
										func_1142(iVar31, Global_17290.f_1610[iVar24], Global_17290.f_1867[iVar24], iVar54, 0, 0, 0);
										func_1163((fVar33 + fVar41), fVar34, "NUMBER", Global_17290.f_3918[iVar20], 0);
									}
									iVar40 = true;
									iVar20++;
									break;
								
								case 3:
									if (iVar5 == 1 && iVar32)
									{
										if (!Global_17290.f_5599)
										{
											func_1142(iVar31, Global_17290.f_1610[iVar24], Global_17290.f_1867[iVar24], iVar54, 0, 0, 0);
											if (Global_17290.f_7890 && Global_17290.f_7891 == iVar6)
											{
												func_1164(iVar31);
											}
											ui::_set_text_entry_for_width("NUMBER");
											ui::add_text_component_float(Global_17290.f_4175[iVar21], Global_17290.f_4304[iVar21]);
											fVar42 = ui::_get_text_screen_width(1);
											fVar41 = 0f;
											if (Global_17290.f_4953[iVar8] == 2)
											{
												fVar41 = (fVar41 + ((fVar45 - fVar42) + (0.00078125f * 1f)));
											}
											else if (Global_17290.f_4953[iVar8] == 0)
											{
												fVar41 = (fVar41 + (((fVar45 - fVar33) * 0.5f) - (fVar42 * 0.5f)));
											}
											Global_17290.f_7736[((iVar9 * Global_17290.f_5096) + iVar8)] = fVar41;
											Global_17290.f_7777[((iVar9 * Global_17290.f_5096) + iVar8)] = fVar42;
										}
										else
										{
											fVar41 = Global_17290.f_7736[((iVar9 * Global_17290.f_5096) + iVar8)];
											fVar42 = Global_17290.f_7777[((iVar9 * Global_17290.f_5096) + iVar8)];
										}
										if (iVar52)
										{
											if (func_1135(26, 1, 0, &fVar35, &fVar36, 0))
											{
												if (Global_17290.f_4953[iVar8] == 2)
												{
													fVar41 = (fVar41 - (fVar35 * 2f));
												}
												fVar44 = (fVar35 * 0.5f);
												if (func_1135(26, 1, 1, &fVar35, &fVar36, iParam7))
												{
													func_1170(26, 1, &iVar46, &iVar47, &iVar48);
													graphics::draw_sprite(func_1140(26), func_1138(26, 1), ((fVar33 + fVar41) + fVar44), ((fVar34 - 0.00277776f) + (fVar55 * 0.5f)), fVar35, fVar36, 0f, iVar46, iVar47, iVar48, 255, 0);
												}
											}
											if (func_1135(27, 1, 0, &fVar35, &fVar36, iParam7))
											{
												fVar41 = (fVar41 + fVar35);
												fVar44 = (fVar35 * 0.5f);
												if (func_1135(27, 1, 1, &fVar35, &fVar36, iParam7))
												{
													func_1170(27, 1, &iVar46, &iVar47, &iVar48);
													graphics::draw_sprite(func_1140(27), func_1138(27, 1), (((fVar33 + fVar41) + fVar44) + (fVar42 + fVar43)), ((fVar34 - 0.00277776f) + (fVar55 * 0.5f)), fVar35, fVar36, 0f, iVar46, iVar47, iVar48, 255, 0);
												}
											}
										}
										func_1142(iVar31, Global_17290.f_1610[iVar24], Global_17290.f_1867[iVar24], iVar54, 0, 0, 0);
										func_1162((fVar33 + fVar41), fVar34, "NUMBER", Global_17290.f_4175[iVar21], Global_17290.f_4304[iVar21]);
									}
									iVar40 = true;
									iVar21++;
									break;
								
								case 4:
									if (iVar5 == 1 && iVar32)
									{
										if (func_1135(Global_17290.f_4433[iVar22], iVar31, 0, &fVar35, &fVar36, iParam7))
										{
											if (!Global_17290.f_5599)
											{
												fVar43 = fVar35;
												fVar41 = 0f;
												if (Global_17290.f_4953[iVar8] == 2)
												{
													fVar41 = (fVar41 + ((fVar45 - fVar43) + (0.00078125f * 1f)));
												}
												else if (Global_17290.f_4953[iVar8] == 0)
												{
													fVar41 = (fVar41 + (((fVar45 - fVar33) * 0.5f) - (fVar43 * 0.5f)));
												}
												Global_17290.f_7736[((iVar9 * Global_17290.f_5096) + iVar8)] = fVar41;
												Global_17290.f_7818[((iVar9 * Global_17290.f_5096) + iVar8)] = fVar43;
											}
											else
											{
												fVar41 = Global_17290.f_7736[((iVar9 * Global_17290.f_5096) + iVar8)];
												fVar43 = Global_17290.f_7818[((iVar9 * Global_17290.f_5096) + iVar8)];
											}
											if (iVar52)
											{
												if (func_1135(26, 1, 0, &fVar35, &fVar36, iParam7))
												{
													if (Global_17290.f_4953[iVar8] == 2)
													{
														fVar41 = (fVar41 - (fVar35 * 2f));
													}
													fVar44 = (fVar35 * 0.5f);
													if (func_1135(26, 1, 1, &fVar35, &fVar36, iParam7))
													{
														func_1170(26, 1, &iVar46, &iVar47, &iVar48);
														graphics::draw_sprite(func_1140(26), func_1138(26, 1), ((fVar33 + fVar41) + fVar44), ((fVar34 - 0.00277776f) + (fVar55 * 0.5f)), fVar35, fVar36, 0f, iVar46, iVar47, iVar48, 255, 0);
													}
												}
												if (func_1135(27, 1, 0, &fVar35, &fVar36, iParam7))
												{
													fVar41 = (fVar41 + fVar35);
													fVar44 = (fVar35 * 0.5f);
													if (func_1135(27, 1, 1, &fVar35, &fVar36, iParam7))
													{
														func_1170(27, 1, &iVar46, &iVar47, &iVar48);
														graphics::draw_sprite(func_1140(27), func_1138(27, 1), (((fVar33 + fVar41) + fVar44) + (fVar42 + fVar43)), ((fVar34 - 0.00277776f) + (fVar55 * 0.5f)), fVar35, fVar36, 0f, iVar46, iVar47, iVar48, 255, 0);
													}
												}
											}
											if (func_1135(Global_17290.f_4433[iVar22], iVar31, 1, &fVar35, &fVar36, iParam7))
											{
												func_1170(Global_17290.f_4433[iVar22], iVar31, &iVar46, &iVar47, &iVar48);
												graphics::draw_sprite(func_1140(Global_17290.f_4433[iVar22]), func_1138(Global_17290.f_4433[iVar22], iVar31), ((fVar33 + fVar41) + (fVar35 * 0.5f)), ((fVar34 - 0.00277776f) + (fVar55 * 0.5f)), (fVar35 * func_1161(Global_17290.f_4433[iVar22])), (fVar36 * func_1161(Global_17290.f_4433[iVar22])), 0f, iVar46, iVar47, iVar48, 255, 0);
											}
										}
									}
									iVar40 = true;
									iVar22++;
									break;
								
								case 5:
									iVar40 = true;
									break;
							}
							if (Global_17290.f_4926[iVar8] == 5)
							{
								if (Global_17290.f_4938[iVar8] > 0.05f)
								{
									fVar33 = (fVar33 + Global_17290.f_4938[iVar8]);
								}
								else
								{
									fVar33 = (fVar33 + 0.05f);
								}
							}
							else
							{
								fVar33 = (fVar33 + Global_17290.f_4938[iVar8]);
								if (Global_17290.f_4945[iVar8])
								{
									if (func_1135(26, 1, 1, &fVar35, &fVar36, iParam7))
									{
										fVar33 = (fVar33 - fVar35);
									}
								}
							}
						}
						else
						{
							fVar33 = (fVar33 + Global_17290.f_4938[iVar8]);
						}
						iVar8++;
					}
				}
				if (iVar40)
				{
					if (iVar32)
					{
						Global_17290.f_7520[iVar9] = iVar6;
						Global_17290.f_5607 = iVar6;
						iVar9++;
						if (Global_17290.f_5226[iVar6])
						{
							iVar13++;
						}
						if (Global_17290.f_5612[iVar6] != 0f)
						{
							fVar98 = (fVar98 + Global_17290.f_5612[iVar6]);
						}
						else
						{
							fVar98 = (fVar98 + 0.034722f);
						}
					}
					if (!Global_17290.f_5598)
					{
						Global_17290.f_5355[iVar6] = 1;
						if (Global_17290.f_5097[iVar6])
						{
							if (iVar31)
							{
								Global_17290.f_5604 = 0;
							}
						}
						else
						{
							iVar11++;
							if (iVar31)
							{
								Global_17290.f_5604 = iVar11;
							}
						}
						iVar10++;
					}
				}
				iVar7++;
			}
			if (!Global_17290.f_5598)
			{
				Global_17290.f_5600 = ((fVar58 + fVar98) + (0.00277776f * IntToFloat(iVar12)));
				Global_17290.f_5603 = iVar11;
				Global_17290.f_5601 = iVar10;
				Global_17290.f_5598 = 1;
			}
		}
		iVar5++;
	}
	if (!Global_17290.f_5599)
	{
		Global_17290.f_5602 = iVar9;
		Global_17290.f_5599 = 1;
	}
	Global_17290.f_5743 = fVar49;
	Global_17290.f_5745 = gameplay::get_game_timer();
	ui::_0x55598D21339CB998(Global_17290.f_5743);
	if (!Global_17290.f_7859)
	{
		func_1160();
	}
	Global_17290.f_7859 = 0;
	if (iParam2)
	{
		ui::hide_hud_component_this_frame(10);
	}
	ui::hide_hud_component_this_frame(6);
	ui::hide_hud_component_this_frame(7);
	ui::hide_hud_component_this_frame(9);
	ui::hide_hud_component_this_frame(8);
	if (iParam0)
	{
		func_1159(1);
	}
	graphics::_0xE3A3DB414A373DAB();
}

void func_1159(int iParam0)//Position - 0x8F358
{
	Global_1354290.f_932 = iParam0;
}

void func_1160()//Position - 0x8F369
{
	if (!Global_14443.f_1 == 1)
	{
		if (func_1106(0))
		{
			func_1104(0);
		}
		gameplay::set_bit(&Global_2314, 2);
	}
}

float func_1161(int iParam0)//Position - 0x8F391
{
	switch (iParam0)
	{
		case 35:
		case 34:
		case 47:
		case 46:
		case 42:
		case 36:
		case 37:
		case 39:
		case 40:
		case 38:
		case 50:
		case 43:
		case 44:
		case 45:
			return 0.85f;
			break;
	}
	return 1f;
}

void func_1162(float fParam0, float fParam1, char* sParam2, float fParam3, int iParam4)//Position - 0x8F400
{
	ui::_set_text_entry(sParam2);
	ui::add_text_component_float(fParam3, iParam4);
	ui::_draw_text(fParam0, fParam1, 0);
}

void func_1163(float fParam0, float fParam1, char* sParam2, int iParam3, int iParam4)//Position - 0x8F41F
{
	ui::_set_text_entry(sParam2);
	ui::add_text_component_integer(iParam3);
	ui::_draw_text(fParam0, fParam1, iParam4);
}

void func_1164(int iParam0)//Position - 0x8F43D
{
	int iVar0;
	int iVar1;
	int iVar2;
	var uVar3;
	
	if (iParam0)
	{
		ui::get_hud_colour(Global_17290.f_7887[0], &iVar0, &iVar1, &iVar2, &uVar3);
	}
	else
	{
		ui::get_hud_colour(Global_17290.f_7887[1], &iVar0, &iVar1, &iVar2, &uVar3);
	}
	ui::set_text_colour(iVar0, iVar1, iVar2, 255);
}

void func_1165(int iParam0, int iParam1, int iParam2, int iParam3, int iParam4, int iParam5, int iParam6, int iParam7, int iParam8)//Position - 0x8F483
{
	var uVar0;
	int iVar1;
	int iVar2;
	
	if (!func_1118(&uVar0, 0, iParam1))
	{
		return;
	}
	iParam0 = iParam0;
	if (iParam3 && !func_1176(iParam4, iParam8))
	{
		return;
	}
	if (func_1168())
	{
		return;
	}
	if (network::_network_is_text_chat_active())
	{
		return;
	}
	if (iParam7 == 0)
	{
		if (func_124(player::player_id(), 0))
		{
			return;
		}
	}
	if (gameplay::is_pc_version())
	{
		if (gameplay::update_onscreen_keyboard() == 0 || network::_network_is_text_chat_active())
		{
			return;
		}
	}
	if (Global_17290.f_4639 != 0)
	{
		if (controls::_0x6CD79468A1E595C6(2))
		{
			iVar1 = 0;
			while (iVar1 < Global_17290.f_4639)
			{
				if (Global_17290.f_4896[iVar1] != 353)
				{
					StringCopy(&(Global_17290.f_4641[iVar1 /*16*/]), controls::_get_control_action_name(2, Global_17290.f_4896[iVar1], true), 64);
				}
				else if (Global_17290.f_4909[iVar1] != 32)
				{
					StringCopy(&(Global_17290.f_4641[iVar1 /*16*/]), controls::_0x80C2FD58D720C801(2, Global_17290.f_4909[iVar1], true), 64);
				}
				iVar1++;
			}
			Global_17290.f_4640 = 0;
		}
		if (!Global_17290.f_4640)
		{
			graphics::_push_scaleform_movie_function(Global_17290.f_5530[uVar0 /*10*/], "CLEAR_ALL");
			graphics::_pop_scaleform_movie_function_void();
			graphics::_push_scaleform_movie_function(Global_17290.f_5530[uVar0 /*10*/], "SET_MAX_WIDTH");
			graphics::_push_scaleform_movie_function_parameter_float((1f - (Global_17290.f_4951 / 100f)));
			graphics::_pop_scaleform_movie_function_void();
			if (gameplay::is_pc_version())
			{
				graphics::_push_scaleform_movie_function(Global_17290.f_5530[uVar0 /*10*/], "TOGGLE_MOUSE_BUTTONS");
				graphics::_push_scaleform_movie_function_parameter_bool(true);
				graphics::_pop_scaleform_movie_function_void();
			}
			iVar1 = 0;
			while (iVar1 < Global_17290.f_4639)
			{
				if (gameplay::get_hash_key(&(Global_17290.f_4834[iVar1 /*4*/])) != gameplay::get_hash_key("PREV"))
				{
					graphics::_push_scaleform_movie_function(Global_17290.f_5530[uVar0 /*10*/], "SET_DATA_SLOT");
					graphics::_push_scaleform_movie_function_parameter_int(iVar1);
					func_1167(&(Global_17290.f_4641[iVar1 /*16*/]));
					iVar2 = iVar1 + 1;
					while (iVar2 < 12 && gameplay::get_hash_key(&(Global_17290.f_4834[iVar2 /*4*/])) == gameplay::get_hash_key("PREV"))
					{
						func_1167(&(Global_17290.f_4641[iVar2 /*16*/]));
						iVar2++;
					}
					if (Global_17290.f_4883[iVar1] == -1)
					{
						func_1166(&(Global_17290.f_4834[iVar1 /*4*/]));
					}
					else
					{
						graphics::_begin_text_component(&(Global_17290.f_4834[iVar1 /*4*/]));
						if (iParam5)
						{
							ui::add_text_component_substring_time(iParam2, 70);
						}
						else
						{
							ui::add_text_component_integer(iParam2);
						}
						graphics::_end_text_component();
					}
					if (gameplay::is_pc_version())
					{
						if (Global_17290.f_4896[iVar1] != 353 && gameplay::is_bit_set(Global_17290.f_4922, iVar1))
						{
							graphics::_push_scaleform_movie_function_parameter_bool(true);
							graphics::_push_scaleform_movie_function_parameter_int(Global_17290.f_4896[iVar1]);
						}
						else
						{
							graphics::_push_scaleform_movie_function_parameter_bool(false);
							graphics::_push_scaleform_movie_function_parameter_int(353);
						}
					}
					graphics::_pop_scaleform_movie_function_void();
				}
				iVar1++;
			}
			if (gameplay::get_hash_key(&(Global_2593914.f_16)) != gameplay::get_hash_key(""))
			{
				graphics::_push_scaleform_movie_function(Global_17290.f_5530[uVar0 /*10*/], "SET_DATA_SLOT");
				graphics::_push_scaleform_movie_function_parameter_int(Global_17290.f_4639);
				func_1167(&Global_2593914);
				if (Global_2593914.f_20 == -1)
				{
					func_1166(&(Global_2593914.f_16));
				}
				else
				{
					graphics::_begin_text_component(&(Global_2593914.f_16));
					if (iParam5)
					{
						ui::add_text_component_substring_time(iParam2, 70);
					}
					else
					{
						ui::add_text_component_integer(iParam2);
					}
					graphics::_end_text_component();
				}
				graphics::_pop_scaleform_movie_function_void();
			}
			graphics::_push_scaleform_movie_function(Global_17290.f_5530[uVar0 /*10*/], "SET_BACKGROUND_COLOUR");
			graphics::_push_scaleform_movie_function_parameter_int(0);
			graphics::_push_scaleform_movie_function_parameter_int(0);
			graphics::_push_scaleform_movie_function_parameter_int(0);
			graphics::_push_scaleform_movie_function_parameter_int(80);
			graphics::_pop_scaleform_movie_function_void();
			graphics::_push_scaleform_movie_function(Global_17290.f_5530[uVar0 /*10*/], "DRAW_INSTRUCTIONAL_BUTTONS");
			if (Global_17290.f_4952)
			{
				graphics::_push_scaleform_movie_function_parameter_int(1);
			}
			else
			{
				graphics::_push_scaleform_movie_function_parameter_int(0);
			}
			graphics::_pop_scaleform_movie_function_void();
			Global_17290.f_4640 = 1;
		}
		iVar1 = 0;
		while (iVar1 < Global_17290.f_4639)
		{
			if (Global_17290.f_4883[iVar1] != -1)
			{
				if (iParam2 > 0)
				{
					graphics::_push_scaleform_movie_function(Global_17290.f_5530[uVar0 /*10*/], "OVERRIDE_RESPAWN_TEXT");
					graphics::_push_scaleform_movie_function_parameter_int(iVar1);
					graphics::_begin_text_component(&(Global_17290.f_4834[iVar1 /*4*/]));
					if (iParam5)
					{
						ui::add_text_component_substring_time(iParam2, 70);
					}
					else
					{
						ui::add_text_component_integer(iParam2);
					}
					graphics::_end_text_component();
					graphics::_pop_scaleform_movie_function_void();
				}
			}
			iVar1++;
		}
		if (Global_2593914.f_20 != -1)
		{
			if (iParam2 > 0)
			{
				graphics::_push_scaleform_movie_function(Global_17290.f_5530[uVar0 /*10*/], "OVERRIDE_RESPAWN_TEXT");
				graphics::_push_scaleform_movie_function_parameter_int(iVar1);
				graphics::_begin_text_component(&(Global_2593914.f_16));
				if (iParam5)
				{
					ui::add_text_component_substring_time(iParam2, 70);
				}
				else
				{
					ui::add_text_component_integer(iParam2);
				}
				graphics::_end_text_component();
				graphics::_pop_scaleform_movie_function_void();
			}
		}
		graphics::_set_screen_draw_position(76, 66);
		graphics::_0xF5A2C681787E579D(0f, 0f, 0f, 0f);
		if (iParam6)
		{
			if (!Global_17290.f_7894)
			{
				ui::set_hud_component_position(15, 0f, -0.0375f);
				Global_17290.f_7894 = 1;
			}
		}
		else if (Global_17290.f_7894)
		{
			ui::reset_hud_component_values(15);
			Global_17290.f_7894 = 0;
		}
		graphics::_0xE3A3DB414A373DAB();
		if (Global_17290.f_4925)
		{
			graphics::_set_screen_draw_position(82, 66);
			graphics::_0xF5A2C681787E579D(0f, 0f, 0f, 0f);
			graphics::draw_scaleform_movie(Global_17290.f_5530[uVar0 /*10*/], Global_17290.f_4923, Global_17290.f_4924, 1f, 1f, 255, 255, 255, 255, 0);
			graphics::_0xE3A3DB414A373DAB();
		}
		else
		{
			graphics::draw_scaleform_movie_fullscreen(Global_17290.f_5530[uVar0 /*10*/], 255, 255, 255, 255, 0);
		}
	}
}

void func_1166(char* sParam0)//Position - 0x8F95D
{
	graphics::_begin_text_component(sParam0);
	graphics::_end_text_component();
}

void func_1167(char* sParam0)//Position - 0x8F96F
{
	graphics::_0xE83A3E3557A56640(sParam0);
}

bool func_1168()//Position - 0x8F97D
{
	vector3 vVar0;
	
	if (Global_14443.f_1 > 3)
	{
		return true;
	}
	if (func_1169())
	{
		vVar0 = { 0f, -500f, 0f };
		mobile::get_mobile_phone_position(&vVar0);
		if (Global_14388 == 0)
		{
			if (vVar0.y > -119f)
			{
				return true;
			}
			else
			{
				return false;
			}
		}
		else if (vVar0.y > -101f)
		{
			return true;
		}
		else
		{
			return false;
		}
	}
	return false;
}

bool func_1169()//Position - 0x8F9EB
{
	if (script::_get_number_of_instances_of_streamed_script(joaat("cellphone_flashhand")) > 0)
	{
		return true;
	}
	return false;
}

void func_1170(int iParam0, int iParam1, int iParam2, int iParam3, int iParam4)//Position - 0x8FA05
{
	var uVar0;
	
	ui::get_hud_colour(1, iParam2, iParam3, iParam4, &uVar0);
	switch (iParam0)
	{
		case 28:
			*iParam2 = 194;
			*iParam3 = 80;
			*iParam4 = 80;
			break;
		
		case 15:
		case 4:
		case 16:
		case 26:
		case 27:
		case 35:
		case 34:
		case 47:
		case 46:
		case 42:
		case 36:
		case 37:
		case 50:
		case 39:
		case 40:
		case 38:
		case 43:
		case 44:
		case 45:
		case 49:
			if (iParam1)
			{
				*iParam2 = 0;
				*iParam3 = 0;
				*iParam4 = 0;
			}
			break;
	}
}

void func_1171(float fParam0)//Position - 0x8FAC5
{
	int iVar0;
	int iVar1;
	int iVar2;
	int iVar3;
	
	ui::get_hud_colour(1, &iVar0, &iVar1, &iVar2, &iVar3);
	ui::set_text_font(0);
	ui::set_text_scale(0f, 0.35f);
	ui::set_text_leading(2);
	ui::set_text_colour(iVar0, iVar1, iVar2, iVar3);
	ui::set_text_wrap(fParam0, ((Global_17287 + Global_17289) - 0.0046875f));
	ui::set_text_centre(0);
	ui::set_text_dropshadow(0, 0, 0, 0, 0);
	ui::set_text_edge(0, 0, 0, 0, 0);
}

void func_1172(float fParam0, float fParam1, char* sParam2, int iParam3, int iParam4)//Position - 0x8FB24
{
	ui::_set_text_entry(sParam2);
	ui::add_text_component_integer(iParam3);
	ui::add_text_component_integer(iParam4);
	ui::_draw_text(fParam0, fParam1, 0);
}

float func_1173(char* sParam0, int iParam1, int iParam2)//Position - 0x8FB47
{
	if (!gameplay::is_string_null(sParam0))
	{
		if (gameplay::get_hash_key(sParam0) == 0)
		{
			return 0f;
		}
	}
	else
	{
		return 0f;
	}
	func_1174();
	ui::_set_text_entry_for_width(sParam0);
	ui::add_text_component_integer(iParam1);
	ui::add_text_component_integer(iParam2);
	return ui::_get_text_screen_width(1);
}

void func_1174()//Position - 0x8FB89
{
	int iVar0;
	int iVar1;
	int iVar2;
	int iVar3;
	
	ui::get_hud_colour(1, &iVar0, &iVar1, &iVar2, &iVar3);
	if (Global_17290.f_7869)
	{
		iVar0 = Global_17290.f_7865;
		iVar1 = Global_17290.f_7866;
		iVar2 = Global_17290.f_7867;
		iVar3 = Global_17290.f_7868;
	}
	ui::set_text_font(0);
	ui::set_text_scale(0f, 0.35f);
	ui::set_text_colour(iVar0, iVar1, iVar2, iVar3);
	ui::set_text_wrap((Global_17287 + 0.0046875f), ((Global_17287 + Global_17289) - 0.0046875f));
	ui::set_text_centre(0);
	ui::set_text_dropshadow(0, 0, 0, 0, 0);
	ui::set_text_edge(0, 0, 0, 0, 0);
}

void func_1175(float fParam0, float fParam1, float fParam2, float fParam3, int iParam4, int iParam5, int iParam6, int iParam7)//Position - 0x8FC13
{
	graphics::draw_rect((fParam0 + (fParam2 * 0.5f)), (fParam1 + (fParam3 * 0.5f)), fParam2, fParam3, iParam4, iParam5, iParam6, iParam7, 0);
}

bool func_1176(int iParam0, int iParam1)//Position - 0x8FC42
{
	if (Global_2433082.f_1385.f_688 != 0)
	{
		return true;
	}
	if ((((((((!cam::is_screen_faded_in() || (func_1126(8, -1) && func_1177() != 64)) || (ui::get_pause_menu_state() != 0 && !iParam1)) || (streaming::is_player_switch_in_progress() && !iParam0)) || network::_0x2EAC52B4019E2782()) || Global_69957) || Global_17290.f_7893) || ui::is_warning_message_active()) || Global_91538.f_1361)
	{
		return false;
	}
	return true;
}

var func_1177()//Position - 0x8FCDF
{
	return Global_1315164;
}

void func_1178()//Position - 0x8FCEB
{
	Global_2494149.f_4394 = 0;
}

void func_1179(var uParam0, int iParam1)//Position - 0x8FCFB
{
	int iVar0;
	
	if (!gameplay::is_pc_version())
	{
		return;
	}
	if ((((ui::get_pause_menu_state() == 0 && !player::is_system_ui_being_displayed()) && !ui::is_warning_message_active()) && !Global_91538.f_1361) && !network::_network_is_text_chat_active())
	{
		if (controls::_is_input_just_disabled(2))
		{
			controls::disable_control_action(0, 1, 1);
			controls::disable_control_action(0, 2, 1);
			controls::disable_control_action(2, 200, 1);
			controls::disable_control_action(2, 199, 1);
			controls::enable_control_action(0, 237, 1);
			controls::enable_control_action(0, 238, 1);
			controls::enable_control_action(0, 241, 1);
			controls::enable_control_action(0, 242, 1);
			controls::set_input_exclusive(0, 200);
			controls::set_input_exclusive(2, 200);
			controls::disable_control_action(0, 200, 1);
			controls::disable_control_action(2, 200, 1);
			func_1186(0, 0, 0, 1);
			func_1185(0, -1, 1);
		}
		iVar0 = func_1184(uParam0, Global_2593990);
		if (func_1183())
		{
			if (iVar0 == uParam0->f_4)
			{
				gameplay::set_bit(iParam1, 0);
			}
			else
			{
				uParam0->f_4 = iVar0;
				func_1152(Global_2593990, 1, 1);
			}
		}
		if (func_1182() || controls::is_disabled_control_just_pressed(2, 200))
		{
			gameplay::set_bit(iParam1, 1);
		}
		if (func_1181(0, 0, 0))
		{
			gameplay::set_bit(iParam1, 2);
		}
		if (func_1180(0, 0, 0))
		{
			gameplay::set_bit(iParam1, 3);
		}
	}
}

bool func_1180(int iParam0, int iParam1, int iParam2)//Position - 0x8FE29
{
	if (controls::_is_input_disabled(2))
	{
		if (Global_2593990 == -3)
		{
			if ((controls::is_control_pressed(2, 237) && iParam0) || controls::is_control_just_pressed(2, 237))
			{
				return true;
			}
		}
		if (iParam2 == 0)
		{
			if (controls::is_control_pressed(2, 242) || (controls::is_disabled_control_pressed(2, 242) && iParam1))
			{
				return true;
			}
		}
	}
	return false;
}

bool func_1181(int iParam0, int iParam1, int iParam2)//Position - 0x8FE8E
{
	if (controls::_is_input_disabled(2))
	{
		if (Global_2593990 == -2)
		{
			if ((controls::is_control_pressed(2, 237) && iParam0) || controls::is_control_just_pressed(2, 237))
			{
				return true;
			}
		}
		if (iParam2 == 0)
		{
			if (controls::is_control_pressed(2, 241) || (controls::is_disabled_control_pressed(2, 241) && iParam1))
			{
				return true;
			}
		}
	}
	return false;
}

bool func_1182()//Position - 0x8FEF3
{
	if (controls::_is_input_disabled(2))
	{
		if (controls::is_control_just_pressed(2, 238))
		{
			return true;
		}
	}
	return false;
}

bool func_1183()//Position - 0x8FF12
{
	if (controls::_is_input_disabled(2))
	{
		if (Global_2593990 > -1)
		{
			if (controls::is_control_just_pressed(2, 237))
			{
				return true;
			}
		}
	}
	return false;
}

int func_1184(var uParam0, int iParam1)//Position - 0x8FF39
{
	int iVar0;
	int iVar1;
	
	iVar0 = 0;
	while (iVar0 < uParam0->f_5)
	{
		if (func_1155(uParam0, iVar0))
		{
			if (iParam1 == iVar1)
			{
				return iVar0;
			}
			iVar1++;
		}
		iVar0++;
	}
	return -1;
}

bool func_1185(int iParam0, int iParam1, int iParam2)//Position - 0x8FF74
{
	if (!controls::_is_input_disabled(2))
	{
		return false;
	}
	if (ui::is_pause_menu_active() || ui::is_warning_message_active())
	{
		return false;
	}
	if (iParam2)
	{
		ui::_show_cursor_this_frame();
	}
	if (Global_2593990 == -6)
	{
		ui::_set_cursor_sprite(4);
		if (iParam0 && controls::is_control_pressed(2, 237))
		{
			return true;
		}
		else
		{
			Global_2593990 = -1;
			return false;
		}
	}
	if (((Global_2593990 > -1 || Global_2593990 == -3) || Global_2593990 == -2) || ui::_0x3D9ACB1EB139E702())
	{
		ui::_set_cursor_sprite(1);
		return false;
	}
	if (Global_2593990 == -1 && iParam0)
	{
		if (controls::is_control_pressed(2, 237))
		{
			ui::_set_cursor_sprite(4);
			Global_2593990 = -6;
			return true;
		}
		else
		{
			ui::_set_cursor_sprite(3);
			return false;
		}
	}
	ui::_set_cursor_sprite(1);
	return false;
}

void func_1186(int iParam0, int iParam1, int iParam2, int iParam3)//Position - 0x90056
{
	float fVar0;
	float fVar1;
	float fVar2;
	float fVar3;
	float fVar4;
	float fVar5;
	float fVar6;
	float fVar7;
	float fVar8;
	float fVar9;
	int iVar10;
	int iVar11;
	int iVar12;
	int iVar13;
	
	fVar6 = (0.034722f / 2f);
	iVar13 = -1;
	if (!controls::_is_input_disabled(2))
	{
		Global_2593990 = -1;
		return;
	}
	controls::_0x5B73C77D9EB66E24(1);
	fVar0 = Global_17287;
	fVar2 = (fVar0 + Global_17289);
	fVar3 = Global_17290.f_5600;
	fVar1 = (Global_17290.f_5600 - (IntToFloat(Global_17290.f_5602) * 0.034722f));
	if (iParam2)
	{
		fVar3 = (fVar3 + 0.034722f);
		fVar1 = (fVar1 + 0.034722f);
	}
	if (Global_17290.f_5602 < 1)
	{
		fVar1 = (Global_17290.f_5600 - 0.034722f);
	}
	graphics::_set_screen_draw_position(76, 84);
	graphics::_0xF5A2C681787E579D(-0.05f, -0.05f, 0f, 0f);
	fVar4 = fVar0;
	fVar5 = fVar1;
	graphics::_0x6DD8F5AA635EB4B2(fVar0, fVar1, &fVar0, &fVar1);
	graphics::_0x6DD8F5AA635EB4B2(fVar2, fVar3, &fVar2, &fVar3);
	graphics::_0xE3A3DB414A373DAB();
	func_1188();
	if (Global_2593990 == -6)
	{
		return;
	}
	Global_2593990 = -1;
	fVar7 = Global_2593984;
	fVar8 = Global_2593985;
	if (Global_17290.f_5603 > Global_17290.f_5602)
	{
		if (((Global_2593984 >= fVar0 && Global_2593984 <= fVar2) && Global_2593985 >= fVar3) && Global_2593985 < (fVar3 + fVar6))
		{
			Global_2593990 = -2;
			if (iParam3)
			{
				func_1187(0);
			}
			return;
		}
		if (((Global_2593984 >= fVar0 && Global_2593984 <= fVar2) && Global_2593985 >= (fVar3 + fVar6)) && Global_2593985 < (fVar3 + 0.034722f))
		{
			Global_2593990 = -3;
			if (iParam3)
			{
				func_1187(0);
			}
			return;
		}
	}
	if (((fVar7 >= fVar0 && fVar7 <= fVar2) && fVar8 >= fVar1) && fVar8 <= fVar3)
	{
		fVar9 = (fVar8 - fVar1);
		iVar13 = system::floor((fVar9 / 0.034722f));
		if (Global_17290.f_5603 == -1)
		{
			Global_2593990 = 0;
			iVar13 = 0;
			return;
		}
		iVar11 = 148;
		iVar12 = (iVar11 / Global_17290.f_5602);
		iVar10 = (32 + (iVar11 - (iVar12 * iVar13)));
		if (iParam3)
		{
			if (!iParam1 || iVar13 != 0)
			{
				graphics::_set_screen_draw_position(76, 84);
				graphics::_0xF5A2C681787E579D(-0.05f, -0.05f, 0f, 0f);
				func_1175(fVar4, (fVar5 + (IntToFloat(iVar13) * 0.034722f)), Global_17289, (0.034722f - 0.0015f), 255, 255, 255, iVar10);
				graphics::_0xE3A3DB414A373DAB();
			}
		}
		Global_2593990 = Global_17290.f_7520[iVar13];
		return;
	}
	if (!iParam0)
	{
		if (fVar7 < fVar2)
		{
			Global_2593990 = -4;
			return;
		}
		if (fVar8 > 0.9f)
		{
			Global_2593990 = -5;
			return;
		}
	}
	else if (fVar7 < fVar2 && fVar8 < (fVar3 + 0.25f))
	{
		Global_2593990 = -4;
		return;
	}
	Global_2593990 = -1;
}

void func_1187(int iParam0)//Position - 0x90302
{
	float fVar0;
	float fVar1;
	float fVar2;
	int iVar3;
	
	fVar2 = (0.034722f / 2f);
	if (iParam0)
	{
		iVar3 = 48;
	}
	else
	{
		iVar3 = 210;
	}
	fVar0 = Global_17287;
	fVar1 = Global_17290.f_5600;
	graphics::_set_screen_draw_position(76, 84);
	graphics::_0xF5A2C681787E579D(-0.05f, -0.05f, 0f, 0f);
	if (Global_2593990 == -2)
	{
		func_1175(fVar0, fVar1, Global_17289, fVar2, 255, 255, 255, iVar3);
	}
	else if (Global_2593990 == -3)
	{
		func_1175(fVar0, (fVar1 + fVar2), Global_17289, fVar2, 255, 255, 255, iVar3);
	}
	graphics::_0xE3A3DB414A373DAB();
}

void func_1188()//Position - 0x9038B
{
	Global_2593986 = Global_2593984;
	Global_2593987 = Global_2593985;
	Global_2593984 = controls::get_disabled_control_normal(2, 239);
	Global_2593985 = controls::get_disabled_control_normal(2, 240);
	Global_2593988 = (Global_2593984 - Global_2593986);
	Global_2593989 = (Global_2593985 - Global_2593987);
}

bool func_1189()//Position - 0x903D3
{
	if (!entity::is_entity_dead(player::player_ped_id(), 0) && entity::is_entity_in_angled_area(player::player_ped_id(), Local_133.f_113, Local_133.f_116, Local_133.f_9.f_89.f_7, 0, true, 0))
	{
		if (func_1190(entity::get_entity_heading(player::player_ped_id()), Local_133.f_122, 60f))
		{
			return true;
		}
	}
	return false;
}

bool func_1190(float fParam0, float fParam1, float fParam2)//Position - 0x90429
{
	float fVar0;
	float fVar1;
	
	fVar1 = (fParam1 - fParam2);
	if (fVar1 < 0f)
	{
		fVar1 = (fVar1 + 360f);
	}
	fVar0 = (fParam1 + fParam2);
	if (fVar0 >= 360f)
	{
		fVar0 = (fVar0 - 360f);
	}
	if (fVar0 > fVar1)
	{
		if (fParam0 < fVar0 && fParam0 > fVar1)
		{
			return true;
		}
	}
	else if (fParam0 < fVar0 || fParam0 > fVar1)
	{
		return true;
	}
	return false;
}

bool func_1191(var uParam0)//Position - 0x9049E
{
	float fVar0;
	int iVar1;
	
	if (ped::is_ped_in_any_vehicle(player::player_ped_id(), 0))
	{
		iVar1 = ped::get_vehicle_ped_is_in(player::player_ped_id(), 0);
		if (entity::get_entity_model(iVar1) == joaat("blazer5"))
		{
			fVar0 = 0.5f;
		}
		else
		{
			fVar0 = 0.3f;
		}
		if (vehicle::get_is_vehicle_engine_running(iVar1))
		{
			if (entity::get_entity_speed(player::player_ped_id()) > fVar0)
			{
				ped::set_ped_can_be_knocked_off_vehicle(player::player_ped_id(), 1);
				vehicle::set_vehicle_doors_locked_for_all_players(iVar1, 1);
				vehicle::_0xDBC631F109350B8C(iVar1, 1);
				controls::disable_control_action(0, 75, 1);
				if (func_262(player::player_ped_id(), 0) == -1)
				{
					func_1192(iVar1);
				}
				return true;
			}
		}
	}
	return false;
}

void func_1192(int iParam0)//Position - 0x9052A
{
	var uVar0;
	int iVar1;
	int iVar2;
	
	iVar2 = func_1194(entity::get_entity_model(iParam0));
	iVar1 = iVar2 + 148;
	func_304(iVar1, &uVar0, 0);
	func_1193(uVar0);
	gameplay::set_bit(&(Global_1320588[uVar0 /*140*/].f_101), 23);
}

void func_1193(var uParam0)//Position - 0x90563
{
	Global_2097152[func_752() /*10730*/].f_7546.f_2 = uParam0;
}

int func_1194(int iParam0)//Position - 0x9057D
{
	int iVar0;
	
	iVar0 = iParam0;
	switch (iVar0)
	{
		case joaat("technical2"):
			return 0;
			break;
		
		case joaat("boxville5"):
			return 1;
			break;
		
		case joaat("wastelander"):
			return 2;
			break;
		
		case joaat("phantom2"):
			return 3;
			break;
		
		case joaat("voltic2"):
			return 4;
			break;
		
		case joaat("dune4"):
			return 5;
			break;
		
		case joaat("dune5"):
			return 5;
			break;
		
		case joaat("ruiner2"):
			return 6;
			break;
		
		case joaat("blazer5"):
			return 7;
			break;
	}
	return -1;
}

var func_1195(int iParam0, var uParam1, var uParam2)//Position - 0x90606
{
	struct<16> Var0;
	
	func_23(iParam0, &Var0, 15);
	Stack.Push(iParam0);
	Stack.Push(uParam1);
	Stack.Push(uParam2);
	Call_Loc(Var0.f_15);
	return StackVal;
}

var func_1196(int iParam0, var uParam1)//Position - 0x90623
{
	struct<15> Var0;
	
	func_23(iParam0, &Var0, 14);
	Stack.Push(iParam0);
	Stack.Push(uParam1);
	Call_Loc(Var0.f_14);
	return StackVal;
}

void func_1197()//Position - 0x9063E
{
	func_431();
	if (cam::is_screen_faded_in())
	{
		if (func_217())
		{
			if (!gameplay::is_string_null_or_empty(Local_133.f_9.f_22.f_61) && !gameplay::is_string_null_or_empty(Local_133.f_9.f_22.f_62))
			{
				audio::play_sound_from_coord(-1, Local_133.f_9.f_22.f_61, Local_133.f_119, Local_133.f_9.f_22.f_62, 0, 0, 0);
			}
		}
		func_428(0, Local_133.f_1, 0);
		if (func_12(Local_133.f_1))
		{
			func_1198(0, Local_133.f_1);
		}
		if (ped::is_ped_in_any_vehicle(player::player_ped_id(), 0))
		{
			ai::task_leave_any_vehicle(player::player_ped_id(), 0, 0);
		}
		func_4(7);
	}
}

void func_1198(int iParam0, int iParam1)//Position - 0x906D1
{
	if (iParam0)
	{
		if (!gameplay::is_bit_set(Global_2421621[player::player_id() /*358*/].f_312, 1))
		{
			gameplay::set_bit(&(Global_2421621[player::player_id() /*358*/].f_312), 1);
			gameplay::clear_bit(&(Global_2421621[player::player_id() /*358*/].f_312), 2);
			Global_2421621[player::player_id() /*358*/].f_312.f_4 = iParam1;
			func_391(&(Global_1760739.f_517), 0, 0);
		}
	}
	else
	{
		gameplay::clear_bit(&(Global_2421621[player::player_id() /*358*/].f_312), 1);
		func_1199(4, iParam1);
		Global_2421621[player::player_id() /*358*/].f_312.f_4 = -1;
		func_7(&(Global_1760739.f_517));
	}
}

void func_1199(int iParam0, int iParam1)//Position - 0x90773
{
	var uVar0;
	int iVar1;
	
	func_11(iParam1, &uVar0, &iVar1);
	switch (iParam0)
	{
		case 0:
			gameplay::set_bit(&(Global_1760739.f_222[uVar0]), iVar1);
			return;
			break;
		
		case 1:
			gameplay::set_bit(&(Global_1760739.f_226[uVar0]), iVar1);
			return;
			break;
		
		case 2:
			gameplay::set_bit(&(Global_1760739.f_230[uVar0]), iVar1);
			return;
			break;
		
		case 3:
			gameplay::set_bit(&(Global_1760739.f_504[uVar0]), iVar1);
			return;
			break;
		
		case 4:
			gameplay::set_bit(&(Global_1760739.f_508[uVar0]), iVar1);
			return;
			break;
		
		case 5:
			gameplay::set_bit(&(Global_1760739.f_672[uVar0]), iVar1);
			return;
			break;
		
		case 6:
			gameplay::set_bit(&(Global_1760739.f_676[uVar0]), iVar1);
			return;
			break;
		
		case 7:
			gameplay::set_bit(&(Global_1760739.f_680[uVar0]), iVar1);
			return;
			break;
		
		case 8:
			gameplay::set_bit(&(Global_1760739.f_690[uVar0]), iVar1);
			return;
			break;
		
		case 9:
			gameplay::set_bit(&(Global_1760739.f_694[uVar0]), iVar1);
			return;
			break;
		
		case 10:
			gameplay::set_bit(&(Global_1760739.f_512[uVar0]), iVar1);
			return;
			break;
		
		case 11:
			gameplay::set_bit(&(Global_1760739.f_684[uVar0]), iVar1);
			return;
			break;
	}
}

void func_1200()//Position - 0x908E5
{
	func_431();
	if (((!Local_133.f_188 && Local_133.f_190 >= 30) || (!entity::is_entity_dead(player::player_ped_id(), 0) && entity::get_entity_speed(player::player_ped_id()) > 0.9f)) || func_388(&(Local_133.f_123), 2000, 0))
	{
		cam::do_screen_fade_in(322);
		func_7(&(Local_133.f_123));
		Local_133.f_188 = 0;
		func_4(6);
	}
	Local_133.f_190++;
}

void func_1201(var uParam0, int iParam1)//Position - 0x9095D
{
	struct<33> Var0;
	
	func_23(iParam1, &Var0, 32);
	Stack.Push(uParam0);
	Stack.Push(iParam1);
	Call_Loc(Var0.f_32);
}

void func_1202(int iParam0, int iParam1)//Position - 0x90978
{
	if (((iParam1 == 5 || iParam1 == 6) || iParam1 == 8) || iParam1 == 9)
	{
		controls::disable_control_action(0, 75, 1);
	}
	if (func_22(iParam0))
	{
		func_21();
		controls::disable_control_action(0, 37, 1);
		controls::disable_control_action(0, 157, 1);
		controls::disable_control_action(0, 159, 1);
		controls::disable_control_action(0, 160, 1);
		controls::disable_control_action(0, 161, 1);
		controls::disable_control_action(0, 162, 1);
		controls::disable_control_action(0, 163, 1);
		controls::disable_control_action(0, 164, 1);
		controls::disable_control_action(0, 165, 1);
		controls::disable_control_action(0, 158, 1);
		controls::disable_control_action(0, 337, 1);
		controls::disable_control_action(0, 53, 1);
		controls::disable_control_action(0, 54, 1);
		controls::disable_control_action(0, 47, 1);
		controls::disable_control_action(0, 140, 1);
		controls::disable_control_action(0, 141, 1);
		controls::disable_control_action(0, 143, 1);
		controls::disable_control_action(0, 143, 1);
		controls::disable_control_action(0, 24, 1);
	}
	if (func_1203(iParam0))
	{
		controls::disable_control_action(0, 44, 1);
		controls::disable_control_action(0, 282, 1);
		controls::disable_control_action(0, 283, 1);
		controls::disable_control_action(0, 284, 1);
		controls::disable_control_action(0, 285, 1);
		controls::disable_control_action(0, 69, 1);
		controls::disable_control_action(0, 70, 1);
		controls::disable_control_action(0, 114, 1);
		controls::disable_control_action(0, 99, 1);
		controls::disable_control_action(0, 100, 1);
		controls::disable_control_action(0, 102, 1);
		controls::disable_control_action(0, 22, 1);
		controls::disable_control_action(0, 74, 1);
		controls::disable_control_action(0, 68, 1);
		controls::disable_control_action(0, 25, 1);
		controls::disable_control_action(0, 36, 1);
		if (func_387(player::player_id(), 1, 1))
		{
			if (ped::get_ped_stealth_movement(player::player_ped_id()))
			{
				ped::set_ped_stealth_movement(player::player_ped_id(), 0, 0);
			}
			ped::set_ped_reset_flag(player::player_ped_id(), 102, true);
			ped::set_ped_reset_flag(player::player_ped_id(), 124, true);
			ped::set_ped_reset_flag(player::player_ped_id(), 362, true);
			ped::set_ped_reset_flag(player::player_ped_id(), 47, true);
		}
	}
}

var func_1203(int iParam0)//Position - 0x90B31
{
	struct<36> Var0;
	
	func_23(iParam0, &Var0, 35);
	Stack.Push(iParam0);
	Call_Loc(Var0.f_35);
	return StackVal;
}

void func_1204()//Position - 0x90B4A
{
	int iVar0;
	int iVar1;
	int iVar2;
	int iVar3;
	int iVar4;
	
	iVar0 = 8000;
	iVar1 = false;
	if (Global_1760727)
	{
		iVar0 = 10000;
	}
	if (!entity::is_entity_dead(player::player_ped_id(), 0))
	{
		if (entity::is_entity_visible(player::player_ped_id()))
		{
			entity::set_entity_visible(player::player_ped_id(), false, 0);
		}
	}
	if (func_1208(&(Local_133.f_9)))
	{
		iVar2 = (!func_1207() && func_388(&(Local_133.f_160), iVar0, 0));
		if (func_1206() || iVar2)
		{
			iVar1 = true;
			if (iVar2)
			{
				func_1205(1);
			}
		}
	}
	else
	{
		iVar1 = true;
	}
	if (iVar1 && func_12(Local_133.f_1))
	{
		if (!func_10(10, Local_133.f_1))
		{
			if (Global_1760739.f_519)
			{
				if (func_388(&(Global_1760739.f_517), Global_1760739.f_516, 0))
				{
					iVar3 = true;
				}
			}
		}
		if (!func_10(3, Local_133.f_1) && !iVar3)
		{
			iVar1 = false;
		}
	}
	if (iVar1 && Local_133.f_4 > -1)
	{
		if (ui::is_warning_message_active())
		{
			iVar1 = false;
		}
	}
	iVar4 = func_389(Local_133.f_1);
	if (((iVar1 && iVar4 != -1) && func_12(Local_133.f_1)) && func_10(10, Local_133.f_1))
	{
		func_4(16);
		return;
	}
	if (iVar1)
	{
		Local_133.f_190 = 0;
		func_14(player::player_id(), 1, 524288);
		if (!Local_133.f_186)
		{
			func_13(0);
			network::network_fade_in_entity(player::player_ped_id(), 1, 1);
		}
		if (func_12(Local_133.f_1) && func_10(10, Local_133.f_1))
		{
			func_5();
		}
		if (((((func_12(Local_133.f_1) && func_10(1, Local_133.f_1)) || Global_1760739.f_9) || Local_133.f_186) || entity::is_entity_dead(player::player_ped_id(), 0)) || !ped::is_ped_on_foot(player::player_ped_id()))
		{
			if (Global_1760727)
			{
				func_8(&(Local_133.f_123), 0, 0);
				func_4(5);
			}
			else
			{
				if (!cam::is_screen_faded_in() && !cam::is_screen_fading_in())
				{
					cam::do_screen_fade_in(322);
				}
				func_4(5);
			}
		}
		else
		{
			if (!entity::is_entity_dead(player::player_ped_id(), 0))
			{
				player::simulate_player_input_gait(player::player_id(), 1f, 850, 0, 1, 0);
				Local_133.f_188 = 1;
			}
			func_8(&(Local_133.f_123), 0, 0);
			func_4(5);
		}
	}
}

void func_1205(int iParam0)//Position - 0x90D81
{
	Global_1760739.f_6 = iParam0;
}

var func_1206()//Position - 0x90D91
{
	return Global_1760739.f_3;
}

var func_1207()//Position - 0x90D9F
{
	return Global_1760739.f_4;
}

int func_1208(var uParam0)//Position - 0x90DAD
{
	return !gameplay::is_string_null_or_empty(uParam0->f_21);
}

void func_1209()//Position - 0x90DBE
{
	if (func_426())
	{
		return;
	}
	if (Local_133.f_186 || func_395(978.2659f, -2999.168f, -48.6471f, 0f, 0, 1, 0, 0, 1, 0, 1, 0))
	{
		Global_1760739.f_16 = 0;
		func_385(1);
		if (func_12(Local_133.f_1))
		{
			gameplay::set_bit(&(Global_2421621[player::player_id() /*358*/].f_312), 2);
			func_424(Local_133.f_1);
		}
		if (func_22(Local_133.f_1))
		{
			func_21();
		}
		func_4(4);
	}
}

void func_1210()//Position - 0x90E3F
{
	int iVar0;
	
	if (func_426())
	{
		return;
	}
	iVar0 = 0;
	if (func_1212(&(Local_133.f_199)))
	{
		iVar0 = func_459(8, 0, 0, 0, 0, 0, 0, 1, 1, 3000, 1, 1, 0, 0, 0, 0);
		func_445(1, Local_133.f_1);
	}
	else if ((func_1211(&(Local_133.f_199)) || func_12(Local_133.f_1)) || Local_133.f_4 > -1)
	{
		iVar0 = func_459(8, 0, 0, 0, 0, 0, 0, 0, 1, 3000, 1, 1, 0, 0, 0, 0);
	}
	if (Local_133.f_186 || iVar0)
	{
		func_455();
		func_448(0, 1, 0, 1060320051, 1086324736, 1065353216, 1088421888, 1084227584, 0, 1066192077, 0, 0);
		Global_1760739.f_16 = 0;
		func_385(1);
		if (func_12(Local_133.f_1))
		{
			gameplay::set_bit(&(Global_2421621[player::player_id() /*358*/].f_312), 2);
			func_424(Local_133.f_1);
			if (!entity::is_entity_dead(player::player_ped_id(), 0))
			{
				ai::clear_ped_tasks_immediately(player::player_ped_id());
				entity::set_entity_collision(player::player_ped_id(), true, 0);
				entity::freeze_entity_position(player::player_ped_id(), false);
				ped::_0x2208438012482A1A(player::player_ped_id(), 0, 0);
			}
		}
		if (func_22(Local_133.f_1))
		{
			func_21();
		}
		func_4(4);
	}
}

int func_1211(var uParam0)//Position - 0x90F75
{
	return gameplay::is_bit_set(uParam0->f_2, 1);
}

int func_1212(var uParam0)//Position - 0x90F86
{
	return gameplay::is_bit_set(uParam0->f_2, 2);
}

void func_1213()//Position - 0x90F97
{
	func_4(3);
}

void func_1214()//Position - 0x90FA4
{
	int iVar0;
	
	if (!Local_133.f_9.f_3 && !Local_133.f_186)
	{
		if (interior::is_interior_ready(Local_133.f_5) && Global_1760739.f_16)
		{
			if (func_1208(&(Local_133.f_9)) && !func_1219())
			{
				return;
			}
			if (gameplay::is_bit_set(Local_133, 1))
			{
				interior::refresh_interior(Local_133.f_5);
				gameplay::clear_bit(&Local_133, 1);
			}
			if (Global_1760727)
			{
				func_4(18);
			}
			else
			{
				iVar0 = func_389(Local_133.f_1);
				if (iVar0 == -1)
				{
					func_1215();
					func_4(3);
				}
				else
				{
					func_4(15);
				}
			}
		}
	}
	else
	{
		if (func_1208(&(Local_133.f_9)) && !func_1219())
		{
			return;
		}
		func_385(1);
		func_4(7);
	}
}

void func_1215()//Position - 0x9105E
{
	int iVar0;
	vector3 vVar1;
	float fVar4;
	float fVar5;
	int iVar6;
	
	func_448(1, 0, 1, 0.01f, 2f, 1065353216, 1088421888, 0.01f, 0, 1066192077, 1, 1);
	if (func_12(Local_133.f_1) && func_10(1, Local_133.f_1))
	{
		vVar1 = { func_1218(Global_1760739.f_234[Local_133.f_1 /*3*/], &(Local_133.f_9)) };
		fVar4 = func_1217(Global_1760739.f_436[Local_133.f_1], &(Local_133.f_9));
		func_1089(vVar1, fVar4, 1f);
	}
	else
	{
		iVar6 = 0;
		if (ped::is_ped_in_any_vehicle(player::player_ped_id(), 0))
		{
			iVar6 = 1;
		}
		while (func_1216(Local_133.f_1, iVar0, &vVar1, &fVar4, iVar6))
		{
			iVar0++;
			fVar5 = (1f - (system::to_float(iVar0) / system::to_float(32)));
			vVar1 = { func_1218(vVar1, &(Local_133.f_9)) };
			fVar4 = func_1217(fVar4, &(Local_133.f_9));
			func_1089(vVar1, fVar4, fVar5);
		}
	}
}

var func_1216(int iParam0, var uParam1, var uParam2, var uParam3, int iParam4)//Position - 0x91149
{
	struct<18> Var0;
	
	func_23(iParam0, &Var0, 17);
	Stack.Push(iParam0);
	Stack.Push(uParam1);
	Stack.Push(uParam2);
	Stack.Push(uParam3);
	Stack.Push(iParam4);
	Call_Loc(Var0.f_17);
	return StackVal;
}

float func_1217(float fParam0, var uParam1)//Position - 0x9116A
{
	float fVar0;
	
	fVar0 = (fParam0 + uParam1->f_4);
	while (fVar0 < 0f)
	{
		fVar0 = (fVar0 + 360f);
	}
	while (fVar0 >= 360f)
	{
		fVar0 = (fVar0 - 360f);
	}
	return fVar0;
}

Vector3 func_1218(vector3 vParam0, var uParam3)//Position - 0x911A9
{
	return object::_get_object_offset_from_coords(*uParam3, uParam3->f_4, vParam0);
}

var func_1219()//Position - 0x911C1
{
	return Global_1760739.f_5;
}

void func_1220()//Position - 0x911CF
{
	func_4(1);
}

int func_1221(int iParam0)//Position - 0x911DC
{
	return Local_133.f_2 == iParam0;
}

void func_1222()//Position - 0x911EB
{
	if (Global_1760739.f_7)
	{
		if (interior::is_valid_interior(Local_133.f_5))
		{
			interior::unpin_interior(Local_133.f_5);
		}
		if (func_1223())
		{
			gameplay::set_bit(&Local_133, 1);
		}
		Global_1760739.f_7 = 0;
	}
	else if (gameplay::is_bit_set(Local_133, 1) && Local_133.f_2 != 1)
	{
		if (interior::is_interior_ready(Local_133.f_5))
		{
			interior::refresh_interior(Local_133.f_5);
			gameplay::clear_bit(&Local_133, 1);
			Global_1760739.f_8 = 1;
		}
	}
}

bool func_1223()//Position - 0x9125D
{
	var uVar0;
	
	Local_133.f_5 = interior::get_interior_at_coords_with_type(Local_133.f_9, &(Local_133.f_9.f_5));
	if (Local_133.f_9.f_3)
	{
		return true;
	}
	if (interior::is_valid_interior(Local_133.f_5))
	{
		interior::_0x2CA429C029CCF247(Local_133.f_5);
		if (func_384(Local_133.f_1) == 1)
		{
			func_447(&uVar0);
			func_1224(uVar0, Local_133.f_5);
			interior::refresh_interior(Local_133.f_5);
		}
		return true;
	}
	return false;
}

void func_1224(var uParam0, int iParam1)//Position - 0x912C2
{
	if (interior::_is_interior_prop_enabled(iParam1, "Basic_style_set"))
	{
		interior::_disable_interior_prop(iParam1, "Basic_style_set");
	}
	if (interior::_is_interior_prop_enabled(iParam1, "Branded_style_set"))
	{
		interior::_disable_interior_prop(iParam1, "Branded_style_set");
	}
	if (interior::_is_interior_prop_enabled(iParam1, "Urban_style_set"))
	{
		interior::_disable_interior_prop(iParam1, "Urban_style_set");
	}
	switch (Global_1589933[uParam0 /*601*/].f_257.f_103.f_44)
	{
		case 0:
			if (!interior::_is_interior_prop_enabled(iParam1, "Basic_style_set"))
			{
				interior::_enable_interior_prop(iParam1, "Basic_style_set");
				unk_0xC1F1920BAF281317(iParam1, "Basic_style_set", 8);
			}
			break;
		
		case 2:
			if (!interior::_is_interior_prop_enabled(iParam1, "Branded_style_set"))
			{
				interior::_enable_interior_prop(iParam1, "Branded_style_set");
				unk_0xC1F1920BAF281317(iParam1, "Branded_style_set", 1);
			}
			break;
		
		case 1:
			if (!interior::_is_interior_prop_enabled(iParam1, "Urban_style_set"))
			{
				interior::_enable_interior_prop(iParam1, "Urban_style_set");
				unk_0xC1F1920BAF281317(iParam1, "Urban_style_set", 0);
			}
			break;
		
		default:
			if (!interior::_is_interior_prop_enabled(iParam1, "Basic_style_set"))
			{
				interior::_enable_interior_prop(iParam1, "Basic_style_set");
				unk_0xC1F1920BAF281317(iParam1, "Basic_style_set", 8);
			}
			break;
	}
}

void func_1225()//Position - 0x913D0
{
	if (func_341() && func_1226(Local_133.f_1))
	{
		unk_0xA17784FCA9548D15(Local_133.f_6, Local_133.f_6.f_1, 0);
	}
}

bool func_1226(int iParam0)//Position - 0x913FB
{
	switch (func_384(iParam0))
	{
		case 0:
		case 2:
		case 1:
			return true;
			break;
	}
	return false;
}

void func_1227()//Position - 0x91428
{
	if (func_388(&(Local_133.f_158), 3000, 0))
	{
		if (func_217() || func_1221(14))
		{
			return;
		}
		if (!func_1228())
		{
			func_1244(1);
		}
		func_391(&(Local_133.f_158), 0, 0);
	}
}

int func_1228()//Position - 0x9146C
{
	int iVar0;
	
	if (!Local_133.f_9.f_3)
	{
		iVar0 = entity::is_entity_in_area(player::player_ped_id(), Local_133.f_9.f_97, Local_133.f_9.f_97.f_3, 0, 1, 0);
		return iVar0;
	}
	return Local_133.f_5 == interior::get_interior_from_entity(player::player_ped_id());
}

void func_1229()//Position - 0x914B2
{
	if (Local_133.f_166)
	{
		if (func_1230())
		{
			Local_133.f_166 = 0;
		}
	}
}

bool func_1230()//Position - 0x914CD
{
	struct<5> Var0;
	
	if (func_1208(&(Local_133.f_9)))
	{
		if (script::has_script_loaded(Local_133.f_9.f_21))
		{
			if (!network::network_is_script_active(Local_133.f_9.f_21, Local_133.f_3, 1, 0))
			{
				Var0 = Local_133.f_1;
				Var0.f_1 = Local_133.f_4;
				Var0.f_2 = Local_133.f_3;
				Var0.f_4 = Local_133.f_5;
				Var0.f_3 = Local_133.f_186;
				func_1233(0);
				func_1232(0, 1);
				func_1231(0);
				func_1205(0);
				system::start_new_script_with_args(Local_133.f_9.f_21, &Var0, 5, 9920);
				script::set_script_as_no_longer_needed(Local_133.f_9.f_21);
				func_7(&(Local_133.f_160));
				return true;
			}
		}
	}
	return false;
}

void func_1231(int iParam0)//Position - 0x91564
{
	Global_1760739.f_5 = iParam0;
}

void func_1232(int iParam0, int iParam1)//Position - 0x91574
{
	Global_1760739.f_4 = iParam0;
	if (!iParam0)
	{
		if (iParam1)
		{
			Global_1760739.f_11 = 0;
		}
	}
}

void func_1233(int iParam0)//Position - 0x91596
{
	Global_1760739.f_3 = iParam0;
}

int func_1234(int iParam0)//Position - 0x915A6
{
	int iVar0;
	
	iVar0 = !network::network_is_script_active("AM_MP_SMPL_INTERIOR_EXT", iParam0, 1, 0);
	if (!func_387(player::player_id(), 1, 1))
	{
		iVar0 = true;
	}
	if (!iVar0)
	{
		if (Global_1760739.f_716 == iParam0 && cam::is_screen_faded_out())
		{
			iVar0 = true;
		}
	}
	if (Global_1760739.f_17)
	{
		iVar0 = true;
	}
	return iVar0;
}

bool func_1235(int iParam0)//Position - 0x915FB
{
	if (iParam0 > -1 && iParam0 < 67)
	{
		return true;
	}
	return false;
}

bool func_1236()//Position - 0x91619
{
	int iVar0;
	var uVar1;
	
	func_1241(&iVar0, &uVar1);
	if (iVar0)
	{
		return true;
	}
	if (Global_1315206 == 0)
	{
		if (!network::network_is_game_in_progress())
		{
			return true;
		}
	}
	if (func_1240())
	{
		return true;
	}
	if (Global_2454699)
	{
		return true;
	}
	if (func_1239())
	{
		return true;
	}
	if (func_1238(157))
	{
		if (!func_1237())
		{
			return true;
		}
	}
	if (func_1238(155))
	{
		return true;
	}
	if (!network::network_is_signed_online())
	{
		return true;
	}
	if (func_738() != 0)
	{
		if (script::_get_number_of_instances_of_streamed_script(func_738()) == 0)
		{
			return true;
		}
	}
	return false;
}

var func_1237()//Position - 0x916AE
{
	return Global_2443089.f_577;
}

bool func_1238(int iParam0)//Position - 0x916BD
{
	if (script::get_event_exists(1, iParam0))
	{
		return true;
	}
	return false;
}

var func_1239()//Position - 0x916D4
{
	return Global_2452479;
}

var func_1240()//Position - 0x916E0
{
	return Global_2443089.f_572;
}

void func_1241(var uParam0, var uParam1)//Position - 0x916EF
{
	int iVar0;
	int iVar1;
	int iVar2;
	vector3 vVar4;
	
	iVar0 = 0;
	while (iVar0 < script::get_number_of_events(1))
	{
		iVar1 = script::get_event_at_index(1, iVar0);
		if (iVar1 == 171)
		{
			script::get_event_data(1, iVar0, &iVar2, 2);
			switch (iVar2)
			{
				case 365:
					func_1242(iVar0);
					break;
				
				case 2:
					script::get_event_data(1, iVar0, &vVar4, 3);
					if (vVar4.y == 55)
					{
						*uParam0 = 1;
					}
					else if (vVar4.y == 32)
					{
						*uParam1 = 1;
					}
					break;
				}
		}
		iVar0++;
	}
}

void func_1242(int iParam0)//Position - 0x9176F
{
	vector3 vVar0;
	int iVar3;
	int iVar4;
	int iVar5;
	
	if (script::get_event_data(1, iParam0, &vVar0, 3))
	{
		if (func_387(vVar0.y, 1, 1))
		{
			iVar3 = player::get_player_ped(vVar0.y);
			if (entity::does_entity_exist(iVar3))
			{
				if (ped::is_ped_in_any_vehicle(iVar3, 0))
				{
					iVar4 = ped::get_vehicle_ped_is_in(iVar3, 0);
					if (vehicle::is_vehicle_window_intact(iVar4, vVar0.y) && network::network_get_this_script_is_network_script())
					{
						if (func_486(iVar4, &iVar5))
						{
							vehicle::remove_vehicle_window(iVar4, vVar0.y);
						}
						if (iVar5)
						{
							entity::set_vehicle_as_no_longer_needed(&iVar4);
						}
					}
				}
			}
		}
	}
}

void func_1243()//Position - 0x917F0
{
	system::wait(0);
}

void func_1244(int iParam0)//Position - 0x917FD
{
	int iVar0;
	
	func_428(0, Local_133.f_1, 0);
	if (Local_133.f_3 > -1)
	{
		func_1250();
	}
	func_1249(Local_133.f_1);
	func_1248(&(Local_133.f_9), Local_133.f_1);
	if (func_341())
	{
		func_445(0, -1);
	}
	if (func_1247())
	{
		func_1246();
	}
	player::_0xFF300C7649724A0B(player::player_id(), 1);
	network::_0xC505036A35AFD01B(0);
	if (!Local_133.f_9.f_3 && interior::is_valid_interior(Local_133.f_5))
	{
		interior::unpin_interior(Local_133.f_5);
	}
	if (streaming::is_new_load_scene_active())
	{
		streaming::new_load_scene_stop();
	}
	if (Global_1760739.f_18)
	{
		func_14(player::player_id(), 1, 524288);
		Global_1760739.f_18 = 0;
	}
	iVar0 = 0;
	while (iVar0 < 26)
	{
		Global_1761522.f_829[iVar0] = 0;
		Global_1761522.f_856[iVar0] = 0;
		iVar0++;
	}
	Global_1760739.f_8 = 0;
	func_1115(&(Local_133.f_125));
	func_1245();
}

void func_1245()//Position - 0x918DB
{
	script::terminate_this_thread();
}

void func_1246()//Position - 0x918E7
{
	Global_2433082.f_655.f_10 = 0;
}

var func_1247()//Position - 0x918F9
{
	return Global_2433082.f_655.f_10;
}

void func_1248(var uParam0, int iParam1)//Position - 0x9190A
{
	struct<34> Var0;
	
	func_23(iParam1, &Var0, 33);
	Stack.Push(uParam0);
	Stack.Push(iParam1);
	Call_Loc(Var0.f_33);
}

void func_1249(int iParam0)//Position - 0x91925
{
	if (!func_1235(iParam0))
	{
		return;
	}
	func_425(0, iParam0);
	func_425(1, iParam0);
	func_425(2, iParam0);
	func_425(3, iParam0);
	func_425(4, iParam0);
	func_425(10, iParam0);
	Global_1760739.f_234[iParam0 /*3*/] = { 0f, 0f, 0f };
	Global_1760739.f_436[iParam0] = 0f;
	if (Global_2421621[player::player_id() /*358*/].f_312.f_4 == iParam0)
	{
		Global_2421621[player::player_id() /*358*/].f_312.f_4 = -1;
		gameplay::clear_bit(&(Global_2421621[player::player_id() /*358*/].f_312), 2);
		gameplay::clear_bit(&(Global_2421621[player::player_id() /*358*/].f_312), 1);
	}
}

bool func_1250()//Position - 0x919CC
{
	func_1252(-1);
	func_1251();
	return true;
}

void func_1251()//Position - 0x919DE
{
	vector3 vVar0;
	int iVar3;
	
	vVar0.x = 521;
	vVar0.z = player::player_id();
	iVar3 = func_123(1, 1);
	if (!iVar3 == 0)
	{
		script::trigger_script_event(1, &vVar0, 3, iVar3);
	}
}

void func_1252(int iParam0)//Position - 0x91A10
{
	Global_2421621[player::player_id() /*358*/].f_312.f_2 = iParam0;
}

void func_1253(var uParam0)//Position - 0x91A2A
{
	Local_133.f_1 = *uParam0;
	Local_133.f_3 = uParam0->f_2;
	Local_133.f_4 = uParam0->f_1;
	network::network_set_this_script_is_network_script(32, 0, Local_133.f_3);
	func_1270(0, -1, 0);
	network::network_register_host_broadcast_variables(&uLocal_99, 1);
	network::network_register_player_broadcast_variables(&uLocal_100, 33);
	if (!func_1269())
	{
		func_1244(0);
	}
	if (network::network_is_game_in_progress())
	{
	}
	else
	{
		func_1244(0);
	}
	func_1254();
}

void func_1254()//Position - 0x91A8B
{
	struct<16> Var0;
	var uVar16;
	var uVar20;
	int iVar24;
	
	if (Local_133.f_3 > -1)
	{
		func_1267();
	}
	func_1266(Local_133.f_1, &(Local_133.f_6));
	func_1265(Local_133.f_1, &(Local_133.f_9));
	Global_1760739.f_591 = 0;
	Global_1760739.f_592 = 0;
	if (func_1223())
	{
		func_4(0);
	}
	else
	{
		func_4(8);
	}
	if (func_1208(&(Local_133.f_9)))
	{
		script::request_script(Local_133.f_9.f_21);
		Local_133.f_166 = 1;
	}
	Local_133.f_113 = { func_1218(Local_133.f_9.f_89.f_1, &(Local_133.f_9)) };
	Local_133.f_116 = { func_1218(Local_133.f_9.f_89.f_4, &(Local_133.f_9)) };
	Local_133.f_122 = func_1217(Local_133.f_9.f_89, &(Local_133.f_9));
	Local_133.f_119 = { Local_133.f_113 + Local_133.f_116 * Vector(0.5f, 0.5f, 0.5f) + Vector(1f, 0f, 0f) };
	uVar16 = 3;
	uVar20 = 3;
	func_1264(Local_133.f_1, &Var0, &uVar16, &iVar24);
	func_1263(&(Local_133.f_125), Var0, &uVar16, &uVar20, iVar24);
	Global_1760739.f_601 = 0;
	func_1261(&(Local_133.f_125), 1);
	if (func_1228())
	{
		Local_133.f_186 = 1;
	}
	gameplay::clear_bit(&Local_133, 2);
	if (!Local_133.f_186)
	{
		streaming::_new_load_scene_start_safe(Local_133.f_9, func_1260(&(Local_133.f_9.f_97)), 0);
	}
	if (!Local_133.f_9.f_3)
	{
		player::_0xFF300C7649724A0B(player::player_id(), 0);
		network::_0xC505036A35AFD01B(1);
	}
	if (Global_1760739.f_602 > -1)
	{
		func_1255(Local_133.f_1, Global_1760739.f_602, &(Local_133.f_199));
	}
}

void func_1255(int iParam0, int iParam1, var uParam2)//Position - 0x91BF9
{
	*uParam2 = iParam0;
	uParam2->f_2 = 0;
	switch (func_384(iParam0))
	{
		case 0:
			func_1259(iParam0, iParam1, uParam2);
			break;
		
		case 1:
			func_1257(iParam0, iParam1, uParam2);
			break;
		
		case 2:
			func_1256(iParam0, iParam1, uParam2);
			break;
	}
}

void func_1256(int iParam0, int iParam1, var uParam2)//Position - 0x91C4F
{
	switch (iParam1)
	{
		case 0:
			func_189(iParam0, &(uParam2->f_3));
			uParam2->f_9 = { 1f, 1f, 2f };
			gameplay::set_bit(&(uParam2->f_2), 4);
			gameplay::set_bit(&(uParam2->f_2), 1);
			break;
	}
}

void func_1257(int iParam0, int iParam1, var uParam2)//Position - 0x91C8C
{
	switch (iParam1)
	{
		case 0:
			func_319(iParam0, &(uParam2->f_3));
			uParam2->f_1 = 0;
			uParam2->f_9 = { 1f, 1f, 2f };
			gameplay::set_bit(&(uParam2->f_2), 4);
			gameplay::set_bit(&(uParam2->f_2), 1);
			break;
		
		case 1:
			func_1258(iParam0, &(uParam2->f_6), &(uParam2->f_9), &(uParam2->f_12), &(uParam2->f_15), &(uParam2->f_16));
			uParam2->f_1 = 1;
			gameplay::set_bit(&(uParam2->f_2), 0);
			gameplay::set_bit(&(uParam2->f_2), 2);
			break;
	}
}

void func_1258(int iParam0, var uParam1, var uParam2, var uParam3, var uParam4, var uParam5)//Position - 0x91D08
{
	switch (iParam0)
	{
		case 57:
			*uParam1 = { -631.9747f, -1779.181f, 22.9802f };
			*uParam2 = { -634.3765f, -1777.828f, 23.04137f };
			*uParam3 = { -631.8892f, -1781.701f, 27.76778f };
			*uParam4 = 3.5f;
			*uParam5 = 294.1284f;
			break;
		
		case 58:
			*uParam1 = { 1002.334f, -1855.033f, 30.0398f };
			*uParam2 = { 999.6668f, -1856.013f, 30.03983f };
			*uParam3 = { 1004.718f, -1856.451f, 35.03983f };
			*uParam4 = 3.5f;
			*uParam5 = 355.5651f;
			break;
		
		case 59:
			*uParam1 = { -72.3389f, -1820.984f, 25.942f };
			*uParam2 = { -73.59055f, -1824.022f, 25.94197f };
			*uParam3 = { -69.52969f, -1819.19f, 31.44197f };
			*uParam4 = 3.5f;
			*uParam5 = 50.678f;
			break;
		
		case 60:
			*uParam1 = { 36.8712f, -1284.028f, 28.2924f };
			*uParam2 = { 37.75568f, -1286.788f, 28.28273f };
			*uParam3 = { 37.78616f, -1281.272f, 33.78147f };
			*uParam4 = 3.5f;
			*uParam5 = 89.5502f;
			break;
		
		case 61:
			*uParam1 = { 1213.752f, -1256.432f, 34.2267f };
			*uParam2 = { 1212.757f, -1253.992f, 34.22675f };
			*uParam3 = { 1212.746f, -1258.885f, 39.22675f };
			*uParam4 = 3.5f;
			*uParam5 = 274.7531f;
			break;
		
		case 62:
			*uParam1 = { 804.6811f, -2219.879f, 28.4375f };
			*uParam2 = { 801.5211f, -2220.598f, 28.43327f };
			*uParam3 = { 807.6396f, -2221.166f, 34.50329f };
			*uParam4 = 3.5f;
			*uParam5 = 0.8961f;
			break;
		
		case 63:
			*uParam1 = { 1759.092f, -1646.595f, 111.6421f };
			*uParam2 = { 1757.317f, -1648.01f, 111.6506f };
			*uParam3 = { 1761.135f, -1647.349f, 115.6475f };
			*uParam4 = 3.5f;
			*uParam5 = 14.9233f;
			break;
		
		case 64:
			*uParam1 = { 144.3155f, -3005.919f, 6.0309f };
			*uParam2 = { 146.9191f, -3004.889f, 6.030977f };
			*uParam3 = { 141.6754f, -3004.828f, 11.53092f };
			*uParam4 = 3.5f;
			*uParam5 = 183.147f;
			break;
		
		case 65:
			*uParam1 = { -514.7299f, -2202.521f, 5.394f };
			*uParam2 = { -509.9732f, -2204.987f, 5.394024f };
			*uParam3 = { -518.4783f, -2197.886f, 11.64402f };
			*uParam4 = 3.5f;
			*uParam5 = 143.7869f;
			break;
		
		case 66:
			*uParam1 = { -1151.776f, -2170.615f, 12.2712f };
			*uParam2 = { -1157.323f, -2166.801f, 12.26753f };
			*uParam3 = { -1147.982f, -2176.02f, 18.52919f };
			*uParam4 = 3.5f;
			*uParam5 = 318.1663f;
			break;
	}
}

void func_1259(int iParam0, int iParam1, var uParam2)//Position - 0x9204B
{
	if (iParam1 == 0)
	{
		func_372(iParam0, &(uParam2->f_3));
		uParam2->f_9 = { 1f, 1f, 2f };
		gameplay::set_bit(&(uParam2->f_2), 4);
		gameplay::set_bit(&(uParam2->f_2), 1);
	}
}

float func_1260(var uParam0)//Position - 0x9207E
{
	return (system::vdist(*uParam0, uParam0->f_3) * 0.5f);
}

void func_1261(var uParam0, int iParam1)//Position - 0x9209A
{
	func_1262(uParam0, 0, iParam1);
}

void func_1262(var uParam0, int iParam1, int iParam2)//Position - 0x920AB
{
	if (iParam2)
	{
		gameplay::set_bit(&(uParam0->f_32), iParam1);
	}
	else
	{
		gameplay::clear_bit(&(uParam0->f_32), iParam1);
	}
}

void func_1263(var uParam0, struct<16> Param1, var uParam17, var uParam18, int iParam19)//Position - 0x920CF
{
	int iVar0;
	
	uParam0->f_6 = { Param1 };
	iVar0 = 0;
	while (iVar0 < func_416(iParam19, 3))
	{
		uParam0->f_22[iVar0] = (*uParam17)[iVar0];
		uParam0->f_26[iVar0] = (*uParam18)[iVar0];
		gameplay::set_bit(&(uParam0->f_3), iVar0);
		iVar0++;
	}
	uParam0->f_5 = iParam19;
	uParam0->f_2 = 0;
	uParam0->f_1 = 0;
	*uParam0 = 0;
}

void func_1264(int iParam0, var uParam1, var uParam2, var uParam3)//Position - 0x92135
{
	struct<22> Var0;
	
	func_23(iParam0, &Var0, 21);
	Stack.Push(iParam0);
	Stack.Push(uParam1);
	Stack.Push(uParam2);
	Stack.Push(uParam3);
	Call_Loc(Var0.f_21);
}

void func_1265(int iParam0, var uParam1)//Position - 0x92154
{
	struct<5> Var0;
	
	func_23(iParam0, &Var0, 2);
	func_23(iParam0, &Var0, 4);
	func_23(iParam0, &Var0, 1);
	Stack.Push(iParam0);
	Stack.Push(uParam1);
	Call_Loc(Var0.f_2);
	Stack.Push(iParam0);
	Stack.Push(&(uParam1->f_97));
	Call_Loc(Var0.f_4);
	Stack.Push(iParam0);
	Stack.Push(&(uParam1->f_5));
	Stack.Push(uParam1);
	Stack.Push(&(uParam1->f_4));
	Call_Loc(Var0.f_1);
}

void func_1266(int iParam0, var uParam1)//Position - 0x9219C
{
	struct<6> Var0;
	
	func_23(iParam0, &Var0, 5);
	Stack.Push(iParam0);
	Stack.Push(uParam1);
	Call_Loc(Var0.f_5);
}

void func_1267()//Position - 0x921B6
{
	Global_1760739.f_599 = Global_2421621[player::player_id() /*358*/].f_312.f_2;
	gameplay::clear_bit(&(Global_2421621[player::player_id() /*358*/].f_312), 0);
	func_1268();
}

void func_1268()//Position - 0x921EC
{
	vector3 vVar0;
	int iVar3;
	int iVar4;
	
	vVar0.x = 520;
	vVar0.z = player::player_id();
	iVar3 = network::network_get_host_of_script("freemode", -1, 0);
	gameplay::set_bit(&iVar4, iVar3);
	if (!iVar4 == 0)
	{
		script::trigger_script_event(1, &vVar0, 3, iVar4);
	}
}

bool func_1269()//Position - 0x9222A
{
	int iVar0;
	
	iVar0 = 0;
	while (true)
	{
		iVar0++;
		if (!network::network_is_game_in_progress())
		{
			return false;
		}
		if (network::_0x5D10B3795F3FC886())
		{
			return true;
		}
		if (func_1240())
		{
			return false;
		}
		if (func_1238(155))
		{
			return false;
		}
		if (iVar0 >= 3600)
		{
			return false;
		}
		system::wait(0);
	}
	return false;
}

bool func_1270(int iParam0, int iParam1, int iParam2)//Position - 0x92283
{
	int iVar0;
	
	iVar0 = network::network_get_script_status();
	while (iVar0 != 2)
	{
		if (((iVar0 == 3 || iVar0 == 4) || iVar0 == 5) || iVar0 == 6)
		{
			if (!iParam2)
			{
				func_1245();
			}
			else
			{
				return false;
			}
		}
		if (!func_167())
		{
			if (iParam0 == 0)
			{
				if (!network::network_is_game_in_progress())
				{
					if (!iParam2)
					{
						func_1245();
					}
					else
					{
						return false;
					}
				}
				if (func_1240())
				{
					if (!iParam2)
					{
						func_1245();
					}
					else
					{
						return false;
					}
				}
				if (func_1238(155))
				{
					if (!iParam2)
					{
						func_1245();
					}
					else
					{
						return false;
					}
				}
			}
			else if (!network::network_is_in_session())
			{
				if (!iParam2)
				{
					func_1245();
				}
				else
				{
					return false;
				}
			}
		}
		system::wait(0);
		iVar0 = network::network_get_script_status();
	}
	if (iParam1 > -1)
	{
		Global_1312496 = iVar0;
	}
	if (iParam0 == 0)
	{
		if (!network::network_is_game_in_progress())
		{
			if (!iParam2)
			{
				func_1245();
			}
			else
			{
				return false;
			}
		}
	}
	else if (!network::network_is_in_session())
	{
		if (!iParam2)
		{
			func_1245();
		}
		else
		{
			return false;
		}
	}
	return true;
}

