text: #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;
  	var uLocal_18 = 0;
  	var uLocal_19 = 0;
  	char* sLocal_20 = NULL;
  	float fLocal_21 = 0f;
  	var uLocal_22 = 0;
  	var uLocal_23 = 0;
  	var uLocal_24 = 0;
  	float fLocal_25 = 0f;
  	float fLocal_26 = 0f;
  	var uLocal_27 = 0;
  	var uLocal_28 = 0;
  	var uLocal_29 = 0;
  	float fLocal_30 = 0f;
  	float fLocal_31 = 0f;
  	float fLocal_32 = 0f;
  	var uLocal_33 = 0;
  	var uLocal_34 = 0;
  	int iLocal_35 = 0;
  	int iLocal_36 = 0;
  	var uLocal_37 = 16;
  	var uLocal_38 = 0;
  	var uLocal_39 = 0;
  	var uLocal_40 = 0;
  	var uLocal_41 = 0;
  	var uLocal_42 = 0;
  	var uLocal_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 = 0;
  	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 = 0;
  	var uLocal_68 = 0;
  	var uLocal_69 = 0;
  	var uLocal_70 = 0;
  	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 = 0;
  	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;
  	var uLocal_90 = 0;
  	var uLocal_91 = 0;
  	var uLocal_92 = 0;
  	var uLocal_93 = 0;
  	var uLocal_94 = 0;
  	var uLocal_95 = 0;
  	var uLocal_96 = 0;
  	var uLocal_97 = 0;
  	var uLocal_98 = 0;
  	var uLocal_99 = 0;
  	var uLocal_100 = 0;
  	var uLocal_101 = 0;
  	var uLocal_102 = 0;
  	var uLocal_103 = 0;
  	var uLocal_104 = 0;
  	var uLocal_105 = 0;
  	var uLocal_106 = 0;
  	var uLocal_107 = 0;
  	var uLocal_108 = 0;
  	var uLocal_109 = 0;
  	var uLocal_110 = 0;
  	var uLocal_111 = 0;
  	var uLocal_112 = 0;
  	var uLocal_113 = 0;
  	var uLocal_114 = 0;
  	var uLocal_115 = 0;
  	var uLocal_116 = 0;
  	var uLocal_117 = 0;
  	var uLocal_118 = 0;
  	var uLocal_119 = 0;
  	var uLocal_120 = 0;
  	var uLocal_121 = 0;
  	var uLocal_122 = 0;
  	var uLocal_123 = 0;
  	var uLocal_124 = 0;
  	var uLocal_125 = 0;
  	var uLocal_126 = 0;
  	var uLocal_127 = 0;
  	var uLocal_128 = 0;
  	var uLocal_129 = 0;
  	var uLocal_130 = 0;
  	var uLocal_131 = 0;
  	var uLocal_132 = 0;
  	var uLocal_133 = 0;
  	var uLocal_134 = 0;
  	var uLocal_135 = 0;
  	var uLocal_136 = 0;
  	var uLocal_137 = 0;
  	var uLocal_138 = 0;
  	var uLocal_139 = 0;
  	var uLocal_140 = 0;
  	var uLocal_141 = 0;
  	var uLocal_142 = 0;
  	var uLocal_143 = 0;
  	var uLocal_144 = 0;
  	var uLocal_145 = 0;
  	var uLocal_146 = 0;
  	var uLocal_147 = 0;
  	var uLocal_148 = 0;
  	var uLocal_149 = 0;
  	var uLocal_150 = 0;
  	var uLocal_151 = 0;
  	var uLocal_152 = 0;
  	var uLocal_153 = 0;
  	var uLocal_154 = 0;
  	var uLocal_155 = 0;
  	var uLocal_156 = 0;
  	var uLocal_157 = 0;
  	var uLocal_158 = 0;
  	var uLocal_159 = 0;
  	var uLocal_160 = 0;
  	var uLocal_161 = 0;
  	var uLocal_162 = 0;
  	var uLocal_163 = 0;
  	var uLocal_164 = 0;
  	var uLocal_165 = 0;
  	var uLocal_166 = 0;
  	var uLocal_167 = 0;
  	var uLocal_168 = 0;
  	var uLocal_169 = 0;
  	var uLocal_170 = 0;
  	var uLocal_171 = 0;
  	var uLocal_172 = 0;
  	var uLocal_173 = 0;
  	var uLocal_174 = 0;
  	var uLocal_175 = 0;
  	var uLocal_176 = 0;
  	var uLocal_177 = 0;
  	var uLocal_178 = 0;
  	var uLocal_179 = 0;
  	var uLocal_180 = 0;
  	var uLocal_181 = 0;
  	var uLocal_182 = 0;
  	var uLocal_183 = 0;
  	var uLocal_184 = 0;
  	var uLocal_185 = 0;
  	var uLocal_186 = 0;
  	var uLocal_187 = 0;
  	var uLocal_188 = 0;
  	var uLocal_189 = 0;
  	var uLocal_190 = 0;
  	var uLocal_191 = 0;
  	var uLocal_192 = 0;
  	var uLocal_193 = 0;
  	var uLocal_194 = 0;
  	var uLocal_195 = 0;
  	var uLocal_196 = 0;
  	var uLocal_197 = 0;
  	var uLocal_198 = 0;
  	var uLocal_199 = 0;
  	var uLocal_200 = 0;
  	var uLocal_201 = 0;
  	struct<16> Local_202 = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } ;
  	struct<16> Local_218 = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } ;
  	struct<2> Local_234 = { 0, 0 } ;
  	struct<2> Local_236 = { 0, 0 } ;
  	var uLocal_238 = 0;
  	var uLocal_239 = 0;
  	int iLocal_240 = 0;
  	int iLocal_241 = 0;
  	struct<3> Local_242 = { 0, 0, 0 } ;
  	int iLocal_245 = 0;
  	int iLocal_246 = 0;
  	int iLocal_247 = 0;
  	int* iLocal_248 = NULL;
  	int iLocal_249 = 0;
  	int iLocal_250 = 0;
  	int iLocal_251 = 0;
  	int iLocal_252 = 0;
  	int iLocal_253 = 0;
  	int iLocal_254 = 0;
  	int iLocal_255[20] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 };
  	int iLocal_276[20] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 };
  	int iLocal_297 = 0;
  	int iLocal_298 = 0;
  	int iLocal_299[3] = { 0, 0, 0 };
  	char* sLocal_303 = NULL;
  	char cLocal_304[16] = "";
  	var uLocal_306 = 0;
  	var uLocal_307 = 0;
  	struct<4> Local_308 = { 0, 0, 0, 0 } ;
  	struct<4> Local_312 = { 0, 0, 0, 0 } ;
  	struct<4> Local_316 = { 0, 0, 0, 0 } ;
  	struct<4> Local_320 = { 0, 0, 0, 0 } ;
  	char cLocal_324[64] = "";
  	var uLocal_332 = 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;
  	char cLocal_340[64] = "";
  	var uLocal_348 = 0;
  	var uLocal_349 = 0;
  	var uLocal_350 = 0;
  	var uLocal_351 = 0;
  	var uLocal_352 = 0;
  	var uLocal_353 = 0;
  	var uLocal_354 = 0;
  	var uLocal_355 = 0;
  	struct<16> Local_356 = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } ;
  	struct<16> Local_372 = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } ;
  	struct<16> Local_388 = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } ;
  	struct<8> Local_404 = { 0, 0, 0, 0, 0, 0, 0, 0 } ;
  	var uLocal_412 = 0;
  	var uLocal_413 = 0;
  	var uLocal_414 = 0;
  	var uLocal_415 = 0;
  	var uLocal_416 = 0;
  	var uLocal_417 = 0;
  	var uLocal_418 = 0;
  	var uLocal_419 = 0;
  	struct<16> Local_420 = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } ;
  	bool bLocal_436 = 0;
  	bool bLocal_437 = 0;
  	bool bLocal_438 = 0;
  	bool bLocal_439 = 0;
  	int iLocal_440 = 0;
  	bool bLocal_441 = 0;
  	var uLocal_442 = 0;
  	var uLocal_443 = 0;
  	var uLocal_444 = 0;
  	var uLocal_445 = 0;
  	var uLocal_446 = 0;
  	int iLocal_447 = 0;
  	var uLocal_448 = 0;
  	var uLocal_449 = 0;
  	var uLocal_450 = 0;
  	int iLocal_451 = 0;
  	int iLocal_452 = 0;
  	int iLocal_453 = 0;
  	int iLocal_454 = 0;
  	var uLocal_455 = 0;
  	var uLocal_456 = 10;
  	var uLocal_457 = 0;
  	var uLocal_458 = 0;
  	var uLocal_459 = 0;
  	var uLocal_460 = 0;
  	var uLocal_461 = 0;
  	var uLocal_462 = 0;
  	var uLocal_463 = 0;
  	var uLocal_464 = 0;
  	var uLocal_465 = 0;
  	var uLocal_466 = 0;
  	var uLocal_467 = 0;
  	var uLocal_468 = 0;
  	var uLocal_469 = 0;
  	var uLocal_470 = 0;
  	var uLocal_471 = 0;
  	var uLocal_472 = 0;
  	var uLocal_473 = 0;
  	var uLocal_474 = 0;
  	var uLocal_475 = 0;
  	var uLocal_476 = 0;
  	var uLocal_477 = 0;
  	var uLocal_478 = 0;
  	var uLocal_479 = 0;
  	var uLocal_480 = 0;
  	var uLocal_481 = 0;
  	var uLocal_482 = 0;
  	var uLocal_483 = 0;
  	var uLocal_484 = 0;
  	var uLocal_485 = 0;
  	var uLocal_486 = 0;
  	var uLocal_487 = 0;
  	var uLocal_488 = 0;
  	var uLocal_489 = 0;
  	var uLocal_490 = 0;
  	var uLocal_491 = 0;
  	var uLocal_492 = 0;
  	var uLocal_493 = 0;
  	var uLocal_494 = 0;
  	var uLocal_495 = 0;
  	var uLocal_496 = 0;
  	var uLocal_497 = 0;
  	struct<4> Local_498 = { 0, 0, 0, 0 } ;
  	var uLocal_502 = 0;
  	bool bLocal_503 = 0;
  	bool bLocal_504 = 0;
  	bool bLocal_505 = 0;
  	struct<18> ScriptParam_0 = { 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5 } ;
  	var uScriptParam_18 = 0;
  	var uScriptParam_19 = 0;
  	var uScriptParam_20 = 0;
  	var uScriptParam_21 = 0;
  	var uScriptParam_22 = 0;
  #endregion
  
  void __EntryFunction__()
  {
  	int iVar0;
  	char* sVar1;
  	char[] cVar5[8];
  	char[] cVar9[8];
  	char* sVar13;
  	int iVar29;
  	int iVar30;
  	struct<8> Var31;
  	int iVar39;
  	float fVar40;
  	int iVar41;
  	bool bVar42;
  	float fVar43;
  	char cVar44[64];
  	char cVar60[64];
  	struct<3> Var76;
  	int iVar79;
  	int iVar80;
  	bool bVar81;
  	int iVar82;
  	bool bVar83;
  	
  	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_20 = "NULL";
  	fLocal_21 = 0f;
  	fLocal_25 = -0.0375f;
  	fLocal_26 = 0.17f;
  	fLocal_30 = 80f;
  	fLocal_31 = 140f;
  	fLocal_32 = 180f;
  	iLocal_35 = 3;
  	StringCopy(&Local_202, "", 64);
  	StringCopy(&Local_218, "", 64);
  	iLocal_245 = -1;
  	iLocal_247 = 1;
  	bLocal_439 = true;
  	iLocal_447 = 1;
  	iLocal_451 = 1;
  	iLocal_452 = 65;
  	iLocal_453 = 49;
  	iLocal_454 = 64;
  	Local_242 = { ScriptParam_0.f_1[0 /*3*/] };
  	func_118();
  	if (PLAYER::HAS_FORCE_CLEANUP_OCCURRED(19))
  	{
  		func_113(0);
  	}
  	if (func_110(func_112(SCRIPT::GET_THIS_SCRIPT_NAME())))
  	{
  		func_113(0);
  	}
  	if (!func_109())
  	{
  		func_113(0);
  	}
  	if (!PLAYER::IS_PLAYER_PLAYING(PLAYER::PLAYER_ID()))
  	{
  		func_113(0);
  	}
  	if (func_108())
  	{
  		func_113(0);
  	}
  	if (func_107())
  	{
  		func_113(0);
  	}
  	if (SYSTEM::VMAG2(ENTITY::GET_ENTITY_VELOCITY(PLAYER::PLAYER_PED_ID())) > 1369f && !func_106())
  	{
  		func_113(0);
  	}
  	if (MISC::GET_GAME_TIMER() < Global_31609 + 10000 && !func_106())
  	{
  		func_113(0);
  	}
  	StringCopy(&Local_404, "", 64);
  	iLocal_299[0] = 1;
  	iLocal_299[1] = 1;
  	iLocal_299[2] = 1;
  	func_105();
  	STREAMING::REQUEST_MODEL(iLocal_36);
  	while (!STREAMING::HAS_MODEL_LOADED(iLocal_36))
  	{
  		SYSTEM::WAIT(0);
  	}
  	if (!bLocal_436)
  	{
  		func_113(0);
  	}
  	STREAMING::REQUEST_ANIM_DICT(&cLocal_324);
  	STREAMING::REQUEST_ANIM_DICT(&cLocal_340);
  	iLocal_249 = 1;
  	while ((!STREAMING::HAS_ANIM_DICT_LOADED(&cLocal_324) || !STREAMING::HAS_ANIM_DICT_LOADED(&cLocal_340)) || !STREAMING::HAS_MODEL_LOADED(iLocal_36))
  	{
  		SYSTEM::WAIT(0);
  	}
  	Global_31609 = MISC::GET_GAME_TIMER();
  	MISC::CLEAR_AREA_OF_PEDS(Local_242, 0.5f, 0);
  	iLocal_240 = PED::CREATE_PED(25, iLocal_36, Local_242, ScriptParam_0.f_17[0], false, true);
  	func_103();
  	STREAMING::SET_MODEL_AS_NO_LONGER_NEEDED(iLocal_36);
  	iLocal_241 = 1;
  	if (ENTITY::DOES_ENTITY_EXIST(iLocal_240) && func_102(iLocal_240))
  	{
  		PED::SET_PED_COMBAT_ATTRIBUTES(iLocal_240, 17, true);
  		PED::SET_BLOCKING_OF_NON_TEMPORARY_EVENTS(iLocal_240, true);
  	}
  	iLocal_297 = 0;
  	uLocal_442 = uLocal_442;
  	uLocal_443 = uLocal_443;
  	uLocal_444 = uLocal_444;
  	uLocal_445 = uLocal_445;
  	uLocal_446 = uLocal_446;
  	MemCopy(&cLocal_304, {Local_234}, 4);
  	StringConCat(&cLocal_304, "AUD", 16);
  	MemCopy(&Local_308, {Local_234}, 4);
  	StringConCat(&Local_308, "_RAND_", 16);
  	iLocal_250 = 0;
  	iLocal_298 = -1;
  	iVar0 = 1;
  	iVar30 = 0;
  	iVar41 = 0;
  	iLocal_253 = iLocal_253;
  	iLocal_276[0] = iLocal_276[0];
  	iLocal_254 = iLocal_254;
  	uLocal_502 = uLocal_502;
  	bLocal_503 = bLocal_503;
  	func_101(0, 0);
  	bLocal_504 = false;
  	while (iVar0 == 1)
  	{
  		if (!func_102(iLocal_240))
  		{
  			func_97(func_112(SCRIPT::GET_THIS_SCRIPT_NAME()));
  			func_113(0);
  		}
  		if (!BRAIN::IS_WORLD_POINT_WITHIN_BRAIN_ACTIVATION_RANGE())
  		{
  			func_113(1);
  		}
  		fVar43 = func_96(PLAYER::PLAYER_PED_ID(), iLocal_240);
  		if (fVar43 < 10f && func_95())
  		{
  			PED::SET_IK_TARGET(iLocal_240, 1, PLAYER::PLAYER_PED_ID(), 31086, 0f, 0f, 0f, 0, -1, -1);
  		}
  		if (fVar43 < 8f)
  		{
  			PED::SET_IK_TARGET(PLAYER::PLAYER_PED_ID(), 1, iLocal_240, 31086, 0f, 0f, 0f, 0, -1, -1);
  		}
  		if (fVar43 < 15f)
  		{
  			PAD::DISABLE_CONTROL_ACTION(0, 46, true);
  		}
  		if (bLocal_504)
  		{
  			if (bLocal_505)
  			{
  				GRAPHICS::DRAW_DEBUG_TEXT_2D("controlledByAnim", 0.02f, 0.5f, 0f, 0, 0, 255, 255);
  			}
  			else
  			{
  				GRAPHICS::DRAW_DEBUG_TEXT_2D("NOT controlledByAnim", 0.02f, 0.5f, 0f, 0, 0, 255, 255);
  			}
  			if (iLocal_245 == -1)
  			{
  				GRAPHICS::DRAW_DEBUG_TEXT_2D("iBlockObject OFF", 0.02f, 0.6f, 0f, 0, 0, 255, 255);
  			}
  			else
  			{
  				GRAPHICS::DRAW_DEBUG_TEXT_2D("iBlockObject ON", 0.02f, 0.6f, 0f, 0, 0, 255, 255);
  			}
  			if (iLocal_440)
  			{
  				GRAPHICS::DRAW_DEBUG_TEXT_2D("MONOLOGUE", 0.02f, 0.65f, 0f, 0, 0, 255, 255);
  			}
  			else
  			{
  				GRAPHICS::DRAW_DEBUG_TEXT_2D("IDLE", 0.02f, 0.65f, 0f, 0, 0, 255, 255);
  			}
  			StringCopy(&cVar44, "conversation_offset ", 64);
  			StringIntConCat(&cVar44, Global_112238[iLocal_251], 64);
  			GRAPHICS::DRAW_DEBUG_TEXT_2D(&cVar44, 0.02f, 0.8f, 0f, 0, 0, 255, 255);
  			StringCopy(&cVar44, "max_conversation_offset ", 64);
  			StringIntConCat(&cVar44, iLocal_252, 64);
  			GRAPHICS::DRAW_DEBUG_TEXT_2D(&cVar44, 0.02f, 0.81f, 0f, 0, 0, 255, 255);
  			StringCopy(&cVar44, "conversation_split_offset ", 64);
  			StringIntConCat(&cVar44, iLocal_297, 64);
  			GRAPHICS::DRAW_DEBUG_TEXT_2D(&cVar44, 0.02f, 0.82f, 0f, 0, 0, 255, 255);
  			StringCopy(&cVar44, "max_conversation_split_offsets[conversation_offset] ", 64);
  			StringIntConCat(&cVar44, iLocal_255[Global_112238[iLocal_251]], 64);
  			GRAPHICS::DRAW_DEBUG_TEXT_2D(&cVar44, 0.02f, 0.83f, 0f, 0, 0, 255, 255);
  		}
  		Var76 = { ENTITY::GET_ENTITY_COORDS(iLocal_240, true) };
  		if (((ENTITY::HAS_ENTITY_COLLIDED_WITH_ANYTHING(iLocal_240) && !iLocal_250 == 25) && !iLocal_250 == 5) && !iLocal_250 == 6)
  		{
  			func_94();
  			if (func_93())
  			{
  				func_91();
  				TASK::TASK_PLAY_ANIM(iLocal_240, &cLocal_324, &Local_218, 2f, -2f, -1, 0, 0f, false, false, false);
  				iLocal_250 = 25;
  			}
  			else
  			{
  				func_90();
  				func_91();
  				iLocal_250 = 5;
  				iVar41 = MISC::GET_GAME_TIMER();
  			}
  			AUDIO::PLAY_PED_AMBIENT_SPEECH_NATIVE(iLocal_240, "GENERIC_CURSE_MED", "SPEECH_PARAMS_FORCE", 1);
  		}
  		if (((func_108() || MISC::GET_MISSION_FLAG()) || func_107()) || !func_109())
  		{
  			if (!func_89() && SCRIPT::_GET_NUMBER_OF_REFERENCES_OF_SCRIPT_WITH_NAME_HASH(joaat("director_mode")) == 0)
  			{
  				if (func_108())
  				{
  				}
  				if (MISC::GET_MISSION_FLAG())
  				{
  				}
  				TASK::TASK_PLAY_ANIM(iLocal_240, &cLocal_324, &Local_218, 2f, -2f, -1, 0, 0f, false, false, false);
  				iLocal_250 = 25;
  			}
  		}
  		if (PLAYER::IS_PLAYER_PLAYING(PLAYER::PLAYER_ID()))
  		{
  			if ((((PLAYER::IS_PLAYER_FREE_AIMING_AT_ENTITY(PLAYER::PLAYER_ID(), iLocal_240) || PLAYER::IS_PLAYER_TARGETTING_ENTITY(PLAYER::PLAYER_ID(), iLocal_240)) && fVar43 < 25f) && func_88(PLAYER::PLAYER_PED_ID()) != joaat("weapon_unarmed")) && func_85(iLocal_240, PLAYER::PLAYER_PED_ID(), 1126825984, 0))
  			{
  				if (!func_89())
  				{
  					func_91();
  					TASK::TASK_PLAY_ANIM(iLocal_240, &cLocal_324, &Local_218, 2f, -2f, -1, 0, 0f, false, false, false);
  					iLocal_250 = 24;
  				}
  			}
  		}
  		if (((((PED::IS_PED_INJURED(iLocal_240) || MISC::IS_BULLET_IN_AREA(Var76, 50f, true)) || MISC::IS_BULLET_IN_AREA(Var76, 50f, false)) || MISC::IS_PROJECTILE_IN_AREA(Var76, 20f, 20f, 20f, false)) || FIRE::IS_EXPLOSION_IN_SPHERE(-1, Var76, 50f)) || GRAPHICS::GET_IS_PETROL_DECAL_IN_RANGE(Var76, 1f))
  		{
  			if (!func_89())
  			{
  				func_91();
  				TASK::TASK_PLAY_ANIM(iLocal_240, &cLocal_324, &Local_218, 2f, -2f, -1, 0, 0f, false, false, false);
  				iLocal_250 = 24;
  			}
  		}
  		if (ENTITY::HAS_ENTITY_BEEN_DAMAGED_BY_ENTITY(iLocal_240, PLAYER::PLAYER_PED_ID(), true))
  		{
  			func_91();
  			TASK::TASK_PLAY_ANIM(iLocal_240, &cLocal_324, &Local_218, 2f, -2f, -1, 0, 0f, false, false, false);
  			iLocal_250 = 24;
  		}
  		if (func_84(iLocal_240, PLAYER::PLAYER_PED_ID(), 1) < 25f)
  		{
  			if (!HUD::DOES_BLIP_EXIST(iLocal_248))
  			{
  				func_80(&iLocal_248, &iLocal_240, 0);
  			}
  		}
  		else if (HUD::DOES_BLIP_EXIST(iLocal_248))
  		{
  			func_79(&iLocal_248);
  		}
  		if (!bLocal_439)
  		{
  			if (!PED::IS_PED_INJURED(iLocal_240) && !PED::IS_PED_INJURED(PLAYER::PLAYER_PED_ID()))
  			{
  				if (SYSTEM::VDIST2(ENTITY::GET_ENTITY_COORDS(PLAYER::PLAYER_PED_ID(), true), ENTITY::GET_ENTITY_COORDS(iLocal_240, true)) < 16f)
  				{
  					iVar79 = MISC::GET_HASH_KEY(SCRIPT::GET_THIS_SCRIPT_NAME());
  					iVar80 = func_78(iVar79);
  					if (func_77(iVar80))
  					{
  						if (!func_76(iVar80))
  						{
  							func_67(iVar79, 0);
  						}
  					}
  				}
  			}
  		}
  		switch (iLocal_250)
  		{
  			case 0:
  				GRAPHICS::DRAW_DEBUG_TEXT_2D("SET_IDLING", 0.02f, 0.1f, 0f, 0, 0, 255, 255);
  				iLocal_297 = 0;
  				func_63();
  				iLocal_250 = 1;
  				if (!func_62())
  				{
  					GRAPHICS::DRAW_DEBUG_TEXT_2D("SET_IDLING SET_PED_IDLING", 0.02f, 0.11f, 0f, 0, 0, 255, 255);
  					func_101(0, 1);
  				}
  				break;
  			
  			case 1:
  				GRAPHICS::DRAW_DEBUG_TEXT_2D("WAIT_FOR_ANIM_TO_BE_LOADED", 0.02f, 0.15f, 0f, 0, 0, 255, 255);
  				bVar38 = func_61();
  				if (bLocal_504)
  				{
  					if (bVar38)
  					{
  						GRAPHICS::DRAW_DEBUG_TEXT_2D("conversationAlreadyOngoing", 0.8f, 0.1f, 0f, 0, 0, 255, 255);
  					}
  					else
  					{
  						GRAPHICS::DRAW_DEBUG_TEXT_2D("NOT conversationAlreadyOngoing", 0.8f, 0.1f, 0f, 0, 0, 255, 255);
  					}
  				}
  				if ((func_60() && !bVar38) && !func_59())
  				{
  					iLocal_250 = 3;
  				}
  				if (!func_62())
  				{
  					func_101(0, 1);
  				}
  				break;
  			
  			case 5:
  				GRAPHICS::DRAW_DEBUG_TEXT_2D("START_MOVE_BACK_TO_INITIAL_POSITION", 0.02f, 0.2f, 0f, 0, 0, 255, 255);
  				if ((MISC::GET_GAME_TIMER() - iVar41) > 1)
  				{
  					TASK::TASK_FOLLOW_NAV_MESH_TO_COORD(iLocal_240, Local_242, 1f, -1, 1f, 1024, ScriptParam_0.f_17[0]);
  					iLocal_250 = 6;
  				}
  				break;
  			
  			case 6:
  				GRAPHICS::DRAW_DEBUG_TEXT_2D("WAIT_MOVE_BACK_TO_INITIAL_POSITION", 0.02f, 0.25f, 0f, 0, 0, 255, 255);
  				if (TASK::GET_SCRIPT_TASK_STATUS(iLocal_240, 713668775) != 1 && TASK::GET_SCRIPT_TASK_STATUS(iLocal_240, 713668775) != 0)
  				{
  					GRAPHICS::DRAW_DEBUG_TEXT_2D("WAIT_MOVE_BACK_TO_INITIAL_POSITION TASK_PLAY_ANIM", 0.02f, 0.26f, 0f, 0, 0, 255, 255);
  					TASK::TASK_PLAY_ANIM(iLocal_240, &cLocal_340, "idle_intro", 4f, -4f, -1, 0, 0f, false, false, false);
  					PED::FORCE_PED_AI_AND_ANIMATION_UPDATE(iLocal_240, false, false);
  					func_118();
  					iLocal_250 = 0;
  				}
  				break;
  			
  			case 3:
  				GRAPHICS::DRAW_DEBUG_TEXT_2D("START_IDLING", 0.02f, 0.1f, 0f, 0, 0, 255, 255);
  				if (Global_3)
  				{
  					fVar40 = 25f;
  				}
  				else
  				{
  					fVar40 = 25f;
  				}
  				if (func_84(iLocal_240, PLAYER::PLAYER_PED_ID(), 1) < fVar40)
  				{
  					if (func_58() == 1)
  					{
  						iLocal_250 = 8;
  						iLocal_440 = 0;
  					}
  				}
  				if (!func_62())
  				{
  					func_101(0, 1);
  				}
  				break;
  			
  			case 7:
  				GRAPHICS::DRAW_DEBUG_TEXT_2D("PRE_PLAY_MONOLOGUE", 0.02f, 0.1f, 0f, 0, 0, 255, 255);
  				if (func_60())
  				{
  					iLocal_250 = 8;
  				}
  				if (!func_62())
  				{
  				}
  				break;
  			
  			case 8:
  				GRAPHICS::DRAW_DEBUG_TEXT_2D("PLAY_MONOLOGUE", 0.02f, 0.1f, 0f, 0, 0, 255, 255);
  				iLocal_252 = iLocal_252;
  				if (func_59())
  				{
  					func_91();
  					func_101(0, 1);
  					iLocal_250 = 0;
  				}
  				else if (!func_62())
  				{
  					func_54();
  					iLocal_440 = 1;
  					func_53();
  					iLocal_297++;
  					iVar39 = 1;
  					if (fVar43 > 15f)
  					{
  						iVar39 = 0;
  						func_91();
  						func_101(1, 0);
  					}
  					if (iLocal_297 < iLocal_255[Global_112238[iLocal_251]] && iVar39)
  					{
  						func_63();
  						iLocal_250 = 7;
  					}
  					else
  					{
  						iLocal_250 = 9;
  					}
  				}
  				else if (iLocal_440 == 1)
  				{
  					if (ENTITY::IS_ENTITY_PLAYING_ANIM(iLocal_240, &Local_372, &Local_356, 3))
  					{
  						func_52(Global_112238[iLocal_251], iLocal_297, ENTITY::GET_ENTITY_ANIM_CURRENT_TIME(iLocal_240, &Local_372, &Local_356));
  					}
  				}
  				break;
  			
  			case 9:
  				GRAPHICS::DRAW_DEBUG_TEXT_2D("MOVE_TO_NEXT_MONOLOGUE", 0.02f, 0.1f, 0f, 0, 0, 255, 255);
  				bVar36 = func_61();
  				bVar37 = func_62();
  				func_51(Global_112238[iLocal_251]);
  				if (!bVar37 && (!bVar36 || bLocal_437))
  				{
  					if (bLocal_503)
  					{
  						Global_112238[iLocal_251] = uLocal_502;
  					}
  					else
  					{
  						Global_112238[iLocal_251]++;
  					}
  					if (!Global_112238[iLocal_251] < iLocal_252)
  					{
  						Global_112238[iLocal_251] = 0;
  					}
  					func_101(0, 1);
  					iLocal_250 = 0;
  				}
  				else if (!bVar37 && bVar36)
  				{
  					GRAPHICS::DRAW_DEBUG_TEXT_2D("CONVERSATION STILL RUNNING", 0.02f, 0.3f, 0f, 0, 0, 255, 255);
  					if (!func_62())
  					{
  						func_101(0, 1);
  					}
  				}
  				break;
  			
  			case 13:
  				GRAPHICS::DRAW_DEBUG_TEXT_2D("NEWSTATE", 0.02f, 0.1f, 0f, 0, 0, 255, 255);
  				func_50(&sVar1);
  				func_49(&uLocal_37, 0, PLAYER::PLAYER_PED_ID(), &sVar1, 0, 1);
  				func_49(&uLocal_37, 3, iLocal_240, &Local_236, 0, 1);
  				func_48(&cVar5);
  				if (func_33(&uLocal_37, &cLocal_304, &cVar5, 3, 0, 0, 0))
  				{
  					iLocal_250 = 14;
  				}
  				func_32();
  				break;
  			
  			case 14:
  				GRAPHICS::DRAW_DEBUG_TEXT_2D("WAIT_TO_START_CONVERSATION", 0.02f, 0.1f, 0f, 0, 0, 255, 255);
  				iVar29 = iVar29;
  				bVar42 = false;
  				if (iLocal_440 == 0)
  				{
  					func_32();
  					bVar42 = true;
  				}
  				else
  				{
  					if (!func_61())
  					{
  						bVar42 = true;
  					}
  					func_32();
  				}
  				if (bVar42)
  				{
  					iLocal_246 = iLocal_247;
  					if (!bLocal_438)
  					{
  						func_31(&cVar9);
  						func_50(&sVar1);
  					}
  					else
  					{
  						func_30();
  						func_29(&cVar9);
  					}
  					func_49(&uLocal_37, 0, PLAYER::PLAYER_PED_ID(), &sVar1, 0, 1);
  					func_49(&uLocal_37, 3, iLocal_240, &Local_236, 0, 1);
  					Global_112238[iLocal_251]++;
  					if (!Global_112238[iLocal_251] < iLocal_252)
  					{
  						Global_112238[iLocal_251] = 0;
  					}
  					iLocal_250 = 10;
  				}
  				break;
  			
  			case 10:
  				GRAPHICS::DRAW_DEBUG_TEXT_2D("START_LOADING_CONVERSATION", 0.02f, 0.1f, 0f, 0, 0, 255, 255);
  				if (!bLocal_438)
  				{
  					func_20(&Local_404);
  					func_19(iLocal_246, &Var31);
  					StringConCat(&Local_404, &Var31, 64);
  				}
  				else
  				{
  					func_18(&Local_404);
  					func_19(iLocal_246, &Var31);
  					StringConCat(&Local_404, &Var31, 64);
  				}
  				STREAMING::REQUEST_ANIM_DICT(&Local_404);
  				iVar35 = 0;
  				if (STREAMING::HAS_ANIM_DICT_LOADED(&Local_404))
  				{
  					if (bLocal_437)
  					{
  						iVar35 = 1;
  					}
  					else if (func_33(&uLocal_37, &cLocal_304, &cVar9, 3, 0, 0, 0))
  					{
  						iVar35 = 1;
  					}
  					if (iVar35 == 1)
  					{
  						iLocal_250 = 11;
  					}
  				}
  				func_32();
  				break;
  			
  			case 11:
  				GRAPHICS::DRAW_DEBUG_TEXT_2D("CHECK_FOR_LOADED_CONVERSATION", 0.02f, 0.1f, 0f, 0, 0, 255, 255);
  				if (AUDIO::IS_SCRIPTED_CONVERSATION_LOADED())
  				{
  					func_16(&sVar13);
  					TASK::TASK_PLAY_ANIM(iLocal_240, &Local_404, &sVar13, 2f, -2f, -1, 0, 0f, false, false, false);
  					iLocal_250 = 12;
  				}
  				else
  				{
  					func_32();
  				}
  				break;
  			
  			case 12:
  				GRAPHICS::DRAW_DEBUG_TEXT_2D("START_CONVERSATION", 0.02f, 0.1f, 0f, 0, 0, 255, 255);
  				iLocal_246++;
  				Local_420 = { Local_404 };
  				if (!iLocal_246 < func_15() || fVar43 > 10f)
  				{
  					if (fVar43 > 10f && func_61())
  					{
  						func_13();
  					}
  					iLocal_250 = 16;
  				}
  				else
  				{
  					if (!bLocal_438)
  					{
  						func_20(&Local_404);
  						func_19(iLocal_246, &Var31);
  						StringConCat(&Local_404, &Var31, 64);
  					}
  					else
  					{
  						func_18(&Local_404);
  						func_19(iLocal_246, &Var31);
  						StringConCat(&Local_404, &Var31, 64);
  					}
  					STREAMING::REQUEST_ANIM_DICT(&Local_404);
  					iLocal_250 = 15;
  				}
  				break;
  			
  			case 15:
  				GRAPHICS::DRAW_DEBUG_TEXT_2D("WAIT_FOR_CONVERSATION_SECTION_OVER", 0.02f, 0.1f, 0f, 0, 0, 255, 255);
  				StringCopy(&cVar60, "talking offset:", 64);
  				StringIntConCat(&cVar60, iLocal_246, 64);
  				GRAPHICS::DRAW_DEBUG_TEXT_2D(&cVar60, 0.02f, 0.9f, 0f, 0, 0, 255, 255);
  				IntToString(&cVar60, func_15(), 64);
  				GRAPHICS::DRAW_DEBUG_TEXT_2D(&cVar60, 0.03f, 0.9f, 0f, 0, 0, 255, 255);
  				if (STREAMING::HAS_ANIM_DICT_LOADED(&Local_404))
  				{
  					GRAPHICS::DRAW_DEBUG_TEXT_2D("HAS_ANIM_DICT_LOADED", 0.02f, 0.2f, 0f, 0, 0, 255, 255);
  					if (!func_62())
  					{
  						GRAPHICS::DRAW_DEBUG_TEXT_2D("NOT IS_ANIM_PLAYING_ON_PED", 0.02f, 0.3f, 0f, 0, 0, 255, 255);
  						STREAMING::REMOVE_ANIM_DICT(&Local_420);
  						if (!bLocal_438)
  						{
  							func_20(&Local_404);
  							func_19(iLocal_246, &Var31);
  							StringConCat(&Local_404, &Var31, 64);
  						}
  						else
  						{
  							func_18(&Local_404);
  							func_19(iLocal_246, &Var31);
  							StringConCat(&Local_404, &Var31, 64);
  						}
  						func_16(&sVar13);
  						TASK::TASK_PLAY_ANIM(iLocal_240, &Local_404, &sVar13, 1000f, -1000f, -1, 0, 0f, false, false, false);
  						PED::FORCE_PED_AI_AND_ANIMATION_UPDATE(iLocal_240, false, false);
  						iLocal_250 = 12;
  					}
  				}
  				else if (!func_62())
  				{
  				}
  				break;
  			
  			case 16:
  				GRAPHICS::DRAW_DEBUG_TEXT_2D("WAIT_FOR_CONVERSATION_TO_END", 0.02f, 0.1f, 0f, 0, 0, 255, 255);
  				if (!func_62())
  				{
  					func_12(&uLocal_37, 0);
  					if (!PED::IS_PED_INJURED(PLAYER::PLAYER_PED_ID()))
  					{
  						AUDIO::DISABLE_PED_PAIN_AUDIO(PLAYER::PLAYER_PED_ID(), false);
  					}
  					STREAMING::REMOVE_ANIM_DICT(&Local_420);
  					func_11();
  					func_101(0, 1);
  					iLocal_250 = 0;
  				}
  				break;
  			
  			case 24:
  				GRAPHICS::DRAW_DEBUG_TEXT_2D("WAITING_TO_BLEND_INTO_IDLE_BEFORE_FLEEING", 0.02f, 0.1f, 0f, 0, 0, 255, 255);
  				SYSTEM::WAIT(1000);
  				func_10();
  				iVar0 = 0;
  				break;
  			
  			case 25:
  				GRAPHICS::DRAW_DEBUG_TEXT_2D("WAITING_TO_BLEND_INTO_IDLE_BEFORE_WANDERING", 0.02f, 0.1f, 0f, 0, 0, 255, 255);
  				func_8();
  				iVar0 = 0;
  				break;
  		}
  		bVar81 = SCRIPT::_GET_NUMBER_OF_REFERENCES_OF_SCRIPT_WITH_NAME_HASH(joaat("context_controller")) > 0;
  		if (!bVar81)
  		{
  		}
  		if (((((((((((((iLocal_250 == 0 || iLocal_250 == 1) || iLocal_250 == 3) || iLocal_250 == 8) || iLocal_250 == 9) || iLocal_250 == 7) && func_84(iLocal_240, PLAYER::PLAYER_PED_ID(), 1) < 5f) && bLocal_436 == 1) && !PED::IS_PED_IN_ANY_VEHICLE(PLAYER::PLAYER_PED_ID(), true)) && iVar30 == 0) && bLocal_439 == 1) && !Global_3) && func_7()) && bVar81)
  		{
  			if (iLocal_298 == -1)
  			{
  				func_6(&iLocal_298, 4, sLocal_303, 0, 0, 0, 0);
  			}
  			PAD::SET_INPUT_EXCLUSIVE(0, 51);
  			if (func_4(iLocal_298, 1))
  			{
  				func_50(&sVar1);
  				func_48(&cVar5);
  				if (!PED::IS_PED_INJURED(PLAYER::PLAYER_PED_ID()))
  				{
  					AUDIO::DISABLE_PED_PAIN_AUDIO(PLAYER::PLAYER_PED_ID(), true);
  				}
  				func_91();
  				func_101(1, 1);
  				iVar30 = 1;
  				iLocal_250 = 13;
  				iVar29 = 0;
  				iVar82 = func_78(MISC::GET_HASH_KEY(SCRIPT::GET_THIS_SCRIPT_NAME()));
  				if (func_77(iVar82))
  				{
  					if (!func_76(iVar82))
  					{
  						func_67(MISC::GET_HASH_KEY(SCRIPT::GET_THIS_SCRIPT_NAME()), 0);
  					}
  				}
  				func_2(&iLocal_298);
  			}
  		}
  		else if (iLocal_298 != -1)
  		{
  			func_2(&iLocal_298);
  		}
  		func_1();
  		SYSTEM::WAIT(0);
  	}
  	if (iLocal_298 != -1)
  	{
  		func_2(&iLocal_298);
  	}
  	if (HUD::DOES_BLIP_EXIST(iLocal_248))
  	{
  		func_79(&iLocal_248);
  	}
  	bVar83 = false;
  	while (true)
  	{
  		GRAPHICS::DRAW_DEBUG_TEXT_2D("do_monologue = FALSE", 0.02f, 0.1f, 0f, 0, 0, 255, 255);
  		if (bLocal_504)
  		{
  			GRAPHICS::DRAW_DEBUG_TEXT_2D("WAITING TO CLEAN UP", 0.02f, 0.1f, 0f, 0, 0, 255, 255);
  		}
  		if (!func_102(iLocal_240))
  		{
  			if (!bLocal_441)
  			{
  				func_97(func_112(SCRIPT::GET_THIS_SCRIPT_NAME()));
  			}
  			func_113(0);
  		}
  		if (ENTITY::HAS_ENTITY_BEEN_DAMAGED_BY_ENTITY(iLocal_240, PLAYER::PLAYER_PED_ID(), true) && !bVar83)
  		{
  			PED::SET_BLOCKING_OF_NON_TEMPORARY_EVENTS(iLocal_240, false);
  			TASK::CLEAR_PED_TASKS(iLocal_240);
  			TASK::TASK_SMART_FLEE_PED(iLocal_240, PLAYER::PLAYER_PED_ID(), 100f, -1, false, false);
  			PED::SET_PED_KEEP_TASK(iLocal_240, true);
  			bVar83 = true;
  		}
  		if ((ENTITY::IS_ENTITY_OCCLUDED(iLocal_240) && func_84(iLocal_240, PLAYER::PLAYER_PED_ID(), 1) > 50f) && !BRAIN::IS_WORLD_POINT_WITHIN_BRAIN_ACTIVATION_RANGE())
  		{
  			func_113(1);
  		}
  		SYSTEM::WAIT(0);
  	}
  }
  
  void func_1()
  {
  }
  
  void func_2(int iParam0)
  {
  	int iVar0;
  	
  	if (*iParam0 == -1)
  	{
  		return;
  	}
  	iVar0 = func_3(*iParam0);
  	if (iVar0 == -1)
  	{
  		*iParam0 = -1;
  		return;
  	}
  	if (iVar0 > -1 && iVar0 < 6)
  	{
  		if (Global_42737[iVar0 /*32*/])
  		{
  			Global_42737[iVar0 /*32*/].f_7 = 1;
  			*iParam0 = -1;
  			return;
  		}
  	}
  	*iParam0 = -1;
  }
  
  int func_3(int iParam0)
  {
  	int iVar0;
  	
  	if (iParam0 < 0)
  	{
  		return -1;
  	}
  	iVar0 = 0;
  	iVar0 = 0;
  	while (iVar0 < 6)
  	{
  		if (Global_42737[iVar0 /*32*/].f_1 == iParam0)
  		{
  			return iVar0;
  		}
  		iVar0++;
  	}
  	return -1;
  }
  
  int func_4(int iParam0, bool bParam1)
  {
  	int iVar0;
  	
  	iVar0 = func_3(iParam0);
  	if (iVar0 == -1)
  	{
  		return 0;
  	}
  	if (!PLAYER::IS_PLAYER_PLAYING(PLAYER::GET_PLAYER_INDEX()))
  	{
  		return 0;
  	}
  	if (func_5(0))
  	{
  		return 0;
  	}
  	if (CUTSCENE::IS_CUTSCENE_PLAYING())
  	{
  		return 0;
  	}
  	if (iVar0 > -1 && iVar0 < 6)
  	{
  		if (Global_42737[iVar0 /*32*/] == 1 && Global_42737[iVar0 /*32*/].f_4 == 1)
  		{
  			if (bParam1)
  			{
  				if (Global_42737[iVar0 /*32*/].f_29)
  				{
  					return 0;
  				}
  			}
  			Global_42737[iVar0 /*32*/].f_5 = 1;
  			Global_42737[iVar0 /*32*/].f_29 = 1;
  			return 1;
  		}
  		else
  		{
  			if (Global_42737[iVar0 /*32*/] == 0)
  			{
  			}
  			if (Global_42737[iVar0 /*32*/].f_7)
  			{
  			}
  		}
  	}
  	return 0;
  }
  
  int func_5(int iParam0)
  {
  	if (iParam0 == 1)
  	{
  		if (Global_19798.f_1 > 3)
  		{
  			if (MISC::IS_BIT_SET(Global_7668, 14))
  			{
  				return 1;
  			}
  			else
  			{
  				return 0;
  			}
  		}
  		else
  		{
  			return 0;
  		}
  	}
  	if (SCRIPT::_GET_NUMBER_OF_REFERENCES_OF_SCRIPT_WITH_NAME_HASH(joaat("cellphone_flashhand")) > 0)
  	{
  		return 1;
  	}
  	if (Global_19798.f_1 > 3)
  	{
  		return 1;
  	}
  	return 0;
  }
  
  void func_6(int iParam0, int iParam1, char* sParam2, int iParam3, char* sParam4, int iParam5, int iParam6)
  {
  	int iVar0;
  	
  	if (SCRIPT::_GET_NUMBER_OF_REFERENCES_OF_SCRIPT_WITH_NAME_HASH(joaat("context_controller")) < 1)
  	{
  	}
  	if (STREAMING::IS_PLAYER_SWITCH_IN_PROGRESS())
  	{
  		if (!*iParam0 == -1)
  		{
  			func_2(iParam0);
  		}
  		return;
  	}
  	if (!*iParam0 == -1)
  	{
  		return;
  	}
  	iVar0 = 0;
  	iVar0 = 0;
  	while (iVar0 < 6)
  	{
  		if (!Global_42737[iVar0 /*32*/])
  		{
  			Global_42737[iVar0 /*32*/] = 1;
  			Global_42737[iVar0 /*32*/].f_1 = Global_42938;
  			Global_42938++;
  			Global_42737[iVar0 /*32*/].f_4 = 0;
  			Global_42737[iVar0 /*32*/].f_29 = 0;
  			Global_42737[iVar0 /*32*/].f_5 = 0;
  			Global_42737[iVar0 /*32*/].f_2 = iParam1;
  			StringCopy(&(Global_42737[iVar0 /*32*/].f_8), sParam2, 16);
  			Global_42737[iVar0 /*32*/].f_6 = iParam3;
  			Global_42737[iVar0 /*32*/].f_31 = SCRIPT::GET_ID_OF_THIS_THREAD();
  			Global_42737[iVar0 /*32*/].f_7 = 0;
  			Global_42737[iVar0 /*32*/].f_3 = iParam5;
  			if (!MISC::IS_STRING_NULL_OR_EMPTY(sParam4))
  			{
  				Global_42737[iVar0 /*32*/].f_12 = 1;
  				StringCopy(&(Global_42737[iVar0 /*32*/].f_13), sParam4, 64);
  				Global_42737[iVar0 /*32*/].f_30 = iParam6;
  			}
  			else
  			{
  				Global_42737[iVar0 /*32*/].f_12 = 0;
  				Global_42737[iVar0 /*32*/].f_30 = 0;
  			}
  			*iParam0 = Global_42737[iVar0 /*32*/].f_1;
  			return;
  		}
  		iVar0++;
  	}
  }
  
  int func_7()
  {
  	return 1;
  }
  
  void func_8()
  {
  	func_9();
  	if (func_102(iLocal_240) && func_102(PLAYER::PLAYER_PED_ID()))
  	{
  		PED::SET_BLOCKING_OF_NON_TEMPORARY_EVENTS(iLocal_240, false);
  		TASK::TASK_WANDER_STANDARD(iLocal_240, 40000f, 0);
  		PED::SET_PED_KEEP_TASK(iLocal_240, true);
  	}
  }
  
  void func_9()
  {
  	if (!ENTITY::IS_ENTITY_DEAD(iLocal_240, false))
  	{
  		AUDIO::REMOVE_ENTITY_FROM_AUDIO_MIX_GROUP(iLocal_240, 0f);
  	}
  }
  
  void func_10()
  {
  	func_9();
  	if (func_102(iLocal_240) && func_102(PLAYER::PLAYER_PED_ID()))
  	{
  		PED::SET_BLOCKING_OF_NON_TEMPORARY_EVENTS(iLocal_240, false);
  		TASK::TASK_SMART_FLEE_PED(iLocal_240, PLAYER::PLAYER_PED_ID(), 100f, -1, false, false);
  		PED::SET_PED_KEEP_TASK(iLocal_240, true);
  		func_91();
  	}
  }
  
  void func_11()
  {
  }
  
  void func_12(var uParam0, int iParam1)
  {
  	if ((uParam0[iParam1 /*10*/])->f_7 == 1)
  	{
  		(uParam0[iParam1 /*10*/])->f_7 = 0;
  	}
  }
  
  void func_13()
  {
  	Global_19991 = 0;
  	func_14();
  }
  
  void func_14()
  {
  	AUDIO::RESTART_SCRIPTED_CONVERSATION();
  	Global_22136 = 0;
  	if ((AUDIO::IS_MOBILE_PHONE_CALL_ONGOING() || Global_19798.f_1 == 9) || Global_19797 == 1)
  	{
  		AUDIO::STOP_SCRIPTED_CONVERSATION(false);
  		Global_21125 = 6;
  		Global_19798.f_1 = 3;
  		return;
  	}
  	if (AUDIO::IS_SCRIPTED_CONVERSATION_ONGOING())
  	{
  		AUDIO::STOP_SCRIPTED_CONVERSATION(true);
  		Global_21125 = 6;
  		return;
  	}
  }
  
  int func_15()
  {
  	return 0;
  }
  
  void func_16(char* sParam0)
  {
  	struct<16> Var0;
  	
  	func_17(&Var0);
  	*sParam0 = { Var0 };
  	StringConCat(sParam0, "_", 64);
  	StringIntConCat(sParam0, iLocal_246, 64);
  }
  
  void func_17(char* sParam0)
  {
  	switch (iLocal_254)
  	{
  		case 0:
  			StringCopy(sParam0, "Im_An_Actor", 64);
  			break;
  		
  		case 1:
  			StringCopy(sParam0, "I_Wanna_Do_Hamlet", 64);
  			break;
  		
  		case 2:
  			StringCopy(sParam0, "Having_About_as_Much", 64);
  			break;
  		
  		case 3:
  			StringCopy(sParam0, "Just_Woundering_When", 64);
  			break;
  		
  		case 4:
  			StringCopy(sParam0, "Great_I_Wanted_To", 64);
  			break;
  		
  		case 5:
  			StringCopy(sParam0, "A_Tourist_Just_Asked", 64);
  			break;
  	}
  }
  
  void func_18(char* sParam0)
  {
  	int iVar0;
  	
  	iVar0 = iLocal_254 + 1;
  	*sParam0 = { Local_202 };
  	StringConCat(sParam0, "@", 64);
  	StringConCat(sParam0, "CONVO_", 64);
  	StringIntConCat(sParam0, iVar0, 64);
  	StringConCat(sParam0, "@", 64);
  	StringConCat(sParam0, "CONVO_", 64);
  	StringIntConCat(sParam0, iVar0, 64);
  }
  
  void func_19(int iParam0, char* sParam1)
  {
  	switch (iParam0)
  	{
  		case 0:
  			StringCopy(sParam1, "A", 16);
  			break;
  		
  		case 1:
  			StringCopy(sParam1, "B", 16);
  			break;
  		
  		case 2:
  			StringCopy(sParam1, "C", 16);
  			break;
  		
  		case 3:
  			StringCopy(sParam1, "D", 16);
  			break;
  		
  		case 4:
  			StringCopy(sParam1, "E", 16);
  			break;
  		
  		case 5:
  			StringCopy(sParam1, "F", 16);
  			break;
  		
  		case 6:
  			StringCopy(sParam1, "G", 16);
  			break;
  		
  		case 7:
  			StringCopy(sParam1, "H", 16);
  			break;
  		
  		case 8:
  			StringCopy(sParam1, "I", 16);
  			break;
  		
  		case 9:
  			StringCopy(sParam1, "J", 16);
  			break;
  		
  		case 10:
  			StringCopy(sParam1, "K", 16);
  			break;
  		
  		case 11:
  			StringCopy(sParam1, "L", 16);
  			break;
  		
  		case 12:
  			StringCopy(sParam1, "M", 16);
  			break;
  		
  		case 13:
  			StringCopy(sParam1, "N", 16);
  			break;
  		
  		case 14:
  			StringCopy(sParam1, "O", 16);
  			break;
  		
  		case 15:
  			StringCopy(sParam1, "P", 16);
  			break;
  		
  		case 16:
  			StringCopy(sParam1, "Q", 16);
  			break;
  		
  		case 17:
  			StringCopy(sParam1, "R", 16);
  			break;
  		
  		case 18:
  			StringCopy(sParam1, "S", 16);
  			break;
  		
  		case 19:
  			StringCopy(sParam1, "T", 16);
  			break;
  		
  		case 20:
  			StringCopy(sParam1, "U", 16);
  			break;
  		
  		case 21:
  			StringCopy(sParam1, "V", 16);
  			break;
  		
  		case 22:
  			StringCopy(sParam1, "W", 16);
  			break;
  		
  		case 23:
  			StringCopy(sParam1, "X", 16);
  			break;
  		
  		case 24:
  			StringCopy(sParam1, "Y", 16);
  			break;
  		
  		case 25:
  			StringCopy(sParam1, "Z", 16);
  			break;
  	}
  }
  
  void func_20(char* sParam0)
  {
  	char cVar0[64];
  	
  	*sParam0 = { Local_202 };
  	StringConCat(sParam0, "@", 64);
  	func_21(&cVar0);
  	StringConCat(sParam0, &cVar0, 64);
  	StringConCat(sParam0, "@", 64);
  	StringConCat(sParam0, &cVar0, 64);
  }
  
  void func_21(char* sParam0)
  {
  	struct<4> Var0;
  	
  	func_50(&Var0);
  	*sParam0 = { Var0 };
  	StringConCat(sParam0, "_", 16);
  	StringIntConCat(sParam0, iLocal_299[func_22()], 16);
  }
  
  int func_22()
  {
  	func_23();
  	return Global_112293.f_2361.f_539.f_4321;
  }
  
  void func_23()
  {
  	int iVar0;
  	
  	if (ENTITY::DOES_ENTITY_EXIST(PLAYER::PLAYER_PED_ID()))
  	{
  		if (func_27(Global_112293.f_2361.f_539.f_4321) != ENTITY::GET_ENTITY_MODEL(PLAYER::PLAYER_PED_ID()))
  		{
  			iVar0 = func_26(PLAYER::PLAYER_PED_ID());
  			if (func_25(iVar0) && (!func_24(14) || Global_111244))
  			{
  				if (Global_112293.f_2361.f_539.f_4321 != iVar0 && func_25(Global_112293.f_2361.f_539.f_4321))
  				{
  					Global_112293.f_2361.f_539.f_4322 = Global_112293.f_2361.f_539.f_4321;
  				}
  				Global_112293.f_2361.f_539.f_4323 = iVar0;
  				Global_112293.f_2361.f_539.f_4321 = iVar0;
  				return;
  			}
  		}
  		else
  		{
  			if (Global_112293.f_2361.f_539.f_4321 != 145)
  			{
  				Global_112293.f_2361.f_539.f_4323 = Global_112293.f_2361.f_539.f_4321;
  			}
  			return;
  		}
  	}
  	Global_112293.f_2361.f_539.f_4321 = 145;
  }
  
  bool func_24(int iParam0)
  {
  	return Global_42009 == iParam0;
  }
  
  bool func_25(int iParam0)
  {
  	return iParam0 < 3;
  }
  
  int func_26(int iParam0)
  {
  	int iVar0;
  	int iVar1;
  	
  	if (ENTITY::DOES_ENTITY_EXIST(iParam0))
  	{
  		iVar1 = ENTITY::GET_ENTITY_MODEL(iParam0);
  		iVar0 = 0;
  		while (iVar0 <= 2)
  		{
  			if (func_27(iVar0) == iVar1)
  			{
  				return iVar0;
  			}
  			iVar0++;
  		}
  	}
  	return 145;
  }
  
  int func_27(int iParam0)
  {
  	if (func_25(iParam0))
  	{
  		return func_28(iParam0);
  	}
  	else if (iParam0 != 145)
  	{
  	}
  	return 0;
  }
  
  var func_28(int iParam0)
  {
  	return Global_1878[iParam0 /*29*/];
  }
  
  void func_29(char* sParam0)
  {
  	MemCopy(sParam0, {Local_234}, 4);
  	StringConCat(sParam0, "_CONV_", 16);
  	StringIntConCat(sParam0, iLocal_254 + 1, 16);
  }
  
  void func_30()
  {
  	iLocal_254 = MISC::GET_RANDOM_INT_IN_RANGE(0, iLocal_253);
  }
  
  void func_31(char* sParam0)
  {
  	int iVar0;
  	
  	MemCopy(sParam0, {Local_234}, 4);
  	StringConCat(sParam0, "_CONV_", 16);
  	iVar0 = func_22();
  	if (iVar0 == 2)
  	{
  		StringConCat(sParam0, "T", 16);
  	}
  	else if (iVar0 == 0)
  	{
  		StringConCat(sParam0, "M", 16);
  	}
  	else
  	{
  		StringConCat(sParam0, "F", 16);
  	}
  	StringIntConCat(sParam0, iLocal_299[func_22()], 16);
  }
  
  void func_32()
  {
  	if (!func_62())
  	{
  		func_101(1, 1);
  	}
  }
  
  bool func_33(var uParam0, char* sParam1, char* sParam2, int iParam3, int iParam4, int iParam5, int iParam6)
  {
  	func_47(uParam0, 145, sParam1, iParam4, iParam5, iParam6);
  	if (iParam3 > 7)
  	{
  		if (iParam3 < 12)
  		{
  			iParam3 = 7;
  		}
  	}
  	Global_21132 = 0;
  	Global_21134 = 0;
  	Global_21139 = 0;
  	Global_22116 = 0;
  	Global_22118 = 0;
  	Global_22122 = 0;
  	Global_2621441 = 0;
  	return func_34(sParam2, iParam3, 0);
  }
  
  int func_34(char* sParam0, int iParam1, bool bParam2)
  {
  	Global_21126 = 0;
  	if (Global_21125 == 0 || Global_21127 == 2)
  	{
  		if (Global_21125 != 0)
  		{
  			if (iParam1 > Global_21127)
  			{
  				if (Global_21132 == 0)
  				{
  					AUDIO::STOP_SCRIPTED_CONVERSATION(false);
  					Global_19798.f_1 = 3;
  					Global_21125 = 0;
  					Global_21126 = 1;
  					Global_21178 = 0;
  					Global_21121 = 0;
  					Global_21122 = 0;
  					Global_21136 = 0;
  					Global_21135 = 0;
  					Global_19797 = 0;
  				}
  				else
  				{
  					func_14();
  					return 0;
  				}
  			}
  			else
  			{
  				return 0;
  			}
  		}
  		if (AUDIO::IS_SCRIPTED_CONVERSATION_ONGOING())
  		{
  			return 0;
  		}
  		if (func_46(8, -1))
  		{
  			return 0;
  		}
  		Global_21201 = { Global_21195 };
  		func_45();
  		Global_20414 = { Global_20579 };
  		Global_21131 = Global_21132;
  		Global_21138 = Global_21139;
  		Global_2621442 = Global_2621441;
  		Global_21140 = { Global_21156 };
  		Global_21133 = Global_21134;
  		Global_22115 = Global_22116;
  		Global_22123 = { Global_22129 };
  		Global_22117 = Global_22118;
  		Global_22119 = Global_22120;
  		Global_22121 = Global_22122;
  		Global_20744.f_370 = Global_22114;
  		Global_20744.f_368 = Global_22112;
  		Global_20744.f_369 = Global_22113;
  		Global_21121 = Global_21122;
  		if (Global_21131)
  		{
  			MISC::CLEAR_BIT(&Global_7668, 20);
  			MISC::CLEAR_BIT(&Global_7669, 17);
  			MISC::CLEAR_BIT(&Global_7670, 0);
  			if (bParam2)
  			{
  				func_44();
  				if (Global_8473[Global_19798 /*2811*/][0 /*281*/].f_259 == 2)
  				{
  					if (iParam1 == 13)
  					{
  					}
  					else
  					{
  						return 0;
  					}
  				}
  				if (Global_19798.f_1 > 3)
  				{
  					return 0;
  				}
  			}
  			if (Global_19764 == 1)
  			{
  				return 0;
  			}
  			if (PLAYER::IS_PLAYER_PLAYING(PLAYER::PLAYER_ID()))
  			{
  				if (PED::IS_PED_IN_MELEE_COMBAT(PLAYER::PLAYER_PED_ID()))
  				{
  					return 0;
  				}
  				if (func_43())
  				{
  					return 0;
  				}
  				if (TASK::IS_PED_SPRINTING(PLAYER::PLAYER_PED_ID()))
  				{
  					return 0;
  				}
  				if (PED::IS_PED_RAGDOLL(PLAYER::PLAYER_PED_ID()))
  				{
  					return 0;
  				}
  				if (PED::IS_PED_IN_PARACHUTE_FREE_FALL(PLAYER::PLAYER_PED_ID()))
  				{
  					return 0;
  				}
  				if (WEAPON::GET_IS_PED_GADGET_EQUIPPED(PLAYER::PLAYER_PED_ID(), joaat("gadget_parachute")))
  				{
  					return 0;
  				}
  				if (!Global_77248)
  				{
  					if (ENTITY::IS_ENTITY_IN_WATER(PLAYER::PLAYER_PED_ID()))
  					{
  						return 0;
  					}
  					if (PLAYER::IS_PLAYER_CLIMBING(PLAYER::PLAYER_ID()))
  					{
  						return 0;
  					}
  					if (PED::IS_PED_PLANTING_BOMB(PLAYER::PLAYER_PED_ID()))
  					{
  						return 0;
  					}
  					if (PLAYER::IS_SPECIAL_ABILITY_ACTIVE(PLAYER::PLAYER_ID(), 0))
  					{
  						return 0;
  					}
  				}
  			}
  			if (func_42())
  			{
  				return 0;
  			}
  			else
  			{
  				switch (Global_19798.f_1)
  				{
  					case 7:
  						return 0;
  						break;
  					
  					case 8:
  						return 0;
  						break;
  					
  					case 9:
  						break;
  					
  					case 10:
  						break;
  					
  					default:
  						break;
  				}
  				if (MISC::IS_BIT_SET(Global_7668, 9))
  				{
  					return 0;
  				}
  			}
  			func_41();
  			Global_21135 = bParam2;
  		}
  		Global_21127 = iParam1;
  		StringCopy(&Global_20744, sParam0, 24);
  		Global_19991 = 0;
  		func_40();
  		func_35();
  		return 1;
  	}
  	if (Global_21125 == 5)
  	{
  		return 0;
  	}
  	if (iParam1 < Global_21127 || iParam1 == Global_21127)
  	{
  		return 0;
  	}
  	if (iParam1 == 2)
  	{
  	}
  	else
  	{
  		func_14();
  	}
  	return 0;
  }
  
  void func_35()
  {
  	if (!func_36())
  	{
  		return;
  	}
  	if (Global_21131)
  	{
  		MemCopy(&(Global_1710127.f_1), {Global_20744}, 4);
  		Global_1710127 = Global_6983;
  		Global_1710127.f_6 = Global_21135;
  	}
  }
  
  int func_36()
  {
  	if (!Global_262145.f_28376)
  	{
  		return 0;
  	}
  	if (!Global_77248)
  	{
  		return 0;
  	}
  	if (PLAYER::PLAYER_ID() == func_39())
  	{
  		return 0;
  	}
  	if (func_37(PLAYER::PLAYER_ID()))
  	{
  		return 0;
  	}
  	if (MISC::IS_BIT_SET(Global_1630816[PLAYER::PLAYER_ID() /*597*/].f_1, 7))
  	{
  		return 0;
  	}
  	if (NETWORK::NETWORK_IS_ACTIVITY_SESSION())
  	{
  		return 0;
  	}
  	return 1;
  }
  
  bool func_37(int iParam0)
  {
  	return func_38(iParam0, 20);
  }
  
  bool func_38(int iParam0, int iParam1)
  {
  	return MISC::IS_BIT_SET(Global_1630816[iParam0 /*597*/].f_11.f_4, iParam1);
  }
  
  int func_39()
  {
  	return -1;
  }
  
  void func_40()
  {
  	int iVar0;
  	
  	iVar0 = 0;
  	while (iVar0 <= 69)
  	{
  		StringCopy(&(Global_19993[iVar0 /*6*/]), "", 24);
  		iVar0++;
  	}
  	AUDIO::STOP_SCRIPTED_CONVERSATION(false);
  	Global_21125 = 1;
  }
  
  void func_41()
  {
  	Global_21178 = Global_21177;
  	Global_21172 = Global_21173;
  	Global_21219 = { Global_21207 };
  	Global_21225 = { Global_21213 };
  	Global_21180 = Global_21179;
  	Global_21249 = { Global_21231 };
  	Global_21255 = { Global_21237 };
  	Global_21261 = { Global_21243 };
  	Global_21267 = { Global_21273 };
  	Global_6983 = Global_6984;
  	Global_6985 = Global_6986;
  	Global_21136 = Global_21137;
  	Global_21138 = Global_21139;
  	Global_21140 = { Global_21156 };
  	Global_21129 = Global_21130;
  	Global_22141 = 0;
  	Global_21174 = 0;
  	Global_21175 = 0;
  	MISC::CLEAR_BIT(&Global_7669, 16);
  }
  
  int func_42()
  {
  	if (Global_19798.f_1 == 1 || Global_19798.f_1 == 0)
  	{
  		return 1;
  	}
  	return 0;
  }
  
  int func_43()
  {
  	int iVar0;
  	int iVar1;
  	
  	if (Global_77248)
  	{
  		iVar0 = 0;
  		WEAPON::GET_CURRENT_PED_WEAPON(PLAYER::PLAYER_PED_ID(), &iVar1, true);
  		if (PLAYER::IS_PLAYER_PLAYING(PLAYER::PLAYER_ID()))
  		{
  			if ((iVar1 == joaat("weapon_sniperrifle") || iVar1 == joaat("weapon_heavysniper")) || iVar1 == joaat("weapon_remotesniper"))
  			{
  				iVar0 = 1;
  			}
  		}
  		if (CAM::IS_AIM_CAM_ACTIVE() && iVar0 == 1)
  		{
  			return 1;
  		}
  		else
  		{
  			return 0;
  		}
  	}
  	if (PLAYER::IS_PLAYER_PLAYING(PLAYER::PLAYER_ID()))
  	{
  		if (PED::GET_PED_CONFIG_FLAG(PLAYER::PLAYER_PED_ID(), 78, true))
  		{
  			return 1;
  		}
  		else
  		{
  			return 0;
  		}
  	}
  	return 1;
  }
  
  void func_44()
  {
  	if (func_24(14))
  	{
  		if (!ENTITY::IS_ENTITY_DEAD(PLAYER::PLAYER_PED_ID(), false))
  		{
  			if (ENTITY::GET_ENTITY_MODEL(PLAYER::PLAYER_PED_ID()) == Global_112293.f_28048[0 /*29*/])
  			{
  				Global_19798 = 0;
  			}
  			else if (ENTITY::GET_ENTITY_MODEL(PLAYER::PLAYER_PED_ID()) == Global_112293.f_28048[1 /*29*/])
  			{
  				Global_19798 = 1;
  			}
  			else if (ENTITY::GET_ENTITY_MODEL(PLAYER::PLAYER_PED_ID()) == Global_112293.f_28048[2 /*29*/])
  			{
  				Global_19798 = 2;
  			}
  			else
  			{
  				Global_19798 = 0;
  			}
  		}
  	}
  	else
  	{
  		Global_19798 = func_22();
  		if (Global_19798 == 145)
  		{
  			Global_19798 = 3;
  		}
  		if (Global_77248)
  		{
  			Global_19798 = 3;
  		}
  		if (Global_19798 > 3)
  		{
  			Global_19798 = 3;
  		}
  	}
  }
  
  void func_45()
  {
  	int iVar0;
  	
  	iVar0 = 0;
  	while (iVar0 <= 15)
  	{
  		Global_20414[iVar0 /*10*/] = 0;
  		StringCopy(&(Global_20414[iVar0 /*10*/].f_1), "", 24);
  		Global_20414[iVar0 /*10*/].f_7 = 0;
  		Global_20414[iVar0 /*10*/].f_8 = 0;
  		iVar0++;
  	}
  	Global_20414.f_161 = -99;
  	Global_20414.f_162 = { 0f, 0f, 0f };
  }
  
  bool func_46(int iParam0, int iParam1)
  {
  	switch (iParam0)
  	{
  		case 5:
  			if (iParam1 > -1)
  			{
  				return Global_1379108.f_203[iParam1];
  			}
  			break;
  	}
  	return MISC::IS_BIT_SET(Global_1379108.f_1048, iParam0);
  }
  
  void func_47(var uParam0, int iParam1, char* sParam2, int iParam3, int iParam4, var uParam5)
  {
  	Global_20579 = { *uParam0 };
  	Global_6984 = iParam1;
  	StringCopy(&Global_21195, sParam2, 24);
  	Global_22114 = uParam5;
  	if (iParam3 == 0)
  	{
  		Global_22112 = 1;
  		Global_22110 = 0;
  	}
  	else
  	{
  		Global_22112 = 0;
  		Global_22110 = 1;
  	}
  	if (iParam4 == 0)
  	{
  		Global_22113 = 1;
  		Global_22111 = 0;
  	}
  	else
  	{
  		Global_22113 = 0;
  		Global_22111 = 1;
  	}
  }
  
  void func_48(char[4] cParam0)
  {
  	int iVar0;
  	
  	iVar0 = func_22();
  	if (iVar0 == 2)
  	{
  		*cParam0 = { Local_316 };
  	}
  	else if (iVar0 == 0)
  	{
  		*cParam0 = { Local_312 };
  	}
  	else
  	{
  		*cParam0 = { Local_320 };
  	}
  }
  
  void func_49(var uParam0, int iParam1, int iParam2, char* sParam3, int iParam4, int iParam5)
  {
  	if ((uParam0[iParam1 /*10*/])->f_7 == 1)
  	{
  	}
  	(*uParam0)[iParam1 /*10*/] = iParam2;
  	StringCopy(&((uParam0[iParam1 /*10*/])->f_1), sParam3, 24);
  	(uParam0[iParam1 /*10*/])->f_7 = 1;
  	(uParam0[iParam1 /*10*/])->f_8 = iParam4;
  	(uParam0[iParam1 /*10*/])->f_9 = iParam5;
  	if (!Global_77248)
  	{
  		if (!PED::IS_PED_INJURED(iParam2))
  		{
  			if ((uParam0[iParam1 /*10*/])->f_8 == 0)
  			{
  				PED::SET_PED_CAN_PLAY_AMBIENT_ANIMS(iParam2, false);
  			}
  			else
  			{
  				PED::SET_PED_CAN_PLAY_AMBIENT_ANIMS(iParam2, true);
  			}
  		}
  		if (!PED::IS_PED_INJURED(iParam2))
  		{
  			if ((uParam0[iParam1 /*10*/])->f_9 == 0)
  			{
  				PED::SET_PED_CAN_USE_AUTO_CONVERSATION_LOOKAT(iParam2, false);
  			}
  			else
  			{
  				PED::SET_PED_CAN_USE_AUTO_CONVERSATION_LOOKAT(iParam2, true);
  			}
  		}
  	}
  }
  
  void func_50(char* sParam0)
  {
  	int iVar0;
  	
  	iVar0 = func_22();
  	if (iVar0 == 2)
  	{
  		StringCopy(sParam0, "TREVOR", 16);
  	}
  	else if (iVar0 == 0)
  	{
  		StringCopy(sParam0, "MICHAEL", 16);
  	}
  	else
  	{
  		StringCopy(sParam0, "FRANKLIN", 16);
  	}
  }
  
  void func_51(var uParam0)
  {
  }
  
  void func_52(var uParam0, int iParam1, float fParam2)
  {
  }
  
  void func_53()
  {
  	STREAMING::REMOVE_ANIM_DICT(&Local_388);
  }
  
  void func_54()
  {
  	char* sVar0;
  	struct<16> Var8;
  	
  	func_57(Global_112238[iLocal_251] + 1, &sVar0, &Var8);
  	StringConCat(&Var8, "_", 64);
  	StringIntConCat(&Var8, iLocal_297, 64);
  	Local_356 = { Var8 };
  	Local_372 = { Local_388 };
  	func_56(&Local_356);
  	TASK::TASK_PLAY_ANIM(iLocal_240, &Local_388, &Var8, 1000f, -8f, -1, 0, 0f, false, false, false);
  	PED::FORCE_PED_AI_AND_ANIMATION_UPDATE(iLocal_240, false, false);
  	func_55(Global_112238[iLocal_251]);
  }
  
  void func_55(var uParam0)
  {
  }
  
  void func_56(char* sParam0)
  {
  	if (MISC::ARE_STRINGS_EQUAL(sParam0, sParam0))
  	{
  	}
  }
  
  void func_57(int iParam0, char* sParam1, char* sParam2)
  {
  	StringCopy(sParam1, "Special_Ped@Impotent_Rage", 32);
  	switch (iParam0)
  	{
  		case 1:
  			StringCopy(sParam2, "Grr_Im_Impotent_Rage", 64);
  			break;
  		
  		case 2:
  			StringCopy(sParam2, "Im_Really_Pretty_Mad", 64);
  			break;
  		
  		case 3:
  			StringCopy(sParam2, "Im_Completely_Crazy_Here", 64);
  			break;
  		
  		case 4:
  			StringCopy(sParam2, "This_Is_Just_Insanity", 64);
  			break;
  		
  		case 5:
  			StringCopy(sParam2, "Im_So_Damn_Mad", 64);
  			break;
  		
  		case 6:
  			StringCopy(sParam2, "Dont_Get_Me_Excited", 64);
  			break;
  		
  		case 7:
  			StringCopy(sParam2, "Ill_Find_The_Doughnut", 64);
  			break;
  		
  		case 8:
  			StringCopy(sParam2, "America_Im_The_Hero", 64);
  			break;
  		
  		case 9:
  			StringCopy(sParam2, "I_Am_The_Ultimate", 64);
  			break;
  		
  		case 10:
  			StringCopy(sParam2, "I_Will_Defeat_The", 64);
  			break;
  		
  		case 11:
  			StringCopy(sParam2, "Really_Very_Unhappy", 64);
  			break;
  		
  		case 12:
  			StringCopy(sParam2, "You_Cant_Stop_My", 64);
  			break;
  		
  		case 13:
  			StringCopy(sParam2, "I_Am_White_Male", 64);
  			break;
  		
  		case 14:
  			StringCopy(sParam2, "Youll_Not_Stop_me", 64);
  			break;
  		
  		case 15:
  			StringCopy(sParam2, "Newest_Superhero", 64);
  			break;
  	}
  }
  
  int func_58()
  {
  	struct<4> Var0;
  	int iVar4;
  	
  	Var0 = { Local_308 };
  	StringIntConCat(&Var0, Global_112238[iLocal_251] + 1, 16);
  	func_49(&uLocal_37, 3, iLocal_240, &Local_236, 0, 1);
  	if (bLocal_437)
  	{
  		iVar4 = 1;
  	}
  	else
  	{
  		iVar4 = func_33(&uLocal_37, &cLocal_304, &Var0, 3, 0, 0, 0);
  	}
  	Local_498 = { Var0 };
  	return iVar4;
  }
  
  bool func_59()
  {
  	return Global_99422.f_363 > 0;
  }
  
  bool func_60()
  {
  	bool bVar0;
  	
  	bVar0 = STREAMING::HAS_ANIM_DICT_LOADED(&Local_388);
  	return bVar0;
  }
  
  int func_61()
  {
  	if (Global_21125 != 0 || AUDIO::IS_SCRIPTED_CONVERSATION_ONGOING())
  	{
  		return 1;
  	}
  	return 0;
  }
  
  int func_62()
  {
  	if (TASK::GET_SCRIPT_TASK_STATUS(iLocal_240, -2017877118) != 1 && TASK::GET_SCRIPT_TASK_STATUS(iLocal_240, -2017877118) != 0)
  	{
  		return 0;
  	}
  	return 1;
  }
  
  void func_63()
  {
  	struct<16> Var0;
  	
  	func_64(&Var0);
  	STREAMING::REQUEST_ANIM_DICT(&Var0);
  	Local_388 = { Var0 };
  }
  
  void func_64(char* sParam0)
  {
  	struct<8> Var0;
  	
  	*sParam0 = { Local_202 };
  	StringConCat(sParam0, "@", 64);
  	func_66(&Var0);
  	StringConCat(sParam0, &Var0, 64);
  	StringConCat(sParam0, "@", 64);
  	StringConCat(sParam0, &Var0, 64);
  	func_65(&Var0);
  	StringConCat(sParam0, &Var0, 64);
  }
  
  void func_65(char* sParam0)
  {
  	func_19(iLocal_297, sParam0);
  }
  
  void func_66(char* sParam0)
  {
  	StringCopy(sParam0, "MONOLOGUE_", 16);
  	StringIntConCat(sParam0, Global_112238[iLocal_251] + 1, 16);
  }
  
  void func_67(int iParam0, bool bParam1)
  {
  	int iVar0;
  	
  	iVar0 = func_78(iParam0);
  	if (func_77(iVar0))
  	{
  		func_68(iVar0, bParam1);
  	}
  }
  
  void func_68(int iParam0, bool bParam1)
  {
  	int iVar0;
  	
  	iVar0 = iParam0;
  	if (iVar0 >= 0 && iVar0 <= 31)
  	{
  		if (func_77(iParam0))
  		{
  			if (!func_75(iParam0))
  			{
  				MISC::SET_BIT(&(Global_112293.f_26432.f_2), iVar0);
  				if (!bParam1)
  				{
  					func_73(func_74(iParam0));
  					if (!func_72(70))
  					{
  						func_69("DI_HLP_SPCL", 2, 0, 20000, 10000, 7, 0, 210, 0);
  					}
  				}
  			}
  		}
  	}
  }
  
  void func_69(char* sParam0, int iParam1, int iParam2, int iParam3, int iParam4, int iParam5, int iParam6, int iParam7, int iParam8)
  {
  	func_70(sParam0, "", iParam1, iParam2, iParam3, iParam4, iParam5, iParam6, iParam7, iParam8);
  }
  
  void func_70(char* sParam0, char* sParam1, var uParam2, int iParam3, int iParam4, int iParam5, int iParam6, int iParam7, int iParam8, var uParam9)
  {
  	int iVar0;
  	
  	if (MISC::ARE_STRINGS_EQUAL(sParam0, ""))
  	{
  		return;
  	}
  	if (iParam3 < 0)
  	{
  		return;
  	}
  	if (iParam5 < 500 && iParam5 != -1)
  	{
  		return;
  	}
  	if (iParam4 < 0 && iParam4 != -1)
  	{
  		return;
  	}
  	if (iParam6 < 1 || iParam6 > 7)
  	{
  		return;
  	}
  	if (iParam7 == 235)
  	{
  		return;
  	}
  	if (iParam8 == 235)
  	{
  		return;
  	}
  	iVar0 = 0;
  	while (iVar0 < Global_112293.f_20408.f_145)
  	{
  		if (MISC::ARE_STRINGS_EQUAL(&(Global_112293.f_20408[iVar0 /*16*/]), sParam0))
  		{
  			return;
  		}
  		iVar0++;
  	}
  	if (Global_112293.f_20408.f_145 < 9)
  	{
  		StringCopy(&(Global_112293.f_20408[Global_112293.f_20408.f_145 /*16*/]), sParam0, 16);
  		StringCopy(&(Global_112293.f_20408[Global_112293.f_20408.f_145 /*16*/].f_4), sParam1, 16);
  		Global_112293.f_20408[Global_112293.f_20408.f_145 /*16*/].f_8 = (MISC::GET_GAME_TIMER() + iParam3);
  		Global_112293.f_20408[Global_112293.f_20408.f_145 /*16*/].f_9 = iParam5;
  		Global_112293.f_20408[Global_112293.f_20408.f_145 /*16*/].f_11 = iParam6;
  		Global_112293.f_20408[Global_112293.f_20408.f_145 /*16*/].f_12 = uParam2;
  		Global_112293.f_20408[Global_112293.f_20408.f_145 /*16*/].f_13 = iParam7;
  		Global_112293.f_20408[Global_112293.f_20408.f_145 /*16*/].f_14 = iParam8;
  		Global_112293.f_20408[Global_112293.f_20408.f_145 /*16*/].f_15 = uParam9;
  		if (iParam4 != -1)
  		{
  			Global_112293.f_20408[Global_112293.f_20408.f_145 /*16*/].f_10 = ((MISC::GET_GAME_TIMER() + iParam3) + iParam4);
  		}
  		else
  		{
  			Global_112293.f_20408[Global_112293.f_20408.f_145 /*16*/].f_10 = -1;
  		}
  		Global_112293.f_20408.f_145++;
  		func_71();
  	}
  }
  
  void func_71()
  {
  	int iVar0;
  	
  	iVar0 = 0;
  	while (iVar0 < 3)
  	{
  		Global_112293.f_20408.f_146[iVar0] = 0;
  		iVar0++;
  	}
  	iVar0 = 0;
  	while (iVar0 < Global_112293.f_20408.f_145)
  	{
  		if (MISC::IS_BIT_SET(Global_112293.f_20408[iVar0 /*16*/].f_11, 0))
  		{
  			if (Global_112293.f_20408[iVar0 /*16*/].f_12 > Global_112293.f_20408.f_146[0])
  			{
  				Global_112293.f_20408.f_146[0] = Global_112293.f_20408[iVar0 /*16*/].f_12;
  			}
  		}
  		if (MISC::IS_BIT_SET(Global_112293.f_20408[iVar0 /*16*/].f_11, 1))
  		{
  			if (Global_112293.f_20408[iVar0 /*16*/].f_12 > Global_112293.f_20408.f_146[1])
  			{
  				Global_112293.f_20408.f_146[1] = Global_112293.f_20408[iVar0 /*16*/].f_12;
  			}
  		}
  		if (MISC::IS_BIT_SET(Global_112293.f_20408[iVar0 /*16*/].f_11, 2))
  		{
  			if (Global_112293.f_20408[iVar0 /*16*/].f_12 > Global_112293.f_20408.f_146[2])
  			{
  				Global_112293.f_20408.f_146[2] = Global_112293.f_20408[iVar0 /*16*/].f_12;
  			}
  		}
  		iVar0++;
  	}
  }
  
  int func_72(int iParam0)
  {
  	int iVar0;
  	int iVar1;
  	
  	iVar0 = iParam0;
  	iVar1 = 0;
  	while (iVar0 > 31)
  	{
  		iVar0 = (iVar0 - 32);
  		iVar1++;
  	}
  	if (iVar1 < 3)
  	{
  		return MISC::IS_BIT_SET(Global_112293.f_20408.f_150[iVar1], iVar0);
  	}
  	return 0;
  }
  
  void func_73(char* sParam0)
  {
  	HUD::BEGIN_TEXT_COMMAND_THEFEED_POST("");
  	HUD::_END_TEXT_COMMAND_THEFEED_POST_MESSAGETEXT_GXT_ENTRY("CHAR_ACTING_UP", "CHAR_ACTING_UP", false, 0, "DI_FEED_CHAR", sParam0);
  }
  
  char* func_74(int iParam0)
  {
  	switch (iParam0)
  	{
  		case 0:
  			return "CM_SPEAND";
  			break;
  		
  		case 1:
  			return "CM_SPEBAY";
  			break;
  		
  		case 2:
  			return "CM_SPEBIL";
  			break;
  		
  		case 3:
  			return "CM_SPECLI";
  			break;
  		
  		case 4:
  			return "CM_SPEGRI";
  			break;
  		
  		case 5:
  			return "CM_SPEJAN";
  			break;
  		
  		case 6:
  			return "CM_SPEJER";
  			break;
  		
  		case 7:
  			return "CM_SPEJES";
  			break;
  		
  		case 8:
  			return "CM_SPEMAN";
  			break;
  		
  		case 9:
  			return "CM_SPEMIM";
  			break;
  		
  		case 10:
  			return "CM_SPEPAM";
  			break;
  		
  		case 11:
  			return "CM_SPEIMP";
  			break;
  		
  		case 12:
  			return "CM_SPEZOM";
  			break;
  	}
  	return "ERROR!";
  }
  
  int func_75(int iParam0)
  {
  	if (func_77(iParam0))
  	{
  		return MISC::IS_BIT_SET(Global_112293.f_26432.f_2, iParam0);
  	}
  	return 0;
  }
  
  int func_76(int iParam0)
  {
  	int iVar0;
  	
  	iVar0 = iParam0;
  	if (iVar0 >= 0 && iVar0 <= 31)
  	{
  		return MISC::IS_BIT_SET(Global_112293.f_26432.f_2, iVar0);
  	}
  	return 0;
  }
  
  int func_77(int iParam0)
  {
  	if ((iParam0 == -1 || iParam0 == 13) || iParam0 == 9)
  	{
  		return 0;
  	}
  	return 1;
  }
  
  int func_78(int iParam0)
  {
  	switch (iParam0)
  	{
  		case joaat("gpb_andymoon"):
  			return 0;
  			break;
  		
  		case joaat("gpb_baygor"):
  			return 1;
  			break;
  		
  		case joaat("gpb_billbinder"):
  			return 2;
  			break;
  		
  		case joaat("gpb_clinton"):
  			return 3;
  			break;
  		
  		case joaat("gpb_griff"):
  			return 4;
  			break;
  		
  		case joaat("gpb_jane"):
  			return 5;
  			break;
  		
  		case joaat("gpb_jerome"):
  			return 6;
  			break;
  		
  		case joaat("gpb_jesse"):
  			return 7;
  			break;
  		
  		case joaat("gpb_mani"):
  			return 8;
  			break;
  		
  		case joaat("gpb_mime"):
  			return 9;
  			break;
  		
  		case joaat("gpb_pameladrake"):
  			return 10;
  			break;
  		
  		case joaat("gpb_superhero"):
  			return 11;
  			break;
  		
  		case joaat("gpb_zombie"):
  			return 12;
  			break;
  	}
  	return -1;
  }
  
  void func_79(int* iParam0)
  {
  	if (iLocal_447 == 1)
  	{
  		if (HUD::DOES_BLIP_EXIST(*iParam0))
  		{
  			HUD::REMOVE_BLIP(iParam0);
  		}
  	}
  }
  
  void func_80(int* iParam0, int iParam1, bool bParam2)
  {
  	if (iLocal_447 == 1)
  	{
  		if (!HUD::DOES_BLIP_EXIST(*iParam0))
  		{
  			if (ENTITY::DOES_ENTITY_EXIST(*iParam1))
  			{
  				if (!PED::IS_PED_INJURED(*iParam1))
  				{
  					*iParam0 = func_81(*iParam1, bParam2, 145);
  					if (bParam2 == 0)
  					{
  						HUD::SET_BLIP_PRIORITY(*iParam0, 7);
  					}
  					HUD::SET_BLIP_COLOUR(*iParam0, 3);
  				}
  			}
  		}
  	}
  }
  
  int func_81(int iParam0, bool bParam1, int iParam2)
  {
  	int iVar0;
  	
  	iVar0 = func_82(iParam0, !bParam1, 0);
  	if ((iParam2 != 145 && HUD::DOES_BLIP_EXIST(iVar0)) && HUD::DOES_TEXT_LABEL_EXIST(&(Global_1878[iParam2 /*29*/].f_3)))
  	{
  		HUD::SET_BLIP_NAME_FROM_TEXT_FILE(iVar0, &(Global_1878[iParam2 /*29*/].f_3));
  	}
  	return iVar0;
  }
  
  int func_82(int iParam0, bool bParam1, bool bParam2)
  {
  	int iVar0;
  	
  	if (!ENTITY::DOES_ENTITY_EXIST(iParam0))
  	{
  		return 0;
  	}
  	iVar0 = HUD::ADD_BLIP_FOR_ENTITY(iParam0);
  	if (ENTITY::IS_ENTITY_A_VEHICLE(iParam0))
  	{
  		HUD::SET_BLIP_SCALE(iVar0, func_83(NETWORK::NETWORK_IS_GAME_IN_PROGRESS(), 1f, 1f));
  		if (!bParam2)
  		{
  			HUD::SET_BLIP_AS_FRIENDLY(iVar0, bParam1);
  		}
  		else
  		{
  			HUD::SET_BLIP_COLOUR(iVar0, 2);
  		}
  	}
  	else if (ENTITY::IS_ENTITY_A_PED(iParam0))
  	{
  		HUD::SET_BLIP_SCALE(iVar0, func_83(NETWORK::NETWORK_IS_GAME_IN_PROGRESS(), 0.7f, 0.7f));
  		HUD::SET_BLIP_AS_FRIENDLY(iVar0, bParam1);
  	}
  	else if (ENTITY::IS_ENTITY_AN_OBJECT(iParam0))
  	{
  		HUD::SET_BLIP_SCALE(iVar0, func_83(NETWORK::NETWORK_IS_GAME_IN_PROGRESS(), 0.7f, 0.7f));
  	}
  	return iVar0;
  }
  
  float func_83(bool bParam0, float fParam1, float fParam2)
  {
  	if (bParam0)
  	{
  		return fParam1;
  	}
  	return fParam2;
  }
  
  float func_84(int iParam0, int iParam1, bool bParam2)
  {
  	struct<3> Var0;
  	struct<3> Var3;
  	
  	if (!ENTITY::IS_ENTITY_DEAD(iParam0, false))
  	{
  		Var0 = { ENTITY::GET_ENTITY_COORDS(iParam0, true) };
  	}
  	else
  	{
  		Var0 = { ENTITY::GET_ENTITY_COORDS(iParam0, false) };
  	}
  	if (!ENTITY::IS_ENTITY_DEAD(iParam1, false))
  	{
  		Var3 = { ENTITY::GET_ENTITY_COORDS(iParam1, true) };
  	}
  	else
  	{
  		Var3 = { ENTITY::GET_ENTITY_COORDS(iParam1, false) };
  	}
  	return MISC::GET_DISTANCE_BETWEEN_COORDS(Var0, Var3, bParam2);
  }
  
  int func_85(int iParam0, int iParam1, float fParam2, int iParam3)
  {
  	struct<3> Var0;
  	struct<3> Var3;
  	float fVar6;
  	
  	Var0 = { func_87(ENTITY::GET_ENTITY_COORDS(iParam1, true) - ENTITY::GET_ENTITY_COORDS(iParam0, true)) };
  	if (fParam2 < 0.1f || fParam2 > 360f)
  	{
  		return 1;
  	}
  	if (iParam3 == 0)
  	{
  		Var3 = { ENTITY::GET_ENTITY_FORWARD_VECTOR(iParam0) };
  	}
  	else
  	{
  		Var3 = { func_87(PED::GET_PED_BONE_COORDS(iParam0, 31086, 0f, 5f, 0f) - PED::GET_PED_BONE_COORDS(iParam0, 31086, 0f, 0f, 0f)) };
  	}
  	fVar6 = func_86(Var3, Var0);
  	if (fVar6 <= SYSTEM::COS((fParam2 / 2f)))
  	{
  		return 0;
  	}
  	return 1;
  }
  
  float func_86(struct<3> Param0, struct<3> Param3)
  {
  	return (((Param0.x * Param3.x) + (Param0.f_1 * Param3.f_1)) + (Param0.f_2 * Param3.f_2));
  }
  
  Vector3 func_87(struct<3> Param0)
  {
  	float fVar0;
  	float fVar1;
  	
  	fVar0 = SYSTEM::VMAG(Param0);
  	if (fVar0 != 0f)
  	{
  		fVar1 = (1f / fVar0);
  		Param0 = { Param0 * Vector(fVar1, fVar1, fVar1) };
  	}
  	else
  	{
  		Param0.x = 0f;
  		Param0.f_1 = 0f;
  		Param0.f_2 = 0f;
  	}
  	return Param0;
  }
  
  int func_88(int iParam0)
  {
  	var uVar0;
  	
  	WEAPON::GET_CURRENT_PED_WEAPON(iParam0, &uVar0, true);
  	return uVar0;
  }
  
  int func_89()
  {
  	if (iLocal_250 == 24 || iLocal_250 == 25)
  	{
  		return 1;
  	}
  	return 0;
  }
  
  void func_90()
  {
  	if (iLocal_245 != -1)
  	{
  		if (PATHFIND::DOES_NAVMESH_BLOCKING_OBJECT_EXIST(iLocal_245))
  		{
  			PATHFIND::REMOVE_NAVMESH_BLOCKING_OBJECT(iLocal_245);
  		}
  		iLocal_245 = -1;
  	}
  }
  
  void func_91()
  {
  	Global_19991 = 0;
  	func_92();
  }
  
  void func_92()
  {
  	AUDIO::RESTART_SCRIPTED_CONVERSATION();
  	Global_22136 = 0;
  	if (AUDIO::IS_SCRIPTED_CONVERSATION_ONGOING())
  	{
  		AUDIO::STOP_SCRIPTED_CONVERSATION(false);
  		Global_21125 = 6;
  	}
  }
  
  int func_93()
  {
  	return 0;
  }
  
  void func_94()
  {
  }
  
  int func_95()
  {
  	return 1;
  }
  
  float func_96(int iParam0, int iParam1)
  {
  	return func_84(iParam0, iParam1, 1);
  }
  
  void func_97(int iParam0)
  {
  	int iVar0;
  	
  	func_100(&(Global_112293.f_20115), iParam0);
  	iVar0 = func_98(iParam0);
  	if (func_77(iVar0))
  	{
  		func_68(func_98(iParam0), 0);
  	}
  }
  
  int func_98(int iParam0)
  {
  	int iVar0;
  	int iVar1;
  	
  	iVar0 = 0;
  	while (iVar0 < 13)
  	{
  		iVar1 = iVar0;
  		if (func_99(iVar1, 1) == iParam0)
  		{
  			return iVar1;
  		}
  		iVar0++;
  	}
  	return -1;
  }
  
  int func_99(int iParam0, bool bParam1)
  {
  	if (!func_77(iParam0))
  	{
  		if (!bParam1)
  		{
  		}
  		return 0;
  	}
  	switch (iParam0)
  	{
  		case 0:
  			return 1;
  		
  		case 1:
  			return 2;
  		
  		case 2:
  			return 4;
  		
  		case 3:
  			return 8;
  		
  		case 4:
  			return 16;
  		
  		case 5:
  			return 64;
  		
  		case 6:
  			return 128;
  		
  		case 7:
  			return 256;
  		
  		case 8:
  			return 512;
  		
  		case 10:
  			return 2048;
  		
  		case 11:
  			return 4096;
  		
  		case 12:
  			return 8192;
  		
  		default:
  	}
  	if (!bParam1)
  	{
  	}
  	return 0;
  }
  
  void func_100(var uParam0, var uParam1)
  {
  	*uParam0 = (*uParam0 || uParam1);
  }
  
  void func_101(int iParam0, bool bParam1)
  {
  	if (iParam0 == 1)
  	{
  		TASK::TASK_PLAY_ANIM(iLocal_240, &cLocal_324, &Local_218, 2f, -2f, -1, 0, 0f, false, false, false);
  	}
  	else
  	{
  		TASK::TASK_PLAY_ANIM(iLocal_240, &cLocal_324, &Local_218, 1000f, 1000f, -1, 0, 0f, false, false, false);
  	}
  	Local_356 = { Local_218 };
  	if (bParam1)
  	{
  		if (!PED::IS_PED_INJURED(iLocal_240) && !PED::IS_PED_DEAD_OR_DYING(iLocal_240, true))
  		{
  			PED::FORCE_PED_AI_AND_ANIMATION_UPDATE(iLocal_240, false, false);
  		}
  	}
  }
  
  int func_102(int iParam0)
  {
  	if (ENTITY::DOES_ENTITY_EXIST(iParam0))
  	{
  		if (!ENTITY::IS_ENTITY_DEAD(iParam0, false))
  		{
  			return 1;
  		}
  	}
  	return 0;
  }
  
  void func_103()
  {
  	func_104();
  }
  
  void func_104()
  {
  	if (!ENTITY::IS_ENTITY_DEAD(iLocal_240, false))
  	{
  		AUDIO::ADD_ENTITY_TO_AUDIO_MIX_GROUP(iLocal_240, "MAG_2_RAGE_PED_GROUP", 0f);
  	}
  }
  
  void func_105()
  {
  	iLocal_36 = joaat("u_m_y_imporage");
  	StringCopy(&Local_234, "PBSH", 8);
  	StringCopy(&Local_236, "IMPORAGE", 16);
  	StringCopy(&Local_202, "Special_Ped@Impotent_Rage", 64);
  	StringCopy(&Local_218, "Base", 64);
  	bLocal_436 = true;
  	bLocal_438 = true;
  	iLocal_252 = 15;
  	iLocal_253 = 6;
  	sLocal_303 = "PBSH_INTERACT";
  	StringCopy(&Local_312, "PBSH_CONV_M1", 16);
  	StringCopy(&Local_316, "PBSH_CONV_T1", 16);
  	StringCopy(&Local_320, "PBSH_CONV_F1", 16);
  	StringCopy(&cLocal_324, "special_ped@Impotent_Rage@base", 64);
  	StringCopy(&cLocal_340, "special_ped@Impotent_Rage@intro", 64);
  	iLocal_251 = 11;
  	iLocal_255[0] = 4;
  	iLocal_255[1] = 3;
  	iLocal_255[2] = 4;
  	iLocal_255[3] = 3;
  	iLocal_255[4] = 3;
  	iLocal_255[5] = 3;
  	iLocal_255[6] = 3;
  	iLocal_255[7] = 4;
  	iLocal_255[8] = 5;
  	iLocal_255[9] = 3;
  	iLocal_255[10] = 4;
  	iLocal_255[11] = 4;
  	iLocal_255[12] = 3;
  	iLocal_255[13] = 3;
  	iLocal_255[14] = 4;
  	iLocal_276[0] = 1;
  	iLocal_276[1] = 1;
  	iLocal_276[2] = 1;
  	iLocal_276[3] = 1;
  	iLocal_276[4] = 1;
  	iLocal_276[5] = 1;
  	iLocal_247 = 0;
  }
  
  int func_106()
  {
  	if (MISC::IS_PC_VERSION())
  	{
  		if (MISC::_0xD10282B6E3751BA0() == 1f)
  		{
  			return 1;
  		}
  	}
  	return 0;
  }
  
  int func_107()
  {
  	if (Global_96292 != -1)
  	{
  		return MISC::IS_BIT_SET(Global_90158[Global_96292 /*34*/].f_15, 13);
  	}
  	return 0;
  }
  
  int func_108()
  {
  	if (Global_42009 == 15)
  	{
  		return 0;
  	}
  	return 1;
  }
  
  int func_109()
  {
  	return 1;
  }
  
  bool func_110(var uParam0)
  {
  	return func_111(Global_112293.f_20115, uParam0);
  }
  
  bool func_111(var uParam0, var uParam1)
  {
  	return (uParam0 && uParam1) != 0;
  }
  
  int func_112(char* sParam0)
  {
  	if (MISC::IS_STRING_NULL_OR_EMPTY(sParam0))
  	{
  		return 0;
  	}
  	if (MISC::ARE_STRINGS_EQUAL(sParam0, "gpb_AndyMoon"))
  	{
  		return 1;
  	}
  	else if (MISC::ARE_STRINGS_EQUAL(sParam0, "gpb_Baygor"))
  	{
  		return 2;
  	}
  	else if (MISC::ARE_STRINGS_EQUAL(sParam0, "gpb_BillBinder"))
  	{
  		return 4;
  	}
  	else if (MISC::ARE_STRINGS_EQUAL(sParam0, "gpb_Clinton"))
  	{
  		return 8;
  	}
  	else if (MISC::ARE_STRINGS_EQUAL(sParam0, "gpb_Griff"))
  	{
  		return 16;
  	}
  	else if (MISC::ARE_STRINGS_EQUAL(sParam0, "gpb_Jane"))
  	{
  		return 64;
  	}
  	else if (MISC::ARE_STRINGS_EQUAL(sParam0, "gpb_Jerome"))
  	{
  		return 128;
  	}
  	else if (MISC::ARE_STRINGS_EQUAL(sParam0, "gpb_Jesse"))
  	{
  		return 256;
  	}
  	else if (MISC::ARE_STRINGS_EQUAL(sParam0, "gpb_Mani"))
  	{
  		return 512;
  	}
  	else if (MISC::ARE_STRINGS_EQUAL(sParam0, "gpb_Mime"))
  	{
  		return 1024;
  	}
  	else if (MISC::ARE_STRINGS_EQUAL(sParam0, "gpb_PamelaDrake"))
  	{
  		return 2048;
  	}
  	else if (MISC::ARE_STRINGS_EQUAL(sParam0, "gpb_Superhero"))
  	{
  		return 4096;
  	}
  	else if (MISC::ARE_STRINGS_EQUAL(sParam0, "gpb_Zombie"))
  	{
  		return 8192;
  	}
  	return 0;
  }
  
  void func_113(int iParam0)
  {
  	var uVar0;
  	
  	func_116();
  	if (iLocal_241)
  	{
  		MemCopy(&uVar0, {func_115()}, 4);
  		if (MISC::ARE_STRINGS_EQUAL(&uVar0, &Local_498))
  		{
  			func_13();
  		}
  		if (iParam0 == 1)
  		{
  			PED::DELETE_PED(&iLocal_240);
  		}
  		else
  		{
  			ENTITY::SET_PED_AS_NO_LONGER_NEEDED(&iLocal_240);
  		}
  		iLocal_241 = 0;
  	}
  	if (!MISC::IS_STRING_NULL_OR_EMPTY(&Local_404))
  	{
  		STREAMING::REMOVE_ANIM_DICT(&Local_404);
  	}
  	if (iLocal_249 == 1)
  	{
  		if (!MISC::IS_STRING_NULL_OR_EMPTY(&cLocal_324))
  		{
  			if (STREAMING::HAS_ANIM_DICT_LOADED(&cLocal_324))
  			{
  				STREAMING::REMOVE_ANIM_DICT(&cLocal_324);
  			}
  		}
  		if (!MISC::IS_STRING_NULL_OR_EMPTY(&cLocal_340))
  		{
  			if (STREAMING::HAS_ANIM_DICT_LOADED(&cLocal_340))
  			{
  				STREAMING::REMOVE_ANIM_DICT(&cLocal_340);
  			}
  		}
  	}
  	if (iLocal_298 != -1)
  	{
  		func_2(&iLocal_298);
  	}
  	if (HUD::DOES_BLIP_EXIST(iLocal_248))
  	{
  		func_114(&iLocal_248);
  	}
  	func_90();
  	if (!PED::IS_PED_INJURED(PLAYER::PLAYER_PED_ID()))
  	{
  		AUDIO::DISABLE_PED_PAIN_AUDIO(PLAYER::PLAYER_PED_ID(), false);
  	}
  	SCRIPT::TERMINATE_THIS_THREAD();
  }
  
  void func_114(int* iParam0)
  {
  	if (HUD::DOES_BLIP_EXIST(*iParam0))
  	{
  		HUD::SET_BLIP_ROUTE(*iParam0, false);
  		HUD::REMOVE_BLIP(iParam0);
  	}
  }
  
  struct<6> func_115()
  {
  	struct<6> Var0;
  	
  	StringCopy(&Var0, "NULL", 24);
  	if (Global_21125 == 4)
  	{
  		return Global_20744;
  	}
  	return Var0;
  }
  
  void func_116()
  {
  	func_117();
  }
  
  void func_117()
  {
  }
  
  void func_118()
  {
  	if (iLocal_245 == -1)
  	{
  		iLocal_245 = PATHFIND::ADD_NAVMESH_BLOCKING_OBJECT(Local_242, 2f, 2f, 2f, 0f, false, 1);
  	}
  }
  
  