diff --git a/RASM/Data/RDRNativesPC.csv b/RASM/Data/RDRNativesPC.csv new file mode 100644 index 0000000..9605cb8 --- /dev/null +++ b/RASM/Data/RDRNativesPC.csv @@ -0,0 +1,3279 @@ +Hash(vPC),Name +0x2D54B916,TELEPORT_ACTOR +0xE4DE507C,TELEPORT_ACTOR_WITH_HEADING +0x6B3A39A9,GET_MAX_SPEED +0x99BD9D6F,GET_POSITION +0x42DE39F0,GET_HEADING +0x294A5549,GET_ACTOR_AXIS +0xECE8520B,SET_ACTOR_HEADING +0xCDC686B2,SET_ACTOR_ONE_SHOT_DEATH +0x912622D,GET_ACTOR_ONE_SHOT_DEATH_STATUS +0x758F993A,GET_PHYSINST_FROM_ACTOR +0x1AA3A0C0,CAN_ACTOR_HOGTIE_TARGET +0xB27E91E7,IS_ACTOR_PLAYER +0x6542CF26,IS_ACTOR_LOCAL_PLAYER +0xB114332D,GET_DEBUG_PADINDEX +0x524F6981,GET_PLAYER_PADINDEX +0xCF02D1D6,GET_PLAYER_PADINDEX_NO_ACTOR +0x8F82B7D4,SET_PLAYER_PADINDEX +0xC733BC9A,SET_ENABLE_NAV_STICK_INPUT +0xD17AFCD8,SET_PLAYER_CONTROL +0xBEEDDD54,SET_PLAYER_ENABLE_MOUNT_USE_CONTEXTS +0xEA08A934,SET_PLAYER_ALLOW_PICKUP +0xAC1285A3,SET_PLAYER_MELEE_MODE_SELECTED +0x959C27A,SET_PLAYER_DISABLE_TARGETING +0x9613C2D0,IS_PLAYER_CONTROLLABLE +0x6576AD43,IS_PLAYER_IN_COMBAT +0x48B7C279,IS_PLAYER_IN_COMBAT_WITHIN +0xCE7CE46D,SET_RETICLE_DRAW_DISABLED_BY_SCRIPT +0x4590CE00,SET_PLAYER_CONTROL_RUMBLE +0xB3BE2F95,RESET_RUMBLE +0x8421033D,GET_PLAYER_CONTROL_CONFIG +0x1B84BCA,SET_PLAYER_CONTROL_CONFIG +0x2E0EC2F2,PLAYER_RUMBLE +0x4B0D6152,SET_PLAYER_CURRENT_NOTORIETY +0x4D918005,SET_PLAYER_CURRENT_HONOR +0x57595189,SET_PLAYER_COMBATMODE +0x86E193B8,GET_PLAYER_COMBATMODE +0xAFFBBE78,SET_PLAYER_COMBATMODE_OVERRIDE +0x1184EC7B,SET_PLAYER_COMBATMODE_EXCLUSION +0xE1160B04,SET_PLAYER_VEHICLE_INPUT +0x900165CE,ADD_PLAYER_CONTROL_HORSE_FOLLOW +0xBFC8EF7C,REM_PLAYER_CONTROL_HORSE_FOLLOW +0x7C522386,CLEAR_PLAYER_CONTROL_HORSE_FOLLOW +0xE44DCE87,IS_PLAYER_IN_HORSE_FOLLOW +0xE8CFDD53,GET_PLAYER_ACTOR +0x40EF1003,IS_LOCAL_PLAYER +0xADC17E9,IS_LOCAL_PLAYER_VALID +0xD04480FE,IS_SLOT_VALID +0xDB9B49D8,GET_SLOT_ACTOR +0xAABF3356,GET_ACTOR_SLOT +0xAD68A22E,GET_LOCAL_SLOT +0x34CBABAE,GET_SLOT_NAME +0x3241158C,GET_SLOT_POSITION +0x34A9866B,GET_SLOT_FACING +0x87DDCA96,IS_PLAYER_TARGETTING_ACTOR +0x622796D5,IS_PLAYER_TARGETTING_OBJECT +0x6148423A,IS_PLAYER_DEADEYE +0xB6A47C37,SET_PLAYER_DEADEYE_MODE +0x1CFAF2EA,SET_FORCE_PLAYER_AIM_MODE +0xD0E08B5E,SET_PLAYER_ENDLESS_READYMODE +0xBC521A38,GET_PLAYER_ZOOM_STATE +0x724A2931,IS_PLAYER_USING_COVER +0x45F2A70A,ATTACH_PLAYER_TO_COVER +0xD77CC34,SIMULATE_PLAYER_INPUT_GAIT +0xEAE75C6F,ACTOR_POP_NEXT_GAIT +0x1ABFBFA3,ACTOR_SET_MAX_GAIT +0xD39C4A9E,IS_ACTOR_USING_COVER +0xEBBE1CAC,IS_ACTOR_USING_LEDGE +0x50D8C840,SET_PLAYER_DEADEYE_POINTS +0xE2C4AEE7,ADD_PLAYER_DEADEYE_POINTS +0x86B5C9E1,GET_PLAYER_DEADEYE_POINTS +0x9716951,SET_DISABLE_DEADEYE +0x486955B,SET_DEADEYE_POINT_MODIFIER +0x526D45B7,SET_MAX_DEADEYE_POINTS +0x4E6E5E78,SET_DEADEYE_MULTILOCK_ENABLE +0x5CD6E2C3,SET_DEADEYE_TARGETPAINT_ENABLE +0xA671FF8E,SET_DEADEYE_INVULNERABILITY +0xD583DAF,SET_DEADEYE_DAMAGE_SCALING +0x863F0193,SET_DEADEYE_TIME_LIMIT +0x415EE4C,SET_DEADEYE_REGENERATION_RATE +0x151741A2,SET_DEADEYE_REGENERATION_RATE_MULTIPLIER +0x5740CDC2,SET_DEADEYE_TIMESCALE +0xC0BC04E,SET_INFINITE_DEADEYE +0xFA8D2B69,SET_WAGON_TO_WAGON_JACK_ENABLE +0x3BD4426B,SET_PLAYER_POSTURE +0xC550644A,SET_ACTOR_ALLOW_DISMOUNT +0xE38EF526,SET_ACTOR_INVULNERABILITY +0xDB39D992,GET_ACTOR_INVULNERABILITY +0x2A575132,SET_TOUGH_ACTOR +0xD9A35F6,SET_ACTOR_UNKILLABLE +0xB4CD475D,SET_ACTOR_PERMANENT +0x731F2C21,SET_ACTOR_PERMANENT_DEAD +0xED89D0E0,SET_ACTOR_FROZEN_AFTER_CORPSIFY +0xF5B74E20,CLEAR_ACTOR_PROOF +0x9E7AE28B,CLEAR_ACTOR_PROOF_ALL +0x147EA072,GET_ACTOR_PROOF +0xA5875DC8,SET_ACTOR_PROOF +0xF2F77F44,SET_ACTOR_OVERHEALTH_MODE +0x437588E6,ACTOR_REPAIR_INCAPACITATION +0xEE4E2461,GET_ACTOR_INCAPACITATED +0x2D9C0C0F,SET_ALLOW_RIDE_BY_AI +0x318FF2A,GET_ALLOW_RIDE_BY_PLAYER +0xCF1A1BC5,SET_ALLOW_RIDE_BY_PLAYER +0xF83A8D2B,SET_ALLOW_RIDE +0x111E8E0,GET_ALLOW_RIDE +0x5D5BD1F0,SET_ALLOW_JACK +0x5896817B,SET_ALLOW_EXECUTE +0xA1BFC1A5,SET_ALLOW_DEADEYE_LOCKS +0x9375946B,SET_DEADEYE_LOCKS_ON_HEAD_ONLY +0x740B78A8,SET_ALLOW_MELEE_SPECIAL_MOVE +0x7A11D611,SET_ALLOW_LASSO_MINI_GAME +0x666B436,ACTOR_DISMOUNT_NOW +0xBFD6AE3D,IS_ACTOR_REACTING +0x6D322CD3,GET_ACTOR_UPDATE_PRIORITY +0x44C05EF6,SET_ACTOR_UPDATE_PRIORITY +0x5C7F63E3,ACTOR_FORCE_NEXT_UPDATE +0x87C49DBD,IS_ANY_ACTOR_IN_SPHERE +0xB42EBC65,SET_NPC_TO_NPC_CRIPPLE_DISABLE +0x135EA21D,SET_NPC_TO_NPC_DAMAGE_SCALE_FACTOR +0xA393AC4E,SET_PLAYER_TO_PLAYER_DAMAGE_SCALE_FACTOR +0x5CFE1E9,SET_NPC_TO_ACTOR_DAMAGE_SCALE_FACTOR +0x83903D1,SET_ACTOR_LOW_DROP_DAMAGE +0x1540A309,SET_ACTOR_MEDIUM_DROP_DAMAGE +0x7CC57FDA,SET_ACTOR_HIGH_DROP_DAMAGE +0x9F6B04C8,SET_ACTOR_DEATH_DROP_DISTANCE +0xDA0CDC91,SET_DAMAGE_SCALE_ENABLE +0x3AD31762,SET_CRIPPLE_ENABLE +0xA9A99DF,SET_CRIPPLE_FLAG +0x38C5F63F,IS_ACTOR_CRIPPLED +0xA5A24484,IS_ACTOR_HANDSUP +0xA4677DD2,SET_ALLOW_COLD_WEATHER_BREATH +0x1F0CD262,SET_DLC_FALLBACK_AVATAR +0x1D1D9387,SET_EMOTION +0xC0F77310,SET_ACTOR_STOP_UPDATE +0x4EFC58BC,GET_ACTOR_STOP_UPDATE +0x22558E3F,IS_ACTOR_IN_ROOM +0x398735FA,REGISTER_TRAFFIC_OBJECTSET +0x67FA18A1,REGISTER_TRAFFIC_ACTOR +0x1444F022,REGISTER_GPS_CURVE_OBJECTSET +0x4B90D22A,SET_PLAYER_TARGET_WEIGHT +0xF1779E65,RESET_PLAYER_TARGET_WEIGHT +0xA819497B,SET_HARDLOCK_TARGET_ANGLE_WEIGHTING +0x8BE2D8B0,SET_ZOMBIE_TARGET_MODE +0x91BB8548,SET_ACTOR_SKIP_VISIBILITY_CHECK +0x8AE58EE1,GET_ACTOR_SKIP_VISIBILITY_CHECK +0xDE0E96F3,FEED_CODE_WARP_DIST +0x911BA31,SET_ACTOR_STREAMING_HIGH_PRIORITY +0x9DFC82,CREATE_ACTORSET_IN_LAYOUT +0x76E8975E,IS_ACTORSET_VALID +0x5454B159,FIND_NAMED_ACTORSET +0x147A0BEE,DESTROY_ACTORSET +0x2739F04D,DISBAND_ACTORSET +0xE09DB6C1,ADD_ACTORSET_MEMBER +0xD637E449,REMOVE_ACTORSET_MEMBER +0xC6FE68DF,IS_ACTOR_IN_ACTORSET +0xC5202810,GET_ACTOR_FROM_ACTORSET +0xA24F4799,GET_ACTORSET_SIZE +0xE6644CE5,SET_DRAW_ACTOR +0x85A9CA6,GET_DRAW_ACTOR +0x5EFB415E,ANIMAL_SPECIES_FLOCK_AND_TUNING_CLEAR_ALL +0x1FD8BA91,ANIMAL_SPECIES_NEEDS_DOMESTICATION_LEVELS +0x11DCCDAA,ANIMAL_SPECIES_SET_SPECIAL_USE_GRINGO +0x6B6191EE,ANIMAL_SPECIES_SET_UNALERTED_BEHAVIOR +0x4DF576A7,ANIMAL_SPECIES_FLOCK_SET_ENABLED +0xBF12100D,ANIMAL_SPECIES_FLOCK_SET_PARAMETER +0x7C795382,ANIMAL_SPECIES_FLOCK_SET_BOOLEAN_PARAMETER +0x338D1CEC,ANIMAL_SPECIES_ADD_EXTERNAL_PATH_ATTRACTION +0xF2110753,ANIMAL_SPECIES_REMOVE_EXTERNAL_PATH_ATTRACTION +0x784C514C,ANIMAL_SPECIES_ADD_EXTERNAL_RANDOM_NOISE +0x4217D912,ANIMAL_SPECIES_ADD_EXTERNAL_REPULSION +0x9D8C2744,ANIMAL_SPECIES_ADD_EXTERNAL_INFLUENCE_FLOCK_REASONER +0x8020C45E,ANIMAL_SPECIES_TUNING_GET_ATTRIB_FLOAT +0x651ACCB1,ANIMAL_SPECIES_TUNING_SET_ATTRIB_BOOL +0x20AD711E,ANIMAL_SPECIES_TUNING_SET_ATTRIB_FLOAT +0x10CC05F1,ANIMAL_SPECIES_TUNING_MOVE_SET_ATTRIB +0xA6A4651B,ANIMAL_SPECIES_TUNING_SET_ATTACHMENT_WITH_OFFSET +0x168AAB9B,ANIMAL_SPECIES_TUNING_SET_ATTACHMENT_WITH_CHILDBONE +0xD05DDBB6,ANIMAL_SPECIES_TUNING_SET_HUNTING_PREY_PROP +0x96B26945,ANIMAL_SPECIES_TUNING_SET_ATTRIB_FLOAT_FROM_TIME +0xE228CC1A,ANIMAL_SPECIES_INIT_BEGIN +0xED6240F0,ANIMAL_SPECIES_INIT_REGISTER +0x760C27,ANIMAL_SPECIES_INIT_END +0xD4DDC119,ANIMAL_SPECIES_GRINGO_CLEAR_ALL +0xBFB65BE8,ANIMAL_SPECIES_GRINGO_LOAD_ALL +0x98073A48,ANIMAL_SPECIES_REL_CLEAR_ALL +0x1E02527F,ANIMAL_SPECIES_REL_SET_ATTACK_GRAB_ENABLED +0x84B474ED,ANIMAL_SPECIES_REL_SET_PREDATOR_AND_PREY +0x9D5C43C9,ANIMAL_SPECIES_REL_SET_THREAT +0xBF8B1BD7,ANIMAL_SPECIES_REL_SET_AVOID +0x3F747178,ANIMAL_SPECIES_REL_SET_PLAY_HUNT +0x586904BD,ANIMAL_SPECIES_REL_SET_PLAY_CHASE +0x70C48A1C,ANIMAL_SPECIES_REL_SET_PLAY_BEG +0x70DE500E,ANIMAL_SPECIES_REL_SET_PLAY_GROWL +0x6606A669,ANIMAL_SPECIES_REL_SET_PLAY_SNIFF +0x3C5700DC,ANIMAL_SPECIES_REL_GET_CAN_ATTACK +0xC8B4CD3F,ANIMAL_SPECIES_REL_SET_CAN_ATTACK +0x482DD4E,ANIMAL_SPECIES_REL_SET_CAN_WARN +0xB5A63B67,ANIMAL_SPECIES_REL_SET_EAT_GRINGO +0xCE23118D,ANIMAL_ACTOR_GET_DOMESTICATION +0x58C36502,ANIMAL_ACTOR_SET_DOMESTICATION +0x7D0E25DF,ANIMAL_ACTOR_GET_SPECIES +0x11150810,ANIMAL_TUNING_SET_ATTRIB_BOOL +0xE36EA080,ANIMAL_TUNING_SET_ATTRIB_FLOAT +0xABFCFF01,ANIMAL_ACTOR_SET_DOCILE +0xAAA8AF88,ANIMAL_ACTOR_GET_DOCILE +0x57DF8CD0,ANIMAL_ACTOR_GET_GRABBED_BY +0x13FA7128,COMBAT_CLASS_AI_CLEAR_ALL_ATTRIBS +0xE39B4D25,COMBAT_CLASS_AI_GET_ATTRIB_BOOL +0xAAD75024,COMBAT_CLASS_AI_GET_ATTRIB_FLOAT +0x983DB127,COMBAT_CLASS_AI_GET_RANGE_ACCURACY +0x69C5ADD2,COMBAT_CLASS_AI_SET_ATTRIB_BOOL +0x80D51606,COMBAT_CLASS_AI_SET_ATTRIB_FLOAT +0x6389CF4B,COMBAT_CLASS_AI_SET_FIGHT_ATTACK_DISTANCE +0xE20587E7,COMBAT_CLASS_AI_SET_FIGHT_DESIRED_DISTANCE +0xEF1436B,COMBAT_CLASS_AI_SET_FIGHT_TIME_BETWEEN_ATTACKS_MULTIPLIER +0x1EF0E419,COMBAT_CLASS_AI_SET_FIGHT_TIME_BETWEEN_ATTACKS +0xF1454677,COMBAT_CLASS_AI_SET_FRIENDLY_FIRE_CONSIDERATION +0x60B705A5,COMBAT_CLASS_AI_SET_RANGE_ACCURACY +0xC30DB881,COMBAT_CLASS_AI_SET_RANGE_BETWEEN_BURSTS_DELAY +0x8DE6AF29,COMBAT_CLASS_NAME_REGISTER_INT +0x629E2E88,COMBAT_CLASS_REQUEST_EXISTS +0xEDD5D43,COMBAT_CLASS_REQUEST_GET_ACTOR +0x76478D6E,COMBAT_CLASS_REQUEST_GET_ENUM_INT +0xE66AD206,COMBAT_CLASS_REQUEST_COMPLETED +0xAD3877AF,COMBAT_CLASS_SERVER_SET_SCRIPT +0x7F73E1E8,AI_COMBAT_SET_NEW_STATE_MACHINE_ENABLED +0x30402375,AI_CONVERSE_SET_GREETING_CONTEXT +0x7922F870,AI_CONVERSE_SET_GOSSIP_AMBIENT_CONTEXT +0x663723A0,AI_CONVERSE_SET_GOSSIP_REPLY_CONTEXT +0x93CFB180,AI_CONVERSE_SET_GOODBYE_START_CONTEXT +0xA1FCBA24,AI_CONVERSE_SET_GOODBYE_CONTEXT +0x7ED8B78C,AI_CONVERSE_INIT_CAMPFIRE_CONTEXT_STORAGE +0xD4871BDB,AI_CONVERSE_SET_CAMPFIRE_INVITE_CONTEXT +0xA88359B9,AI_CONVERSE_SET_CAMPFIRE_CONTEXT +0xAD42EABC,AI_CONVERSE_SET_CAMPFIRE_STORY_CONTEXT +0xC65F6751,AI_CONVERSE_SET_CAMPFIRE_STORY_DONE_CONTEXT +0x83CBD612,AI_CONVERSE_SET_CAMPFIRE_STORY_LEAVE_CONTEXT +0x4AD2BC30,AI_CONVERSE_SET_CAMPFIRE_RESPONSE_CONTEXT +0xC1F9A360,AI_SET_CAMPFIRE_STORY_ENABLED +0xFCD2DE48,AI_CONVERSE_SET_GIDDYUP_CONTEXT +0xB8F1D736,AI_CONVERSE_SET_WOAH_CONTEXT +0xEA86A817,AI_CONVERSE_DISABLE +0x43F59172,AI_CONVERSE_ENABLE +0x52D984AF,AI_CONVERSE_ADD_CAMPFIRE_CONVERSER +0x1D4786CF,AI_CONVERSE_REMOVE_CAMPFIRE_CONVERSER +0x375BBD85,AI_CONVERSE_SET_GREET_SAUCY_CONTEXT +0x4819FB7C,AI_CONVERSE_SET_SOLICIT_CONTEXT +0xC4F468AA,AI_CONVERSE_SET_REJECTION_CONTEXT +0xBD3A0E6D,AI_CONVERSE_SET_COY_REJECTION_CONTEXT +0xD6BBC8AA,AI_CONVERSE_SET_GREET_PLAYER_CONTEXT +0x8CD37E9E,MEMORY_CLEAR_EVENTS +0x4485B246,MEMORY_CLEAR_ALL +0xACD4084D,MEMORY_CONSIDER_ACCORDING_TO_FACTION +0x296C01A4,MEMORY_CONSIDER_AS +0x745A1BA3,MEMORY_CONSIDER_AS_ENEMY +0x810A7BA,MEMORY_GET_IS_IDENTIFIED +0x45CE40FD,MEMORY_GET_IS_VISIBLE +0xC407497F,MEMORY_GET_WAS_VISIBLE_WITHIN_TIME +0xBA09085C,MEMORY_IDENTIFY +0x52CC7CE,MEMORY_REPORT_POSITION +0x2F589CDF,MEMORY_REPORT_POSITION_AUTO +0x5B3D34F,MEMORY_GET_MUST_IDENTIFY +0x5A83A1EA,MEMORY_ATTACK_ON_SIGHT +0x48AA959E,MEMORY_CLEAR_RIDING_PREFERENCE +0x1B72B0DD,MEMORY_PREFER_RIDING +0x2F7B60A4,MEMORY_PREFER_WALKING +0x2F929ECD,MEMORY_PREFER_MELEE +0xC175F2B5,MEMORY_FORCE_MELEE +0x937E1760,MEMORY_ALLOW_SHOOTING +0xE944E5F8,MEMORY_ALLOW_TAKE_COVER +0xDBDB57D0,MEMORY_ALLOW_THROWING_EXPLOSIVES +0x5DD0AC4A,MEMORY_ALLOW_PICKUP_WEAPONS +0x9EB4C1,MEMORY_GET_WEAPON_DRAW_PREFERENCE +0xDD965D74,MEMORY_CLEAR_WEAPON_DRAW_PREFERENCE +0xF8CB6260,MEMORY_SET_WEAPON_DRAW_PREFERENCE +0x7E77DD6C,MEMORY_GET_POSITION_LAST_KNOWN_TIME +0x7EDD316C,MEMORY_EVERYBODY_FORGET_ABOUT +0xD1628C57,MEMORY_EVERYBODY_FORGET_ABOUT_EVERYTHING +0x52E865C,MEMORY_SHOULD_ALWAYS_PATHFIND_IN_FORMATION +0xAF94B7D9,AI_GLOBAL_CLEAR_ALL_DANGER +0xB6FCFFAA,AI_GLOBAL_CLEAR_DANGER +0xFF00B4E6,AI_GLOBAL_GET_PERMANENT_DANGER +0x5EC098F2,AI_GLOBAL_IS_DANGER +0x64C177FB,AI_GLOBAL_SET_PERMANENT_DANGER +0xCF70330C,AI_GLOBAL_REPORT_DANGER +0xB4621962,MEMORY_SET_UNARMED_RETREAT +0x4A69F264,AI_BEHAVIOR_SET_ALLOW +0x8F428EDF,AI_ACTION_IS_ACTIVE +0x671851D4,AI_GOAL_AIM_AT_COORD +0x3CD232B2,AI_GOAL_AIM_AT_OBJECT +0xD5100DC2,AI_GOAL_AIM_CLEAR +0x96928D25,AI_GOAL_LOOK_AT_ACTOR +0xB162690D,AI_GOAL_LOOK_AT_COORD +0x15B7044B,AI_GOAL_LOOK_AT_ACTOR_NEW +0x245D0CFD,AI_GOAL_LOOK_AT_COORD_NEW +0x8456676E,AI_GOAL_LOOK_AT_NEUTRAL +0x6AF3E54E,AI_GOAL_LOOK_CLEAR +0x10674B4F,AI_GOAL_SHOOT_AT_OBJECT +0x6C65E46E,AI_GOAL_SHOOT_AT_COORD +0xC43A9268,AI_GOAL_SHOOT_CLEAR +0xD9B27A9E,AI_GOAL_STAND_AT_COORD +0xEADB58EB,AI_GOAL_STAND_CLEAR +0x31D76951,AI_PREDICATE_FIND_NAMED +0x1FEECD4C,AI_PREDICATE_IS_VALID +0x1A137442,AI_PREDICATE_OVERRIDE_CLEAR +0x3CAC2441,AI_PREDICATE_OVERRIDE_CLEAR_ALL +0x1117C85A,AI_PREDICATE_OVERRIDE_SET_BOOL +0x8D1FC73C,AI_IGNORE_ACTOR +0x98790639,AI_STOP_IGNORING_ACTOR +0x4DF3C5D1,AI_STOP_IGNORING_ACTORS +0xB421AFCA,AI_DONT_HARM_ACTOR +0xA737CCAC,AI_CLEAR_DONT_HARM_ACTOR +0xBE17EB88,AI_SET_ALLOW_HOSTILE_ATTACK_AI +0xABC78721,AI_SET_ALLOW_HOSTILE_ATTACK_PLAYER +0x548541C1,AI_SHOOT_TARGET_CLEAR_OFFSET +0x39C69C4,AI_SHOOT_TARGET_SET_OFFSET +0x47C2C7B0,AI_SHOOT_TARGET_SET_BONE +0xA90A13A5,SET_FORCED_LOOK_ENABLE +0xF0511878,GET_FORCED_LOOK_ENABLE +0xE56D3FCE,FORCE_LOOK_AT_COORD +0x6C194C1F,STOP_FORCE_LOOK_AT_COORD +0xFE5715A1,FORCE_LOOK_AT_ACTOR +0xA29B9458,SET_AUTO_CONVERSATION_LOOK +0x1F07FC4C,AI_GOAL_LOOK_AT_PLAYER_WHEN_WITHIN +0x4DB11394,AI_GOAL_LOOK_AT_PLAYER_WHEN_WITHIN_CLEAR +0xFEB74094,CLEAR_ACTORS_HORSE +0x8DDE894F,GET_ACTORS_HORSE +0xCFFDF09D,SET_ACTORS_HORSE +0x8D3CDF9,IS_AI_ACTOR_IN_COMBAT +0x6718D199,IS_AI_ACTOR_PERFORMING_TASK +0xC4D114A6,IS_AI_ACTOR_UNALERTED +0x57F96655,AI_SET_RANGE_ACCURACY_MODIFIER +0x2444577C,AI_SET_DISARMED +0xAFB1CC55,AI_IMPAIRMENT_MASK_GET_CURRENT_FOR_ACTOR +0xB4A15D17,AI_IMPAIRMENT_MASK_MATCHES +0x70B409D5,AI_ACTOR_FORCE_SPEED +0x7387772C,AI_ACTOR_SET_MATCH_WALK_SPEED_ENABLED +0xD2BFA6E4,AI_SET_WEAPON_MAX_RANGE +0xE067A925,AI_SET_WEAPON_MIN_RANGE +0xDA005857,AI_SET_WEAPON_DESIRED_RANGE +0x85F2DF87,AI_SET_BURST_DURATION +0x9E164C44,AI_SET_BURST_DURATION_RANDOMNESS +0x5861CF4,AI_SET_FIRE_DELAY +0xC5873149,AI_SET_FIRE_DELAY_RANDOMNESS +0xE0172E2D,AI_SET_SHOTS_PER_BURST +0x1FD4402,AI_CLEAR_BURST_DURATION +0xCA8EE2A4,AI_CLEAR_BURST_DURATION_RANDOMNESS +0xD6886191,AI_CLEAR_FIRE_DELAY +0xE8511960,AI_CLEAR_FIRE_DELAY_RANDOMNESS +0x58A7B2A1,AI_CLEAR_SHOTS_PER_BURST +0x46F51754,AI_RESET_FIRING_FSM +0xEA2A40BC,AI_SET_GATLING_MAX_HORIZONTAL_DEGREES +0x9AB964F4,AI_IS_HOSTILE_OR_ENEMY +0x6FAF13C2,AI_QUICK_EXIT_GRINGO +0xC94F9499,AI_IS_AGGROING +0x7F07210F,AI_SET_ALLOWED_MOUNT_DIRECTIONS +0x68B268BE,AI_AVOID_IGNORE_ACTOR +0x1A96EFB9,AI_AVOID_CLEAR_IGNORE_ACTOR +0x2DBCB78A,IS_AI_ACTOR_ENGAGED_IN_COMBAT +0xF5752F72,WAS_AI_ACTOR_PLAYER_WEAPON_THREATENED_BY +0x2EBE540D,AI_SET_ALLOW_ATTACK_HOGTIED_ACTORS +0x2FABB559,AI_GET_IS_RETREATING +0x1530A3DE,AI_HAS_PLAYER_FIRED_GUN_WITHIN +0x59F64B8,AI_HAS_PLAYER_PROJECTILE_IMPACTED_WITHIN +0xD8574E09,AI_HAS_PLAYER_PROJECTILE_NEAR_MISSED_WITHIN +0xDCD2FC0F,AI_SET_PLAYER_PROJECTILE_IMPACT_HEAR_RANGE +0xA421F94,AI_DONT_SLOW_DOWN_TO_WALK_FOR_TURNS +0x6BCC744A,AI_HAS_ACTOR_BUMPED_INTO_ME +0x9493438,AI_WAS_PUSHED_OVER +0x7AF8AFDC,AI_WAS_PUSHED_OVER_BY +0x4AEE21F,AI_SELF_DEFENSE_GET_PLAYER_ATTACKED_FIRST +0x68C50F50,AI_SELF_DEFENSE_GET_ATTACKED_PLAYER_FIRST +0x480D5BD,AI_SELF_DEFENSE_SET_PLAYER_ATTACKED_FIRST +0x902C79A6,AI_SET_IGNORE_OPEN_AREA_MATERIAL +0x2FBBAD1,AI_GET_IGNORE_OPEN_AREA_MATERIAL +0x7193449E,AI_SET_ENABLE_REACTION_VO +0x9B742D25,AI_GET_TASK_RETREAT_FLAG +0x2E5F186B,PREVENT_DESPAWN_CLEAR +0x5C94F6EC,PREVENT_DESPAWN_SET_SPHERE +0x5D72FDB6,AI_HAS_ACTOR_THREATENED_RECENTLY +0x6B4A139,AI_REPLACE_ALL_TR +0x4D53AC21,AI_SET_TR_PROGRAM_FOR_ACTOR +0x6ADF2927,AI_CLEAR_NAV_MATERIAL_USAGE +0x660C85E5,AI_RESET_NAV_ACTOR_WIDTH +0x8404592D,AI_SET_NAV_ACTOR_WIDTH +0x5D752432,AI_SET_NAV_HAZARD_AVOIDANCE_ENABLED +0x7B00615F,AI_SET_NAV_MATERIAL_USAGE +0x4495F5FC,AI_SET_NAV_PATHFINDING_ENABLED +0x98966941,AI_SET_NAV_PATHFINDING_ENABLED_WHEN_DRIVING +0xF64D5452,AI_SET_NAV_MAX_SLOPE +0x29D07F70,AI_SET_NAV_MAX_WATER_DEPTH_LEVEL +0x5B483036,AI_SET_NAV_ACTOR_AVOIDANCE_MODE +0xFCB31704,AI_SET_NAV_ACTOR_AVOIDANCE_ALLOW_TURNS +0x7C13266C,AI_GET_NAV_ACTOR_AVOIDANCE_ALLOW_TURNS +0x750A1EF6,AI_RESET_NAV_SUBGRID_CELL_SIZE +0xFF3CEFE2,AI_SET_NAV_SUBGRID_CELL_SIZE +0xC900F0E8,AI_SET_NAV_FAILSAFE_MOVEMENT_ENABLED +0xD6F4FDAD,AI_GET_NAV_FAILSAFE_MOVEMENT_ENABLED +0xF1B3072D,AI_SET_NAV_UNALERTED_PREFER_PEDPATH +0xC84EF86B,AI_SET_NAV_ALLOW_TWEAK_DESIRED_MOVEMENT +0xBAA2BA4F,AI_GET_NAV_ALLOW_TWEAK_DESIRED_MOVEMENT +0xF435CCDE,AI_SWAP_NAV_DATA +0x5C580036,DISABLE_VERIFY_SS +0x66064774,AI_PERCEPTION_SET_VISUAL_ID_DISTANCE +0xD786E8C7,AI_PERCEPTION_SET_VISUAL_ID_TIME +0x8BBB7B12,AI_DISABLE_PERCEPTION +0xAF77C42E,AI_ENABLE_PERCEPTION +0x9DDFA9CA,AI_RIDING_SET_ATTRIBUTE +0xF8AFEFA1,AI_RIDING_SET_ENABLED +0xD269F20B,AI_SPEECH_ADD_PHRASE +0x15CFAB4C,AI_SPEECH_ADD_TAG_FOR_PHRASE +0xDD925074,AI_SPEECH_REGISTER_EVENT +0xA08B3E4B,AI_SPEECH_REGISTER_TAG +0xAB297CCB,AI_SPEECH_REGISTER_TAGS_BEGIN +0x90B577F5,AI_SPEECH_REGISTER_TAGS_END +0xFF0BF292,AI_SPEECH_GET_ALLOW_FOR_ACTOR +0x6AAB4CD0,AI_SPEECH_SET_ALLOW_CONTEXT_FOR_ACTOR +0x10DDB016,AI_SPEECH_SET_ALLOW_CONTEXT_GLOBAL +0x56421F1A,AI_SPEECH_SET_ALLOW_FOR_ACTOR +0x829F3E70,AI_SPEECH_SET_DEFAULT_PACKAGE +0xD8C8BEA1,AI_GET_ACTOR_CONVERSATION_TARGET +0x679C5955,AI_IS_ACTOR_SOCIALIZING +0xD85BAFA8,SPEECH_CONTEXT_INIT_DATA +0xEB99D1A9,SPEECH_CONTEXT_ADD_CHILD +0x386C556,SPEECH_CONTEXT_SET_TIME_RESTRICTION +0xF63FA0A1,SPEECH_CONTEXT_SET_OPPOSITE_GENDER_RESTRICTION +0xB59AD5B1,SPEECH_CONTEXT_SET_ETHNICITY_RESTRICTION +0x4F64116B,SPEECH_CONTEXT_SET_RESTRICTION_IS_LAW +0xBAD8B9A8,SPEECH_CONTEXT_SET_WEATHER_RESTRICTION_GOOD +0x6CBF76AB,SPEECH_CONTEXT_SET_WEATHER_RESTRICTION_RAINY +0xE0DD373F,SPEECH_CONTEXT_SET_TARGET_PLAYER +0x3C6FE75D,SPEECH_CONTEXT_SET_TARGET_INITIAL_FACTION +0x74E7F898,SPEECH_CONTEXT_SET_PLAYER_IDENTITY_RESTRICTION +0xA13D379B,SPEECH_CONTEXT_SET_ALLOW_PHRASE_REUSE +0x656D3D26,CAN_ANYONE_OF_FACTION_SEE_OBJECT +0xA8ADCAEB,ENABLE_AMBIENT_SPAWNING +0xB35C0660,SET_AMBIENT_FORCE_WAIT_STATE +0xE9C41DFE,SET_POP_DENSITY_MULTIPLIER +0xB09D5B43,DESTROY_AMBIENT_ACTORS_IF_POSSIBLE +0x5831679F,FORCE_AMBIENT_NUM_ACTORS_REQUESTED_FOR_MISSIONS +0x2CCEA76C,SET_AMBIENT_NUM_ACTORS_REQUESTED_FOR_MISSIONS +0xA607D290,GET_AMBIENT_NUM_ACTORS_GRANTED_FOR_MISSIONS +0xC1A30BB5,GET_AMBIENT_MAX_NUM_TOTAL_ACTORS +0x2C4CBC25,SET_AMBIENT_MAX_NUM_TOTAL_ACTORS +0x1C8CA53C,SET_AMBIENT_ACTOR_SPEED_SCALE_RANGE +0xE8960298,SET_AMBIENT_TUNING_MAX_VISIBLE_RANGE +0xC78B7436,CLEAR_AMBIENT_ALL_RESTRICTIONS +0x94DBC0C5,CLEAR_AMBIENT_MOVE_RESTRICTIONS +0xC738ED3E,CLEAR_AMBIENT_SPAWN_RESTRICTIONS +0xD1CF9793,ADD_AMBIENT_SPAWN_TYPE_RESTRICTION +0xA8BD64D1,CLEAR_AMBIENT_SPAWN_TYPE_RESTRICTION +0x6C7A3CE6,CLEAR_ALL_AMBIENT_SPAWN_TYPE_RESTRICTIONS +0x95D0FC79,SET_AMBIENT_STREAMING_REQUIRED_POP_ACTOR_SCALE +0xC519E3F3,SET_AMBIENT_ANIMALS_AGRESSIVENESS +0xEBE88626,ADD_AI_MOVE_RESTRICTION_STAY_OUTSIDE_OF_VOLUME_SET +0x1AED34CA,REMOVE_AI_MOVE_RESTRICTION_STAY_OUTSIDE_OF_VOLUME_SET +0xCF50D509,ADD_AMBIENT_MOVE_RESTRICTION_STAY_OUTSIDE_OF_VOLUME +0xD1C09A22,ADD_AMBIENT_SPAWN_RESTRICTION_STAY_OUTSIDE_OF_VOLUME +0x515AC319,REMOVE_AMBIENT_MOVE_RESTRICTION_STAY_OUTSIDE_OF_VOLUME +0xD65BAA71,REMOVE_AMBIENT_SPAWN_RESTRICTION_STAY_OUTSIDE_OF_VOLUME +0x21C59F4C,DOES_AMBIENT_MOVE_RESTRICTION_VOLUME_EXIST +0x2E15363,DOES_AMBIENT_SPAWN_RESTRICTION_VOLUME_EXIST +0xC8AD4A8C,RELEASE_ACTOR_AS_AMBIENT +0xD8BE8E0C,WOULD_ACTOR_BE_VISIBLE +0x515E17DC,DEBUG_GET_AMBIENT_BANK_DISABLE_SPAWN_NEW_ACTORS +0x8ED2B0BC,ACTIVATE_EMERGENCY_TELEPORT_FOR_ACTOR +0x8FD1D81,DEACTIVATE_EMERGENCY_TELEPORT_FOR_ACTOR +0x257C73C5,IS_POINT_IN_AMBIENT_MOVE_RESTRICTION_VOLUME +0xED3071A5,SET_ACTOR_OBEY_AMBIENT_MOVE_RESTRICTIONS +0xFF642652,DOES_ACTOR_OBEY_AMBIENT_MOVE_RESTRICTIONS +0x851F88F6,SET_AMBIENT_DEAD_COUNT_DECAY_RATE +0x2A3B1045,AMBIENCE_AUDIO_ENTITY_UPDATE_TERRITORY +0x27A96719,AMBIENCE_AUDIO_ENTITY_UPDATE_LOCATION +0xC0556FB8,AMBIENCE_AUDIO_VALIDATE_REGION +0xA8226DFF,AMBIENT_SET_UPDATES_ENABLED +0x831FC466,AMBIENT_SET_POINT_SPACING +0xCC9E6F4C,AMBIENT_SET_SLOPE_VALUES +0x7B07D449,AMBIENT_RESET_USED_CELLS +0x205E891C,AMBIENT_SET_SCAN_CENTER +0x8B011F5D,AMBIENT_SET_SCAN_CENTER_PLAYER +0x19B26C78,AMBIENT_RESET_FILTER +0xA337135A,AMBIENT_SET_RANDOM_SEARCH_ORDER +0x9A35520B,AMBIENT_SET_ONESHOT_QUERIES +0x272D756C,AMBIENT_SET_SEARCH_CENTER +0x9A2B05F4,AMBIENT_SET_SEARCH_CENTER_ACTOR +0x21E783AC,AMBIENT_SET_SEARCH_CENTER_PLAYER +0x391F3607,AMBIENT_SET_SLOPE_FILTER +0x2CCE1115,AMBIENT_ENABLE_SLOPE_FILTER +0x45190938,AMBIENT_SET_SLOPE_FILTER_PRECISE +0x561C9A6D,AMBIENT_ENABLE_SLOPE_FILTER_PRECISE +0x912EEC43,AMBIENT_SET_BUMP_FILTER +0x528C7F3D,AMBIENT_ENABLE_BUMP_FILTER +0xA89B77A7,AMBIENT_SET_DISTANCE_FILTER +0x762192EB,AMBIENT_ENABLE_DISTANCE_FILTER +0x1900A97E,AMBIENT_SET_ELEVATION_FILTER +0x609514AE,AMBIENT_SET_QUADRANT_FILTER +0xAA99E18E,AMBIENT_ENABLE_QUADRANT_FILTER +0x76341F1A,AMBIENT_ENABLE_OFFSCREEN_FILTER +0x309D058C,AMBIENT_ENABLE_MATERIAL_AT_POINT_FILTER +0xB1609063,AMBIENT_SET_MATERIAL_AT_POINT_FILTER +0x5A6418A2,AMBIENT_ENABLE_MATERIAL_IN_AREA_INCLUDES_FILTER +0x9CD2B55F,AMBIENT_SET_MATERIAL_IN_AREA_INCLUDES_FILTER +0x1F7F1B79,AMBIENT_ENABLE_MATERIAL_IN_AREA_EXCLUDES_FILTER +0xBCD4979C,AMBIENT_SET_MATERIAL_IN_AREA_EXCLUDES_FILTER +0xC8B149B4,AMBIENT_ENABLE_ELEVATION_DERIVATIVE_IN_AREA_FILTER +0x54BD1C65,AMBIENT_SET_ELEVATION_DERIVATIVE_IN_AREA_FILTER +0x90008899,AMBIENT_SET_EXCLUSION_VOLUME +0xC6EF9E1,AMBIENT_GET_POINT +0x8609F5E1,GET_ACTOR_ANIM_CURRENT_TIME +0x8626C1A0,SET_ACTOR_ANIM_CURRENT_TIME +0x1ADE21EB,IS_ACTOR_ANIM_PLAYING +0x6B54BABD,ACTOR_HAS_ANIM_LOADED +0x31F5F57D,ACTOR_HAS_ANIM_SET +0x3E30A514,SET_ANIMATION_OVERRIDE_SCALE +0x5941295A,SET_PANIM_PARAMS +0x94431F5A,SET_PANIM_PHASE +0xB03616C2,SET_ACTOR_ANIM_PHASE_LOCK +0xAEBAE989,RELEASE_ACTOR_ANIM_PHASE_LOCK +0xE0AC4B86,IS_ACTOR_ANIM_PHASE_LOCKED +0x76ECD5F1,SET_ACTOR_CUTSCENE_MODE +0x2988B3FC,REQUEST_ANIM_SET +0x4FFF397D,HAS_ANIM_SET_LOADED +0xD04A817A,REMOVE_ANIM_SET +0x39C1E1C0,SET_ANIM_SET_FOR_ACTOR +0x7A6C5C2F,RESET_ANIM_SET_FOR_ACTOR +0xB1B643E0,DLC_REPLACE_EXISTING_ANIM_SET +0xB3039DB7,REQUEST_ACTION_TREE +0xEEECD85E,HAS_ACTION_TREE_LOADED +0xBF4D0EFE,REMOVE_ACTION_TREE +0x5A795F3A,SET_ACTION_NODE_FOR_ACTOR +0xF90F737E,SET_REACT_NODE_FOR_ACTOR +0x7B17C5C3,RESET_REACT_NODE_FOR_ACTOR +0x7EC142B,RESET_ACTIONTREE_FOR_ACTOR +0xA192D09,SET_LINKED_ANIM_TARGET +0xA4E9E7EE,GET_LINKED_ANIM_TARGET +0xAC54E120,CLEAR_LINKED_ANIM_TARGET +0xCA9364C5,IS_ACTOR_PERFORMING_LINKED_ANIMATION +0x7B19DEC6,IS_ACTION_NODE_PLAYING +0x994F2BD1,IS_ACTION_NODE_PLAYING_PARTIAL +0x4E0300E2,IS_ACTOR_PLAYING_NODE_IN_TREE +0x5E84F53E,GET_CURR_ACTION_NODE_PLAY_TIME +0x4AD89F02,TOUGH_ARMOUR_GET_TUNING_REGENERATION_RATE +0x11542587,TOUGH_ARMOUR_SET_TUNING_HIT_DEDUCTION +0xDCB9C943,TOUGH_ARMOUR_SET_TUNING_PAD_ARMOUR +0xB3F5EE8C,TOUGH_ARMOUR_SET_TUNING_REGENERATION_RATE +0xBEF6031B,SET_ACTOR_CHARACTER_CLOTH_SCALED_PINNING +0xF349D0B6,SET_ACTOR_TO_SEAT +0x19BD222F,IS_OBJECT_ANIMATOR_VALID +0x856D5842,CREATE_OBJECT_ANIMATOR +0xD0A66B6,CREATE_OBJECT_ANIMATOR_ON_OBJECT +0x554CF528,IS_OBJECT_ANIMATOR_READY +0x5908F7FE,GET_OBJECT_ANIMATOR_ON_OBJECT +0xB9D7B63B,SET_OBJECT_ANIMATOR_NODE +0xC0128653,SET_OBJECT_ANIMATOR_PHASE +0xB4D9AFA,SET_OBJECT_ANIMATOR_RATE +0xC5205015,GET_OBJECT_ANIMATOR_PHASE +0x188B6431,SET_OBJECT_ANIMATOR_BONE_RANGE +0xB57D4110,SET_OBJECT_ANIMATOR_ANIMATION +0x46A69DAF,IS_OBJECT_ANIMATOR_ANIMATION_PLAYING +0x1E5A227A,DESTROY_OBJECT_ANIMATOR +0x4F10FD5B,GET_OBJECT_FROM_ANIMATOR +0xBEDB066C,LINK_OBJECT_ANIMATOR_TO_ACTOR +0x1CEA7FCE,NEW_SCRIPTED_CONVERSATION +0x96CD0513,ADD_LINE_TO_CONVERSATION +0xF1C40BCA,ADD_NEW_CONVERSATION_SPEAKER +0x4FAD0D8F,ADD_NEW_FRONTEND_CONVERSATION_SPEAKER +0xE5DE7D9D,START_SCRIPT_CONVERSATION +0xCB8FD96F,IS_SCRIPTED_CONVERSATION_ONGOING +0xE2C9C6F8,PAUSE_SCRIPTED_CONVERSATION +0x6CB24B56,RESTART_SCRIPTED_CONVERSATION +0xC842F0C9,ABORT_SCRIPTED_CONVERSATION +0x1CFC44F9,SET_MAX_SCRIPTED_CONVERSATION_DISTANCE +0xC1C29ABC,RESET_MAX_SCRIPTED_CONVERSATION_DISTANCE +0x713519AB,HAS_SCRIPTED_CONVERSATION_PLAYED_RECENTLY +0x66728EFE,UNREGISTER_SCRIPT_WITH_AUDIO +0x916E37CA,REQUEST_MISSION_AUDIO_BANK +0x4E92CC7A,MISSION_AUDIO_BANK_NO_LONGER_NEEDED +0x6DCC98E9,AMBIENT_AUDIO_BANK_NO_LONGER_NEEDED +0x6AE0AD56,GET_SOUND_ID +0x9C080899,RELEASE_SOUND_ID +0xE1D265FA,IS_SOUND_ID_VALID +0xB6E1917F,PLAY_SOUND +0x9DA2503,PLAY_SOUND_INIT_PARAMS +0x66763C4A,PLAY_SOUND_INIT_PARAMS_PERSISTENT +0x2E458F74,PLAY_SOUND_FRONTEND +0x49053A94,PLAY_SOUND_FRONTEND_INITPARAMS +0xB157BBB4,PLAY_SOUND_FRONTEND_PERSISTENT +0x5BC72D7,PLAY_SOUND_FROM_POSITION +0x19E5CF85,PLAY_SOUND_FROM_POSITION_INITPARAMS +0x5B05E3E0,PLAY_SOUND_FROM_POSITION_PERSISTENT +0x3375FB38,PLAY_WALLA_SOUND_FROM_POSITION_PERSISTENT +0x628832AD,PLAY_SOUND_FROM_ACTOR +0x4634B6BE,PLAY_WALLA_SOUND_FROM_ACTOR +0x6A515A49,PLAY_SOUND_FROM_OBJECT +0xBD0E8EBA,AUDIO_SET_VEHICLE_DAMAGED +0xCD7F4030,STOP_SOUND +0xE85AEC2E,HAS_SOUND_FINISHED +0x74CA8E22,AUDIO_ATTACH_MICROPHONE_TO_ACTOR +0x66FCA3F7,AUDIO_SET_MISSION_NAME_FOR_JOURNAL +0x14ED45FB,AUDIO_CLEAR_MISSION_NAME_FOR_JOURNAL +0x7D95325E,AUDIO_RESET_SPEECH_HISTORY +0x1BB84187,AUDIO_RESET_SCRIPTED_SPEECH_HISTORY +0x3DFD83DE,AUDIO_HAS_CONVERSATION_PLAYED_ALREADY +0xDD0320CB,AUDIO_CLEAR_CONVERSATION_HISTORY +0x31BAF169,SAY_SINGLE_LINE_CONTEXT +0xBA734A15,SAY_SINGLE_LINE_STRING +0x31E983D,SAY_SINGLE_LINE_STRING_WITH_REPLY +0x871084C,SAY_SINGLE_LINE_CONTEXT_OVER_PAIN +0x12D077CA,SAY_SINGLE_LINE_STRING_OVER_PAIN +0x91DE3A31,SAY_SINGLE_LINE_STRING_WITH_REPLY_OVER_PAIN +0xFDA41D54,SAY_SINGLE_LINE_STRING_THROUGH_BLOCKED_SPEECH +0x955E5EEB,SAY_SINGLE_LINE_STRING_WITH_BACKUPS +0x755382BC,SAY_SINGLE_LINE_SCRIPTED +0x84A909EC,SAY_SINGLE_LINE_STRING_BEAT +0x3F226995,SAY_SINGLE_LINE_STRING_SCRIPTED_INTERRUPT +0xC9D3A484,AUDIO_PLAY_VOCAL_EFFECT +0xE5F39107,AUDIO_PLAY_VOCAL_EFFECT_EVEN_IF_DEAD +0x123709E8,AUDIO_PLAY_PAIN +0xA7D08EE9,AUDIO_TRIGGER_PLAYER_KILLED_EVERYONE_SPEECH +0xC0E28BF0,TREAT_AMBIENT_SPEECH_AS_SCRIPTED +0xBD2EA1A1,SET_AMBIENT_VOICE_NAME +0x77402033,CLEAR_ALTERNATE_SPEECH_CONTEXT_FOR_PAIN +0x4DBD473B,CANCEL_CURRENTLY_PLAYING_AMBIENT_SPEECH +0x1972E8AA,IS_AMBIENT_SPEECH_PLAYING +0x2C653904,IS_SCRIPTED_SPEECH_PLAYING +0x2B74A6D6,IS_ANY_SPEECH_PLAYING +0x462B3A65,AUDIO_STOP_PAIN +0x96161235,AUDIO_PLAY_PLAYER_HOGTIE_LINE +0x3184B507,AUDIO_TRIGGER_PLAYER_LOOTING_MALE_SPEECH +0x489B3078,AUDIO_TRIGGER_PLAYER_LOOTING_FEMALE_SPEECH +0xAA565B11,AUDIO_TRIGGER_PLAYER_LOOTING_FEMALE_ZOMBIE_SPEECH +0x2CA089EC,AUDIO_TRIGGER_PLAYER_LOOTING_MALE_ZOMBIE_SPEECH +0x43C5F320,AUDIO_SHUT_OFF_WALLA +0xF7B747CA,AUDIO_TURN_ON_WALLA +0xF0D28043,SET_LOCAL_PLAYER_VOICE +0x33BD1A80,SET_LOCAL_PLAYER_PAIN_VOICE +0x1F7F405C,AUDIO_TURN_OFF_PAIN_VOCALS +0x2B1B76E8,AUDIO_TURN_ON_PAIN_VOCALS +0xE4D418D1,AUDIO_TURN_OFF_VOCALS_EFFECTS +0xAF6A3160,AUDIO_SET_PLAYER_MOOD +0x94A24A5C,AUDIO_ALLOW_PREDUEL_SPEECH +0xD021B37F,AUDIO_DISALLOW_PREDUEL_SPEECH +0xA343FDBB,AUDIO_CLEAR_PLAYER_DISABLED_CONTEXT_LIST +0xA4F209D5,AUDIO_ADD_TO_PLAYER_DISABLED_CONTEXT_LIST +0x45E20057,ADD_COMPANION_PERMANENT +0x15547025,AUDIO_ENABLE_PLAYER_TAUNTS +0xE0553D6B,AUDIO_INIT_CAUCASIAN_ARMY_AE_RANGE +0xD68E04BB,AUDIO_INIT_MEXICAN_ARMY_AE_RANGE +0x638EAF70,AUDIO_INIT_MISSION_CHARACTER_AE_RANGE +0xEA975A79,AUDIO_INIT_RCM_CHARACTER_AE_RANGE +0x6BB42C21,AUDIO_INIT_FAC_INVALID_VALUE +0xE634931,AUDIO_INIT_FAC_CATTLE_RUSTLER_VALUE +0x567712E5,AUDIO_INIT_FAC_DRUNKNDIRTY_VALUE +0xB888B369,AUDIO_INIT_FAC_GENERIC_CRIMINAL_VALUE +0x306D9FEE,AUDIO_INIT_FAC_INDIAN_LAW_ENFORCEMENT_VALUE +0xC3614E0A,AUDIO_INIT_FAC_INDIAN_RAIDER_VALUE +0xF962F2B8,AUDIO_INIT_FAC_LAW_ENFORCEMENT_VALUE +0x22D0DF9B,AUDIO_INIT_FAC_MEXICAN_BANDITO_VALUE +0xA234C5D0,AUDIO_INIT_FAC_MEXICAN_LAW_ENFORCEMENT_VALUE +0x733BA9F5,AUDIO_INIT_FAC_MEXICAN_REBEL_VALUE +0x79351E54,AUDIO_INIT_FAC_MEXICAN_SOLDIER_VALUE +0xCCBE7F0F,AUDIO_INIT_FAC_SMUGGLERS_VALUE +0x9D886C2F,AUDIO_INIT_ZOMBIE_BRUISER_AE_RANGE +0x39F5EF0F,AUDIO_INIT_ZOMBIE_FAST_AE_RANGE +0xD6CC6907,AUDIO_INIT_ZOMBIE_TOXIC_AE_RANGE +0x714D5D09,AUDIO_INIT_ZOMBIE_MP_PLAYER_AE_RANGE +0xBF959948,AUDIO_INIT_ZOMBIE_MP_FEMALE_VALUE +0x3C163FDD,AUDIO_INIT_FAC_ZOMBIE_VALUE +0xDC330FB9,AUDIO_SET_CURRENT_AREA_IS_UNDER_ZOMBIE_ATTACK +0x39EF8DA7,AUDIO_INIT_ZOMBIE_ZONE +0x79FD0F,AUDIO_INIT_ZOMBIE_PACK_INFO +0x67770F4B,AUDIO_INIT_NUN_AE_RANGE +0x8A6D03BE,AUDIO_SET_MAX_CREATURE_FOOTSTEP_UPDATES +0x90DD37E7,AUDIO_SET_GLOBAL_LAW_VALUES +0xFF92B49D,STOP_PED_SPEAKING +0xEB8A51C2,AUDIO_MISSION_INIT +0xD1FD31DE,AUDIO_MISSION_RELEASE +0xEB866555,AUDIO_PLAY_DISTANT_THUNDER +0xA2A356A7,AUDIO_MUSIC_FORCE_TRACK +0x6CEFA97A,AUDIO_MUSIC_FORCE_TRACK_HASH +0x2ACEE2ED,AUDIO_MUSIC_SCRIPT_LOOPING +0x85A35B18,AUDIO_MUSIC_SCRIPT_LOOPING_HASH +0x633B8905,AUDIO_MUSIC_SET_MOOD +0x714DA5BB,AUDIO_MUSIC_ONE_SHOT +0x7CC2738F,AUDIO_MUSIC_PLAY_PREPARED +0x704DBAC9,AUDIO_MUSIC_GET_RANDOM_TRACK_FROM_PLAYLIST +0xBF316157,AUDIO_MUSIC_IS_PREPARED +0x789C753C,AUDIO_MUSIC_SET_STATE +0xA3A2984E,AUDIO_MUSIC_RELEASE_CONTROL +0x56E3D235,AUDIO_MUSIC_SUSPEND +0x5F48A85B,AUDIO_MUSIC_RESUME +0x84435231,AUDIO_IS_MUSIC_PLAYING +0x86E995D1,AUDIO_IS_SCRIPTED_MUSIC_PLAYING +0x9EC502D6,AUDIO_IS_FRONTEND_MUSIC_PLAYING +0xE0DE16BD,AUDIO_MUSIC_SET_SUSPENSE_ALLOWED +0xE2A37056,AUDIO_MUSIC_PLAY_UNSCRIPTED_NOW +0x72168160,AUDIO_PLAY_ALL_LINES_FOR_ACTOR +0xB3C3FF5E,AUDIO_MG_START +0xEA2B35DB,AUDIO_MG_STOP +0xCCE435E,AUDIO_MG_FILLET_START +0x7784BB85,AUDIO_MG_FILLET_HIT_FINGER +0x24AE7AFB,AUDIO_MG_FILLET_HIT_TABLE +0xDE7C65CE,AUDIO_MG_FILLET_PULL_FROM_TABLE +0x338DF299,AUDIO_MG_FILLET_END +0x2D40E85C,AUDIO_ADD_ALTERNATE_CONTEXT +0x900C489A,AUDIO_CLEAR_ALL_ALTERNATE_CONTEXTS +0xE8FFE727,LOAD_AUDIO_METADATA +0xB73AC04A,UNLOAD_AUDIO_METADATA +0xBFCF32D9,LOAD_AUDIO_SPEECH_DATA +0x37FD00EA,SET_AUDIO_SEARCH_PATH +0x98CD7340,GET_AUDIO_BANK_LOADING_STATUS +0x8F4B5B8,LOAD_AUDIO_BANK +0x176E921C,MAKE_AUDIO_SLOT_STATIC +0x7715C03B,WAIT +0x1185F9B,WAITUNWARPED +0x7C496803,WAITUNPAUSED +0x3F166D0E,START_NEW_SCRIPT +0x4A2100E4,START_NEW_SCRIPT_WITH_ARGS +0x35785333,SETTIMERA +0x50597EE2,TIMESTEP +0xECF8EB5F,PRINTSTRING +0xD48B90B6,PRINTFLOAT +0x63651F03,PRINTINT +0x868997DA,PRINTNL +0x85F31FB,PRINTVECTOR +0x145C7701,SQRT +0x85D134F8,POW +0xE2313450,EXP +0x1FCF1ECD,VMAG +0x3C08ECB7,VDIST +0xC85DEF1F,VDIST2 +0x314CC6CD,SHIFT_LEFT +0x352633CA,SHIFT_RIGHT +0x32E9BE04,FLOOR +0xD536A1DF,CEIL +0x323B0E24,ROUND +0x67116627,TO_FLOAT +0x5A25520E,SNAPSHOT_GLOBALS +0x2B547FE6,GET_LATEST_CONSOLE_COMMAND +0xAA3EC981,RESET_LATEST_CONSOLE_COMMAND +0x9DE3DE24,GET_CONSOLE_COMMAND_TOKEN +0x608F5BC6,GET_NUM_CONSOLE_COMMAND_TOKENS +0x6B7677BF,GET_GAME_CAMERA +0xCE956B28,CAMERA_RESET +0x39E59CD8,SET_GAME_CAMERA_DRIFTZ +0x5E07BF3F,CAMERA_MANUAL_CUT +0x720F2CA7,CAMERA_PROBE +0xC783B9B9,END_GAME_CAMERA_ARC_TRANSITIONS +0xB071844,GET_GAME_CAMERA_RESET_POSITION +0x8EFDFE89,SET_CAMERA_FOLLOW_ACTOR +0x457A0510,SET_CAMERA_FOLLOW_ACTOR_EX +0x9B083FD2,GET_LOOKSTICK_INVERT_Y +0x63F900A,SET_LOOKSTICK_INVERT_Y +0x507BBD3A,SET_GAME_CAMERA_CURVE_OVERRIDE +0xC93116B1,RESET_GAME_CAMERA_CURVE_OVERRIDES +0x9737AF7,FORCE_VEHICLE_CINEMATIC_CAMERA +0x72960AE2,IS_VEHICLE_CINEMATIC_CAMERA_FORCED_ON +0x382C47C5,SET_GAME_CAMERA_VEHICLE_MODE +0x6E303287,ALLOW_GAME_CAMERA_AUTO_CENTERING +0xE13B49BD,GET_GAME_CAMERA_AUTO_CENTERING_STATE +0x9603D3B2,ALLOW_GAME_CAMERA_AUTO_TILTING +0x4062688A,GET_GAME_CAMERA_AUTO_TILTING_STATE +0x3AE77125,SET_GAME_CAMERA_FOCUS +0x87E40FB8,ENABLE_GAME_CAMERA_FOCUS +0x4FA19C01,DISABLE_GAME_CAMERA_FOCUS +0x5BD2295E,IS_GAME_CAMERA_FOCUS_ENABLED +0xF3623B64,SET_DEBUG_CAMERA_MODE +0xAE168124,IS_SWITCH_CAMERA_BUTTON_ENABLED +0x9F1F8669,SET_SWITCH_CAMERA_BUTTON_ENABLED +0xB1569C5,CREATE_CAMERA_IN_LAYOUT +0xBCC98808,GET_CURRENT_CAMERA_TYPE_FROM_CHANNEL +0x3EA55678,SET_CURRENT_CAMERA_ON_CHANNEL +0x423DB420,REMOVE_CAMERA_FROM_CHANNEL +0xE017E2F7,GET_CAMERA_CHANNEL_POSITION +0x6ED00237,GET_CAMERA_CHANNEL_DIRECTION +0x9A4CD54B,IS_CURRENT_CAMERA_CHANNEL_TRANSITIONING +0x2BD5362,IS_CAMERA_ACTIVE_ON_CHANNEL +0x2615309A,INIT_CAMERA_FROM_GAME_CAMERA +0x41EA7325,INIT_CAMERA_FROM_CHANNEL +0xB12CD8C,SET_CAMERA_POSITION +0x4A65F0B7,GET_CAMERA_POSITION +0xA8642E5E,SET_CAMERA_DIRECTION +0xBBD1078A,GET_CAMERA_DIRECTION +0x94A10ECD,GET_CAMERA_UP_VECTOR +0x57E3242D,SET_CAMERA_FOV +0x7B302F36,GET_CAMERA_FOV +0xFAEE2667,SET_CAMERA_ASPECT_RATIO +0xCE01609D,GET_CAMERA_ASPECT_RATIO +0x1D29E72A,SET_CAMERA_NEAR_CLIP_PLANE +0xD85EF521,SET_CAMERA_FAR_CLIP_PLANE +0x486F4461,SET_CAMERA_ORIENTATION +0x298BCCA5,SET_CAMERA_TARGET_POSITION +0xDBD1AE22,SET_CAMERA_TARGET_OBJECT +0xB8FAD252,SET_CAMERA_COLLISION_PARAMETERS +0x5BBFA4D7,ADD_CAMERA_COLLISION_EXCLUSION +0x781D5599,REMOVE_CAMERA_COLLISION_EXCLUSION +0x313A4E61,RESET_CAMERA_TARGET +0x7DA71AA7,SET_CAMERA_COLLISION_ENABLED +0x3010BBC2,SET_CAMERA_TARGETDOF_FOCAL_LENGTH +0x7F1C5102,SET_CAMERA_TARGETDOF_USING_SOFT_DOF +0x4643D2C7,RESET_CAMERA_TARGETDOF +0x7C864F17,SET_CAMERA_LIGHTING_SCHEME +0xE55B5ADB,CAMERA_GET_CURRENT_TRANSITION_TYPE +0x965A4652,CAMERA_IS_VISIBLE_OBJECT +0xBB6FDF5F,CAMERA_IS_VISIBLE_ACTOR +0xA97770FE,CAMERA_IS_VISIBLE_POINT +0xA161768C,CAMERA_IS_VISIBLE_VOLUME +0x54A417F3,CREATE_CAMERASHOT_IN_LAYOUT +0x99314873,INIT_CAMERASHOT_FROM_GAME_CAMERA +0xF5CA55D4,FORCE_CAMERASHOT_UPDATE +0xEA022F5,SET_CAMERASHOT_POSITION +0x4D05D470,GET_CAMERASHOT_POSITION +0x21B099AB,SET_CAMERASHOT_DIRECTION +0x4670416D,GET_CAMERASHOT_DIRECTION +0x83F3336B,GET_CAMERASHOT_UP_VECTOR +0x7597BC24,GET_CAMERASHOT_X_VECTOR +0x635E5494,SET_CAMERASHOT_FOV +0xEAD6167D,GET_CAMERASHOT_FOV +0x3DEB0933,SET_CAMERASHOT_ASPECT_RATIO +0x4387CDAB,SET_CAMERASHOT_NEAR_CLIP_PLANE +0x6BA86494,SET_CAMERASHOT_FAR_CLIP_PLANE +0xD86CB952,GET_CAMERASHOT_FAR_CLIP_PLANE +0x4FD679BD,SET_CAMERASHOT_ORIENTATION +0xD6EC5D5,SET_CAMERASHOT_TARGET_POSITION +0x3F719473,SET_CAMERASHOT_TARGET_OBJECT +0x839E9502,SET_CAMERASHOT_TARGET_OBJECT_OFFSETS +0x8014323A,SET_CAMERASHOT_TARGET_OBJECT_ROLL +0x4E6DDD27,SET_CAMERASHOT_TARGET_OBJECT_BONE +0x6F483443,SET_CAMERASHOT_FROM_LENS +0xB6BDCF62,SET_CAMERASHOT_TARGETDOF_OBJECT +0x87B8DCE,SET_CAMERASHOT_TARGETDOF_TARGET_OFFSET +0xEF0AB304,SET_CAMERASHOT_TARGETDOF_FIXED_DISTANCE +0xAD50615,SET_CAMERASHOT_TARGETDOF_FOCAL_LENGTH +0xEB9E1CB9,SET_CAMERASHOT_TARGETDOF_CUTOFF_DISTANCE +0x74168B5F,SET_CAMERASHOT_TARGETDOF_SMOOTHING +0x370451C,SET_CAMERASHOT_TARGETDOF_USING_SOFT_DOF +0x243CF01F,SET_CAMERASHOT_TARGETDOF_FILTERTYPE +0x9E618676,SET_CAMERASHOT_TARGETDOF_FSTOP +0x42327DAC,RESET_CAMERASHOT_TARGETDOF +0xF70817E0,SET_CAMERASHOT_COLLISION_PARAMETERS +0x58A0BFBF,ADD_CAMERASHOT_COLLISION_EXCLUSION +0xCD28C63F,ADD_CAMERASHOT_COLLISION_BOUNDFLAG +0xC3DDCE4D,RESET_CAMERASHOT_TARGET +0xD8D27321,SET_CAMERASHOT_PERSPECTIVE +0x229585E,SET_CAMERASHOT_CONTROL_SEQUENCE_VEC3 +0x8F5BC02D,ADD_CAMERA_SHOT_TRANSITION_HOLD +0xBF9B4FC6,ADD_CAMERA_SHOT_TRANSITION_INDEFINITE +0x6D72797D,ADD_CAMERA_SHOT_TRANSITION_EASE_OUT +0x6E10E587,ADD_CAMERA_SHOT_TRANSITION_EASE_IN_OUT +0x143A617C,SET_FIXED_TRANSITION_T +0x22A746E1,SET_TRANSITION_COLLISION_PARAMS +0x7AC13DF5,GET_CAMERA_SHOT_TRANSITION +0xDDB64AA9,IS_PROCESSING_CAMERA_SHOT_TRANSITION +0x1C1F583,END_CURRENT_CAMERA_SHOT_TRANSITION +0x3A07F60F,SET_CAMERASHOT_COLLISION_ENABLED +0x39D1CC17,SET_CUTSCENE_STREAMING_LOAD_SCENE +0x41514AA0,ATTACH_CAMERASHOT +0x59BBAA8,DETACH_CAMERASHOT +0xCBA91134,CAMERASHOT_IS_VISIBLE_ACTOR +0xA1C665E0,CAMERASHOT_ADD_ARC_BEHAVIOR +0x59AE458A,CAMERASHOT_ADD_LOOKSTICK_ROTATION_BEHAVIOR +0xDA50B18B,CREATE_AIMRAMP_IN_LAYOUT +0x86066A65,UPDATE_AIMRAMP +0xA923A22D,CREATE_CUTSCENEOBJECT_IN_LAYOUT +0xFDBE95AE,GET_CAMERA_FROM_CUTSCENEOBJECT +0xFB28AE8D,PLAY_CUTSCENEOBJECT +0x7E9CC966,GET_CAMERASHOT_FROM_CUTSCENEOBJECT +0xC0CD3C96,CUTSCENEOBJECT_ADD_TRANSITION_HOLD +0xFC676413,CUTSCENEOBJECT_ADD_TRANSITION_LERP +0xCC61CC5F,CUTSCENEOBJECT_ADD_TRANSITION_EASE_IN +0x1AD38A53,CUTSCENEOBJECT_ADD_TRANSITION_EASE_OUT +0xDB07C72B,CUTSCENEOBJECT_ADD_TRANSITION_EASE_IN_OUT +0x94B288F9,CUTSCENEOBJECT_ADD_TRANSITION_INDEFINITE +0xA9AB9A06,CUTSCENEOBJECT_ADD_TRANSITION_DECORATOR +0x7A48EDDF,CUTSCENEOBJECT_ADD_TRANSITION_FIXED +0xA776763,CUTSCENEOBJECT_GET_CURRENT_TRANSITION_TYPE +0xBE3F0168,END_CURRENT_TRANSITION_FROM_CUTSCENEOBJECT +0x18643DC2,SET_CUTSCENEOBJECT_PAUSED +0xD5C66699,IS_CUTSCENEOBJECT_PAUSED +0xE147BA8E,CHECK_CUTSCENE_COLLISIONS +0x3D26D852,GET_CUTSCENEOBJECT_SEQUENCE +0xDCD3A7DE,CUTSCENEOBJECT_SET_RECENTER_GAMECAM +0xF74B5ADE,SET_CUTSCENEINPUTS_TARGET_GUID +0x25A58402,ADD_CAMERATRANSITION_EVENT_HUDFADEIN +0x269F5C75,ADD_CAMERATRANSITION_EVENT_HUDFADEOUT +0x699332B0,ADD_CAMERATRANSITION_EVENT_GAMECAMERARESET +0x3A8487A6,ADD_CAMERATRANSITION_EVENT_GAMECAMERARESETTILT +0x8D7070F3,ADD_CAMERATRANSITION_EVENT_CUTGAMECAMERABEHINDPLAYER +0xE7A1C191,CANCEL_CUTSCENE_TUNER_PLAYBACK +0x93050734,GET_CUTSCENE_TUNER_CUTSCENEOBJECT +0x74EE96B8,GET_CUTSCENE_TUNER_SCRIPT_NAME +0xD8218A5B,GET_CUTSCENE_TUNER_CUTSCENE_INDEX +0x6AD6A400,CREATE_CAMERA_FOCUS_POINT +0x76876FEA,CREATE_CAMERA_FOCUS_POINT_OBJECT +0x7A6146DB,CREATE_CAMERA_FOCUS_POINT_OBJECT_WITH_TUNING +0xCA8CC5CE,IS_CAMERA_FOCUS_ACTIVE +0x78D29E49,SET_CAMERA_FOCUS_ENABLED +0x80D63DAC,IS_CAMERA_FOCUS_ENABLED +0x2148298D,SET_CAMERA_FOCUS_PROMPT_ENABLED +0x52B9A693,IS_CAMERA_FOCUS_PROMPT_ENABLED +0x6FDE0A8C,SET_CAMERA_FOCUS_PLAYER_INPUT_DISABLED +0x4A3AE626,SET_CAMERA_FOCUS_PLAYER_INVULNERABLE +0x21633E5F,SET_CAMERA_FOCUS_PROMPT_TEXT +0x48C3D85A,SET_CAMERA_FOCUS_OBJECT +0x505A8057,SET_DEBUG_DRAW +0xFF0B53EF,GET_DEBUG_DRAW_STATE +0xA81DABA3,SCRIPT_BREAKPOINT +0x5AC72FCC,GRINGO_DEBUG_CHECK_SOUND +0x9FEFA743,DISABLE_ACTOR_REFCOUNTING +0xBC52445,GET_SCRIPT_NAME +0x960DB7A5,GET_SHORT_SCRIPT_NAME +0x245B6AB6,TERMINATE_THIS_SCRIPT +0x9C424E0D,GET_THIS_SCRIPT_ID +0x45F7D589,IS_SCRIPT_VALID +0xDEAB87AB,DOES_SCRIPT_EXIST +0x687ECC3C,IS_EXITFLAG_SET +0x60A7FF09,TERMINATE_SCRIPT +0x2F109475,ADD_PERSISTENT_SCRIPT +0xC605E92F,REMOVE_PERSISTENT_SCRIPT +0xC0C6245E,RAND_SET_SEED +0xF8D0D165,RAND_INT_RANGE +0xCA6229BF,RAND_FLOAT_RANGE +0x1D69F321,RAND_INT_RANGE_DIFFERENT +0x5D934CCB,RAND_FLOAT_GAUSSIAN +0x973BC454,FILE_START_PATH +0x63CDBB01,FILE_ADD_TO_PATH +0x9A202E1B,FILE_END_PATH +0x6F323C5F,FILE_GET_CURRENT_PATH +0x436CE75A,GET_X +0xB0FF6A1,GET_Y +0x25A02BC1,GET_Z +0x836466F8,VNORMALIZE +0x4D629653,VCROSS +0x30A9FA0A,VDOT +0x13530581,VSCALE +0x1BD78730,ROTATE_VECTOR_XZ +0xACF9A5E4,FABS +0x5AABFA97,ABS +0x55842354,SIN_DEGREE +0x430207A4,COS_DEGREE +0x9BD37A3D,TAN_DEGREE +0x69BE2817,ATAN_DEGREE +0x8A0D25F2,ATAN2_DEGREE +0x3DD1DC3F,GET_ANGLE_BETWEEN_VECTORS_DEGS +0x5842B9D1,GET_CURRENT_GAME_TIME +0xF83666A6,GET_CURRENT_UNWARPED_TIME +0x17CEE67A,GET_SYSTEM_TIME +0xD66B6C8E,GET_TIMESTAMP +0xC589CD7D,GET_UTC_TIME +0x49F96787,GET_UNWARPED_REALTIME_SECONDS +0x6E189771,GET_PROFILE_TIME +0x59466B4D,GET_LAST_FRAME_TIME +0x676167C3,LOG_MESSAGE +0xFD25473E,LOG_WARNING +0x906C42FD,LOG_ERROR +0xEF7427B,GET_TARGET_ACTOR +0x776356,GRINGO_SET_TARGET_OBJECT +0x533AD3F2,GET_TARGET_OBJECT +0x7C858A47,IS_GRINGO_VALID +0xADA2EA30,GET_GRINGO_ACTIVATION_SPHERE +0xFD0AA999,DISABLE_GRINGO_STREAMING_CHECKS +0x71BE51F4,ENABLE_GRINGO_STREAMING_CHECKS +0x5E586923,GRINGO_ALLOW_ACTIVATION +0x52261CE0,GRINGO_IS_ACTIVATION_ALLOWED +0x358F874F,IS_DEBUGKEY_DOWN +0xCBC97619,IS_DEBUGKEY_PRESSED +0xC3297B50,IS_BUTTON_DOWN +0x7BCB3F15,IS_BUTTON_PRESSED +0xB04EB731,IS_BUTTON_RELEASED +0x23C9C74A,GET_ANALOG_BUTTON_VALUE +0xC1F9AC6B,GET_ANALOGUE_ACTION +0x9AAF7E28,GET_STICK_X +0x7C6D41A4,GET_STICK_Y +0x52B2F3F0,RESET_TIME_SINCE_LAST_INPUT +0xD4DEBC08,GET_TIME_SINCE_LAST_INPUT +0xBEC2871A,GET_TIME_SINCE_LAST_MOVESTICK_INPUT +0xEF4F4F20,GET_TIME_SINCE_LAST_BUTTON_INPUT +0x5598C970,IS_RIGHT_MOUSE_DOWN +0xDC4B85A8,IS_RIGHT_MOUSE_PRESSED +0xB59B352A,IS_RIGHT_MOUSE_RELEASED +0x5AC5CE22,IS_LEFT_MOUSE_DOWN +0x7D4535A1,IS_LEFT_MOUSE_PRESSED +0x55ADBA8B,GET_MOUSE_AXIS_X +0x455A19E4,GET_MOUSE_AXIS_Y +0x5FE80264,GET_MOUSE_SENSITIVITY +0xF7974EBA,DEBUG_DRAW_VECTOR +0x7C55C775,DEBUG_DRAW_LINE +0x4A1BAD30,DEBUG_DRAW_SPHERE +0x993E45D8,DEBUG_DRAW_STRING +0x3C2D93C1,DRAW_STRING_CURRENT_FONT +0x73BE57AF,SET_DEBUG_FADE_STATE +0x48FBB83D,RETRIEVE_GAME_STATE +0x800D6D89,STORE_GAME_STATE +0xE1124E00,RESET_STORED_DATA +0x7045C4E,RESET_GAME +0x3B1B6407,IS_GAME_RESETTING +0xB2D5E4B,GET_DISTRICTS_NAME +0x7C5901EF,LOAD_GAME +0x234F932,LOAD_SOFT_SAVE +0x9C5D8D5,SAVE_GAME +0x1A3BAC68,SAVE_SOFT_SAVE +0xED40F27D,SAVE_MANAGER_HARD_SAVE +0x8C710D3E,SAVE_MANAGER_HARD_LOAD +0x17F34613,SAVE_MANAGER_CREATE_SAVE_DISPLAY_NAME +0x20CE8AA8,SAVE_MANAGER_REGISTER_DATA +0x8E867DDD,SAVE_MANAGER_SET_SAVE_VERSION +0x6E79F939,SAVE_MANAGER_SET_SAVE_VERSION_FOR_TYPE +0x3E647734,SAVE_MANAGER_CREATE_SAVE_FILE +0xE8637D2B,SAVE_MANAGER_REGISTER_STATS +0x6D59A25F,SAVE_MANAGER_REGISTER_PROFILE_STATS +0x1D177160,SAVE_MANAGER_IS_SAVING_DISABLED +0x1ADA1769,SAVE_MANAGER_IS_SP_SAVING_DISABLED +0xAABE1330,DOES_FILE_EXIST +0xD44F7102,WRITE_TO_FILE +0x6D9AA768,IS_DEV_BUILD +0xA369B36F,IS_PS3 +0x99989FCD,IS_PS4 +0x92E03425,IS_SWITCH +0x16C54BC5,IS_PC +0x4BA92498,IS_DISK_CACHE_PRIMED +0xFDDB1BFA,GET_LAST_MOUSE_MOVEMENT +0xC3C0F1F2,IS_PLAYER_SIGNED_IN +0xA183D927,GET_LOCAL_PLAYER_NAME +0x8BD88B43,GET_NUM_WORLD_CAMERAS +0x1C7C0F86,GET_WORLD_CAMERA_AT_INDEX +0x836F42DA,GET_CLOSEST_WORLD_CAMERA +0x6F32A4E2,PAUSE_GAME +0xBF2CD82,UNPAUSE_GAME +0x57246C02,IS_GAME_PAUSED +0xF0DDF83D,SET_SCRIPT_CUTSCENE_ACTIVE +0x81A7CDB6,SET_TREE_COST_MODIFIER +0x2A04518E,SET_USES_QUAD_IK_FIX +0x4FC61E5F,SET_VISIBILITY_FOV_CLAMP +0x3B417D4E,SET_MISSION_INFO +0x2092A6E,CLEAR_MISSION_INFO +0x6CD7DCE1,GET_COMMANDLINE_START_POS +0xCB93120,SET_START_POS +0x814D97E8,IS_STARTPOS_IN_COMMANDLINE +0x5401F0CA,SCRIPT_DONE_LOADING +0x85A30503,LAUNCH_NEW_SCRIPT +0xA602F586,LAUNCH_NEW_SCRIPT_WITH_ARGS +0x7CE2C2E1,IS_LAUNCH_RETAIL +0xD8E31D42,IS_SIMULATE_START_PRESS +0x9A73C2CD,IS_SIMULATE_START_MULTIPLAYER +0xD90DB78D,IS_D11_CUTSCENE_HACK +0x554FC5E0,IS_DISPLAY_WIDESCREEN +0x6226328F,GET_EXP_MODE_PROMPT_STATE +0x59F98CA9,SET_EXP_MODE_PROMPT_STATE +0xB5401D4A,GET_GAME_EDITION +0x50AE988A,FIND_NEAREST_COVER_LOCATION +0x9265B24B,FIND_COVER_LOCATIONS_IN_VOLUME +0x8DFF31DF,GET_COVER_LOCATION_BASE_POSITION +0x620178B3,GET_COVER_LOCATION_DIRECTION +0xA7F84C2F,GET_COVER_LOCATION_POSITION +0x90AD2C2D,IS_COVER_LOCATION_VALID +0x6BA6BC9B,ADD_AI_COVERSET_FOR_PROPSET +0xC46DAB3,ENABLE_CURVE +0xA5FF6076,ARE_CURVES_IN_RANGE +0xE018669,START_CURVE_QUERY +0x8C37CA1A,GET_CURVE_BY_NAME +0x9398BE8F,IS_CURVE_QUERY_VALID +0x8E551A7C,GET_NUM_POINTS_IN_CURVE_QUERY +0xBADCF1E9,GET_NUM_CURVES_IN_CURVE_QUERY +0xE531DCAE,GET_POINT_FROM_CURVE_QUERY +0xB4D1D8A3,GET_CURVE_FROM_CURVE_INDEX_IN_CURVE_QUERY +0xBD4E48A6,GET_CURVE_FROM_POINT_INDEX_IN_CURVE_QUERY +0x90B514B9,GET_CLOSEST_POINT_TO_CURVE_CURVE_QUERY +0x4F8FAF8F,REMOVE_CURVE_FROM_CURVE_QUERY_USING_CURVE +0x39DA0B3A,CURVE_CALCULATE_DISTANCE_BY_STEP_SIZE +0x49D2C1DA,CURVE_CALCULATE_DISTANCE_BY_FORCED_COMPONENT_SUBDIVISION_BOUNDS +0x8270CE81,RELEASE_CURVE +0xE1007398,GET_CURVE_TYPE +0x9A933060,GET_CURVE_NAME +0x1CDF1EC4,GET_CURVE_POINT +0x74460602,SET_CURVE_ACTIVE +0xA7BB9E5E,SET_CURVE_WEIGHT +0xF0441E47,CURVE_NETWORK_POINT_GET_DISTANT_POINT +0xD89902F1,CUTSCENE_MANAGER_DOES_CUTSCENE_EXIST +0x99D215B4,CUTSCENE_MANAGER_LOAD_CUTFILE +0xA6CFA220,CUTSCENE_MANAGER_IS_CUTFILE_LOADED +0xFE90DCB,CUTSCENE_MANAGER_GET_LOADED_CUTFILE +0x7716B12B,CUTSCENE_MANAGER_RESUME_LOADING +0xFD300D15,CUTSCENE_MANAGER_LOAD_CUTSCENE +0xEDF1D0B4,CUTSCENE_MANAGER_IS_CUTSCENE_LOADED +0xE7F781B8,CUTSCENE_MANAGER_UNLOAD_CUTSCENE +0x98A9AC9E,CUTSCENE_MANAGER_PLAY_CUTSCENE +0x9E6CAD1D,CUTSCENE_MANAGER_STOP_CUTSCENE +0xA61FA36B,CUTSCENE_MANAGER_IS_CUTSCENE_PLAYING +0xDE339CE1,CUTSCENE_MANAGER_IS_CUTSCENE_FINISHED +0x82F80FEA,CUTSCENE_MANAGER_SET_TRANSITION_FROM_GAMECAMERA +0xCBE7BE6A,CUTSCENE_MANAGER_SET_TRANSITION_TO_GAMECAMERA +0x9E6A776F,CUTSCENE_MANAGER_RESET_GAMECAMERA_ON_EXIT +0x47FAE768,CUTSCENE_MANAGER_ORIENT_GAMECAMERA_ON_EXIT +0x93F356F4,CUTSCENE_MANAGER_SKIP_UI_STACK_POP +0xE808BFFB,CUTSCENE_MANAGER_SET_SKIP_UI_STACK_POP +0xE0BE8235,CUTSCENE_MANAGER_SET_HIDE_NONCUTSCENE_ACTORS +0x7653788C,CUTSCENE_MANAGER_CAN_SET_POST_CUTSCENE_POSES +0x98D0F458,CUTSCENE_MANAGER_CLEAR_CAN_SET_POST_CUTSCENE_POSES +0xAC5043C5,CUTSCENE_MANAGER_GET_CURRENT_TIME +0x7263860F,CUTSCENE_MANAGER_GET_CURRENT_FRAME +0x2DB208A1,CUTSCENE_MANAGER_GET_TOTAL_FRAMES +0x1501F924,CUTSCENE_MANAGER_ENUMERATE_CUTXML_NAMES +0xC677BF51,CUTSCENE_MANAGER_GET_NUM_CUTXML_NAMES +0xC2B5BDDF,CUTSCENE_MANAGER_GET_CUTXML_NAME +0xA5691922,CUTSCENE_MANAGER_GET_NUM_CUTSCENE_ACTORS +0xC6557710,CUTSCENE_MANAGER_GET_CUTSCENE_ACTOR_NAME +0xED0BA189,CUTSCENE_MANAGER_GET_CUTSCENE_ACTOR +0xEA8E6112,CUTSCENE_MANAGER_GET_CUTSCENE_ACTORENUM +0xB2F2A7F2,CUTSCENE_MANAGER_GET_CUTSCENE_ACTOR_BY_INDEX_START_ORIENT +0x9410D992,CUTSCENE_MANAGER_GET_CUTSCENE_ACTOR_BY_INDEX_END_ORIENT +0xD9E4A8DA,CUTSCENE_MANAGER_GET_NUM_CUTSCENE_PROPS +0xEBAB5F62,CUTSCENE_MANAGER_GET_CUTSCENE_PROP_NAME +0x5DB05BBC,CUTSCENE_MANAGER_GET_CUTSCENE_PROP +0x3BDB2ADF,CUTSCENE_MANAGER_GET_CUTSCENE_PROP_BY_NAME +0x79C748BE,CUTSCENE_MANAGER_GET_CUTSCENE_PROP_BY_INDEX_START_ORIENT +0xA56DCCF2,CUTSCENE_MANAGER_GET_CUTSCENE_PROP_BY_INDEX_END_ORIENT +0x3D014AB1,CUTSCENE_MANAGER_HIDE_ACTOR +0xB550D120,CUTSCENE_MANAGER_SHOW_ACTOR +0xD79C7D6A,CUTSCENE_MANAGER_GET_INITIAL_STREAMING_LOAD_SCENE_EXT +0x5C553565,CUTSCENE_MANAGER_GET_FINAL_STREAMING_LOAD_SCENE_EXT +0xB0479CB8,CUTSCENE_MANAGER_SET_FINAL_STREAMING_LOAD_SCENE_EXT +0x35DBDD67,CUTSCENE_MANAGER_SET_ASSET_OVERRIDE +0x250232CF,CUTSCENE_MANAGER_SET_ASSET_OVERRIDE_ACTORENUM +0x7007019D,CUTSCENE_MANAGER_SET_ASSET_OVERRIDE_ACTOR +0x24F97294,CUTSCENE_MANAGER_GET_SCRIPT_EVENT_DATA +0xDE79FA4E,CUTSCENE_MANAGER_GET_SCRIPT_EVENT_DESCRIPTION +0x2B45FADE,CUTSCENE_MANAGER_CLEAR_SCRIPT_EVENT +0x50A2051C,CUTSCENE_MANAGER_SET_WAS_JOHN_NOW_JACK_IN_RCM_CUTSCENE +0x9AC89564,DECOR_GET_BOOL_VERBOSE +0xFAC315B7,DECOR_GET_FLOAT_VERBOSE +0x1F003E6C,DECOR_GET_INT_VERBOSE +0x8E101F5C,DECOR_SET_BOOL +0xBC7BD5CB,DECOR_SET_FLOAT +0xDB718B21,DECOR_SET_INT +0xAAED0B69,DECOR_SET_VECTOR +0x53D3FB4A,DECOR_SET_STRING +0x44F8BCC5,DECOR_SET_OBJECT +0xEDF99C77,DECOR_CHECK_STRING +0x6A0FE2A0,DECOR_GET_STRING_HASH +0xDBCE51E0,DECOR_GET_BOOL +0x8DE5382F,DECOR_GET_FLOAT +0xDDDE59B5,DECOR_GET_INT +0x56E84C59,DECOR_GET_VECTOR +0x24F2E859,DECOR_GET_OBJECT +0xA0773F5C,DECOR_CHECK_EXIST +0xE0E2640B,DECOR_REMOVE +0xFDB9E349,DECOR_REMOVE_ALL +0x728B211,DLC_PRE_INIT_CONTENT +0xEC86DB0E,DLC_INIT_CONTENT +0xF4D0807E,DLC_INIT_STRINGTABLE_STREAMABLES +0x853F71F6,DLC_IS_CONTENT_PURCHASED_FLAGS +0x2F78AEFA,DLC_UNMOUNT_PACK +0x9CB5372B,FIND_NEAREST_DOOR +0x9CE0AA24,GET_DOOR_FROM_OBJECT +0x7F0F079B,IS_DOOR_VALID +0x19FB9518,IS_DOOR_LOCKED +0x184924E2,SET_DOOR_LOCK +0x48659CD7,IS_DOOR_CLOSED +0x211DD9D2,IS_DOOR_OPENED +0x52BB0836,IS_DOOR_OPENING +0xCBA9F32C,IS_DOOR_CLOSING +0xD3300956,SET_DOOR_AUTO_CLOSE +0x5BCFC899,SET_DOOR_CURRENT_SPEED +0x30503E81,OPEN_DOOR +0xAACB4435,OPEN_DOOR_DIRECTION +0xCF89BC95,OPEN_DOOR_FAST +0xBA51D02E,OPEN_DOOR_DIRECTION_FAST +0x75B1736,CLOSE_DOOR +0xFEEC0767,CLOSE_DOOR_FAST +0x3B25299D,SET_ALL_DOOR_LOCKS_VISIBLE +0x468DDDB3,SET_DOOR_LOCK_VISIBLE +0xDAD47AE6,IS_DOOR_OPEN_IN_DIRECTION +0xBA6C3E92,IS_ACTOR_VALID +0x8B217CAC,GET_ACTORENUM_FROM_STRING +0x63D6551C,IS_ACTOR_ON_FOOT +0xB7CE8FCC,GET_ACTOR_OFFSET_WORLD_COORDS +0x50A3BF5D,ACTORS_IN_RANGE +0xAD6AF65C,GET_ACTOR_VELOCITY +0xE173CE48,GET_ACTOR_HEIGHT +0xAB8A1C15,SET_GLOBAL_ACTOR_WEAPON_BIAS +0xDAD46FAB,RESET_GLOBAL_ACTOR_WEAPON_BIAS +0xA2DEC153,LOCATE_ACTOR_OF_TYPE +0x5F655C68,IS_AREA_OBSTRUCTED +0x733E811,IS_AREA_OBSTRUCTED2 +0x6AC01FCB,GET_ACTORENUM_SPECIES +0xEE0AB3DD,GET_ACTORENUM_ACTOR_BASE_TYPE +0x6AFF3122,GET_ACTORENUM_AVATAR_GROUP +0x7D397CAA,GET_ACTORENUM_MP_ANIM_SET_NAME +0x8DAC4359,GET_ACTORENUM_MP_VOICE_NAME +0xDE0B9673,SET_ACTOR_STAMINA +0xAC232F6E,GET_ACTOR_GAIT_TYPE +0xDB993A4F,GET_ACTOR_POSTURE +0x708D9BD3,SET_ACTOR_POSTURE +0xDCC91F8C,RESET_ACTOR_GAITS +0xABFD3560,GET_ACTOR_TYPE +0x2091F142,IS_ACTOR_MALE +0x9C42B7A2,SET_ACTOR_SEX +0x4C94EB9E,SET_ACTOR_IS_COMPANION +0x8392855D,SET_ACTOR_IS_THE_BEASTMASTER +0xE9D86A7A,SET_ACTOR_TIME_OF_LAST_CRIME +0x2CB5D7AF,DESTROY_IMPAIRED_ACTORS +0xA842786,IS_PLAYER_WEAPON_ZOOMED +0x8E0769F3,IS_ACTOR_ANIMAL +0xF6BF4242,IS_ACTOR_CROUCHING +0x25670955,IS_ACTOR_FLYING +0x882C84DC,IS_ACTOR_HUMAN +0xDFF96719,IS_ACTOR_JUMPING +0x4B441DC4,IS_ACTOR_SHOOTING +0x6396ABB7,IS_ACTOR_BLINDFIRING +0x39C518DB,IS_ACTOR_RELOADING +0x886BD8AD,IS_ACTOR_THROWING +0x3612AC73,IS_ACTOR_WHISTLING +0xE975BE40,IS_ACTOR_ON_LADDER +0xE27EBCBD,IS_ACTOR_OUTDOORS +0x17D270E,SUSPEND_MOVER +0xE29F0A39,ENABLE_MOVER +0x13E6B5EE,SET_MOVER_FROZEN +0x9C12BD5A,IS_MOVER_FROZEN +0x63925367,SET_ACTOR_USE_COARSE_BOUNDS +0x61664EC0,SUPRESS_MOVER_COLLISIONS +0x709EC06C,IS_ACTOR_ON_GROUND +0x8ED9DAFC,IS_ACTOR_ON_PATH +0x7D65D9C7,IS_ACTOR_IN_WATER +0x7B4F9EAC,GET_ACTOR_STUCK_STATE +0xE39E89BD,IS_ACTOR_IN_FIRE_VOLUME +0x8842C62D,IS_ACTOR_RIDEABLE +0x19F3CB6B,SET_ACTOR_RIDEABLE +0x4CF7C3E,GET_VEHICLE_BUMP_COUNT +0xE9BA223,RESET_VEHICLE_BUMP_COUNT +0x5FEA3E61,SET_CUSTOM_ANIM_SPEED +0x35D8B4AA,ACTOR_RESET_ANIMS +0xB5E1904,SET_ACTOR_CAN_PLAY_BORED_IDLES +0x50ED77F1,SET_ACTOR_CAN_PLAY_GESTURES +0xDA2F6203,ACTOR_ENABLE_VARIABLE_MESH +0x5DE31288,ACTOR_IS_VARIABLE_MESH_ENABLED +0x6D3E430D,ACTOR_SET_GRABBED_BY_CUTSCENE +0x776999DB,ACTOR_IS_GRABBED_BY_CUTSCENE +0x488C95C4,ACTOR_IS_HIDDEN_BY_CUTSCENE +0xCC3D8F6,IS_ACTOR_FULLY_FADED_EXT +0x55AACDFD,SET_ACTOR_HEARING_MAX_RANGE +0x21CE712F,GET_ACTOR_VISION_FIELD_OF_VIEW +0xF8F3FE84,SET_ACTOR_VISION_FIELD_OF_VIEW +0x4A4B4B26,GET_ACTOR_VISION_MAX_RANGE +0x4E3E9B70,SET_ACTOR_VISION_MAX_RANGE +0x5C8DD257,SET_UNIVERSAL_VISION_RANGE_MULTIPLIER +0x8D5175A8,SET_ACTOR_VISION_XRAY +0xBFABD82E,GET_ACTOR_VISION_XRAY +0xAAC96EFF,GET_ACTOR_CURRENT_WEAPON_AI_PARAMETERS +0x9CD3385E,GET_ACTOR_ALLOW_BUMP_REACTIONS +0xC52B5F18,SET_ACTOR_ALLOW_BUMP_REACTIONS +0xEB7B0FAA,SET_ACTOR_ALLOW_NM_BUMP_REACTIONS +0x2C6A5FAC,SET_RCM_ACTOR_CALL_OVER_ENABLE +0xE4AA7B35,SET_RCM_WAS_JOHN_NOW_JACK +0xD15B53F8,SET_RCM_ACTOR_CALL_OVER_SUPPRESS +0xC28A5950,SET_ACTOR_ALLOW_PLAYER_GREET_RESPONSES +0x3D7C2F,SET_ACTOR_ALLOW_WEAPON_REACTIONS +0xBAF9D599,SET_ACTOR_ALLOW_WEAPON_REACTION_FLEE +0x78B7976E,GET_ACTOR_WEAPON_REACTION_ACTOR_TYPE +0x18BA1216,SET_ACTOR_WEAPON_REACTION_ACTOR_TYPE +0x634B4D1,SET_PLAYER_CAUSE_WEAPON_REACTIONS +0xD9934D6E,SET_ACTOR_WEAPON_REACTION_NO_FLEE_HACK +0xA23F215,SET_ACTOR_OBSERVED_TARGETED_REACTIONS +0xFFDA2D88,SET_PLAYER_CAUSE_WEAPON_REACTION_COMBAT +0x7B7D1742,SET_ACTOR_REACT_TO_LASSO +0x76A72D9A,SET_ACTOR_ALLOW_DISARM +0x2B403538,SET_ANIMAL_CAN_ATTACK +0x5D9DB7A5,GET_CURRENT_GRINGO +0x527CB774,SET_ACTOR_GRINGO_RESTRICTION +0x660DBDDD,CLEAR_ACTOR_GRINGO_RESTRICTION +0xF04335A6,MAKE_ACTOR_READY_FOR_ACTION +0xFB2B0CCF,IS_ACTOR_READY_FOR_ACTION +0xA41B161C,REPORT_GRINGO_USE_PHASE +0x9028B082,CLEAR_ALL_CORPSES +0x90F9555B,CAN_PLAYER_DIE +0xA9691E66,CLEAR_ACTOR_MAX_SPEED +0x9CB01B27,SET_ACTOR_MAX_SPEED +0x950B8870,SET_ACTOR_MAX_SPEED_ABSOLUTE +0x36D75D5,CLEAR_ACTOR_MIN_SPEED +0xA854EE99,SET_ACTOR_MIN_SPEED +0x4D4A734,SET_ACTOR_MIN_SPEED_ABSOLUTE +0x627E52EA,GET_ACTOR_MAX_SPEED +0x56DE7F21,GET_ACTOR_MAX_SPEED_ABSOLUTE +0x8D0DCEB6,GET_ACTOR_MIN_SPEED +0x9D78931,SET_ACTOR_SPEED +0x68D4A021,CLEAR_LAST_ATTACK +0xEB40C2FC,GET_LAST_ATTACK_TARGET +0x69FA5315,GET_LAST_ATTACK_TIME +0x8C221B4D,GET_DAMAGE_BY_LOCAL_PLAYER +0x129B715,GET_ACTOR_COMBAT_CLASS +0x44B7FF7E,BEGIN_DUEL +0x4E86F0B5,CANCEL_DUEL +0x82A6B8FC,ADD_DUEL_HOSTAGE +0x33CE5435,GET_CURRENT_DUEL_SCORE +0x3E5C3C2D,SET_DUEL_DIFFICULTY +0x8007587C,GET_ACTOR_EXEMPT_FROM_AMBIENT_RESTRICTIONS +0x4D0A87BF,SET_ACTOR_EXEMPT_FROM_AMBIENT_RESTRICTIONS +0x6695E185,ADD_CAPABILITY +0x29AEB2DB,REMOVE_CAPABILITY +0xD3D8E8ED,HAS_CAPABILITY +0x2B8C3258,GET_LAST_ON_SCREEN_TIME_FOR_ACTOR +0xA4B5275C,NET_SET_NODE_REPLICATION +0x382E7CCC,SET_ACTOR_ACTION_SIGNAL +0x415F9BC3,TOGGLE_ACTOR_ACTION_SIGNAL_ON +0x4F605632,TOGGLE_ACTOR_ACTION_SIGNAL_OFF +0x2365961,GET_ACTOR_MELEE_TARGETED_BY +0xD079EB62,SET_ACTOR_CAN_DEADEYE_TAG_ANYTHING +0x47930AA4,SET_ACTOR_AUTO_TRANSITION_TO_DRIVER_SEAT +0xEDC806BA,SET_ACTOR_FLY_FX +0x7A746D3A,SET_ACTOR_MOVE_CONFLICT_HIGH_PRIORITY +0x32CB0E86,SET_ACTOR_MOVE_CONFLICT_ALLOWED_TO_RUN_OVER_SMALL_ANIMALS +0x4CB24141,SET_ACTOR_IS_AMBIENT +0x880DBF5,SET_ACTOR_IS_SHOPKEEPER +0x199600FA,SET_ACTOR_SHOULD_TAUNT +0xB9744BE7,SET_ACTOR_CAN_BUMP +0xBADB24FB,SET_ACTOR_MAX_FRESHNESS +0xF1D2A13E,GET_ACTOR_MAX_FRESHNESS +0x5E54E254,MAKE_BIRD_FLY_FROM_POINT +0x4911EB99,IS_EVENT_VALID +0x184BD1BC,GET_EVENT_FROM_OBJECT +0xB64DDA6F,GET_OBJECT_FROM_EVENT +0xF7DA8F09,COPY_EVENT +0xD938B523,GET_EVENT_LAYOUT +0x6D660453,GET_EVENT_TYPE +0xE2ED95CC,GET_EVENT_TARGET_AS_OBJECT +0xBDD4D4D5,GET_EVENT_TARGET_AS_PHYSINST +0xB5431C9,GET_EVENT_PERPETRATOR +0x17CF885F,ADD_NEW_EVENT_RESPONSE +0x8DF144C2,ADD_NEW_RANGED_EVENT_RESPONSE +0xFEE731AF,REMOVE_EVENT_RESPONSE +0x85D62384,RANGED_EVENT_RESPONSE_INIT_COMPLETE +0xFB227D11,REGISTER_FOR_CREATION_EVENT +0x82112B85,GET_EVENT_TIME +0xBC58F1EA,GET_OBJECTSET_FOR_EVENT_TYPE +0x24C18749,CREATE_EVENT_TRAP +0x88943B5B,EVENT_TRAP_ON_VOLUME +0x3D2786E5,EVENT_TRAP_ON_SPHERE +0x6B5DF46D,EVENT_TRAP_ON_PERPETRATOR +0xAA5D947,EVENT_TRAP_ON_TARGET +0x1105FB64,EVENT_TRAP_ON_OWNER +0x8765C6B,EVENT_TRAP_STORE_EVENTS +0xDE9AA6E5,EVENT_TRAP_CLEAR_EVENTS +0x54F8EAA4,EVENT_TRAP_SUCCESSFUL_TRAP +0xAA24E0CC,EVENT_TRAP_CLEAR_TRAP_FLAG +0x19F62133,GET_NUM_EVENT_RESPONSES +0xB573FF63,GET_EVENT_RESPONSE_ID +0x586714AE,GET_EVENT_FOR_RESPONSE +0x651F6299,ENABLE_REPLICATION_SET_EXPLOSION +0x40ABFD17,RELOAD_FACTIONS +0x28413943,RESET_FACTIONS +0x52E2A611,GET_ACTOR_FACTION +0xCC63951A,SET_ACTOR_FACTION +0x5E2F718D,IS_FACTION_VALID +0x22424394,VERIFY_FACTION_ENUM +0xDCB960C5,SET_FACTION_IS_LAWFUL_TO_ATTACK +0xB58013D7,GET_FACTION_IS_LAWFUL_TO_ATTACK +0xD771AF0B,SET_FACTIONS_STATUS_ONE_WAY +0x4C28B11E,SET_FACTIONS_STATUS_TWO_WAY +0x6118212B,SET_AMBIENT_FACTIONS_STATUS_TWO_WAY +0x902781BF,RESET_FACTIONS_STATUS_TWO_WAY +0xF9C5DC76,RESET_AMBIENT_FACTIONS_STATUS_TWO_WAY +0x8E56236D,GET_FACTIONS_STATUS +0x463F75F8,SET_FACTION_TO_FACTION_ACCURACY_SCALE_FACTOR +0xA9A18E5A,SET_FACTION_TO_FACTION_DAMAGE_SCALE_FACTOR +0xEF639583,CLEAR_FACTION_STATUS_TO_INDIVIDUAL_ACTOR +0x784398CB,GET_FACTION_STATUS_TO_INDIVIDUAL_ACTOR +0xBC44D31D,SET_FACTION_STATUS_TO_INDIVIDUAL_ACTOR +0xA5A6A3E3,ENABLE_PIP +0x3736FF43,IS_PIP_ENABLED +0x65B4197,IS_PIP_RENDERING +0x43939FD8,CLEAR_DECALS +0x21588246,CREATE_DECAL +0xFB4CFBA0,CREATE_DIRECTION_DECAL +0x7BCE4845,CREATE_DECAL_WITH_NORMAL +0x9E54C297,CREATE_FOOTPRINT +0x6E946AF8,PPP_LOAD_PRESET +0xB6CA7EBF,PPP_UNLOAD_PRESET +0x4710FD93,RESET_ANALOG_POSITIONS +0x6A0A241A,PPP_GET_ELEMENT_MAGNITUDE +0xCB0BDCE9,CANCEL_DEADEYE +0xFA43DCC5,FIRE_SHOCK +0xEC906A7A,SET_SHOCK_SPEED +0xC9FCD3EC,SET_SHOCK_AMPLITUDE +0xF665F9D1,DOF_PUSH +0x5EBE0C41,DOF_POP +0xEA8964CC,DOF_SET +0x47A8DDED,DOF_SET_KERNEL +0xCBDD5832,REMOVE_GLOW_INDICATOR +0x1065D334,CREATE_OBJECT_GLOW +0xFC261530,DESTROY_OBJECT_GLOW +0x8852F896,CLEAR_TUMBLEWEEDS +0xFDE8DFCE,ALLOW_TUMBLEWEEDS +0x1EE7153B,ADD_ZOMBIE_TO_ACTOR +0x5685A440,ADD_BLOOD_TO_ACTOR +0x50904C66,ADD_BLOOD_TO_CORPSE +0x1A676EDF,CLEAR_CHARACTER_BLOOD +0x807C9D01,CLEAR_PLAYER_BLOOD +0x9D9E093E,SET_PLAYER_BLOOD_FADE_RATE +0x32F2D6F1,PRICK_PLAYER_FINGER +0xA257C16D,BURN_ACTOR +0x3627F773,LIMIT_BLOOD_ON_ACTOR +0x48123591,LOAD_PTFX_DLC_ASSETS +0xA0AE0C98,ADDSHADER +0x6FCF6BC8,DISABLE_PLAYER_GRINGO_USE +0x5A9D0738,IS_MISSION_SCRIPT +0x15040CD2,SET_IS_MISSION_SCRIPT +0x45589499,SET_SCRIPT_AVOIDS_STRINGTABLE +0xDD9BD22B,GET_GAME_STATE +0x9B71351C,SET_PAUSE_SCRIPT +0xFEA58D57,ENABLE_USE_CONTEXTS +0x2ADA3DD4,ARE_USE_CONTEXTS_ENABLED +0x115CD0CC,IS_SCRIPT_USE_CONTEXT_VALID +0x39E7F1D,ADD_SCRIPT_USE_CONTEXT_IN_VOLUME +0xD7591B0E,ADD_SCRIPT_USE_CONTEXT +0xF48F8F09,ADD_SCRIPT_USE_CONTEXT_STICK +0x45C1C061,IS_SCRIPT_USE_CONTEXT_PRESSED +0x971559CA,WAS_SCRIPT_USE_CONTEXT_EVER_PRESSED +0x3ECD8FEE,SET_USE_CONTEXT_TEXT +0x4F52CB58,RELEASE_SCRIPT_USE_CONTEXT +0xA3E1EF71,NET_MAILBOX_IS_SIGNED_INTO_SC +0x6B439149,NET_MAILBOX_GET_MAX_NUM_CHALLENGES +0x89F1B8CD,NET_MAILBOX_GET_NUM_CHALLENGES +0xE85942F0,NET_MAILBOX_GET_CHALLENGE_BY_INDEX +0xD4FBCCE0,NET_MAILBOX_GET_CHALLENGE_BY_ID +0xC9E96F78,NET_MAILBOX_IS_CHALLENGE_VALID +0xCBBE41DD,SC_CHALLENGE_LAUNCH +0xB7DE2AF2,SC_CHALLENGE_CLEAN_UP +0x79F09AC7,SC_CHALLENGE_IS_RUNNING +0x5D7197BC,SC_CHALLENGE_IS_ACTIVE +0xFFC55DA4,SC_CHALLENGE_GET_COMMUNITY_TOTAL +0xCEEEAE1D,SC_CHALLENGE_GET_COMMUNITY_VALUE +0x1876B04E,SC_CHALLENGE_PROCESS_EXPIRATION +0x4BD61354,SC_CHALLENGE_GET_EXPIRATION_STATE +0xF5F97702,SC_CHALLENGE_RESET_EXPIRATION_STATE +0xFD6197EB,SC_CHALLENGE_IS_VAR_VALID +0xC322556E,SC_CHALLENGE_GET_VAR_FLOAT +0x2390DD18,SC_CHALLENGE_GET_VAR_INT +0xB40622F1,SC_CHALLENGE_GET_VAR_BOOL +0xD2513200,SC_CHALLENGE_RELEASE +0xC21048BF,SC_CHALLENGE_GET_LEADERBOARD_ID +0x5725C84F,SC_CHALLENGE_GET_MIN_LB_REFRESH_DELAY_SECS +0x2374C1E0,SC_CHALLENGE_GET_MIN_SUBMIT_DELAY_SECS +0x820699A8,GATEWAY_GET_ACTOR +0x26D24123,GATEWAY_SET_ACTOR +0x987AD426,GATEWAY_GET_VOLUME +0xB62A4FB1,GATEWAY_GET_MARKER +0x96BD89B6,GATEWAY_UPDATE +0xF03CC7A7,ACTOR_DATA_GRAVITY_LIMIT +0x620A3C17,GATEWAY_DISABLE +0x3AE1062C,GATEWAYS_ARE_DISABLED +0xB9F2F8BB,GATEWAY_IS_DISABLED +0xF62EE158,IS_GRAVESTONE_SECTOR_READY +0x449D4A89,SET_CURRENT_GRAVESTONE_SECTOR +0xAEC955F8,CREATE_GRAVESTONE_TEXT_IN_LAYOUT +0x5BF5A39C,CREATE_MP_TEXT +0x9953D4FC,SET_GREETING_CONTEXT +0x751809BB,SET_NON_VERBAL_GREETING_PROBABILITY +0x25A42C69,SET_GREETING_LOOK_AT_ANGLE_DEFAULT +0x40121E4F,SET_GREETING_LOOK_AT_ANGLE_ACTOR_SPECIFIC +0x86CB8CFB,SET_GREETING_PROBABILITY_NPC_DEFAULT +0xD6AD0016,SET_GREETING_PROBABILITY_PLAYER_DEFAULT +0xDE84B637,SET_GREETING_PROBABILITY_ACTOR_SPECIFIC +0x8C00C0BE,SET_GREETING_MIN_TIME_INTERVAL +0x7CC67B30,SET_GREETING_MIN_TIME_INTERVAL_SAME_TARGET +0xD4ECD97D,SET_GREETING_MAX_DISTANCE +0x826BB889,SET_GREETING_MIN_MOVEMENT_SPEED +0x5473B93A,SET_GREETING_MAX_MOVEMENT_ANGLE +0x1B1EFCCB,SET_GREETING_ANIM_SIGNAL_TIMEOUT_DURATION +0x86F2C24D,IS_GRINGO_ACTIVE +0xB9BFCB41,IS_GRINGO_READY +0xB8A48688,GRINGO_IS_ACTIVE +0xC70FDA39,GRINGO_GET_TARGET +0x738FA66B,GRINGO_WAIT +0x4B29AED2,GRINGO_FORCE_UPDATE +0x59647303,GRINGO_STOP +0x9175FCFA,GRINGO_STAY_ACTIVE +0x25636669,GRINGO_DEACTIVATE +0xA9F5CDCB,GRINGO_DEACTIVATE_AND_RESET_ACTORS +0xCB58D301,GRINGO_ENABLE_TYPE +0xCB91CC6E,GRINGO_DISABLE_TYPE +0xA5EDCA4A,GRINGO_ENABLE_SPAWN +0xB1FCFFDC,LOCATE_GRINGO_OF_TYPE +0x99356925,LOCATE_GRINGO_OF_TYPE_BY_ID +0xBD269877,LOCATE_GRINGOS_OF_TYPE +0x8D76BB0,LOCATE_GRINGO_OF_NAME +0xE9612679,LOCATE_GRINGOS_OF_NAME +0xFA37C0FA,GRINGO_ACTOR_CAN_USE +0x38771B89,GRINGO_SETUP_PROP_ASSOCIATION +0xC426D16F,GRINGO_SETUP_ATTR_ASSOCIATION +0xF8F80679,GRINGO_CLEAR_PROP_ASSOCIATION +0x78B655B1,GRINGO_LOAD_ANIMATION +0x777842E3,GRINGO_UNLOAD_ANIMATION +0x7D600F2F,GRINGO_LOAD_ANIMATION_FOR_USER +0xBEF32D17,GRINGO_UNLOAD_ANIMATION_FOR_USER +0x2C57A529,GRINGO_HAS_ANIMSET_LOADED +0x8EB5CE58,GRINGO_LOAD_ANIMATION_FOR_ACTOR_ENUM_EXT +0x7A759A53,GRINGO_UNLOAD_ANIMATION_FOR_ACTOR_ENUM_EXT +0xDC149BD,GRINGO_HAS_ANIMSET_LOADED_FOR_ACTOR_ENUM_EXT +0xB853FD5,GRINGO_ENABLE_PLAYER_CONTROL +0xF8D9688A,GRINGO_IS_USABLE_BY_PLAYER +0x80317230,GRINGO_SET_USABLE_BY_PLAYER +0xE2DCFF34,GRINGO_USABLE_BY_ACTOR_ENUM +0xF4015EFC,GRINGO_DEBUG_IS_SELECTED +0x5F7176D6,GRINGO_GET_MY_OBJECT_REF +0xAE7B3880,GRINGO_GET_MY_GRINGO_ID +0x761BA4BD,GRINGO_SET_ALL_USES_OWNERSHIP +0x6E86FCB5,GRINGO_SET_USE_OWNERSHIP +0x89DE8A75,GRINGO_SET_CHILD_USE_ACTIVATIONS +0x53B9569C,GRINGO_SET_COMMON_LAYER_USE_ACTIVATIONS +0xEDF3BF37,GRINGO_HANDLES_MOVEMENT +0xBD503DC2,IS_GRINGO_COMPONENT_VALID +0xA766EA5C,GRINGO_COMPONENT_CHECK_NAME +0x14E53D6F,GRINGO_GET_COMPONENT_HASH +0x284DD17C,GRINGO_IS_COMPONENT_OF_TYPE +0xE4C686BA,GRINGO_GET_FIRST_NAMED_CHILD +0x3E8F94BE,GRINGO_GET_FIRST_CHILD +0xDD807723,GRINGO_GET_INDEX_OF_NEXT_NAMED_CHILD +0xD6EE9534,GRINGO_GET_INDEX_OF_NEXT_CHILD +0x3FA5FC03,GRINGO_GET_CHILD_COMPONENT_COUNT +0xAD313D88,GRINGO_GET_INDEXED_CHILD_COMPONENT +0xA20141C0,GRINGO_GET_PROP_FROM_COMPONENT +0x9AD6D5B1,GRINGO_GET_PROP_FROM_COMPONENT_EXT +0xD282013F,GRINGO_GET_PARENT_COMPONENT +0xBC32DA9A,GRINGO_GET_USER_POS_WITH_OFFSET +0x37D0F3E9,GRINGO_SET_MESSAGE_RETURN +0xCA589BAB,GRINGO_GET_MSG_COMPONENT_CONTEXT +0xF550F8E7,GRINGO_HAS_PENDING_MESSAGE +0x54745DB0,GRINGO_GET_MESSAGE_TYPE +0x2F096285,GRINGO_GET_REQUESTING_ACTOR +0x7F3020EB,GRINGO_SET_REQUEST_STRING +0x8CAF5C5C,GRINGO_SET_REQUEST_FAILURE_REASON +0x926FD361,GRINGO_IS_FORCE_QUITTING +0x3DEA631B,GRINGO_IS_CAPABLE_OF_USE +0x5CFBF505,GRINGO_SHOULD_SUSPEND_MOVER +0x3A31175A,GRINGO_SHOULD_FIX_MOVER +0x405E3903,GRINGO_GET_USE_COMPONENT_POSITION +0xCE210220,GRINGO_GET_USE_COMPONENT_POSITION_EXT +0xA9E00433,GRINGO_GET_USE_COMPONENT_OFFSET_POSITION_EXT +0xECD4F604,GRINGO_GET_USE_COMPONENT_EXT +0x5AF74E19,GRINGO_GET_USE_COMPONENT_POSITION_LOCAL +0x51581898,GRINGO_GET_USE_REQUIRES_OBSTACLE +0xD62D413C,GRINGO_IS_CHARACTER_BLEND_PAUSED +0x92FE8D74,GRINGO_GET_TASKED_USER_EXTERNAL +0x8C2914C4,GRINGO_SET_REUSE_DELAY +0x5B46757F,GRINGO_GET_USE_COMPONENT_HEADING +0xD14515A3,GRINGO_GET_USE_COMPONENT_HEADING_EXT +0xF95DDBF2,GRINGO_SET_AVAILABILITY +0x6ADC74CE,GRINGO_GET_AVAILABILITY +0xB78BC233,GRINGO_SET_AVAILABILITY_EXT +0x5388F37D,GRINGO_GET_REQUEST_MID_ACTION +0x94F442D0,GRINGO_SET_COMPONENT_USER +0x15A0E28B,GRINGO_GET_COMPONENT_USER +0x90FBBB8B,GRINGO_CLEAR_COMPONENT_USER +0x208A8E0,GRINGO_QUERY_NAMED_COMPONENT_USER +0x217B4264,GRINGO_REWARD_ACTOR +0x5C11B011,GRINGO_REPORT_USE_FINISHED +0x5F516FC3,GRINGO_WAS_USE_SUCCESSFUL +0xB62FE25C,GRINGO_SATISFY_MOTIVES_OF_ACTOR +0xE18BCD70,GRINGO_PLAY_ANIM_ON_ACTOR +0x35279C3F,GRINGO_IS_ACTOR_PLAYING_ANIM +0xB62D549E,GRINGO_RETURN_ACTOR_TO_DEFAULT_ANIMS +0xE9C74577,GRINGO_OWNS_ACTOR_ANIMS +0xB8C419C3,GRINGO_PLAY_ANIM_ON_ACTOR_WITH_PROP_COMPONENT +0xB9AE52F,GRINGO_ACTOR_DROP_ATTACHED_PROP +0x436C0BF,ATTACH_PROP_TO_ANIM +0x4DB7C61C,GRINGO_ATTACH_PROP_TO_ANIM +0xB96874B4,GRINGO_GET_PROP_ATTACH_SLOT +0x4A61BD63,ATTACH_SLOT_FROM_STRING +0xADBF3ADF,GRINGO_ANIM_GET_AST_FILENAME +0x721FC9A4,GRINGO_ANIM_GET_ACT_FILENAME +0x87BA5FE9,GRINGO_GET_ACTOR_SPECIFIC_AST_FILENAME +0x6263F909,GRINGO_ANIM_GET_ACT_ROOTNODE +0xB555A648,GRINGO_ANIM_IS_SUBNODE_PLAYING_BY_HASH +0xAFD53217,GRINGO_ANIM_PLAY_NODE_BY_HASH +0x29C63CE6,GRINGO_ACTOR_FACE +0x698105FC,GRINGO_ACTOR_MOVE_TO +0xAF4FCB9,GRINGO_ACTOR_MOVE_TO_AND_FACE +0xEEE9C799,GRINGO_ACTOR_MOVE_TO_AND_FACE_WITH_USER_OFFSET +0x98543454,GRINGO_SET_PROP_COLLISIONS +0x24BAABCA,GRINGO_IS_PROP_READY +0x5EC1CABF,GRINGO_GET_PHYSINST +0x22D573D2,GRINGO_PROP_RESET_GRACEFULLY +0xFF1FC1EF,GRINGO_IS_TARGET_OBJECT_READY +0xFACF08C7,GET_GRINGO_BOOL_ATTR +0x8A86AF8B,GET_GRINGO_INT_ATTR +0x869D5D92,GET_GRINGO_OBJECT_REF_ATTR +0xFA22A365,GET_GRINGO_STRUCT_ATTR +0x2EFD2B55,GET_GRINGO_FLOAT_ATTR +0x5851C408,GET_GRINGO_VECTOR_ATTR +0x1F74EE6C,GET_GRINGO_RELATIVE_POSITION_ATTR +0x7E4681E8,GET_GRINGO_RELATIVE_ORIENTATION_ATTR +0x6BA58AC7,GET_GRINGO_STRING_ATTR +0xCF6822D7,SET_GRINGO_BOOL_ATTR +0x377B2C54,SET_GRINGO_INT_ATTR +0xAFF7D382,SET_GRINGO_OBJECT_REF_ATTR +0xBC3C401F,SET_GRINGO_FLOAT_ATTR +0x5C6831F9,SET_GRINGO_VECTOR_ATTR +0x5C2174C7,GRINGO_QUERY_BOOL +0x6B1F2FEB,GRINGO_QUERY_INT +0x15D6F3C7,GRINGO_QUERY_OBJECT_REF +0x1528F08B,GRINGO_QUERY_STRUCT +0x69CF9B75,GRINGO_QUERY_FLOAT +0x30AF0FA8,GRINGO_QUERY_STRING +0x2A7B1EFE,GRINGO_QUERY_PROP +0x554330CA,GRINGO_UPDATE_BOOL +0x744FEE8,GRINGO_UPDATE_INT +0x4685D538,GRINGO_UPDATE_OBJECT_REF +0x4DE50AD9,GRINGO_UPDATE_STRUCT +0x39B7D772,GRINGO_GET_ATTRIBUTE_COUNT +0x19411B1F,GRINGO_GET_ATTRIBUTE +0xBED45A9A,GRINGO_IS_ATTRIBUTE_VALID +0xD2680017,GRINGO_GET_ATTRIBUTE_HASH +0xF0991C9F,GRINGO_GET_VECTOR_ATTR_BY_HANDLE +0xD7BB1792,GRINGO_GET_STRING_ATTR_BY_HANDLE +0xF573B7DE,GRINGO_GET_FLOAT_ATTR_BY_HANDLE +0xBF322F5C,GRINGO_GET_ATTR_TYPE_BY_HANDLE +0xA20246AB,GUI_MAKE_WINDOW +0x68FC1001,GUI_MAKE_TEXT +0xA2A68BAD,GUI_MAKE_OVERLAY +0xF6207DF5,GUI_WINDOWS_WITH_VALUES +0xA7FF2899,GUI_MOVE_WINDOW_ABS +0xFDED9B11,GUI_CLOSE_WINDOW +0xA2E6FECB,GUI_WINDOW_VALID +0x5F3A1C35,GUI_SET_TEXT +0x9CC6F183,GUI_SET_TEXT_JUSTIFY +0x7600ED4B,GUI_SET_TEXT_COLOR +0x5405B8AA,GUI_MAIN_WINDOW +0xD019FF37,GUI_MESSAGE_RELEASED_INPUT +0x4803C120,F2VSTR +0xFA6BDD8E,F2STR +0x47EF426D,I2STR +0x52C10147,V2STR +0x5E339E16,FLOAT_TO_STRING_VERBOSE +0x8ED1FF95,FLOAT_TO_STRING_FORMATED +0xA883AFCC,INT_TO_STRING +0x6B8E4CDD,VECTOR_TO_STRING +0x2C0F211D,GET_LAST_ATTACKER +0x3A207AF2,GET_LAST_HIT_TIME +0x7B7AA6B,GET_LAST_HIT_WEAPON +0x8308EBA,GET_LAST_HIT_FLAGS +0x45556269,GET_LAST_DAMAGE +0x855F9A3B,GET_LAST_HIT_ZONE +0x4747F219,GET_CORPSE_LAST_HIT_WEAPON +0xF75FE17F,GET_CORPSE_LAST_HIT_ZONE +0x8D696237,CLEAR_LAST_HIT +0x8B08ECA2,KILL_ACTOR +0x6085F7AC,KILL_ACTOR_WITH_KILLER +0x2F232639,IS_ACTOR_ALIVE +0xD798FFE,IS_ACTOR_DEAD +0x3918D335,IS_ACTOR_RAGDOLL +0xFA090024,SET_ACTOR_HEALTH +0xF246F15D,GET_ACTOR_HEALTH +0xB69A84AF,GET_ACTOR_MAX_HEALTH +0x165BD4C5,SET_ACTOR_MAX_HEALTH +0x3A2D7759,SET_ACTOR_KO_POINTS +0x44787A58,GET_ACTOR_KO_POINTS +0xAFC96669,GET_ACTOR_MAX_KO_POINTS +0xFF07D58C,IS_ACTOR_DRUNK +0x9F57742C,SET_ACTOR_DRUNK +0x2A9FD09F,SET_ACTOR_PASSED_OUT +0x5262C0F7,SET_ACTOR_HANGING_FROM_NOOSE +0xFE9903CC,ACTOR_HOLSTER_WEAPON +0x7957CA4F,ACTOR_START_FORCE_HOLSTER +0x231E7034,ACTOR_END_FORCE_HOLSTER +0x8FFDCE5C,ACTOR_DRAW_LAST_WEAPON +0xD86BFBD8,ACTOR_DRAW_ANY_WEAPON +0x953FB7EE,ACTOR_DRAW_WEAPON +0x6426CCD6,ACTOR_IS_HOLSTERED +0xF71A883A,ACTOR_MOUNTED_WEAPON_EVEN +0xFA0CF208,UI_SET_PROMPT_STRING +0xA77E0DDF,UI_SET_PROMPT_ICON +0x247348C5,UI_SET_PROMPT_ICON_STRING +0x545EC471,UI_HIDE_PROMPT +0x34F03EC7,FLASH_SET_BOOL +0x4778A580,FLASH_SET_INT +0xDF024C94,FLASH_SET_FLOAT +0x8A2A1A51,FLASH_SET_ARRAY_INT +0x9E31EEA7,FLASH_SET_STRING +0x35CDFDC5,FLASH_SET_ARRAY_STRING +0xFA266B15,FLASH_GET_BOOL +0x3568B83,FLASH_GET_INT +0xA332ACE3,FLASH_GET_FLOAT +0xE39B92B7,FLASH_SET_ARRAY_STRING_FORMATTED +0x637016C9,PRINT_BIG +0x4A38C60,PRINT_SMALL_B +0xE42A8278,PRINT_HELP_B +0x32394BB6,PRINT_OBJECTIVE_B +0x51948EA6,PRINT_MONEY +0xBCB8D17F,PRINT_BIG_FORMAT +0xBBBDFF7C,PRINT_SMALL_FORMAT +0x283B4EFC,PRINT_OBJECTIVE_FORMAT +0xD8AAF8E0,PRINT_HELP_FORMAT +0x14708CB1,GET_LAST_PRINTED_OBJECTIVE +0xB9D95B4C,CLEAR_PRINTED_OBJECTIVE +0x710B3A83,HUD_IS_SHOWING_SMALL_TEXT +0x60135878,HUD_IS_SHOWING_BIG_TEXT +0x2F0E7DE7,HUD_IS_SHOWING_OBJECTIVE +0x4B2FCAF6,HUD_IS_SHOWING_HELP_TEXT +0x585F008A,HUD_CLEAR_SMALL_TEXT +0xD6DFA6FC,HUD_CLEAR_BIG_TEXT +0x50EFAAB,HUD_CLEAR_COUNTER +0x160BDC7A,HUD_CLEAR_OBJECTIVE +0x95B908,HUD_CLEAR_HELP +0x2E1E708,HUD_CLEAR_SMALL_TEXT_QUEUE +0x777A1CA2,HUD_CLEAR_BIG_TEXT_QUEUE +0xE4DACF40,HUD_CLEAR_OBJECTIVE_QUEUE +0x495164AD,HUD_CLEAR_HELP_QUEUE +0xA07FE74,SET_RADAR_STREAMING +0xEFB9362F,ADD_BLIP_FOR_ACTOR +0xE5372EC,ADD_BLIP_FOR_OBJECT +0xC6F43D0E,ADD_BLIP_FOR_COORD +0xABD125F6,CHANGE_BLIP_ICON +0xB2EAF8DD,SET_BLIP_POS +0x1E6EC434,SET_BLIP_SCALE +0xA2B8A736,SET_BLIP_COLOR +0xCE87DA6F,SET_BLIP_PRIORITY +0x4B8C8C6,SET_BLIP_BLINK +0xA9A01C70,SET_BLIP_FLAG +0x9318D3D2,SET_BLIP_VISIBLE +0x1E7A6623,IS_BLIP_VISIBLE +0xDCC10BA9,IS_BLIP_VALID +0xD8C3C1CD,REMOVE_BLIP +0x1449EE9E,GET_BLIP_ON_ACTOR +0xE3E30992,GET_BLIP_ON_OBJECT +0xEE4F4B7D,GET_BLIP_ICON +0x14C7C29,SET_CURRENT_MAP +0x39F2E5F1,SET_STAMINA_BLINK +0xA543B120,SET_DEADEYE_BLINK +0x7FF20D84,SET_HUD_MAP_SCALE_WALK +0x364450B1,SET_HUD_MAP_SCALE_DRIVE +0xB4614D11,SET_HUD_MAP_SCALE_OVERRIDE +0x6B33CBCC,GET_RADAR_RADIUS +0x33CE49C9,ABORT_HUD_MAP_SCALE_OVERRIDE +0x1D85FB58,IS_HUD_MAP_SCALE_OVERRIDE_SET +0xD76F1E9A,GET_BLIP_IMPAIRMENT_MASK +0xBC05EBB3,SET_BLIP_IMPAIRMENT_MASK +0xCE79F8E2,SET_BLIP_MAX_DISTANCE +0xFBA76D7E,SET_BLIP_MIN_DISTANCE +0xDC249B12,SET_BLIP_NAME +0xB1DAEF0C,CLEAR_REGIONS +0x95666EE0,APPEND_REGION +0x970AC1F7,SET_REGION_VISITED +0xF5B7B208,IS_HUD_MAP_DRAW_ENABLED +0xA094152A,SET_HUD_MAP_DRAW_ENABLED +0xDFF578A,SET_HUD_MAP_DRAW_ENABLED_TIMED +0xCE043618,IS_HUD_MAP_VISIBLE +0x48DB367D,SET_RADAR_TILES_VISIBLE +0x4FCE7B9D,HUD_SET_SHOOT_BLIP_MAX_DISTANCE +0x14585073,HUD_SET_SHOOT_BLIP_ENABLED_FOR_ACTOR +0x5EA2E02D,HUD_CLEAR_SHOOT_BLIP_ICON_FOR_ACTOR +0xE78A0469,HUD_GET_SHOOT_BLIP_ICON_FOR_ACTOR +0x2755628,HUD_SET_SHOOT_BLIP_ICON_FOR_ACTOR +0x73DA6AF1,SET_STAT_MESSAGE +0x906E0138,CLEAR_STAT_MESSAGE +0x919142BE,IS_STAT_MESSAGE_SHOWING +0x149F9E46,HUD_TIMER_DISPLAY +0x1C6919EF,HUD_TIMER_GET +0xB6A24203,HUD_TIMER_SET +0x2395C147,HUD_TIMER_COUNTUP +0xF4209CCC,HUD_TIMER_COUNTDOWN +0x3383E839,HUD_TIMER_PAUSE +0x983A7E4E,HUD_TIMER_UNPAUSE +0x9A35DFC6,HUD_COUNTER_DISPLAY +0x7D94675D,HUD_COUNTER_SET +0xC180A3F,HUD_ENABLE +0x4DA5F502,HUD_SET_FADE_COLOR +0x52963366,HUD_FADE_OUT +0xB0B4296A,HUD_FADE_TO_LOADING_SCREEN +0xF90F6C51,HUD_FADE_IN +0x7E4A92CF,HUD_FADE_IN_NOW +0x4EFFFC06,HUD_IS_FADED +0xE5CC6F08,HUD_IS_FADING +0x18346D88,FLASH_INTRO_SHUTDOWN +0xBB2EABF9,FLASH_INTRO_FADE_LOGO +0x9E6D7105,FLASH_INTRO_FADE_PRESS_START +0x82A290D4,FLASH_INTRO_ARE_LEGALS_COMPLETED +0xC197810,MOVIE_PLAYER_STOP_MOVIE +0xC64DF45D,UI_IS_SHOWING_DIALOG +0xD0F2D2B6,UI_TRANSITION_TO +0x111554E2,UI_GET_REBOOT_REASON +0xB58825F5,UI_SEND_EVENT +0x594F2657,UI_ENTER +0x4486E8C7,CLEAR_NEWSPAPER +0x175CD937,SHOW_NEWSPAPER +0x47D2DE08,SET_NEWSPAPER_INFO +0xD82F910C,SET_GPS_PATH +0xAA322DFC,IS_GPS_RECOMPUTE +0xD077D8B6,CLEAR_GPS_PATH +0x82F63365,GET_USER_DEFINED_WAYPOINT +0x34711B59,IS_USER_DEFINED_WAYPOINT_CLEARED +0xA5BDC21D,FIND_TRAFFIC_PATH +0x3E758743,IS_TELEPORTATION +0xB6E791F6,GET_LAST_NEAREST_POINT +0xD12802AF,HUD_SET_MINIGAME_TYPE_LAYOUT +0xADBD44F6,HUD_STAMINA_OVERRIDE +0x94F5E63F,UI_CHEAT_GET_VALUE +0x9E88643A,UI_CHEAT_SET_VALUE +0x1309706,UI_CHEAT_GET_STATE +0x7D6A8D4A,UI_CHEAT_SET_STATE +0x90CD8795,UI_CHEAT_SET_CODE +0x7D0EFDD8,UI_SET_HAS_CHEATED +0xBAB151CB,UI_HAS_CHEATED +0x714D6F72,UI_DUMP_MESSAGE_QUEUE_TO_NOTES +0x64DDB95D,UI_CLEAR_MESSAGE_QUEUE +0x941FC468,UI_IS_MESSAGE_QUEUE_EMPTY +0x7725001B,UI_REMOVE_MESSAGE_IN_QUEUE +0xEB214384,HUD_SET_CENTER_BLIP_SHOWN +0x8E387228,SET_INDICATOR_DRAW +0x9CD3AD70,FIND_INTERSECTION +0x6AD8EEAF,FIND_GROUND_INTERSECTION +0x77964B0C,FIND_GROUND_INTERSECTION_WITH_MATERIAL +0x4F193BE4,FIND_WATER_INTERSECTION +0x5219B7D0,GET_MATERIAL_AT_VECTOR +0x451A8EF2,GET_ACTOR_GROUND_MATERIAL +0x1E81DB60,IS_POSITION_INDOORS +0xBAA5D41B,ADD_ITEM +0xAB2D8A68,ADD_ITEM_BY_CRC +0x7609A328,HAS_INVENTORY_COMPONENT +0xD91ED898,GET_ITEM_COUNT +0x4BB2BC20,GET_ITEM_COUNT_BY_CRC +0xF52BA99F,GET_MAX_ITEM_COUNT +0xE712FCB,SET_MAX_ITEM_COUNT +0x5ACC0171,ADD_ACCESSORY +0xF750D150,ADD_ACCESSORY_BY_CRC +0xF05D1566,ADD_COLLECTABLE +0x5889EBB7,REMOVE_COLLECTABLE +0x2B00A643,READY_ITEM +0xB426267D,HAS_ITEM +0xC38F697,HAS_ACCESSORY +0xEFECF4F9,DELETE_ITEM +0xD6A9C9D4,DELETE_ACCESSORY +0x7BF75BCE,ACTOR_GET_ITEM_CRC_AT_INDEX +0x7F4D5AE0,ACTOR_GET_ACCESSORY_CRC_AT_INDEX +0x608DCAEF,ACTOR_GET_COLLECTABLE_CRC_AT_INDEX +0x50C0E83F,IS_ITEM_WEAPON_BY_CRC +0x3A899B0E,GET_ITEM_IN_HAND_EQUIPSLOT +0xE0EFB13,GET_ITEM_EQUIPSLOT +0x5E38B33C,ACTOR_DISABLE_WEAPON_RENDER +0x1511D111,ACTOR_FORCE_WEAPON_RENDER +0xAB5FB5AC,IS_WEAPON_DRAWN +0x6AA0EAF2,GIVE_WEAPON_TO_ACTOR +0xBFD6D55F,ACTOR_SET_NEXT_WEAPON +0x8F4B473D,ACTOR_PUT_WEAPON_IN_HAND +0x9950C1B,ACTOR_HAS_WEAPON_IN_HAND +0x13A63AA7,ACTOR_PUT_ITEM_AWAY +0x78145528,ACTOR_HAS_WEAPON_SET_AS_NEXT +0x3417766E,ACTOR_SET_NEXT_EQUIP_SLOT +0xCC02BBD3,ACTOR_GET_NEXT_EQUIP_SLOT +0xA8040D70,ACTOR_GET_CURRENT_EQUIP_SLOT +0x659532FB,ACTOR_GET_BEST_WEAPON_OF_TYPE +0xCB017277,DELETE_WEAPON_FROM_ACTOR +0x42C0FAAA,GET_WEAPON_EQUIPPED +0x6262DC5E,GET_WEAPON_IS_EXTERNALLY_CREATED +0xA4B2016D,GET_WEAPON_IN_HAND +0xCDD6F94,GET_WEAPON_IN_HAND_CRC +0x612066E5,GET_WEAPON_IN_HAND_NAME +0x2776B0F5,GET_WEAPON_ENUM_FROM_CRC +0xFD46B231,ACTOR_USE_ITEM_NOW +0xE6604B39,SET_EQUIP_SLOT_ENABLED +0xA3E18517,GET_EQUIP_SLOT_ENABLED +0x5A80659D,EQUIP_ACCESSORY +0xF7696B8B,DEEQUIP_ACCESSORY +0x9B958A25,HAS_ACCESSORY_ENUM +0x7FDDF876,DROP_ACCESSORY_ENUM +0x8266C617,ACTOR_SET_WEAPON_AMMO +0xB008EF49,ACTOR_SET_WEAPON_AMMO_BY_CRC +0xD47CFBD,ACTOR_HAS_WEAPON +0xCC69DCC1,ACTOR_ADD_WEAPON_AMMO +0x43DEDFAE,ACTOR_GET_WEAPON_AMMO +0xEEC81873,ACTOR_DISCARD_WEAPON_AMMO +0xA091179F,ACTOR_HAS_VARIABLE_MESH +0x17883570,GET_AMMOENUM_FOR_WEAPONENUM +0xA8F64D32,GET_WEAPONENUM_FOR_AMMOENUM +0xAE44869D,SET_WEAPON_GOLD +0x6DBD1DDB,GET_WEAPON_GOLD +0x80B30545,IS_GOLDEN_GUNS_ON +0x195A4286,FIRE_PROJECTILE +0xBE39208A,ACTOR_SHOULD_DROP_ITEMS_ON_DEATH +0xBC46E3E1,ACTOR_SET_DROP_ITEM_ON_DEATH_ENUMERATED +0xBF0235B0,CREATE_WEAPON_PICKUP +0x4BF00F0,REMOVE_ALL_PICKUPS +0x118D085E,GET_NUM_WEAPONS_IN_INVENTORY +0x78A3CD3D,GET_NUM_ACCESSORIES_IN_INVENTORY +0x2C23CBE7,GET_NUM_COLLECTABLES_IN_INVENTORY +0xD695F857,DELETE_ALL_WEAPONS_FROM_ACTOR +0x96AC812B,DELETE_ALL_ACCESSORIES_FROM_ACTOR +0x5AEB2E4F,DELETE_ALL_INVENTORY_FROM_ACTOR +0x3E8E7D7B,SETUP_ASSOCIATED_FRAGMENTS +0x6398AF9A,SET_EXCLUSIVE_JOURNAL_ID +0x45E34464,RESET_EXCLUSIVE_JOURNAL_ID +0x44A1ED5C,TOGGLE_COOP_JOURNAL_UI +0xE6726EF4,TOGGLE_JOURNAL_UI +0xC450C870,GET_JOURNAL_ENTRY +0x761FD935,CREATE_JOURNAL_ENTRY +0x619F1C3D,CREATE_JOURNAL_ENTRY_BY_HASH +0xC17FE40A,IS_JOURNAL_ENTRY_IN_LIST +0x3E84D766,GET_NUM_JOURNAL_ENTRIES_IN_LIST +0x49B02E18,GET_JOURNAL_ENTRY_IN_LIST +0x87DC7F5B,PREPEND_JOURNAL_ENTRY +0x9C40CFAB,APPEND_JOURNAL_ENTRY +0x1BF35BD,REMOVE_JOURNAL_ENTRY +0xB8B7B818,CLEAR_JOURNAL_ENTRY +0x81470AFE,PREPEND_JOURNAL_ENTRY_DETAIL +0xF5DFD684,APPEND_JOURNAL_ENTRY_DETAIL +0xD0567D03,CLEAR_JOURNAL_ENTRY_DETAIL_LIST +0xCF3A69FC,GET_JOURNAL_ENTRY_NUM_DETAILS +0x1630EFC5,GET_JOURNAL_ENTRY_DETAIL_HASH_BY_INDEX +0xEBC9C2FD,GET_JOURNAL_ENTRY_DETAIL_STYLE_BY_HASH +0x539D0404,SET_JOURNAL_ENTRY_DETAIL_STYLE +0x5209C0C0,SET_JOURNAL_ENTRY_DETAIL_STYLE_BY_HASH +0xF0C4E96F,IS_JOURNAL_ENTRY_TARGETED +0xF6FEC269,GET_JOURNAL_ENTRY_TYPE +0x78F9B43,IS_JOURNAL_ENTRY_UPDATED +0x8020011E,GET_JOURNAL_ENTRY_MISC_FLAG +0x8A9B8F0C,GET_TARGETED_JOURNAL_ENTRY +0xC3DC9490,TARGET_JOURNAL_ENTRY +0xCD4633BD,SET_JOURNAL_ENTRY_UPDATED +0x5CB9D376,SET_JOURNAL_ENTRY_TROPHY +0x196A1EDE,DEACTIVATE_JOURNAL_ENTRY +0x5DC073DE,SET_JOURNAL_ENTRY_PROGRESS +0xF2C1D690,GET_JOURNAL_ENTRY_PROGRESS +0xF7687D41,SET_JOURNAL_ENTRY_DISALLOW_TRACKING +0x93CA45DE,GET_JOURNAL_ENTRY_DISALLOW_TRACKING +0x2AA8E2FA,SET_JOURNAL_ENTRY_CURRENT_OBJECTIVE +0xDC28C12F,GET_LAST_NOTE_OBJECTIVE +0x2B969E73,APPEND_JOURNAL_NOTE +0xAA364907,GET_LASSO_TARGET +0x3B775037,GET_LASSO_USER +0x1580F3BF,GET_HOGTIED_MASTER +0xF68C926F,GET_ATTACHED_HOGTIE_VICTIM +0x32030E7C,DETACH_LASSO +0x31AD57FE,FREE_FROM_HOGTIE +0x98FAF5D7,LASSO_EVENT +0xFF5F7D2C,SET_INTENDED_HOGTIE_MASTER +0x5B792331,IS_ACTOR_BEING_DRAGGED +0xA610DC79,IS_ACTOR_HOGTIED +0xB24ADC7C,IS_ACTOR_IN_HOGTIE +0xF45D9723,GET_ACTOR_HOGTIE_STATE +0x4440BCA5,HOGTIE_ACTOR +0xCC04895F,ATTACH_HOGTIE_ACTOR_TO_ACTOR +0xFA2B916E,SET_HOGTIE_ATTACH_VICTIM +0xB7A802C2,CLEAR_HOGTIE_ATTACH_VICTIM +0x16EB367C,IS_ACTOR_HOGTIE_ATTACHED +0xBCED635B,IS_HOGTIE_PUTDOWN_OBSTRUCTED +0x60D10483,IS_HOGTIE_PICKUP_OBSTRUCTED +0x9377291F,IS_HOGTIE_CUTFREE_OBSTRUCTED +0x9634D42E,IS_HOGTIE_HORSE_PICKUP_OBSTRUCTED +0x8F8EDCCF,IMMEDIATELY_LASSO_TARGET +0x9BCC06E2,CREATE_LEASH_OBJECT +0x8EA68EB5,LEASH_CONSTRAIN +0xE58339B3,LEASH_RESTART +0x7F190CA3,LEASH_SET_CONSTRAINT_LENGTH +0x14BEC6F5,LEASH_SET_LEASH_LENGTH +0x7A1376B0,LEASH_RELEASE_CONSTRAINT +0xFCDB481,LEASH_ATTACH_TO_WORLD +0x35D8B21E,LEASH_ATTACH_TO_OBJECT +0xE782EB20,LEASH_ATTACH_TO_FRAGMENT_LOCATOR +0x82A73B3D,LEASH_ATTACH_TO_OBJECT_BONE +0x4B67B8BB,LEASH_ATTACH_TO_OBJECT_BONE_VISUAL +0xC1265E7F,LEASH_SET_LOCATOR_POSITION_VISUAL +0x951B8DF7,LEASH_DETACH_OBJECT +0x46BE1D43,LEASH_IS_BROKEN +0x8640261B,LEASH_BREAK +0xC039BBF1,CREATE_ROPE_FOR_BRIDGE_LEFT +0x51CF9A54,CREATE_ROPE_FOR_BRIDGE_RIGHT +0x5A72DD49,LEASH_STAY_CONSTRAINED +0x1A8494E6,SET_LEASH_COLLIDES +0xE8184916,START_MINIGAME +0xE2B894D1,PUSH_MINIGAME_INPUT +0x117D7E71,IS_MINIGAME_RUNNING +0xCA746CD2,END_CURRENT_MINIGAME +0x627DDEC,SET_CURRENT_MINIGAME_INT +0x2DC768BB,SET_MINIGAME_SCRIPT_OVERRIDE +0x8275FDD4,SET_MINIGAME_WIN_STATE +0x11069324,CREATE_OBJECT_LOCATOR +0xB24362F,OBJECT_LOCATOR_ATTACH_TO_OBJECT_BONE +0xE25F407D,OBJECT_LOCATOR_ATTACH_TO_FRAGMENT_LOCATOR +0xEB33480A,OBJECT_LOCATOR_ATTACH_TO_OBJECT +0x88F7432C,OBJECT_LOCATOR_GET_LOCATOR_LOCAL_ORIENTATION +0x4507DBC,OBJECT_LOCATOR_GET_LOCATOR_LOCAL_POSITION +0xECD8E116,DYNAMICMIXER_TRIGGERSTATE +0xA82D893C,DYNAMICMIXER_TRIGGERSTATE_PERSISTENT +0xF86010D1,DYNAMICMIXER_DETRIGGERSTATE +0x1BED8493,SET_MOTIVE_BY_ENUM +0x92028B49,WORLD_MOVIE_PLAYER +0x8A0D3339,STREAMING_IS_MOVABLE_NAV_MESH_RESIDENT +0x63334F63,STREAMING_REQUEST_MOVABLE_NAV_MESH +0xC329E1DB,STREAMING_UNREQUEST_MOVABLE_NAV_MESH +0xECEE9E20,SET_ACTOR_MOVABLE_NAV_MESH +0xE2F41226,CREATE_NAV_QUERY +0xE96D01E5,NAV_QUERY_IS_DONE +0x5A511344,NAV_QUERY_CAN_PATH_TO_POINT +0xAFA35FFA,NAV_QUERY_RECEIVE_CAN_PATH_TO_POINT +0x7A777D7,NAV_QUERY_START_CAN_PATH_TO_POINT +0x50290FB3,NAV_QUERY_STOP +0x6BCFE549,NET_SET_TUNING_PARAM +0x48275716,NET_LOG +0xD164026F,NET_DUMP_STATE +0x9180FF1C,NET_ENABLE_MULTIPLAYER +0x84B0B5D6,NET_IS_MANAGER_INITIALIZED +0x8CA54980,NET_IS_IN_SESSION +0x5FF2BAE0,NET_IS_ONLINE_AVAILABLE +0x7AB722D8,NET_IS_CONNECTED_FOR_PLAY +0xBC4B6B74,NET_GET_PLAYMODE +0x18EC9CF0,NET_APPLY_PROTOCOL_MASK +0x17D14553,NET_SET_SOCIAL_CLUB_URLS +0xCDAC0F0E,NET_IS_SESSION_HOST +0xFF65A07C,NET_IS_SESSION_CLIENT +0x75DD203B,NET_GET_MAC_ADDRESS32 +0x31700C0A,NET_GET_NAT_TYPE +0x678A865,NET_IS_BUSY +0xFF8DA25D,NET_GET_NET_TIME +0xB829A92D,NET_ENABLE_KICKING +0x71D989BD,NET_IS_LOCAL_GAMER_ONLINE +0x95CDCE7A,NET_GET_LOCAL_GAMER_NAME +0xAD85A378,NET_APPLY_RELEVANCY_OVERRIDE +0x72B03551,NET_CLEAR_RELEVANCY_OVERRIDE +0x860FCDBD,GET_SLOT_FOR_HOST +0xF99A8BC,GET_NUM_PLAYERS +0x84D6F8A7,NET_START_NEW_SCRIPT +0x5E985228,NET_SCRIPTMSG_SEND +0xE2163ECC,NET_SCRIPTMSG_ISPENDING +0xB13DD691,NET_SCRIPTMSG_GETNEXT +0x9253CC79,NET_SCRIPTMSG_REGISTER_HANDLER +0x4957E482,NET_SCRIPTMSG_QUERY_HANDLER +0xBEDD194D,REGISTER_HOST_BROADCAST_VARIABLES +0xF1732769,REGISTER_CLIENT_BROADCAST_VARIABLES +0x2707F082,UNREGISTER_HOST_BROADCAST_VARIABLES +0x130DB5D,UNREGISTER_CLIENT_BROADCAST_VARIABLES +0xD12C55A5,NET_IS_OBJECT_LOCAL +0x68EC589D,NET_REQUEST_OBJECT +0x47C5E353,NET_OBJECT_REPLICATION_MODE_START +0x3932B786,NET_OBJECT_REPLICATION_MODE_END +0x138F38AC,NET_OBJECT_GET_REPLICATION_MODE +0x3E509DF1,NET_OBJECT_SET_REPLICATION_MODE +0x8C7E41E2,NET_OBJECT_LOCK_OWNERSHIP +0x579C2014,NET_ACTOR_GET_SCRIPT_INT +0x7837890B,NET_ACTOR_SET_EQUIP_TYPE +0xA6D794FE,NET_ACTOR_SET_SCRIPT_INT +0x1C147E14,NET_OBJECT_SET_SCRIPT_INT +0xCA6231C1,NET_OBJECT_GET_SCRIPT_INT +0xC09B114B,NET_ACTOR_SET_ALLOW_BLIP_SYNC +0x7284A71B,NET_ACTOR_SET_GRINGO_NAVIGATION_COMPLETE +0x7AB65B0C,NET_GET_SESSION_GAMER_COUNT +0xCAA24B1A,AWARD_ACHIEVEMENT +0x136A5BE9,HAS_ACHIEVEMENT_BEEN_PASSED +0xC792A9E0,ARE_ACHIEVEMENTS_READY +0xDD33E221,AWARD_AVATAR +0xC4F9DA6E,NET_GET_POSSE_COUNT +0x1CAD6D29,NET_IS_POSSE_LEADER +0xD914C89,NET_GET_POSSE_LEADER_SLOT +0xFC52BD15,NET_GET_GAMER_POSSE_LEADER +0xB6006EA9,NET_GET_GAMER_POSSE_SIZE +0x98A5CDC5,NET_POSSE_REMOVE_GAMER +0x106CE441,NET_POSSE_IS_INVITE_PRESENT +0x6A7B9FAD,NET_POSSE_IS_REQUEST_PRESENT +0x2037A74F,NET_RUN_SEARCH_BOT +0x89D8FC30,NET_GET_NUMBER_OF_SESSIONS +0x2010ABE6,NET_IS_SEARCHBOT_BUSY +0x8DF05A4F,NET_SESSION_QUICK_JOIN_NATIVE +0x4AE5DBB2,NET_SESSION_LEAVE_SESSION +0x80B20614,NET_IS_FACTION_SAFE +0x86FF3A9B,NET_SESSION_START_GAMEPLAY +0x81FD9851,NET_SESSION_END_GAMEPLAY +0x3A5C56E3,NET_SESSION_SET_INVITABLE +0xCC7D0431,NET_SET_SESSION_CLOSED_FOR_JOIN +0xDC88B308,NET_SESSION_IS_GAMEPLAY_STARTED +0xD923CD1B,NET_SET_QUICKMATCH_PLAYLIST_RANGE +0xEE3B79EE,NET_SET_THIS_SCRIPT_IS_NET_SCRIPT +0x4238C471,NET_UNREGISTER_AS_NET_SCRIPT +0x667DA125,NET_GET_SCRIPT_STATUS +0x110A9B2F,NET_IS_PLAYER_PARTICIPANT +0x6D403720,NET_IS_HOST_OF_THIS_SCRIPT +0x9272C3BA,NET_GET_HOST_OF_THIS_SCRIPT +0x408E28E2,NET_ALLOW_PLAYERS_TO_JOIN +0xC0FC4B57,NET_IS_SCRIPT_REGISTERED_AS_NET_SCRIPT +0xD9965A9A,NET_SCRIPT_GET_NUM_PARTICIPANTS +0x7BDCBD45,SET_RICH_PRESENCE +0xE5645CB3,NET_GET_KILL_EFFECT_ON +0xBDF22FCA,IS_SESSION_CURRENTLY_JOINED_SESSION +0x9EA132A3,NET_SESSION_SET_GAME_LOCALE_EX +0xCB0BCAE2,NET_SESSION_SET_GAME_MODE_TYPE +0x7A99E7DE,NET_VOICE_BROADCAST_ENABLE +0x1D5E39A0,NET_VOICE_BROADCAST_DISABLE +0xEF6BF96E,NET_ARE_UNLOCKS_READY +0xC8B680B3,NET_IS_UNLOCKED +0xBE0E275F,NET_GET_OVERLOAD_STATE_FOR_SLOT +0xCB42389E,NET_GET_AREA_OVERLOAD_STATE_FOR_SLOT +0xB7856424,NET_SET_SYNC_PRIORITY_LIMITS +0xF2FA1DE8,UPDATE_PROFILE_STAT +0xCF674E31,UPDATE_STRING_PROFILE_STAT +0x49BC0219,NET_BROADCAST_EXPLODE_TARGET_EVENT +0xD6780B56,DO_FILE_CRC +0x9A5841E5,FLAG_FILE_CRC_MISMATCH +0x489A2B93,NET_SET_UNLOCK +0x4A721118,GAME_INSTANCE_ITERATOR_START +0x4500B98A,GAME_INSTANCE_ITERATOR_NEXT +0x85049505,GAME_INSTANCE_SET_REGION +0x5C51D43C,ADD_PLAYLIST_TO_DB +0xE2C4B68,GET_PLAYLIST_FROM_DB +0xB514ECA7,GET_PLAYLIST_FROM_DB_BY_NAME +0x12304873,NET_UPDATE_LEADERBOARD +0x4D0C8AA4,NET_START_LB_UPDATE +0x89277EA3,NET_END_LB_UPDATE +0x2B8F86ED,NET_CREATE_FRIEND_SCORE_READER +0x88249424,NET_REPORT_FRIEND_SCORES +0x87A3A38D,NET_GET_LOCAL_GAMER_SCORE_INFO +0x76F09F04,NET_GET_NEAREST_FRIEND_NAME +0xE5C5CE63,NET_IS_FRIEND_SCORE_INFO_AVAILABLE +0x4F652A00,NET_GET_LOCAL_GAMER_RANK +0xFC564903,NET_GET_NEAREST_FRIEND_RANK +0x86BC0A55,NET_CHALLENGE_LB_CREATE_READER +0xEB4A6D85,NET_CHALLENGE_LB_DESTROY_READER +0x5FD52711,NET_CHALLENGE_LB_DOES_READER_EXIST +0xD0808C42,NET_CHALLENGE_LB_IS_READ_COMPLETE +0x97BB984,NET_CHALLENGE_LB_IS_LOCAL_GAMER_INFO_VALID +0xEA7ADF42,NET_CHALLENGE_LB_GET_LOCAL_GAMER_NAME +0x3A8C77AD,NET_CHALLENGE_LB_GET_LOCAL_GAMER_STATS +0xE89C6E4F,NET_CHALLENGE_LB_IS_TOP_FRIEND_INFO_VALID +0x791F35A,NET_CHALLENGE_LB_GET_TOP_FRIEND_NAME +0x49C2B05F,NET_CHALLENGE_LB_GET_TOP_FRIEND_STATS +0xC813DBEF,NET_CHALLENGE_LB_IS_TOP_SCORER_INFO_VALID +0xE6B4F505,NET_CHALLENGE_LB_GET_TOP_SCORER_NAME +0x70AF0351,NET_CHALLENGE_LB_GET_TOP_SCORER_STATS +0x293C3288,NET_CHALLENGE_LB_IS_SCORER_ABOVE_PLAYER_INFO_VALID +0xA7F231B0,NET_CHALLENGE_LB_GET_SCORER_ABOVE_PLAYER_NAME +0x984749B4,NET_CHALLENGE_LB_GET_SCORER_ABOVE_PLAYER_STATS +0x8808546E,NET_GET_AND_CLEAR_GAME_MODE_REQUEST +0x1A47001B,NET_GET_AND_CLEAR_PLAYLIST_REQUEST +0xFF6B8F4,NET_GET_AND_CLEAR_QUIT_GAME_REQUEST +0x81F24788,NET_GET_FREE_ROAM_MODE +0x41921C98,NET_SET_FREE_ROAM_MODE +0xE822010A,NET_REGISTER_GAME_TYPE +0xA9459BB6,NET_REGISTER_PLAYLIST_TYPE +0x9D9784B8,NET_SET_PLAYLIST_LOCKED +0x8E0D7219,NET_AUTHENTICATE_GAMER +0xC00C8C94,NET_GET_PLAYER_COLOR_IDX +0x9BC05C90,NET_GET_GAMER_HEX_COLOR +0x97931B87,NET_GET_GAMER_RGB_COLOR +0xFE83A4FE,NET_IS_GAMER_RADAR_BLIP_VISIBLE +0xBECB3EEC,NET_PLAYER_BARKER_RESET +0x75F27D60,NET_GET_USING_SPHERE_CURVES +0xA64A451E,NET_PLAYER_SHOW_CONTEXT_MENU +0x67031EDA,NET_PLAYER_LIST_RESET +0xFD355ED1,NET_PLAYER_LIST_ADD_ITEM +0x805AC16A,NET_PLAYER_LIST_ADD_GAMER_SLOT +0xAAE9E6B,NET_PLAYER_LIST_SET_HIGHLIGHT +0x20B684AB,NET_PLAYER_LIST_SET_TOP_TEAM +0x84CD0651,NET_PLAYER_LIST_SET_TEAM_SCORE +0xA56B459C,NET_PLAYER_LIST_SET_TEAM_SORT +0x547A660,NET_PLAYER_LIST_SET_TITLE +0xD6111569,NET_PLAYER_LIST_SET_TEMPLATE +0xFA382FCB,NET_PLAYER_LIST_SET_HEADER +0xCF065186,NET_PLAYER_LIST_SET_DESCRIPTION +0xBE7965C8,NET_PLAYER_LIST_TIMER_SET +0xD4C7E0D5,NET_PLAYER_LIST_TIMER_ENABLE_FLASHING +0x98FC68AF,NET_PLAYER_LIST_SET_CURRENT_ITEM +0x95A543E2,NET_PLAYER_LIST_SET_CURRENT_ITEM_BY_SLOT +0xC673362C,NET_PLAYER_LIST_SET_CURRENT_ITEM_MSCORE_STRING +0xEC6F465F,NET_PLAYER_LIST_SET_CURRENT_ITEM_MSCORE_INT +0x794F5C21,NET_PLAYER_LIST_SET_CURRENT_ITEM_TEAM +0xBD42097A,NET_PLAYER_LIST_SET_CURRENT_ITEM_PRIORITY +0xC09ACD5C,NET_PLAYER_LIST_SET_CURRENT_ITEM_DEAD +0xC73DAD2B,NET_TICKER_REPORTF +0x8A1D83F2,NET_TICKER_CLEAR +0x27D40FD1,NET_SCOREGRAPH_SETUP +0xA3AE09EF,NET_SCOREGRAPH_CLEAR_MARKERS +0x746897AB,NET_SCOREGRAPH_ADD_PLAYER_SCORE +0xB4C867BD,NET_SCOREGRAPH_ADD_PLAYER_LABEL +0x12558DBD,NET_SCOREGRAPH_ADD_TEAM_SCORE +0x134AAF17,NET_SCOREGRAPH_ADD_TEAM_LABEL +0xB396DFF,VERIFY_TYPE_COUNT +0x24F3A0DB,VERIFY_EVENT_COUNT +0xC8C0C708,LOG_OBJECT2 +0x9A756A72,LOG_OBJECT3 +0xFC8E55ED,IS_LAYOUTREF_VALID +0xD7E7187B,IS_OBJECT_VALID +0x5A9CC0B0,IS_ITERATOR_VALID +0x36CC24A4,IS_PERS_CHAR_VALID +0x64BAF32C,IS_POPSET_VALID +0x262164F8,IS_ZONE_VALID +0x4CC5681D,IS_CRIME_VALID +0x261ECB20,GET_OBJECT_TYPE +0xADB08F12,GET_NUM_OBJECTS_OF_TYPE +0xA2866F3B,GET_MAX_NUM_OBJECTS_OF_TYPE +0x5699DE7E,FIND_NAMED_LAYOUT +0x78CF43C1,GET_ACTOR_NAME +0xDF40614F,GET_OBJECT_NAME +0xBADE22A2,GET_LAYOUT_NAME +0x5C4262F9,GET_OBJECT_MODEL_NAME +0xF662EAE1,GET_POPULATION_SET_NAME +0x2CF0010F,GET_COVER_LOCATION_FROM_OBJECT +0x8A01B64B,GET_GRINGO_FROM_OBJECT +0xA7E9DA22,GET_PROP_FROM_OBJECT +0x111501F7,GET_OBJECT_FROM_GRINGO +0x4A2063EC,GET_OBJECT_FROM_ACTOR +0xFADF0B96,GET_OBJECT_FROM_VOLUME +0x35B5587D,GET_OBJECT_FROM_PERS_CHAR +0xEDA897FA,GET_OBJECT_FROM_SQUAD +0x831338D9,GET_OBJECT_FROM_CRIME +0x550E178,GET_OBJECT_FROM_PHYSINST +0x34F0AD96,GET_ACTOR_FROM_OBJECT +0x502DAC62,GET_VOLUME_FROM_OBJECT +0x24B2FFC,GET_PERS_CHAR_FROM_OBJECT +0xF5EE5874,GET_ITERATOR_FROM_OBJECT +0xD0C471FB,GET_SQUAD_FROM_OBJECT +0x51D6DA2C,GET_LAYOUT_FROM_OBJECT +0x6B72661F,GET_MOBILE_LAYOUT_FROM_OBJECT +0xB578DB52,GET_CRIME_FROM_OBJECT +0xD4048969,GET_CAMERA_FROM_OBJECT +0x50A7E334,GET_NAV_QUERY_FROM_OBJECT +0x6CA53214,CREATE_LAYOUT +0x426828CB,CREATE_MOBILE_LAYOUT +0xE8C04F05,CREATE_CORPSE_IN_LAYOUT +0x40856E8A,CREATE_CORPSE_IN_LAYOUT_RANDOM +0x2EC081E4,CREATE_CORPSE_VARIATION_IN_LAYOUT +0x8468286B,CREATE_CORPSE_VARIATION_IN_LAYOUT_RANDOM +0x708C7D7B,CREATE_COVER_LOCATION_IN_LAYOUT +0x44A34042,CREATE_POINT_IN_LAYOUT +0xF9CC7F63,CREATE_POINT_LIGHT_IN_LAYOUT +0xA17311E4,CREATE_VOLUME_IN_LAYOUT +0x177A3843,CREATE_VOLUME_SET_IN_LAYOUT +0x25C9845,CREATE_GRINGO_IN_LAYOUT +0x88087384,CREATE_GRINGO_ON_OBJECT +0x66A8AF91,CREATE_GRINGO_IN_LAYOUT_BY_ID +0x80FB8BDE,CREATE_GRINGO_ON_OBJECT_BY_ID +0x779267C3,CREATE_PROPSET_IN_LAYOUT +0xE351587D,CREATE_PROP_IN_LAYOUT +0xD92BA5B6,CREATE_PROP_IN_LAYOUT_BY_ID +0xAF4F1910,CREATE_COVER_PROP_IN_LAYOUT +0xB20CA4DF,CREATE_SPAWN_POINT_IN_LAYOUT +0x80B8A1BE,CREATE_PATH_IN_LAYOUT +0xB6709FF4,CREATE_PATH_IN_LAYOUT_FROM_TABLE +0x2703760F,CREATE_OBSTACLE_IN_LAYOUT +0x7E81694C,CREATE_OBSTACLE_ON_OBJECT +0xF7277A0F,CREATE_SQUAD_IN_LAYOUT +0x91C6AC0E,CREATE_FORMATION_IN_LAYOUT +0xD60032F6,CREATE_CRIME_IN_LAYOUT +0xE77F61B2,CREATE_AI_SPEECH_PACKAGE_IN_LAYOUT +0xD9AC8830,RELEASE_LAYOUT_REF +0xE78E66F0,RELEASE_LAYOUT_OBJECTS +0x28A2A4CC,DESTROY_LAYOUT_OBJECTS +0x3CD2C250,STORE_MOBILE_LAYOUT_TRANSFORMS +0x7EEC1F40,MAKE_LAYOUT_OBJECTS_RELATIVE +0xC15C3361,TRANSFORM_OBJECT_RELATIVE +0x8212247D,MARK_OBJECT_FOR_AGGRESSIVE_CLEANUP +0x67DB5ABF,RELEASE_OBJECT_REF +0x32489AFB,RELEASE_ACTOR +0x81F984F8,RELEASE_VOLUME +0x19C3CF93,RELEASE_PERS_CHAR +0x8CAB944F,DESTROY_VOLUME +0x8BD21869,DESTROY_ACTOR +0xC1756F39,DESTROY_LAYOUT +0x21144994,DESTROY_OBJECT +0xE284A10C,DESTROY_ITERATOR +0x4028CE77,DESTROY_PERS_CHAR +0x6BC96263,DESTROY_POINT_LIGHT +0xD064878D,DESTROY_POPULATION_SET +0xD62F3D27,DESTROY_ZONE +0xE9AB08C0,DESTROY_CRIME +0xCBB2267A,GIVE_OBJECT_TO_ACTOR +0x2D160228,GIVE_OBJECT_TO_LAYOUT +0x48B36E07,GET_OBJECT_OWNER +0x86B0B004,DESTROY_GC_OBJECTS +0xB52A3D48,GET_AMBIENT_LAYOUT +0x76FBF412,GET_ART_GRINGO_LAYOUT +0xADE13224,GET_GC_LAYOUT +0x921B5F2B,CREATE_OBJECTSET_IN_LAYOUT +0x552189FD,IS_OBJECTSET_VALID +0x43FBBDE1,ADD_OBJECT_TO_OBJECTSET +0xE09DE8A0,GET_OBJECTSET_SIZE +0xBF680846,GET_OBJECT_FROM_OBJECTSET +0x2CB3B980,GET_OBJECTSET_FROM_OBJECT +0x114FCBD,IS_OBJECT_IN_OBJECTSET +0xA3E05BAE,REMOVE_OBJECT_FROM_OBJECTSET +0x11EE07B5,CLEAN_OBJECTSET +0x179A07DD,DISBAND_OBJECTSET +0x3A71A589,DESTROY_OBJECTSET +0x5720BF8A,SET_CORPSE_PERMANENT +0x44C07DA5,IS_POINT_LIGHT_VALID +0x5F66B23E,SET_ENABLE_POINT_LIGHT +0x2ECF04F3,IS_OBJECT_IN_VOLUME +0xCB3F7DA5,LOCATE_NAMED_POINT +0xA36ED4A6,LOCATE_NAMED_ACTOR +0x6F513950,LOCATE_NAMED_VOLUME +0x35C8FD4A,LOCATE_ACTORS_IN_VOLUME +0xF701FF7,LOCATE_GRINGOS_IN_VOLUME +0xFEC1CBC6,SET_VOLUME_PARAMS +0xB104FF3E,ADD_TO_VOLUME_SET +0x122C916E,COPY_VOLUME +0x14DCF1EF,SCALE_VOLUME +0x1229C536,SET_ACTOR_STAY_OUTSIDE_OF_VOLUME +0x617C9630,ADD_ACTOR_STAY_OUTSIDE_OF_VOLUME +0x6A4A1699,SET_ACTOR_STAY_WITHIN_VOLUME +0xCDEF4316,ADD_ACTOR_STAY_WITHIN_VOLUME +0xED6D63FE,CLEAR_ACTOR_STAY_WITHIN_VOLUME +0x8B46B294,SET_ACTOR_VOLUME_PARAMETERS +0x2974CAF6,REMOVE_ACTOR_STAY_WITHIN_VOLUME +0x42EF7DB7,REMOVE_ACTOR_STAY_OUTSIDE_OF_VOLUME +0xE41A6AC,ADD_CORPSE_RETAINMENT_VOLUME_OBJ +0x983ED842,REMOVE_CORPSE_RETAINMENT_VOLUME_OBJ +0x43E2808B,ADD_CORPSE_REMOVAL_VOLUME_OBJ +0xE9E8C31A,REMOVE_CORPSE_REMOVAL_VOLUME_OBJ +0xACF7E75,ADD_CORPSE_PREVENT_INTERFERENCE_VOLUME_OBJ +0x80FF115A,REMOVE_CORPSE_PREVENT_INTERFERENCE_VOLUME_OBJ +0x288E4BFB,TOGGLE_COVER_PROPS +0x35E78298,TOGGLE_COVER_PROP +0xBB05B731,CREATE_ZONE_VOLUME +0x9189EB8B,CREATE_VOLUME_SPAWNING_ZONE_VOLUME +0xAF1D570B,CREATE_POPULATION_SET +0xB40BBE3,CREATE_POPULATION_SET_IN_LAYOUT +0xB0882841,CREATE_NAMED_POPULATION_SET +0x4251BF6C,CREATE_GATEWAY_IN_LAYOUT +0x64BEDDEA,CREATE_GATEWAY_FROM_PARAMS_IN_LAYOUT +0x92CC441F,CREATE_GATEWAY_TYPE +0xD0A845E9,SNAP_ACTOR_TO_GRINGO +0xAFC0B99,RESET_RMPTFX_ALL +0x547166A7,RESET_RMPTFX_IN_VOLUME +0xD3A523FD,IS_RMPTFX_FINISHED +0x1A4C98C1,SET_RMPTFX_SCALE +0x21BCC0A9,HIDE_RMPTFX_EFFECT +0x5B417C9C,SHOW_RMPTFX_EFFECT +0x1E56BAFD,START_RECORDING_SHOOT_EVENTS_FOR_ACTOR +0xCFE22435,STOP_RECORDING_SHOOT_EVENTS_FOR_ACTOR +0xFBB1BCDF,ADD_FORMATION_LOCATION +0x17FC65A4,GET_FORMATION_LOCATION +0xBE5D84BF,GET_NUM_FORMATION_LOCATIONS +0x391475E3,GET_CRIME_POSITION +0xDB2BDEA8,GET_CRIME_TYPE +0xA2DA4D24,GET_CRIME_BEGIN_TIMESTAMP +0xD96DBABD,GET_CRIME_END_TIMESTAMP +0xE07C2D99,GET_CRIME_WITNESSED +0xEC2C34A4,GET_CRIME_CRIMINAL +0xD2FD7CB6,GET_CRIME_VICTIM +0x67F224B4,GET_CRIME_WORLD_REGION +0xE2FE0673,GET_CRIME_FACTION +0xB52BA7E6,GET_CRIME_COUNTER +0x72A048B7,IS_CRIME_TALLIED +0x85C58BE1,IS_CRIME_IN_PROGRESS +0x72C52B55,GET_CRIME_OBJECTSET +0xD60B8F77,SET_CRIME_OBJECTSET +0xB3F4043B,SET_CRIME_POSITION +0x85425011,SET_CRIME_TYPE +0x2AE7D51F,SET_CRIME_BEGIN_TIMESTAMP +0x898B00F4,SET_CRIME_END_TIMESTAMP +0x6761D53A,SET_CRIME_WITNESSED +0xBA02916B,SET_CRIME_CRIMINAL +0x7B917033,SET_CRIME_VICTIM +0x8521A685,SET_CRIME_WORLD_REGION +0x1E552B26,SET_CRIME_FACTION +0xCC14DC8D,SET_CRIME_COUNTER +0x54E7F26B,SET_CRIME_TALLIED +0x2D6CD106,SET_CRIME_IN_PROGRESS +0xD8A12B74,CREATE_OBJECT_ITERATOR +0x2F358B89,CREATE_NAMED_OBJECT_ITERATOR +0xE96A0318,START_OBJECT_ITERATOR +0xD88DC865,OBJECT_ITERATOR_NEXT +0x91A3A831,OBJECT_ITERATOR_PREV +0x191E32C0,OBJECT_ITERATOR_CURRENT +0x351A482F,OBJECT_ITERATOR_RESET +0x9624A938,ITERATE_ON_PARTIAL_NAME +0xD117DF0D,ITERATE_ON_PARTIAL_MODEL_NAME +0xBE553F84,ITERATE_ON_OBJECT_TYPE +0xD7A370D5,ITERATE_IN_AREA +0x2243FA6E,ITERATE_IN_SPHERE +0x6914D904,ITERATE_IN_VOLUME +0xF35C5859,ITERATE_EVERYWHERE +0xF3ABE99C,ITERATE_IN_LAYOUT +0xDF6B5E94,ITERATE_IN_SET +0xD8BA78E,ITERATE_IN_EVENT_TRAP +0x8BCB6B86,ITERATE_IN_VOLUME_SET +0x12AA009F,GET_ITERATOR_PARENT +0xA3874D8A,GET_NUM_ITERATOR_MATCHES +0x70F9693,FIND_OBJECT_IN_OBJECT +0xCF875EFA,FIND_OBJECT_IN_LAYOUT +0x53A761DE,FIND_ACTOR_IN_LAYOUT +0xAC830865,FIND_VOLUME_IN_LAYOUT +0xC9365FBC,CLEAR_AMBIENT_OBJECTS_SPHERE +0xBB77E597,CLEAR_AMBIENT_OBJECTS_VOLUME +0x31201B4C,GET_OBJECT_POSITION +0x3C45D66A,ROTATE_OBJECT_AROUND_AXIS +0xCE412E46,GET_OBJECT_AXIS +0x2243EA59,GET_OBJECT_RELATIVE_POSITION +0x15CDF203,GET_OBJECT_RELATIVE_OFFSET +0x919583DC,GET_OBJECT_RELATIVE_ORIENTATION +0x6689F85C,GET_OBJECT_RELATIVE_ORIENTATION_IN_OBJECT_SPACE +0xFC718FC5,PREPARE_CORPSE_FOR_ANIMAL_CONSUMPTION +0x663F1464,GET_POSITION_OBJECT_SPACE +0x27B7D6D6,GET_OBJECT_ORIENTATION +0x1C02D2F8,GET_OBJECT_HEADING +0xC5D796F8,SET_OBJECT_POSITION +0x5AB0BBA6,SET_OBJECT_POSITION_ON_GROUND +0xC8A4EE74,SET_OBJECT_ORIENTATION +0xF437B3D9,SNAP_OBJECT_TO_GROUND +0x30516389,GET_OBJECT_NAMED_BONE_POSITION +0xCAD543AD,GET_OBJECT_NAMED_BONE_ORIENTATION +0x8C0E3E29,TELEPORT_OBJECT_TO_OBJECT +0xAD08BA79,IS_OBJECT_ATTACHED +0x533475AE,GET_OBJECT_ATTACHED_TO +0xE1421B42,ATTACH_OBJECTS +0xCC277C0A,ATTACH_OBJECTS_NO_DRV +0xB6506558,ATTACH_OBJECTS_USING_LOCATOR +0x319D70BD,ATTACH_OBJECTS_CONTINUOUS +0x1D711058,ATTACH_OBJECTS_PHYSICAL +0x325F7E50,ATTACH_SET_ROTATIONAL_CONSTRAINT +0x50305244,IS_ATTACHMENT_VALID +0xE894DC13,REMOVE_OBJECT_ATTACHMENT +0x67FC68DB,REMOVE_OBJECT_FROM_ATTACHMENT +0x8FB32562,REMOVE_ALL_OBJECT_ATTACHMENTS +0x2F7B457B,SET_ATTACHMENT_LOCAL_ROTATION +0xD4A54348,SET_ATTACHMENT_LOCAL_OFFSET +0xA870B28E,SET_ATTACHMENT_IGNORE_ROTATION +0x3EEA78A8,REFERENCE_OBJECT +0xE9AABF2F,REFERENCE_ACTOR +0xCEA40973,DEREFERENCE_OBJECT +0x92339B5E,DEREFERENCE_ACTOR +0xCBA75200,INIT_NATIVE_ACTORENUM_PLAYER +0x88FD9623,INIT_NATIVE_ACTORENUM_HUMAN +0x192973A0,INIT_NATIVE_ACTORENUM_ANIMAL +0x4D42E285,INIT_NATIVE_ACTORENUM_RIDEABLE_ANIMAL +0xE694F53A,INIT_NATIVE_ACTORENUM_FLYING_ANIMAL +0x6D0B8619,INIT_NATIVE_ACTORENUM_VEHICLE +0x807B9519,INIT_NATIVE_ACTORENUM_TRAIN +0x1904CC1D,INIT_NATIVE_ACTORENUM_DLC_PLAYER +0x1957B498,INIT_NATIVE_ACTORENUM_DLC_HUMAN +0x5195632,INIT_NATIVE_ACTORENUM_DLC_ANIMAL +0x10BD98C9,INIT_NATIVE_ACTORENUM_DLC_RIDEABLE_ANIMAL +0x8A4F9046,INIT_NATIVE_ACTORENUM_DLC_FLYING_ANIMAL +0x495026DA,INIT_NATIVE_ACTORENUM_DLC_VEHICLE +0x8C9721D6,INIT_NATIVE_ACTORENUM_DLC_TRAIN +0xF2140DEE,IS_ACTORENUM_DLC +0x9B903F45,IS_ACTORENUM_INSTALLED +0x16D1E1B4,IS_ACTORENUM_PLACEHOLDER +0x8D67F397,CREATE_ACTOR_IN_LAYOUT +0x6A307D5F,CREATE_PLAYER_ACTOR_IN_LAYOUT +0x13B3937,CREATE_PERS_CHAR_IN_LAYOUT +0xCCC0A3F3,CREATE_ACTOR_VARIATION_IN_LAYOUT +0x637E446B,RESPAWN_PLAYER_ACTOR_IN_LAYOUT +0x24F4DAB2,IS_ACTOR_INITED +0xB28E9EC,GET_ACTOR_ENUM +0xD98CB6F6,GET_ACTOR_ENUM_STRING +0xC739D1D2,GET_ACTOR_ENUM_FROM_STRING +0x990614C1,GET_ACTOR_ENUM_STRING_FROM_ENUM +0xB50E95D7,GET_ACTOR_ENUM_VARIATION_COUNT +0x2803BDA8,GET_ACTOR_ENUM_FACTION +0x7AB17813,SWITCH_ACTOR_ENUM_VARIATION +0x95FBA0B0,SWITCH_PLAYER_TO_ENUM +0x39928706,TURN_ACTOR_INTO_ZOMBIE +0x12A86E9D,SET_ACTOR_HARD_LOCK_AQUIRE_BONE_CASUAL +0x5613615B,SET_ACTOR_HARD_LOCK_AQUIRE_BONE +0xB54567B9,GET_CURRENT_ACTOR_ENUM_VARIATION +0x9AA02DA7,REQUEST_ASSET +0x6005B514,GET_ASSET_ID +0xE7829D28,REMOVE_ASSET +0x9EDBBB84,GET_ASSET_NAME +0x1FCC8FEF,GET_CORPSE_ACTOR_ENUM +0xAF2597E8,GET_PREVIOUS_ACTOR_FROM_CORPSE +0x97951004,REQUEST_ARTICULATED_CORPSE +0xD447878,REQUEST_FIXED_CORPSE +0xCEC355CE,SET_PROP_COLLIDE_WITH_WORLD +0x418A22D5,SET_PROP_COLLIDE_WITH_MOVABLES +0x77403213,SET_PROP_COLLIDE_WITH_OBJECT +0x601FC9F4,SET_OBJECT_COLLIDE_WITH_WORLD +0x5D69EA6,SET_OBJECT_COLLIDE_WITH_MOVABLES +0x9AC1CA75,SET_OBJECT_COLLIDE_WITH_OBJECT +0xDC83543,SET_PROP_AI_OBSTACLE_ENABLED +0x49D0DF2E,GET_CURVE_FROM_OBJECT +0x767E08D0,DESTROY_CAMERA +0x59C2DC62,DESTROY_CAMERA_SHOT +0xC94CC336,CREATE_WORLD_SECTOR +0xBF81A6C4,IS_WORLD_SECTOR_LOADED +0x276A420B,MARK_REGION_READY +0xA5F229C9,GET_WORLD_SECTOR_CHILD_OBJECT +0xF146D2C,DEBUG_SELECT_OBJECT +0xF46FC138,DEBUG_ASSERT_ON_SELECTED_DESTRUCTION +0x3B2D067,SAVE_POP_SET_BIRDS_SPAWNING_FROM_TREES +0x6C526E7B,SET_TOWN_VOLUME_FOR_AMBIENT_PEDS +0xC1195126,SAVE_POP_SET_HUMAN_SPAWNING_IN_TOWN +0xCDD849,SAVE_POP_SET_HUMAN_SPAWNING_IN_TOWN_CONVERSATION_FULL +0x6138B1B8,SAVE_POP_SET_HUMAN_SPAWNING_IN_TOWN_CONVERSATION_RESPONSE +0xCE081203,SET_AGRESSIVE_EVENT_TOWN_BBX +0xBF6E9855,SET_AGRESSIVE_EVENT_TIME_RANGE +0x4193D42F,SET_AGRESSIVE_EVENT_LOOP +0xF037DCA2,SET_AGRESSIVE_EVENT_ON +0x3748F199,SET_TOWN_DENSITY +0x3CD9C87,SET_WEATHER_POP_DENSITY +0x43FF4632,SET_SPAWN_PEDS_ON_SIDEWALK +0x44930268,SET_PATH_LOOPING +0xECC40138,ADD_POINT_TO_PATH +0xCD89FB70,SET_POINT_IN_PATH +0xBD374C00,GET_NUM_PATH_POINTS +0x42A4CCD5,GET_PATH_NUM_POINTS +0x415F635C,GET_PATH_POINT +0x2B02A877,ESTIMATE_PATH_LENGTH +0x7A00433F,ESTIMATE_DISTANCE_ALONG_PATH +0xA1D9AF6B,ESTIMATE_TWO_DISTANCES_ALONG_PATH +0x854ACCFE,SET_HORSE_BREAK_INTRO +0xFD198D8B,SET_SAVING_GAME +0xA62D75BA,SET_SAVING_GAME_ZOMBIE +0x14664FF4,SET_USING_BINOCULARS +0x2CA16327,ACTIVATE_ACTOR_FOR_PERS_CHAR +0x9B2A39BC,DEACTIVATE_ACTOR_FOR_PERS_CHAR +0x6F8C238B,DEACTIVATE_ACTORS_FOR_PERS_CHARS_IN_VOLUME +0xE04ED21E,GET_ACTOR_FROM_PERS_CHAR +0xD78D1B4F,GET_PERS_CHAR_DEATH_TIMESTAMP +0x69DA275F,GET_PERS_CHAR_FROM_ACTOR +0x67258116,SET_PERS_CHAR_SAFE_ZONE +0x5F3A1B81,IS_PERS_CHAR_ALIVE +0xEDA4B02B,REVIVE_PERS_CHAR +0x2A709F33,SET_PERS_CHAR_EXEMPT_FROM_AMBIENT_RESTRICTIONS +0xC85CFEA9,SET_PERS_CHAR_ENABLED +0x366B0AD1,SET_PERS_CHAR_ALLOW_SPAWN_ELSEWHERE +0x17B69196,GET_PHYSINST_VELOCITY +0xAFB1DFA2,IS_PHYSINST_ACTIVE +0x38636EBF,SET_PHYSINST_COLLIDES_AGAINST_INACTIVE +0x2C0AF634,SET_PHYSINST_FROZEN +0x789AA2B2,IS_PHYSINST_FROZEN +0xEBD9DFE6,SET_PHYSINST_HIDE +0x445990D8,IS_PHYSINST_HIDE +0xB5F9F4CF,BREAK_OFF_ABOVE +0xBA5E579,GET_LOCATOR_OFFSETS +0xFD759593,SET_INFINITE_MASS_VS_MOVERS +0x87A2C1D5,SET_GLOBAL_DISABLE_SPU_COLLIDER_UPDATE +0x374DE883,SET_GLOBAL_AGGRESSIVE_CORPSE_RECYCLING +0x89B45C7D,LIQUID_TEST_SET_VELOCITY_SCALE +0x4C02E1E5,CLEAN_CACHE_ENTRIES +0x25277BBC,IS_PROP_BROKEN +0x5AEA8801,GET_PROP_VELOCITY +0x28425D8C,SET_PROP_VELOCITY +0x544BCE48,SET_PROP_ANGULAR_VELOCITY_DEGS +0xC9F3981D,SET_PROP_VELOCITY_ON_AXIS +0x16C0A6CB,IS_PHYSINST_VALID +0xE83E6A41,IS_PHYSINST_READY +0x6243A6AF,IS_PHYSINST_IN_LEVEL +0x750ADBE5,SET_SLEEP_TOLERANCE +0x987FD4F6,SET_BRIDGE_STIFFNESS +0xC0961D18,ACTIVATE_PHYSINST +0x65CA3037,HAS_PHYSINST_BROKEN_APART +0x734CC17B,LOCATE_PHYSINST_OF_TYPE +0x4FF36FA7,LOCATE_PHYSINST_OF_PARTIAL_TYPE +0xC5E372BC,LOCATE_PHYSINSTS_OF_PARTIAL_TYPE +0x441CDD55,ATTACH_PHYSINST_TO_WORLD2 +0x4A05AA7D,ATTACH_PHYSINST_TO_WORLD2_HIGH_QUALITY +0x8B9659EF,RELEASE_CONSTRAINT +0xD6BFDD9,HIDE_PHYSINST +0x342FDCD6,SHOW_PHYSINST +0xED3ADF67,SET_SECTOR_PROPS_SUPER_LOCKED +0x3774465F,LIGHTS_SET_ON_TIME +0xD0CDEED4,LIGHTS_SET_OFF_TIME +0x1260ACCC,SET_PROP_NO_FADE +0x77D6ABF5,NET_GAMER_SET_ACTOR_OVERRIDE +0xE79F6CD4,NET_GAMER_SET_TEAM +0xFD91BE0D,NET_GAMER_SETMY_JPN_TITLE +0xE2E6C722,NET_GAMER_GET_JPN_TITLE +0xCE8F6304,NET_GAMER_BARKER_ACCEPT +0xAB32D5D9,NET_GAMER_BARKER_REJECT +0x7BD7A465,NET_GAMER_SET_TITLE +0x2357CA74,NET_GAMER_ICON_SET_LIFE +0x160E79C6,NET_GAMER_ICON_FORCE_VISIBILITY +0xB5DDEF68,NET_GAMER_ICON_RESET_TIMER +0x34960D06,NET_GAMER_ICON_FORCE_HIDDEN +0xE783219A,NET_GAMER_ICON_FORCE_TEXT_VISIBLE +0x1958F478,NET_GAMER_ICON_FORCE_VISIBLE +0x2FB85996,NET_GAMER_ICONS_SHOW_LOCAL +0xF34B8448,NET_GAMER_ICONS_SET_STEALTH +0x796E66E7,NET_GAMER_BLIPS_SET_STEALTH +0x650A7440,NET_HUD_TUNE_VALUE +0xA0A5FF80,NET_GAMER_SET_ICON_STEALTH_OVERRIDE +0x2634F265,NET_GAMER_SET_BLIP_STEALTH_OVERRIDE +0x4A2E7533,NET_GAMER_SET_BLIP_OVERRIDE +0x8D84437,NET_GAMER_BLIPS_FORCE_VISIBLE +0x784F04DD,NET_GAMER_BLIPS_SHOW_POSSE_MEMBERS +0x3DD6E36A,NET_GAMER_SET_BLIP_FORCE_HIDDEN +0xE5FE0A6A,NET_GAMER_BLIPS_SHOW_ON_FULL_MAP +0x25F8C46A,NET_GAMER_IS_BLIP_VISIBLE +0x3248D20E,NET_GAMER_BLIPS_TREAT_COVER_AS_ALIVE +0x9DDB29B1,NET_POSSE_GET_LEADER_WAYPOINT +0x24A1B923,NET_POSSE_IS_LEADER_WAYPOINT_VALID +0x2547029C,PLAYSTAT_INT +0x713B1D7F,PLAYSTAT_STRING +0x9C80A3A4,PLAYSTAT_DEED_NAMED +0x27A00456,PLAYSTAT_MP_DEED_START +0x120E6123,PLAYSTAT_MP_DEED_COMPLETE +0x4585821E,PLAYSTAT_MP_DEED_COMPLETE_EX +0x46C39437,PLAYSTAT_MP_COOP_COMPLETE +0x1344515B,BEGIN_POPULATION_DEFINITION +0x364F41D6,END_POPULATION_DEFINITION +0xC1B8DEA,LINK_ACTORENUM_TO_POPULATION +0x93B6135B,LINK_ACTORENUM_TO_POPULATION_TIMED +0x84F75008,UNLINK_ACTORENUM_FROM_POPULATION +0xC79F2BD3,SET_ACCESSORYSET_ON_SPAWN +0x5996941F,SET_ZONE_POPULATION_ANIMAL_DOMESTICATION +0x1B271D85,SET_ZONE_POPULATION_COUNT +0xE339719A,SET_ZONE_POPULATION_COUNT_RANDOM +0x9381D459,SET_ZONE_POPULATION_DENSITY +0xFC30948B,SET_ZONE_POPULATION_TYPE +0x7D4FB8C8,SET_ZONE_POPULATION_SPAWN_MULTI_PER_POINT +0xE0FDD026,SET_ZONE_RESTRICT_ACTORS +0xB24CE10,SET_ZONE_POPULATION_IS_FLOCK +0x7FD0A76,SET_ZONE_POPULATION_MAX_FLOCK_SIZE +0xE4A789D8,SET_ZONE_POPULATION_MIN_FLOCK_SIZE +0x354DDFED,SET_ZONE_POPULATION_MAX_PER_CELL +0x7ABDE1F0,SET_FLOCK_DEFAULT_POPULATION_MAX_PER_CELL +0x7D7F9770,SET_INDIVIDUAL_DEFAULT_POPULATION_MAX_PER_CELL +0x4B8C0945,SET_ZONE_PRIORITY +0xE7F19909,SET_ZONE_FORCE_SPAWN_DISTANCE +0xC43C4D76,SET_ZONE_RESERVE_GRINGOS +0xD72DF5C6,SET_ZONE_SPAWN_ONLY_AT_GRINGOS +0x230AB95E,CLEAR_ZONE_ALLOWED_GRINGO_TYPE_LIST +0x64799CEE,ADD_TO_ZONE_ALLOWED_GRINGO_TYPE_LIST +0xFCA83D15,SET_ZONE_RESPECT_VOLUME_RESTRICTIONS +0x4EFC113,SET_DEFAULT_POPULATION_DENSITY +0xD28A3706,SET_DEFAULT_POPULATION_TYPE +0xD3503922,GET_RAND_ACTORENUM_FROM_POPULATION_NATIVE +0x1CE58D42,MAKE_NEXT_RAND_ACTORENUMS_UNIQUE +0xFA5EA974,IS_POPULATION_SET_READY +0x76E416FD,IS_POPULATION_SET_REQUIRED_RESIDENT +0x4646C335,FIND_NAMED_POPULATION_SET +0x8FD12F97,GET_NUM_ACTORENUMS_IN_POPULATION +0xABEC5676,GET_ACTORENUM_IN_POPULATION +0xEDD44891,GET_ACTORENUM_IN_POPULATION_WEIGHT +0x72F6EED0,MARKETING_GET_AMBIENT_DENSITY_LEVEL +0x84FB15FA,SET_ZONE_ALLOWED_SPAWN_READY_TOO_CLOSE +0x687545BF,AMBIENT_SPAWN_PRESTREAM_SET +0x2B75F13E,AMBIENT_SPAWN_PRESTREAM_CLEAR +0x7080E24A,ROTATE_OBJECT_UPRIGHT_TO_GROUND +0x1D7845B7,VISIBLE_RECTS_BOOLEAN +0xDB70DF0C,GET_PHYSINST_FROM_OBJECT +0x6517FF1B,GET_NEW_PHYSINST_IN_SPHERE +0xBD2FFD8C,IS_PROP_FIXED +0x7DBB277A,SET_PROP_FIXED +0x2E5A224C,REMOVE_PHYSINST +0x31940E4C,GET_CENTER_OF_GRAVITY +0x7151E7F0,HAS_PROP_BEEN_DAMAGED +0xFDC6E853,GET_PROP_HEALTH +0xC6D12FF5,SET_PROP_HEALTH +0xB3E331AC,RESET_PROPS_IN_WORLD +0xCF1B9B11,RESET_PROPS_IN_VOLUME +0x5E7A7E9B,RESET_PROP +0x32C810BF,SET_PROP_TARGETABLE +0xE84EB2D5,SET_PROP_TARGETABLE_ACQUISITION_RADIUS +0x6A937CBB,SET_PROP_TARGETABLE_TARGET_BOX_SIZE +0xE2B0212,SET_PROP_TARGETABLE_SCORE_BIAS +0x5895EBBE,SET_PROP_TARGETABLE_AS_ENEMY +0xCC004171,SET_PROP_CAUSE_ARM_UP +0x5131AEF1,IS_PROP_STREAMED_IN +0x935F80FF,GRAVE_IS_DUG_UP +0x674156BB,GRAVE_SET_DUG_UP +0xA90E602F,GET_GRAVE_FROM_OBJECT +0xDC3FBAE6,PLAY_SIMPLE_PROP_ANIMATION +0xC5A886DC,SET_DRAW_OBJECT +0xCED86AF7,GET_DRAW_OBJECT +0x375A33F0,PROP_IS_VARIABLE_MESH_ENABLED +0x8287F8B3,PROP_ENABLE_VARIABLE_MESH +0x4BCFADB1,SET_PROP_REMAP +0x6D555332,CLEAR_PROP_REMAP +0x6AF07F86,RENDERING_ENABLE_CHARACTER_CLIPPING +0xB84DE79E,PRINT_FRAME_TIME +0x9D4CDEF,SET_MAXIMUM_SPOTLIGHT_CASCADE_COUNT +0xAF2CB0,SET_MOST_RECENT_MOUNT +0x708E450F,GET_MOST_RECENT_MOUNT +0x668E55C3,GET_MOST_RECENT_RIDER +0xDB0D0478,IS_ACTOR_HORSE +0x1F739295,IS_ACTOR_MULE +0xA6BBE769,IS_ACTOR_RIDING +0xF270EAC1,IS_ACTOR_RIDING_AND_IN_SADDLE +0xA3AB3708,IS_ACTOR_MOUNTED +0x88A283E5,GET_RIDER +0xDD31EC4E,GET_MOUNT +0xDC6DEE92,SET_MOUNTS_AS_PASSENGER +0xC28242F4,ACTOR_MOUNT_ACTOR +0x374D047A,REMOVE_HORSE_ACCESSORY +0x75D4E33F,DOES_HORSE_HAVE_ACCESSORY +0x6C939AA7,ACCESSORIZE_HORSE +0x6B6E05A8,HORSE_ENABLE_AUTO_JUMP_FOR_AI_RIDERS +0xCA7CB126,HORSE_AUTO_JUMP_ENABLED_FOR_AI_RIDERS +0x28FCBDF2,HORSE_ADD_REPULSION_EXCLUSION_VOLUME +0x5DE07F18,HORSE_REMOVE_REPULSION_EXCLUSION_VOLUME +0xF3976D70,HORSE_SET_CURR_FRESHNESS +0xB8665D8A,HORSE_GET_CURR_FRESHNESS +0x8754817D,HORSE_LOCK_FRESHNESS +0x6AFA044B,HORSE_UNLOCK_FRESHNESS +0xB731EB45,HORSE_SET_INFINITE_FRESHNESS_CHEAT +0xCEBD595A,SHOP_CLEAR +0xE7F6AA5D,SHOP_REFRESH +0xB75FAD6A,SHOP_SET_PLAYER_BANK +0x2FCD8CCA,SHOP_ADD_ITEM +0x777CF9FA,SHOP_SET_ITEM_QUANTITY +0xFAF37414,SHOP_GET_ITEM_QUANTITY +0xA40EFFFF,SHOP_SET_ITEM_PURCHASE_PRICE +0x94D8F49E,SHOP_GET_ITEM_PURCHASE_PRICE +0x42CBA241,SHOP_GET_ITEM_SELL_PRICE +0x7A34C33D,SHOP_SET_ITEM_BLOCKED +0xB954DE78,SHOP_IS_ITEM_BLOCKED +0x1BF8FD6D,SHOP_GET_ITEM_MISC_FLAG +0x5A12BB48,SHOP_IS_SELL_SELECTED +0x3601E3E2,SHOP_SET_CURRENT_TAB +0xB84DE662,SHOP_LOCK_INPUT +0x2692B771,SATCHEL_SET_ENABLED +0xEB046CD9,SATCHEL_TOGGLE_NO_PAUSE_OUTFIT +0x427F4D58,SATCHEL_CREATE_OUTFIT +0xA87A573,SATCHEL_SET_OUTFIT_STATE +0x25EF49AD,SATCHEL_GET_OUTFIT_STATE +0x23EB81F0,SATCHEL_SET_OUTFIT_TEXTURE +0x58018D83,SATCHEL_ALLOW_OUTFIT_CHANGE +0x1C462085,SATCHEL_SET_CURRENT_OUTFIT +0x1EB9AF29,UI_CHALLENGE_CREATE +0x2A39FD8A,UI_CHALLENGE_SET_DESCRIPTION +0xD5ED5FCB,UI_CHALLENGE_SET_TITLE_TEXTURE +0x10F5386D,UI_CHALLENGE_SET_PROGRESS +0x9D9CDCE3,UI_CHALLENGE_SET_PROGRESS_DETAIL +0x3731AC9F,UI_CHALLENGE_SET_TROPHY_TYPE +0x9CF5C747,UI_CHALLENGE_SET_OBJECTIVE +0x4A598723,UI_CHALLENGE_SET_OBJECTIVE_STYLE +0x9272926C,UI_CHALLENGE_SET_OBJECTIVE_STYLE_B +0xAFC9071D,UI_CHALLENGE_SET_COLUMN_HEADER +0x761A6750,UI_CHALLENGE_SET_TIME_HEADER +0xC201524D,UI_CHALLENGE_SET_TIME_INFO +0x4A3022E,UI_CHALLENGE_MAKE_CURRENT +0xD02757C1,CAN_ACTOR_ENUM_PLAY_SPEECH_CONTEXT +0x886E06C2,REGISTER_ACTOR_SPEECH_CONTEXT +0xB6839756,FINISH_REGISTERING_ACTOR_SPEECH_CONTEXTS +0xCB139D15,REGISTER_NUM_SPEECH_CONTEXTS +0xF07F5E41,REGISTER_NUM_CONTEXT_TYPES +0xB3732081,SQUAD_GET +0xBDB3061E,SQUAD_IS_VALID +0xB14302C8,SQUAD_JOIN +0x77591FF,SQUAD_LEAVE +0x90D92CF1,SQUAD_MAKE_EMPTY +0x320E2604,SQUADS_MERGE +0x5126039A,SQUAD_GET_ACTOR_BY_INDEX +0xEEC83187,SQUAD_GET_SIZE +0x142D9F3A,SQUAD_COMPUTE_CENTROID +0xAEA4E9AE,SQUAD_SET_FACTION +0x65888454,SQUAD_GOAL_ADD_BATTLE_ALLIES +0xD52A28F0,SQUAD_GOAL_ADD_BATTLE_DEFEND_VOLUME +0x4DD06256,SQUAD_GOAL_ADD_COMBAT +0xA4BC2A1B,SQUAD_GOAL_ADD_FACTION_STATUS_WITHIN_GOAL +0x9D3B103C,SQUAD_GOAL_ADD_FLOCK +0x1AC03C80,SQUAD_GOAL_ADD_FOLLOW_OBJECT_IN_FORMATION +0x750C1A2B,SQUAD_GOAL_ADD_FOLLOW_PATH_IN_FORMATION +0xE77B9FC0,SQUAD_GOAL_ADD_FOLLOW_TRAFFIC_CURVE +0x83D78A49,SQUAD_GOAL_ADD_GENERAL_TASK +0x8BA55E8D,SQUAD_GOAL_ADD_GUARD_POSITION +0x96DB0BA1,SQUAD_GOAL_ADD_HUNT_ENEMIES +0xA2AE53BD,SQUAD_GOAL_ADD_MEET_AT_POSITION +0x35051831,SQUAD_GOAL_ADD_RESTRICT_INVESTIGATION_DISTANCE_FROM_SQUAD +0x435A982F,SQUAD_GOAL_ADD_SHARE_PERCEPTION +0x5F4DEC49,SQUAD_GOAL_ADD_STAY_OUTSIDE_OF_VOLUME +0xE775EF0D,SQUAD_GOAL_ADD_STAY_WITHIN_VOLUME +0xC6AF3662,SQUAD_GOAL_GET_STATUS +0xFAD7A113,SQUAD_GOAL_IS_VALID +0xBB3A34B0,SQUAD_GOAL_REMOVE +0xCA950EF0,SQUAD_GOALS_CLEAR +0x817AC6D6,SQUAD_IS_GOAL_CONTROLLING_ACTOR +0xF37E8A9E,SQUAD_GET_SINGLE_ACTOR_CONTROLLED_BY_GOAL +0x1B74CCA1,SQUAD_GOAL_LINK_MODIFIER_TO_OTHER_GOAL +0x224CFE5B,SQUAD_FLOCK_SET_EXTERNAL_MOVEMENT_TUNING +0x3F9736B8,SQUAD_FLOCK_SET_FLOCKING_PARAMETER +0x5E24EAA0,SQUAD_FLOCK_SET_BOOL_FLOCKING_PARAMETER +0x1F0E5B88,SQUAD_FLOCK_ADD_EXTERNAL_ALERT +0x895AA97B,SQUAD_FLOCK_ADD_EXTERNAL_ATTRACTION_PATH +0x53609885,SQUAD_FLOCK_ADD_EXTERNAL_REPULSION +0xE8B7AA08,SQUAD_FLOCK_ADD_EXTERNAL_VELOCITY_MATCH +0xE4E94286,SQUAD_FLOCK_PLAYER_PROXIMITY_BOOST_SET_ENABLED +0x6770774F,SQUAD_FLOCK_PLAYER_WHISTLE_BOOST_SET_ENABLED +0x5A43D915,SQUAD_FLOCK_EVENT_BOOST_SET_ENABLED +0xFC24BB6A,SQUAD_FLOCK_SET_ALLOW_STRAGGLERS +0xE7A0A109,SQUAD_HUNT_ENEMIES_SET_DEFAULT_BLIP_ALERTED +0x73024E,SQUAD_HUNT_ENEMIES_SET_DEFAULT_BLIP_INVESTIGATING +0x82C54B8A,SQUAD_HUNT_ENEMIES_SET_DEFAULT_BLIP_UNALERTED +0x57C67E91,SQUAD_GET_NUM_ELIMINATED_ACTORS +0x55DAC120,SQUAD_GET_NUM_NOT_ELIMINATED_ACTORS +0xE7D45FB3,SQUAD_SET_NOT_ELIMINATED_IMPAIRMENT_MASK +0xAEDD7512,SQUAD_GET_NOT_ELIMINATED_IMPAIRMENT_MASK +0x907D4081,SQUAD_BATTLE_ALLIES_SET_OBJECTIVE +0x6BC42101,SQUAD_BATTLE_ALLIES_SET_FORMATION_DENSITY +0xE21D4785,SQUAD_FOLLOW_TRAFFIC_CURVE_GET_ALL_BEHAVIOR_FLAGS +0xF3C07A17,SQUAD_FOLLOW_TRAFFIC_CURVE_SET_ALL_BEHAVIOR_FLAGS +0x20009EB2,SQUAD_FOLLOW_TRAFFIC_CURVE_GET_BEHAVIOR_FLAG +0x7FEE2B3C,SQUAD_FOLLOW_TRAFFIC_CURVE_SET_BEHAVIOR_FLAG +0x31613E,SQUAD_FOLLOW_TRAFFIC_CURVE_SET_CURVE +0x41C0802,SQUAD_FOLLOW_TRAFFIC_CURVE_ENQUEUE_CURVE +0x347616C9,SQUAD_FOLLOW_TRAFFIC_CURVE_SET_SPEED +0xB00F188D,SQUAD_FOLLOW_TRAFFIC_CURVE_SET_SPEED_ABSOLUTE +0x70E0654A,SQUAD_FOLLOW_TRAFFIC_CURVE_SET_SPEED_NORMALIZED +0x8C8EEEF2,SQUAD_FOLLOW_TRAFFIC_CURVE_SET_TASK_PRIORITY +0xF163466,SQUAD_FOLLOW_TRAFFIC_CURVE_SET_OFFSET_X +0x430993FC,SQUAD_FOLLOW_TRAFFIC_CURVE_SET_ALLOW_PLAYER_JOIN +0x27F7C1E4,SQUAD_FOLLOW_TRAFFIC_CURVE_SET_DESIRED_LEADER +0x5BADEFDC,SQUAD_FOLLOW_TRAFFIC_CURVE_CLEAR_DESIRED_LEADER +0x8DC095B0,SQUAD_FOLLOW_TRAFFIC_CURVE_IS_CURVE_ALREADY_IN_LIST +0xE69AE6C5,SQUAD_FOLLOW_PATH_IN_FORMATION_GET_ALL_BEHAVIOR_FLAGS +0xFA63B0F7,SQUAD_FOLLOW_PATH_IN_FORMATION_SET_ALL_BEHAVIOR_FLAGS +0xC4D79095,SQUAD_FOLLOW_PATH_IN_FORMATION_GET_BEHAVIOR_FLAG +0x5C14EC4E,SQUAD_FOLLOW_PATH_IN_FORMATION_SET_BEHAVIOR_FLAG +0x6FB2CADA,SQUAD_FOLLOW_PATH_IN_FORMATION_SET_PATH +0x437E2995,SQUAD_FOLLOW_PATH_IN_FORMATION_SET_SPEED +0x7B681402,SQUAD_FOLLOW_PATH_IN_FORMATION_SET_SPEED_ABSOLUTE +0xD618C1C7,SQUAD_FOLLOW_PATH_IN_FORMATION_SET_SPEED_NORMALIZED +0xF661D354,SQUAD_FOLLOW_PATH_IN_FORMATION_SET_TASK_PRIORITY +0x554EFABE,SQUAD_FOLLOW_PATH_IN_FORMATION_SET_OFFSET_X +0x3966E20B,SQUAD_FOLLOW_PATH_IN_FORMATION_SET_ALLOW_PLAYER_JOIN +0x8BE72016,SQUAD_FOLLOW_PATH_IN_FORMATION_SET_NONSTOP +0xA8A50DF5,SQUAD_FOLLOW_PATH_IN_FORMATION_SET_DESIRED_LEADER +0x47F31A41,SQUAD_FOLLOW_PATH_IN_FORMATION_CLEAR_DESIRED_LEADER +0x32A3A7AE,CREATE_STAT +0x1CF1FCC4,HIDE_STAT +0xC9212F76,UPDATE_STAT +0x957F1618,ENABLE_JOURNAL_REPLAY +0x40C2576F,SET_JOURNAL_INFO_LABEL +0x2104B1C0,PUSH_COMMAND_HANDLE +0xBBF4F7E4,GET_NUM_KILLS_LAST_DEADEYE +0xB0A79FEE,STREAMING_REQUEST_ACTOR +0x7DF72579,STREAMING_IS_ACTOR_LOADED +0x6661CF89,STREAMING_EVICT_ACTOR +0x87B74064,STREAMING_IS_WORLD_LOADED +0x943BE053,STREAMING_IS_WORLD_LOADED_PRIORITY +0xC07681C1,STREAMING_ARE_BOUNDS_LOADED +0x38DC1F50,STREAMING_REQUEST_PROP +0xD7F80035,STREAMING_IS_PROP_LOADED +0xA8D12960,STREAMING_EVICT_PROP +0xEC1F14C8,STREAMING_REQUEST_PROPSET +0xF7D65903,STREAMING_IS_PROPSET_LOADED +0x4A5E4C13,STREAMING_EVICT_PROPSET +0x563E2E79,STREAMING_REQUEST_GRINGO +0xA6C9DCEA,STREAMING_IS_GRINGO_LOADED +0xA02B6AAE,STREAMING_EVICT_GRINGO +0x620649B4,STREAMING_REQUEST_GRINGO_DICTIONARY +0x67994764,STREAMING_IS_GRINGO_DICTIONARY_LOADED +0x32FCA813,STREAMING_EVICT_GRINGO_DICTIONARY +0x11E57A92,STREAMING_REQUEST_SCRIPT +0xB5B4AEAD,STREAMING_IS_SCRIPT_LOADED +0x570163E2,STREAMING_EVICT_SCRIPT +0x7B5C28F3,STREAMING_LOAD_ALL_REQUESTS_NOW +0xCB1E8485,STREAMING_LOAD_SCENE_EXT +0x39E69B1B,STREAMING_UNLOAD_SCENE +0x55EF7A3,STREAMING_GET_POI_POS +0x338F85D9,STREAMING_OVERRIDE_MAIN_POI +0x7D5C0C4D,STREAMING_RELEASE_MAIN_POI +0x5B404EDA,STREAMING_HAS_OVERRIDE_MAIN_POI +0xDF3DF05A,STREAMING_GET_OVERRIDE_MAIN_POI_POS +0x49E4EB10,STREAMING_ENABLE_POI_STREAMING +0x5F4C08A2,STREAMING_PREVENT_SNIPER_MODE +0x83088F62,STREAMING_SET_CUTSCENE_MODE +0xBEBB187,STREAMING_ENABLE_BOUNDS +0xF8FC4D0,STREAMING_LOAD_BOUNDS +0x1CD960B8,STREAMING_LOAD_BOUNDS_EXT +0x9A67EC6,STREAMING_UNLOAD_BOUNDS +0xF7BABE84,STREAMING_DISPLAY_DEBUG_INFO +0x7D432781,STREAMING_EVICT_ALL +0x8EB0B2AD,IS_PLAYER_TELEPORTING +0xCA99D3B4,DUMP_MEMORY_STATS +0xE74C4851,REPORT_METRICS_PERFORMANCE +0x6F9C399B,STREAMING_SET_POI_LIMIT +0xBEABC729,STREAMING_ENABLE_FORCE_FRAGMENT_HIGH_LOD +0xB226E8E3,STREAMING_DISABLE_FORCE_FRAGMENT_HIGH_LOD +0xE981992C,STREAMING_ENABLE_FORCE_CHILD_SECTOR_HIGH_LOD +0x8CC6066C,STREAMING_DISABLE_FORCE_CHILD_SECTOR_HIGH_LOD +0x5B4999C2,STREAMING_ENABLE_FORCE_CHILD_SECTOR_LOW_LOD +0x3602DA93,STREAMING_DISABLE_FORCE_CHILD_SECTOR_LOW_LOD +0x83E043A6,RESIZE_ACTOR_SET +0xBDC61056,IS_STRING_VALID +0x8218D693,STRINGS_ARE_EQUAL +0xEC28CA8E,STRINGS_ARE_EQUAL_CLAMPED +0xFCAFC819,STRING_CONTAINS_STRING +0x43BE70B5,STRING_TO_FLOAT +0x590A8160,STRING_TO_INT +0x84415E28,STRING_TO_HASH +0x6CE4B233,STRING_LENGTH +0x71D550C6,STRINGTABLE_LENGTH +0x3E785560,STRING_LOWER +0xBC5B2116,STRING_UPPER +0x346E91C2,SET_OWNERSHIP_STRAGGLER +0x7FB72180,STRING_NUM_TOKENS +0xEE2791E5,STRING_GET_TOKEN +0x10873616,STRING_CLEAR_TOKENIZER +0x8785E0CE,SS_INIT +0xFD717A47,SS_REGISTER +0x20D34AC5,SS_GET_STRING +0xA2D27A1F,SS_GET_STRING_ID +0xEC1E8210,SS_FINALIZE +0xBEDF7AA8,SS_UNFINALIZE +0xAFFA5ABE,SS_SET_TABLE_SIZE +0xB3E44649,STRINGTABLE_APPEND_TABLE +0x82B4DCCE,REQUEST_STRING_TABLE +0x12D77EEC,HAS_STRING_TABLE_LOADED +0x6857E514,REMOVE_STRING_TABLE +0x86BAAC6C,GET_ACTOR_UNDER_RETICLE +0x8AE7281E,GET_RETICLE_TARGET_POINT +0x5F566576,SET_PLAYER_PERFECT_ACCURACY +0xD95C01D2,OVERRIDE_PLAYER_TARGETING_WEIGHTS +0x91220723,SET_ACTOR_BASE_SCORE +0x856C3A8A,SET_ACTOR_HARDLOCK_BIAS +0x6400E005,SET_ACTOR_USE_FULLSCREEN_ACQUISITION +0xF1607937,SET_ACTOR_CAN_BE_TARGETED +0x753A098,SET_ACTOR_CAN_BE_TARGETED_CASUAL_ONLY +0xF4429710,SET_ACTOR_CAN_BE_HARDLOCKED +0x1468DD56,ACTOR_CAN_BE_HARDLOCKED +0x327E4426,SET_ACTOR_CAN_BE_SOFTLOCKED +0xAC8D3A0C,SET_ACTOR_CAN_BE_AIMASSISTED +0x57055A7D,SET_ACTOR_CAN_BE_BUMPTARGETED +0x5CC16A49,SET_ACTOR_ONLY_HARDLOCK_IF_HOSTILE +0x7E124E62,IS_ACTOR_IN_ACCURACY_RANGE +0x1EEE7494,SET_CAN_ACTOR_HARDLOCK_NEUTRALS +0xD19EFFC1,CALCULATE_NORMALIZED_SCREEN_DISTANCE_FROM_RETICLE +0xE32F09B3,TASK_ACTION_PERFORM +0x3F20B619,TASK_ACTION_PERFORM_AT_POSITION +0xD7E582B1,TASK_ACTION_PERFORM_ON_TARGET +0xF54E4D45,TASK_ANIMAL_PATROL +0xEACE773D,TASK_ANIMAL_CIRCLE_AGGRESSIVELY +0x7ED7676D,TASK_ANIMAL_FOLLOW_AGGRESSIVELY +0xD9B07798,TASK_ANIMAL_HUNT +0x23AFEB8A,TASK_BE_DEAD +0x8EB3D852,TASK_BE_DEAD_RANDOM +0x4730AC93,TASK_BIRD_FLY_NEAR_COORD +0x525B028A,TASK_BIRD_LAND +0xAD0E49E3,TASK_BIRD_LAND_AT_COORD +0x2C5F5E1B,TASK_BIRD_SOAR +0x69CCFD7C,TASK_BIRD_SOAR_AT_COORD +0x616C803C,TASK_CROUCH +0x5DEF5C4A,TASK_DISMOUNT +0xECAD08C7,TASK_DIVE +0xF1A3F362,TASK_DIVEAWAYFROM +0x342F21D2,TASK_DIVETOWARD +0xFDD2905C,TASK_DOOR_ACTION +0xDB5F6B35,TASK_DRAW_HOLSTER_WEAPON +0x9F3B5B47,TASK_FACE_ACTOR +0x31B598FB,TASK_FACE_COORD +0x826D3459,TASK_FLEE_COORD +0x2CF32A98,TASK_FLEE_ACTOR +0xCD5E23C3,TASK_FLEE_ACTORSET +0x12F0911A,TASK_FOLLOW_ACTOR +0xDA646464,TASK_FOLLOW_AND_ATTACK_OBJECT +0x467D0FD5,TASK_FOLLOW_AND_ATTACK_OBJECT_ALONG_PATH +0xFF3E3DCE,TASK_FOLLOW_OBJECT +0x626C97D5,TASK_FOLLOW_OBJECT_ALONG_PATH +0x75A4E05E,TASK_FOLLOW_OBJECT_AT_DISTANCE +0xE2104FED,TASK_FOLLOW_OBJECT_IN_FORMATION +0x973DCC5B,TASK_FOLLOW_PATH +0x9591A996,TASK_FOLLOW_PATH_FROM_NEAREST_POINT +0xCC8B2ECC,TASK_FOLLOW_PATH_FROM_POINT +0xF7B01E74,TASK_GO_NEAR_ACTORSET +0x55EC940B,TASK_GO_NEAR_COORD +0x5EA4F1FE,TASK_GO_NEAR_OBJECT +0x8C574832,TASK_GO_TO_COORD +0x8636587A,TASK_GO_TO_COORD_AND_STAY +0xD62D6CE5,TASK_GO_TO_COORD_NONSTOP +0x6BDB3257,TASK_GO_TO_COORD_PRECISELY +0xAA3E5851,TASK_GO_TO_COORD_USING_MATERIAL +0x1BACD08,TASK_GO_TO_OBJECT +0x1AF7CE0E,TASK_GUARD_PATROL_AUTO +0xFA5BB172,TASK_GUARD_PATROL_PATH +0x99F65CC0,TASK_GUARD_STAND +0xAB8B96A5,TASK_HIDE_AT_COVER +0x916FF236,TASK_HORSE_ACTION +0x97BDA4C8,TASK_JUMP_OVER_OBSTRUCTION +0x46A326E6,TASK_JUMP_TO_OBJECT +0x1AE4B75B,TASK_KILL_CHAR +0x145B7C2B,TASK_LEDGE_ACTION +0x4FEADDD9,TASK_MELEE_ATTACK +0xB6131204,TASK_MOUNT +0x5AB552C6,TASK_PLAY_ANIM +0xAD3729AD,TASK_POINT_GUN_AT_COORD +0x95C206C2,TASK_POINT_GUN_AT_OBJECT +0x69B924A7,TASK_RESPOND_TO_HORSE_WHISTLE +0x4E17E039,TASK_SEARCH +0xD9B57910,TASK_SEARCH_FOR_OBJECT +0xE1C8A1B3,TASK_SEEK_COVER_FROM_ACTOR +0x3B0F53F4,TASK_SEEK_COVER_FROM_COORD +0x2DF2298C,TASK_SEQUENCE_PERFORM +0xA7A50E4D,TASK_SEQUENCE_PERFORM_REPEATEDLY +0x601C22E3,TASK_SHOOT_AT_COORD +0x7B5FC704,TASK_SHOOT_AT_COORD_FROM_POSITION +0x3C9875E5,TASK_SHOOT_ENEMIES_FROM_ANY_COVER +0xCE584BCF,TASK_SHOOT_ENEMIES_FROM_COVER +0xCF8DB984,TASK_SHOOT_ENEMIES_FROM_POSITION +0x1813667D,TASK_SHOOT_ENEMIES_FROM_PREFERRED_COVER +0x506B8205,TASK_SHOOT_FROM_COVER +0x326316DC,TASK_SHOOT_FROM_POSITION +0xDE18EDA3,TASK_SIMPLE_BEHAVIOR +0x6F80965D,TASK_STAND_STILL +0x86A98E99,TASK_STEALTH_ATTACK +0x5DD80BEF,TASK_SURROUND_ACTOR +0x9043D092,TASK_TAUNT_ACTOR +0x30FB1FA,TASK_TAUNT_ACTOR_IN_PLACE +0x1C7834B1,TASK_TR_ACTION +0xCFA55B6,TASK_TR_ACTION_ON_ACTOR +0xA0E003A7,TASK_USE_GRINGO +0x65D93BD,TASK_USE_GRINGO_GROUP +0xC41AAF49,TASK_USE_LASSO +0x6484F21E,TASK_USE_TURRET +0x3B8DBA13,TASK_USE_TURRET_AGAINST_COORD +0x49EC6A04,TASK_USE_TURRET_AGAINST_OBJECT +0xB2CD5160,TASK_VEHICLE_ENTER +0xDC087173,TASK_VEHICLE_ENTER_SPECIFIC_LOCATION +0x6C1218A4,TASK_VEHICLE_LEAVE +0x17BCA08E,TASK_WANDER +0x6840D3C1,TASK_WANDER_IN_BOX +0xA5F2BFAA,TASK_WANDER_IN_VOLUME +0x9ABE6BC0,TASK_WARN_CHAR +0x3EB7590C,TASK_GO_NEAR_ACTOR +0xCCE01E8A,GET_TASK_STATUS +0x600A0EE4,IS_TASKED_TO_USE_GRINGO_FOREVER +0x16C6801,GET_NTH_TASK_STATUS +0xD062CBF6,GET_TASK_SEQUENCE_CURRENT_TASK_INDEX +0xF726557C,GET_TASK_NEXT_POINT_ON_PATH +0x16876A25,TASK_CLEAR +0x9B9C8628,TASK_OVERRIDE_CLEAR_MOVETYPE +0x5394CF3B,TASK_OVERRIDE_CLEAR_POSTURE +0x172477F0,TASK_OVERRIDE_SET_MOVETYPE +0xCE843315,TASK_OVERRIDE_SET_MOVESPEED_ABSOLUTE +0x96F3BD31,TASK_OVERRIDE_SET_MOVESPEED_NORMALIZED +0x52D34567,TASK_OVERRIDE_SET_POSTURE +0x3A95A656,TASK_PRIORITY_SET +0x8DA34524,TASK_SEQUENCE_OPEN +0x9EE3053B,TASK_SEQUENCE_CLOSE +0xB2D35E22,TASK_SEQUENCE_RELEASE +0x8654394,SET_ACTOR_FACE_STYLE +0x1436588F,AI_SET_ENABLE_STICKUP_OVERRIDE +0xF3D88421,AI_SET_ENABLE_HORSE_CHARGE_REACTIONS +0x1978C111,AI_SET_ENABLE_DEAD_BODY_REACTIONS +0x26EBE467,TASK_FAILURE_MODE_SET +0x7C3D1193,GET_MINUTES_FROM_TIME_OF_DAY +0x61A2A3C,GET_TIME_OF_DAY_AS_INT +0xC52F07A8,GET_TOTAL_MINUTES +0x57FC0E16,CONVERT_TIME_OF_DAY_TO_INT +0xEBBDC34,SET_DAY +0x2765C37E,GET_HOUR +0x1020BF6D,GET_MINUTE +0xBA8077CF,GET_SECOND +0x63D13FB0,GET_DAY +0xBA4FEEBC,ADD_TIME +0x2F7CB0E3,ADD_TIME_USING_TIME_OF_DAY +0x4E1DE7A5,GET_TIME_OF_DAY +0xC09EAB6E,MAKE_TIME_OF_DAY +0xE453CF0,MAKE_TIME_OF_DAY_EX +0x2DB3AC0F,IS_LATER_THAN +0x9C9529D8,IS_EARLIER_THAN +0x243AF970,TIME_IS_IN_RANGE +0xD4FECCBC,ADVANCE_TIME_HOURS +0xAD03186C,SET_TIME_OF_DAY +0xB98C7AA5,SET_TIME_ACCELERATION +0xC87F16A8,GET_TIME_ACCELERATION +0xD93E1BCB,SET_TIME_WARP +0xAF50E8A1,CANCEL_TIME_WARP +0x2C5983E0,IS_USING_TURRET +0xBEE5CF6C,UI_POP +0x97C5EFC8,UI_PUSH +0xA0159C77,UI_GOTO +0x2DF89C2E,UI_EXIT +0xD1D1D467,UI_SHOW +0xFAC3DF71,UI_REFRESH +0x7508E7F3,UI_HIDE +0xE576DCAD,UI_ENABLE +0xC4532F84,UI_DISABLE +0xB1FDB70D,UI_ISACTIVE +0xD11BD55A,UI_ACTIVATE +0xCA35BB5E,UI_DEACTIVATE +0x4A005F2A,UI_EXCLUDE +0x209255AD,UI_INCLUDE +0x6F2509E8,UI_ISFOCUSED +0x699CC85E,UI_FOCUS +0xACEA059,UI_UNFOCUS +0x7ADB2BE7,UI_RESTORE +0x182EC44A,UI_SUPPRESS +0xF10A56C5,UI_SENDEVENT +0x8B63A008,UI_GET_SELECTED_INDEX +0x1ECD8B18,UI_SET_STYLE +0x13F156A4,UI_ADD_CHILD +0xB89B46,UI_SET_DATA +0xD3C7AEFA,UI_GET_NUM_CHILDREN +0xCBDE38C6,UI_ANIM_SETUP +0x4068D2E4,UI_ANIM_RESTART +0x7EB1ED99,UI_ANIM_GET_TIME +0x1F9EE9E1,UI_REGISTER_STREAMING_TEXTURE +0xE457546C,UI_SET_STRING +0xEDA84121,UI_SET_STRING_FORMAT +0xF71BD93A,UI_SET_MONEY +0xCCCFF80B,UI_GET_STRING +0xBA89F5EA,UI_GET_STRING_BY_HASH +0x591339B9,UI_MESSAGEBOX_SET_DESCRIPTION +0xB3FC8CB7,UI_LABEL_SET_TEXT +0xDF50D8DE,UI_LABEL_SET_VALUE +0xF53EB511,AI_SET_SPECIAL_AREAS_TIME +0x3DB16A3D,UI_BUTTON_SET_TEXT +0x9A56C3F3,UI_TEXTURE_SET_NAME +0x573BEF3B,UI_TEXTURE_SET_HASH +0xC464D5DD,UI_SET_TEXT +0x6FD03D2,UI_SET_TEXT_HASH +0xE5D53722,UI_SET_PROGRESS_BAR_VAL +0xDF4627D1,UI_SET_PROGRESS_BAR_CHANGE +0x191BA4DF,UI_SET_ICON +0x9E2C2701,UI_DISABLE_INPUT +0x1E732914,UI_DISABLE_USE_CONTEXT_PROMPT +0xD116B520,SET_RUNNING_BENCHMARK +0x2DFDDDD9,GET_RUNNING_BENCHMARK +0x724B4E9B,UI_ADDICON +0x58745E4B,GET_ACTOR_MOST_RECENT_VEHICLE +0xD36E2D54,IS_ACTOR_ON_TRAIN +0x9EE8AB59,IS_ACTOR_ON_BOAT +0x9751B167,IS_ACTOR_VEHICLE +0x5D41D423,IS_ACTOR_DRAFT_VEHICLE +0xDC99C124,IS_ACTOR_DRIVING_VEHICLE +0x1BA90C92,IS_ACTOR_JACKING_VEHICLE +0x12325AE7,IS_ACTOR_INSIDE_VEHICLE +0xDE19A1F9,IS_ACTOR_RIDING_VEHICLE +0xA0936EB6,GET_VEHICLE +0xCEA2449F,GET_ACTOR_VEHICLE_STATE +0xDAB0D820,GET_NUM_DRAFTED_ACTORS +0x32974F99,SET_ACTOR_IN_VEHICLE +0x48D5121D,GET_DRAFT_ACTOR +0xEF2C329D,IS_ACTOR_DRAFTED +0xD89C14BA,GET_ACTOR_DRAFTED_TO +0xF7400A47,IS_SEAT_OCCUPIED +0xE8E94C3B,GET_ACTOR_IN_VEHICLE_SEAT +0x3ACE659E,GET_NUM_AVAILABLE_SEATS +0xF0354E46,GET_NUM_OCCUPIED_SEATS +0x6AC8234D,ENABLE_VEHICLE_SEAT +0xC2232D29,STOP_VEHICLE +0xE4442AB2,START_VEHICLE +0xB12584C8,ACCESSORIZE_VEHICLE_HORSES +0xD85CA776,GET_NUM_DRAFT_POSITIONS +0xB0A81226,ATTACH_DRAFT_TO_VEHICLE +0xF763B06D,DETACH_DRAFT_FROM_VEHICLE_BY_ACTOR +0x8C3B533B,DETACH_DRAFT_FROM_VEHICLE_BY_INDEX +0x8533AC9D,TRAIN_CREATE_NEW_TRAIN +0x74CECEB3,TRAIN_DESTROY_TRAIN +0x87082991,TRAIN_RELEASE_TRAIN +0x7224CD9B,TRAIN_IS_VALID +0xA7A672FA,TRAIN_ADD_TRAIN_CAR_FROM_ENUM +0xF2373407,TRAIN_GET_VELOCITY +0x9091E0A3,TRAIN_SET_TARGET_POS +0x9D93961C,TRAIN_SET_SPEED +0xEA2A8B79,TRAIN_SET_TARGET_SPEED +0xB5383B93,TRAIN_SET_MAX_ACCEL +0xB7A4D403,TRAIN_SET_MAX_DECEL +0x6C62C522,TRAIN_SET_ENGINE_ENABLED +0xFB2F9989,TRAIN_GET_NUM_CARS +0x9C488CB3,TRAIN_SET_POSITION_DIRECTION +0x268D546D,TRAIN_SET_POSITION_DIRECTION_PRECISELY +0xBA1620AF,TRAIN_SET_FX +0x1440C806,TRAIN_PLAY_WHISTLE_SEQUENCE +0x4DF9283F,TRAIN_ENABLE_VISUAL_DEBUG +0x2040FB19,TRAIN_DESTROY_CAR +0xD8E0EF01,TRAIN_GET_LOD_LEVEL +0x43E6DCAC,TRAIN_FORCE_HIGH_LOD +0x41EF2EED,TRAIN_GET_CAR +0x7CFD539A,TRAIN_SET_PARTICLE_EFFECTS_ENABLED +0xADE865AE,TRAIN_SET_AUTOPILOT_ENABLE +0x6A9C8E5B,TRAIN_SET_AUDIO_ENABLE +0x1F9F8C04,TRAIN_SET_JUNCTION_STATE +0xC5A04EC7,TRAIN_GET_CURVE_NETWORK_POINT +0x6FC1847D,TRAIN_GET_NEAREST_POI_DISTANCE +0x6D055AB,TRAIN_GET_POSITION +0x6BB8BCFB,SET_BOAT_EXTRA_STEER +0x462B5FDF,SET_VEHICLE_ENGINE_RUNNING +0x8257A916,IS_VEHICLE_ENGINE_RUNNING +0x55A56DF8,SET_VEHICLE_ALLOWED_TO_DRIVE +0x1C391A44,IS_VEHICLE_ALLOWED_TO_DRIVE +0xBD0C1BEA,SET_VEHICLE_PASSENGERS_ALLOWED +0xABD83C0,SET_VEHICLE_EJECTION_ENABLED +0x384BB6AB,VEHICLE_SET_HANDBRAKE +0xF801CBD7,IS_ANY_VEHICLE_WHEEL_DETACHED +0x71A3F193,GET_VEHICLE_WHEEL_COUNT_INITIAL +0xFB252BA9,GET_VEHICLE_WHEEL_COUNT_CURRENT +0xBC33CEB5,IS_VOLUME_VALID +0xB85BB21B,IS_POINT_IN_VOLUME +0xF5593A78,IS_ACTOR_IN_VOLUME +0xF474297,DELETE_PROJECTILES_IN_VOLUME +0x6729EEFE,GET_VOLUME_CENTER +0x14D5CFC3,SET_VOLUME_ENABLED +0x29ED6F03,IS_VOLUME_ENABLED +0x8D5609F2,GET_VOLUME_HEADING +0xE9C34ACC,GET_VOLUME_SCALE +0x9FC69F27,GENERATE_RANDOM_POINT_IN_VOLUME +0x26F7060,FIND_VOL_SURFACE_POINTS_FOR_POINT +0xBAC27559,INIT_NATIVE_WEAPONENUM_PISTOL +0xA534CD14,INIT_NATIVE_WEAPONENUM_RIFLE +0xA72B6620,INIT_NATIVE_WEAPONENUM_REPEATER +0x92FE3677,INIT_NATIVE_WEAPONENUM_SNIPERRIFLE +0xEA06907B,INIT_NATIVE_WEAPONENUM_SHOTGUN +0xE0DF7B3B,INIT_NATIVE_WEAPONENUM_THROWN +0xA2597101,INIT_NATIVE_WEAPONENUM_THROWN_EXPLODING +0x2AD5D078,INIT_NATIVE_WEAPONENUM_BOW +0xA6C4E59F,INIT_NATIVE_WEAPONENUM_MELEE +0xF82711CC,INIT_NATIVE_WEAPONENUM_LASSO +0x82609DC7,INIT_NATIVE_WEAPONENUM_TURRET +0x628E3173,INIT_NATIVE_WEAPONENUM_CANNON +0xCE5CCF2E,INIT_NATIVE_WEAPONENUM_AMMO +0x6A9CFA2A,GET_WEAPON_ENUM_STRING_FROM_ENUM +0x35CD589C,GET_WEAPON_DISPLAY_NAME +0x87C5471F,GET_WEAPON_INTERNAL_NAME +0xE8739A48,GET_WEAPON_FRAGMENT_NAME +0x1C7193C,INIT_NATIVE_WEAPONENUM_CATEGORY +0xA23A69C,FINALIZE_WEAPONENUM_CATEGORIES +0xE4B7A33,SET_WEAPONENUM_LOCKED +0xCCE4A339,IS_WEAPONENUM_LOCKED +0xD3E16075,GET_AMMO_ENUM +0x8A655C5,SET_AMMO_DROP_BIAS +0xCCB57C38,GET_AMMO_ENUM_STRING_FROM_ENUM +0x2AF84928,GET_AMMO_ENUM_ICON_NAME +0xA677B204,GET_WEAPON_MAX_AMMO +0xD291A820,RESOLVE_DLC_WEAPONENUM +0xF4641CF4,ADD_IDLEFX_TO_WEAPON +0x456D7F38,SET_WEATHER +0xEA026ED9,GET_WEATHER +0xC157CA40,SET_WEATHER_COMPLEX +0xC6294698,SET_WIND +0x5D37C383,SET_AUTO_WIND +0xB788D24A,SET_RAIN_AMOUNT +0xF0C9645A,SET_LIGHTNING_AMOUNT +0xC4C59CA4,SET_WEATHER_TYPE_GOOD +0xA915DC46,SET_WEATHER_TYPE_RAINY +0x9B390724,TRIGGER_LIGHTNING_SEQUENCE +0x858FD48D,TRIGGER_CLOUD_LIGHTNING_SEQUENCE +0x17BCED9F,ENABLE_WEATHER_SPHERE +0xFEEC4EE2,IS_WEATHER_SPHERE_ENABLED +0x9A93E7CA,CLEAR_AREA_OF_TREE_TYPE +0x59A7835E,RESET_TREE_TYPE_CLEARING +0x25690082,RESET_THIS_TREE_TYPE_CLEARING +0xE92C3435,SET_DUST_LEVEL +0xDB86F53B,SET_DUST_LEVEL_MODIFIER +0x8BA565F7,SET_DUST_LEVEL_MID +0xB8E09389,SET_DUST_LEVEL_FAR +0x9AA8A1B1,CLEAR_AREA_OF_GRASS +0x2B0698,CLEAR_AREA_OF_BREAKABLE_TREES +0x57478561,RESET_THIS_BREAKABLE_TREE_CLEARING +0x39B0CFE5,RESET_ALL_BREAKABLE_TREE_CLEARINGS +0xDCAE6935,RELOAD_SMICTIONARY_LIST +0x28246500,SET_ZOMBIE_DLC_IS_ACTIVE +0x8CF15FCB,ZOMBIE_DLC_IS_ACTIVE +0x4A8066FB,ZOMBIE_DLC_LOAD_ASSETS +0x1DDB57A6,ZOMBIE_DLC_LOAD_ASSETS_MP +0x88863344,ZOMBIE_DLC_UNLOAD_ASSETS +0xE7371670,ZOMBIE_DLC_IS_LOAD_COMPLETE +0x3E2B631,ZOMBIE_DLC_IS_UNLOAD_COMPLETE +0xCA840DBB,SET_PHOSPHORUS_AMMO_ACTIVE +0x4F3F3CA5,IS_PHOSPHORUS_AMMO_ACTIVE +0xC587FA2B,CREATE_FIRE_ON_OBJECT +0xD4799325,CREATE_FIRE_IN_VOLUME +0x9544570A,STOP_ALL_FIRES +0x5402321A,CREATE_FIRE_PROPERTY +0x2AC74780,GET_FIRE_PROPERTY +0x466C02BA,STOP_ALL_FIRE_IN_SPHERE +0xEC3A9EBB,STOP_ALL_FIRE_IN_VOLUME +0xADB3E8D9,REPLACE_WORLD_SECTOR +0x8D06543,REPLACE_WORLD_SECTOR_LOAD_BOUNDING_BOX +0xAD5613FD,ENABLE_WORLD_SECTOR +0xB511D087,DISABLE_WORLD_SECTOR +0x7ECE15BE,ENABLE_CHILD_SECTOR +0x9E1AE585,DISABLE_CHILD_SECTOR +0x4E6A78B5,HIDE_CHILD_SECTOR +0x63A83655,SHOW_CHILD_SECTOR +0xE437932A,SET_USE_ACTOR_STAGGER +0xBBAE9CBD,FIRE_CREATE_HANDLE +0xA488E930,FIRE_IS_HANDLE_VALID +0xB14B936A,FIRE_RELEASE_HANDLE +0xD2BB733E,FIRE_RELEASE_INFINITE_HANDLE +0x91396EB7,FIRE_FIND_HANDLE_FROM_ATTACHED_ACTOR +0x9679CF84,FIRE_CREATE_ON_ACTOR +0xB65ADFAC,FIRE_CREATE_IN_VOLUME +0x30C4CA99,FIRE_IS_ACTOR_ON_FIRE +0x15001332,FIRE_STOP_ALL_FIRES +0xF635B9EA,FIRE_STOP_ON_ACTOR +0x11A65FFB,FIRE_STOP_FLAMES_IN_VOLUME +0x15683736,FIRE_GET_OWNER +0xE5C7E4C9,FIRE_SET_OWNER +0x3D5D3B26,FIRE_SET_DAMAGE_ALLOWED +0x3240324,FIRE_SET_CONTROL_VOLUME +0xE5E04E83,FIRE_SET_MAX_FLAMES +0x9C471E7D,FIRE_SET_TARGET_FILL_PERCENT +0x1A82B949,FIRE_SET_GROW_RATE +0x7906A950,FIRE_SET_DECAY_RATE +0x6471D75C,FIRE_SET_EXPIRE_ALLOWED +0x53895856,FIRE_SET_GROW_ALLOWED +0xDEE6523D,COUNT_FLAMES_IN_SPHERE +0x3DD3E1EB,COUNT_FLAMES_IN_VOLUME +0x28DAED2A,FIRE_ARE_ANY_FLAMES_IN_VOLUME +0x3F67DEDB,FIRE_SET_GUNS_BLAZING_ACTIVE diff --git a/RASM/Include/Compiler/Compiler.cpp b/RASM/Include/Compiler/Compiler.cpp index c91ee6a..5820b43 100644 --- a/RASM/Include/Compiler/Compiler.cpp +++ b/RASM/Include/Compiler/Compiler.cpp @@ -1111,6 +1111,30 @@ void CompileBase::ParseOpcode(Opcode op) case Opcode::SetGlobalSR: case Opcode::GetGlobalPs: case Opcode::GetHash: + case Opcode::PushStringNull: + case Opcode::PatchRet: + case Opcode::PatchTrap0: + case Opcode::PatchTrap1: + case Opcode::PatchTrap2: + case Opcode::PatchTrap3: + case Opcode::PatchTrap4: + case Opcode::PatchTrap5: + case Opcode::PatchTrap6: + case Opcode::PatchTrap7: + case Opcode::PatchTrap8: + case Opcode::PatchTrap9: + case Opcode::PatchTrapA: + case Opcode::PatchTrapB: + case Opcode::PatchTrapC: + case Opcode::PatchTrapD: + case Opcode::PatchTrapE: + case Opcode::PatchTrapF: + case Opcode::CallPatch: + case Opcode::CallOutOfPatch: + case Opcode::LoadRef: + case Opcode::StoreRef: + case Opcode::StoreVector: + case Opcode::MakeVector: AddSingleOp(op); break; @@ -1721,10 +1745,10 @@ void CompileRDR::AddPushString() str.resize(0xFF - 1); } + FixCodePage(2 + str.size() + 1); AddSingleOp(Opcode::PushString); CodeBuilder->WriteUInt8(str.size() + 1); CodeBuilder->WriteString(str); - } void CompileRDR::AddPushArray() @@ -1737,11 +1761,14 @@ void CompileRDR::AddPushArray() hexData.resize(0xFFFFFFFF); } + auto vec = Utils::DataConversion::HexToData(hexData); + + FixCodePage(1 + 4 + vec.size()); + AddSingleOp(Opcode::PushArray); - CodeBuilder->WriteUInt32(hexData.size()); + CodeBuilder->WriteUInt32(vec.size()); - auto vec = Utils::DataConversion::HexToData(hexData); - CodeBuilder->WriteData(vec.data(), hexData.size()); + CodeBuilder->WriteData(vec.data(), vec.size()); } void CompileRDR::AddCall() @@ -1815,76 +1842,91 @@ void CompileRDR::AddReturn() void CompileRDR::WriteScript(const std::string& scriptOutPath) { - DataBuilderBig script; - script.BlockSize = 16384; + std::unique_ptr script; + if (Options::Platform == Platform::PC) + script = std::make_unique(); + else + script = std::make_unique(); - script.Data.reserve(sizeof(RDRHeader) + CodeBuilder->Data.size() + Statics.size() * sizeof(uint32_t) + NativeIndexes.size() * sizeof(uint32_t) + script.BlockSize); + script->BlockSize = 16384; - uint32_t codeOffset = script.Data.size(); - script.WriteData(CodeBuilder->Data.data(), CodeBuilder->Data.size()); - script.Pad(16, 0xCD); + script->Data.reserve(sizeof(RDRHeader) + CodeBuilder->Data.size() + Statics.size() * sizeof(uint32_t) + NativeIndexes.size() * sizeof(uint32_t) + script->BlockSize); - uint32_t nativesOffset = script.Data.size(); - script.PadDirect(NativeIndexes.size() * sizeof(uint32_t)); + uint32_t codeOffset = script->Data.size(); + script->WriteData(CodeBuilder->Data.data(), CodeBuilder->Data.size()); + script->Pad(16, 0xCD); + + uint32_t nativesLength = NativeIndexes.size() * sizeof(uint32_t); + if (script->IsWriteOverPage(nativesLength)) + script->PadPage(0xCD); + + uint32_t nativesOffset = script->Data.size(); + script->PadDirect(nativesLength); for (auto i : NativeIndexes) { - script.SetUInt32((uint32_t)i.first, nativesOffset + i.second * sizeof(uint32_t)); + script->SetUInt32((uint32_t)i.first, nativesOffset + i.second * sizeof(uint32_t)); } - script.Pad(16, 0xCD); + script->Pad(16, 0xCD); - uint32_t staticsOffset = script.Data.size(); + uint32_t staticsLength = Statics.size() * sizeof(uint32_t); + if (script->IsWriteOverPage(staticsLength)) + script->PadPage(0xCD); + uint32_t staticsOffset = script->Data.size(); for (auto i : Statics) { - script.WriteInt32(i); + auto value = i; + if (Options::Platform == Platform::PC) // PC must have statics in big-endian + value = Utils::Bitwise::SwapEndian(value); + script->WriteInt32(value); } - script.Pad(16, 0xCD); + script->Pad(16, 0xCD); - uint32_t codeBlocksOffset = script.Data.size(); + uint32_t codeBlocksOffset = script->Data.size(); for (int i = 0; i < CodeBuilder->Data.size(); i += CodeBuilder->BlockSize) - script.WriteUInt32(RelPtr(codeOffset + i).Value); + script->WriteUInt32(RelPtr(codeOffset + i).Value); - script.Pad(16, 0xCD); + script->Pad(16, 0xCD); uint32_t pageMap[8] = { 0, 0, 1, 0, 0, 0, 0, 0 }; - uint32_t pageMapOffset = script.Data.size(); - script.WriteData(pageMap, sizeof(uint32_t) * 8); + uint32_t pageMapOffset = script->Data.size(); + script->WriteData(pageMap, sizeof(uint32_t) * 8); - uint32_t totalSize = script.Data.size() + sizeof(RDRHeader); - script.Data.resize(totalSize, 0xCD); + uint32_t totalSize = script->Data.size() + sizeof(RDRHeader); + script->Data.resize(totalSize, 0xCD); vector DataSizePages = GetPageSizes(totalSize); uint32_t HeaderStartIndex = GetHeaderPagePos(DataSizePages); - if (totalSize != script.Data.size()) - script.Data.resize(totalSize, 0xCD); + if (totalSize != script->Data.size()) + script->Data.resize(totalSize, 0xCD); //poor mans header pos //should be shrunk while (HeaderStartIndex < pageMapOffset) { - totalSize = script.Data.size() + 16384; - script.Data.resize(totalSize, 0xCD); + totalSize = script->Data.size() + 16384; + script->Data.resize(totalSize, 0xCD); DataSizePages = GetPageSizes(totalSize); HeaderStartIndex = GetHeaderPagePos(DataSizePages); - if (totalSize != script.Data.size()) - script.Data.resize(totalSize, 0xCD); + if (totalSize != script->Data.size()) + script->Data.resize(totalSize, 0xCD); } - script.SetUInt32(0xA8D74300, HeaderStartIndex + offsetof(RDRHeader, PgBase)); - script.SetUInt32((uint32_t)SignatureType, HeaderStartIndex + offsetof(RDRHeader, Signature)); - script.SetUInt32((uint32_t)CodeBuilder->Data.size(), HeaderStartIndex + offsetof(RDRHeader, CodeLength)); - script.SetUInt32(ParameterCount, HeaderStartIndex + offsetof(RDRHeader, ParameterCount)); - script.SetUInt32(Statics.size(), HeaderStartIndex + offsetof(RDRHeader, StaticsCount)); - script.SetUInt32(NativeIndexes.size(), HeaderStartIndex + offsetof(RDRHeader, NativesCount)); - script.SetUInt32(RelPtr(nativesOffset).Value, HeaderStartIndex + offsetof(RDRHeader, NativesOffset)); - script.SetUInt32(RelPtr(staticsOffset).Value, HeaderStartIndex + offsetof(RDRHeader, StaticsOffset)); - script.SetUInt32(RelPtr(codeBlocksOffset).Value, HeaderStartIndex + offsetof(RDRHeader, CodeBlocksOffset)); - script.SetUInt32(RelPtr(pageMapOffset).Value, HeaderStartIndex + offsetof(RDRHeader, PageMapOffset)); + script->SetUInt32(Options::Platform == Platform::PC ? 0x0016E444 : 0xA8D74300, HeaderStartIndex + offsetof(RDRHeader, PgBase)); + script->SetUInt32((uint32_t)SignatureType, HeaderStartIndex + offsetof(RDRHeader, Signature)); + script->SetUInt32((uint32_t)CodeBuilder->Data.size(), HeaderStartIndex + offsetof(RDRHeader, CodeLength)); + script->SetUInt32(ParameterCount, HeaderStartIndex + offsetof(RDRHeader, ParameterCount)); + script->SetUInt32(Statics.size(), HeaderStartIndex + offsetof(RDRHeader, StaticsCount)); + script->SetUInt32(NativeIndexes.size(), HeaderStartIndex + offsetof(RDRHeader, NativesCount)); + script->SetUInt32(RelPtr(nativesOffset).Value, HeaderStartIndex + offsetof(RDRHeader, NativesOffset)); + script->SetUInt32(RelPtr(staticsOffset).Value, HeaderStartIndex + offsetof(RDRHeader, StaticsOffset)); + script->SetUInt32(RelPtr(codeBlocksOffset).Value, HeaderStartIndex + offsetof(RDRHeader, CodeBlocksOffset)); + script->SetUInt32(RelPtr(pageMapOffset).Value, HeaderStartIndex + offsetof(RDRHeader, PageMapOffset)); switch (Options::Platform) @@ -1899,13 +1941,13 @@ void CompileRDR::WriteScript(const std::string& scriptOutPath) compressedData.SetUInt32(0x0FF512F1, 0);//LZX Signature? - Utils::Compression::XCompress_Compress(script.Data.data(), totalSize, compressedData.Data.data() + 8, &compressedSize); + Utils::Compression::XCompress_Compress(script->Data.data(), totalSize, compressedData.Data.data() + 8, &compressedSize); compressedData.Data.resize(compressedSize + 8); compressedData.SetUInt32(compressedSize, 4); - script.Data = compressedData.Data; + script->Data = compressedData.Data; } break; @@ -1913,22 +1955,31 @@ void CompileRDR::WriteScript(const std::string& scriptOutPath) { vector compressedData(totalSize); - Utils::Compression::ZLIB_CompressNew(script.Data, compressedData); + Utils::Compression::ZLIB_CompressNew(script->Data, compressedData); + + script->Data = compressedData; + } + break; + case Platform::PC: + { + vector compressedData(totalSize); + + Utils::Compression::ZSTD_CompressNew(script->Data, compressedData); - script.Data = compressedData; + script->Data = compressedData; } break; } - if (!Utils::Crypt::AES_Encrypt(script.Data.data(), script.Data.size(), RDRKey)) + if (!Utils::Crypt::AES_Encrypt(script->Data.data(), script->Data.size(), RDRKey)) Utils::System::Throw("Encryption Failed"); CSRHeader csr = { - Utils::Bitwise::SwapEndian(Options::Platform == Platform::XBOX ? 0x85435352u : 0x86435352u), - Utils::Bitwise::SwapEndian(0x00000002u) + Options::Platform == Platform::PC ? 0x85435352u : Utils::Bitwise::SwapEndian(Options::Platform == Platform::XBOX ? 0x85435352u : 0x86435352u), + Options::Platform == Platform::PC ? 0x00000002u : Utils::Bitwise::SwapEndian(0x00000002u) }; @@ -1937,14 +1988,17 @@ void CompileRDR::WriteScript(const std::string& scriptOutPath) csr.Flags.TotalVSize = totalSize >> 12;//platform dependent? (currently xbox) csr.Flags.ObjectStartPage = ObjectStartPageSizeToFlag(DataSizePages[DataSizePages.size() - 1]); - csr.Flags.Flag[0] = Utils::Bitwise::SwapEndian(csr.Flags.Flag[0]); - csr.Flags.Flag[1] = Utils::Bitwise::SwapEndian(csr.Flags.Flag[1]); + if (Options::Platform != Platform::PC) + { + csr.Flags.Flag[0] = Utils::Bitwise::SwapEndian(csr.Flags.Flag[0]); + csr.Flags.Flag[1] = Utils::Bitwise::SwapEndian(csr.Flags.Flag[1]); + } FILE* file = nullptr; if (Utils::IO::CreateFileWithDir(scriptOutPath.c_str(), file)) { fwrite(&csr, 1, sizeof(csr), file); - fwrite(script.Data.data(), 1, script.Data.size(), file); + fwrite(script->Data.data(), 1, script->Data.size(), file); fclose(file); } diff --git a/RASM/Include/Compiler/Compiler.h b/RASM/Include/Compiler/Compiler.h index 8c3515c..e0c0a23 100644 --- a/RASM/Include/Compiler/Compiler.h +++ b/RASM/Include/Compiler/Compiler.h @@ -199,7 +199,8 @@ class CompileBase } //RDR2 requires sorted cases - std::sort(casesAndLabels.begin(), casesAndLabels.end()); + if (Options::GameTarget == GameTarget::RDR2) + std::sort(casesAndLabels.begin(), casesAndLabels.end()); writeSwitch(casesAndLabels); @@ -570,6 +571,29 @@ class CompileRDR : public CompileBase {Opcode::PushF_5, 153}, {Opcode::PushF_6, 154}, {Opcode::PushF_7, 155}, + {Opcode::PatchRet, 156}, + {Opcode::PatchTrap0, 157}, + {Opcode::PatchTrap1, 158}, + {Opcode::PatchTrap2, 159}, + {Opcode::PatchTrap3, 160}, + {Opcode::PatchTrap4, 161}, + {Opcode::PatchTrap5, 162}, + {Opcode::PatchTrap6, 163}, + {Opcode::PatchTrap7, 164}, + {Opcode::PatchTrap8, 165}, + {Opcode::PatchTrap9, 166}, + {Opcode::PatchTrapA, 167}, + {Opcode::PatchTrapB, 168}, + {Opcode::PatchTrapC, 169}, + {Opcode::PatchTrapD, 170}, + {Opcode::PatchTrapE, 171}, + {Opcode::PatchTrapF, 172}, + {Opcode::CallPatch, 173}, + {Opcode::CallOutOfPatch, 174}, + {Opcode::LoadRef, 175}, + {Opcode::StoreRef, 176}, + {Opcode::StoreVector, 177}, + {Opcode::MakeVector, 178}, }; #pragma endregion diff --git a/RASM/Include/Decompiler/Decompiler.cpp b/RASM/Include/Decompiler/Decompiler.cpp index 52b9ae0..95e6153 100644 --- a/RASM/Include/Decompiler/Decompiler.cpp +++ b/RASM/Include/Decompiler/Decompiler.cpp @@ -470,7 +470,7 @@ void DecompileBase::GetCode(const string& asmOutPath) case Opcode::PushString: ReadPushString(); break; case Opcode::PushStringS: PrintSingleOp("PushStringS"); break; case Opcode::PushArray: ReadPushArray(); break; - case Opcode::PushStringNull:PrintSingleOp("PushString \"\""); break; + case Opcode::PushStringNull:PrintSingleOp("PushStringNull"); break; case Opcode::GetHash: PrintSingleOp("GetHash"); break; case Opcode::StrCopy: ReadUInt8("StrCopy"); break; case Opcode::ItoS: ReadUInt8("ItoS"); break; @@ -554,6 +554,29 @@ void DecompileBase::GetCode(const string& asmOutPath) case Opcode::GetStatic3: ReadUInt24("GetStatic"); break; case Opcode::SetStatic3: ReadUInt24("SetStatic"); break; + case Opcode::PatchRet: PrintSingleOp("PatchRet"); break; + case Opcode::PatchTrap0: PrintSingleOp("PatchTrap0"); break; + case Opcode::PatchTrap1: PrintSingleOp("PatchTrap1"); break; + case Opcode::PatchTrap2: PrintSingleOp("PatchTrap2"); break; + case Opcode::PatchTrap3: PrintSingleOp("PatchTrap3"); break; + case Opcode::PatchTrap4: PrintSingleOp("PatchTrap4"); break; + case Opcode::PatchTrap5: PrintSingleOp("PatchTrap5"); break; + case Opcode::PatchTrap6: PrintSingleOp("PatchTrap6"); break; + case Opcode::PatchTrap7: PrintSingleOp("PatchTrap7"); break; + case Opcode::PatchTrap8: PrintSingleOp("PatchTrap8"); break; + case Opcode::PatchTrap9: PrintSingleOp("PatchTrap9"); break; + case Opcode::PatchTrapA: PrintSingleOp("PatchTrapA"); break; + case Opcode::PatchTrapB: PrintSingleOp("PatchTrapB"); break; + case Opcode::PatchTrapC: PrintSingleOp("PatchTrapC"); break; + case Opcode::PatchTrapD: PrintSingleOp("PatchTrapD"); break; + case Opcode::PatchTrapE: PrintSingleOp("PatchTrapE"); break; + case Opcode::PatchTrapF: PrintSingleOp("PatchTrapF"); break; + case Opcode::CallPatch: PrintSingleOp("CallPatch"); break; + case Opcode::CallOutOfPatch: PrintSingleOp("CallOutOfPatch"); break; + case Opcode::LoadRef: PrintSingleOp("LoadRef"); break; + case Opcode::StoreRef: PrintSingleOp("StoreRef"); break; + case Opcode::StoreVector: PrintSingleOp("StoreVector"); break; + case Opcode::MakeVector: PrintSingleOp("MakeVector"); break; case Opcode::Uninitialized: default: @@ -838,8 +861,7 @@ void DecompileBase::PrintPush(int value, int value1, int value2) void DecompileBase::PrintPushF(float value) { - Out += "PushF "; - Out += std::to_string(value); + Out += std::format("PushF {}", value); PrintVerbosePC(); Out += "\r\n"; @@ -938,6 +960,12 @@ void DecompileBase::PrintCallNative(uint32_t nativeIndex, int32_t nativeParamCou Reader->ReadUInt64(reinterpret_cast((uint64_t*)CommonHeader.NativesOffset + nativeIndex)) : Reader->ReadUInt32(reinterpret_cast((uint32_t*)CommonHeader.NativesOffset + nativeIndex))); + // rdr1 pc keeps natives in little-endian + if (Options::Platform == Platform::PC && (Options::GameTarget == GameTarget::RDR || Options::GameTarget == GameTarget::RDR_SCO)) + { + nativeValue = Utils::Bitwise::SwapEndian(uint32_t(nativeValue)); + } + if (NativeTranslationMap.size() > 0) { auto foundTransNative = NativeTranslationMap.find(nativeValue); @@ -952,6 +980,11 @@ void DecompileBase::PrintCallNative(uint32_t nativeIndex, int32_t nativeParamCou auto foundNative = NativeMap.find(nativeValue); + // rdr1pc swap native value back before display + if (Options::Platform == Platform::PC && (Options::GameTarget == GameTarget::RDR || Options::GameTarget == GameTarget::RDR_SCO)) + { + nativeValue = Utils::Bitwise::SwapEndian(uint32_t(nativeValue)); + } if (foundNative != NativeMap.end()) { @@ -1330,12 +1363,18 @@ void DecompileRDR::OpenScript(vector& data) { CurrentReadPos = data.data(); - if (Reader->ReadUInt32(CurrentReadPos + offsetof(CSRHeader, ResourceType)) != 2) + std::unique_ptr HeaderReader; + if (Options::Platform == Platform::PC) + HeaderReader = std::make_unique(); + else + HeaderReader = std::make_unique(); + + if (HeaderReader->ReadUInt32(CurrentReadPos + offsetof(CSRHeader, ResourceType)) != 2) Utils::System::Throw("Invalid Resource Type"); RSCFlag flags = { - Reader->ReadUInt32(CurrentReadPos + offsetof(CSRHeader, Flags)), - Reader->ReadUInt32(CurrentReadPos + offsetof(CSRHeader, Flags) + 4) + HeaderReader->ReadUInt32(CurrentReadPos + offsetof(CSRHeader, Flags)), + HeaderReader->ReadUInt32(CurrentReadPos + offsetof(CSRHeader, Flags) + 4) }; uint64_t decompressedSize = GetSizeFromFlag(flags.Flag[0], flags.Flag[1]);//index 12 = xcompress decompile size @@ -1350,7 +1389,7 @@ void DecompileRDR::OpenScript(vector& data) case Platform::XBOX: { vector decompressedData(decompressedSize); - uint32_t compressedSize = Reader->ReadUInt32(CurrentReadPos + offsetof(CompressedHeader, CompressedSize)); + uint32_t compressedSize = HeaderReader->ReadUInt32(CurrentReadPos + offsetof(CompressedHeader, CompressedSize)); const uint32_t compressedDataStart = sizeof(CSRHeader) + sizeof(CompressedHeader); if (compressedSize != data.size() - compressedDataStart) @@ -1375,6 +1414,15 @@ void DecompileRDR::OpenScript(vector& data) memcpy(data.data(), decompressedData.data(), decompressedSize); } break; + case Platform::PC: + { + vector decompressedData(decompressedSize); + Utils::Compression::ZSTD_DecompressNew(CurrentReadPos, data.size() - sizeof(CSRHeader), decompressedData); + decompressedSize = decompressedData.size(); + data.resize(decompressedSize); + memcpy(data.data(), decompressedData.data(), decompressedSize); + } + break; } uint32_t headerLocation = GetObjectStartPageOffset(flags); @@ -1388,38 +1436,40 @@ void DecompileRDR::OpenScript(vector& data) else Utils::System::Throw("Invalid Header Location"); + constexpr int MAGIC_CONSOLE = 0xA8D74300; + constexpr int MAGIC_PC = 0x0016E444; - auto unk = Reader->ReadUInt32(CurrentReadPos); - if (Reader->ReadUInt32(CurrentReadPos) != 0xA8D74300) + auto magic = HeaderReader->ReadUInt32(CurrentReadPos); + if (magic != MAGIC_CONSOLE && magic != MAGIC_PC) Utils::System::Throw("Header Not Found"); CommonHeader.HeaderPtr = CurrentReadPos; - CommonHeader.CodeLength = Reader->ReadUInt32(CurrentReadPos + offsetof(RDRHeader, CodeLength)); + CommonHeader.CodeLength = HeaderReader->ReadUInt32(CurrentReadPos + offsetof(RDRHeader, CodeLength)); CommonHeader.TotalStringLength = 0; CommonHeader.StringBlocksCount = 0; - CommonHeader.NativesCount = Reader->ReadUInt32(CurrentReadPos + offsetof(RDRHeader, NativesCount)); - CommonHeader.NativesOffset = RelPtr(Reader->ReadUInt32(CurrentReadPos + offsetof(RDRHeader, NativesOffset))).GetPtr(data.data()); + CommonHeader.NativesCount = HeaderReader->ReadUInt32(CurrentReadPos + offsetof(RDRHeader, NativesCount)); + CommonHeader.NativesOffset = RelPtr(HeaderReader->ReadUInt32(CurrentReadPos + offsetof(RDRHeader, NativesOffset))).GetPtr(data.data()); - CommonHeader.StaticsCount = Reader->ReadUInt32(CurrentReadPos + offsetof(RDRHeader, StaticsCount)); - CommonHeader.StaticsOffset = RelPtr(Reader->ReadUInt32(CurrentReadPos + offsetof(RDRHeader, StaticsOffset))).GetPtr(data.data()); + CommonHeader.StaticsCount = HeaderReader->ReadUInt32(CurrentReadPos + offsetof(RDRHeader, StaticsCount)); + CommonHeader.StaticsOffset = RelPtr(HeaderReader->ReadUInt32(CurrentReadPos + offsetof(RDRHeader, StaticsOffset))).GetPtr(data.data()); CommonHeader.ScriptName = (char*)""; - CommonHeader.ParameterCount = Reader->ReadUInt32(CurrentReadPos + offsetof(RDRHeader, ParameterCount)); + CommonHeader.ParameterCount = HeaderReader->ReadUInt32(CurrentReadPos + offsetof(RDRHeader, ParameterCount)); - CommonHeader.Signature = (Signature)Reader->ReadUInt32(CurrentReadPos + offsetof(RDRHeader, Signature)); + CommonHeader.Signature = (Signature)HeaderReader->ReadUInt32(CurrentReadPos + offsetof(RDRHeader, Signature)); if (Options::DecompileOptions::Verbose) { VerboseComment("//Natives Count: ", CommonHeader.NativesCount); VerboseComment("//Code Length: ", CommonHeader.CodeLength); - VerboseComment("//Page Map Offset: ", Reader->ReadUInt32(CurrentReadPos + offsetof(RDRHeader, PageMapOffset)) & 0x0FFFFFFF); - VerboseComment("//Natives Offset: ", Reader->ReadUInt32(CurrentReadPos + offsetof(RDRHeader, NativesOffset)) & 0x0FFFFFFF); - VerboseComment("//Statics Offset: ", Reader->ReadUInt32(CurrentReadPos + offsetof(RDRHeader, StaticsOffset)) & 0x0FFFFFFF); - VerboseComment("//Code Blocks Offset: ", Reader->ReadUInt32(CurrentReadPos + offsetof(RDRHeader, CodeBlocksOffset)) & 0x0FFFFFFF); + VerboseComment("//Page Map Offset: ", HeaderReader->ReadUInt32(CurrentReadPos + offsetof(RDRHeader, PageMapOffset)) & 0x0FFFFFFF); + VerboseComment("//Natives Offset: ", HeaderReader->ReadUInt32(CurrentReadPos + offsetof(RDRHeader, NativesOffset)) & 0x0FFFFFFF); + VerboseComment("//Statics Offset: ", HeaderReader->ReadUInt32(CurrentReadPos + offsetof(RDRHeader, StaticsOffset)) & 0x0FFFFFFF); + VerboseComment("//Code Blocks Offset: ", HeaderReader->ReadUInt32(CurrentReadPos + offsetof(RDRHeader, CodeBlocksOffset)) & 0x0FFFFFFF); } @@ -1427,14 +1477,14 @@ void DecompileRDR::OpenScript(vector& data) CommonHeader.CodeBlocksCount = (CommonHeader.CodeLength + ((1 << 14) - 1)) >> 14; CommonHeader.CodeBlockOffsets.resize(CommonHeader.CodeBlocksCount); - uint32_t* codeBlocksOffset = RelPtr(Reader->ReadUInt32(CurrentReadPos + offsetof(RDRHeader, CodeBlocksOffset))).GetPtr(data.data()); + uint32_t* codeBlocksOffset = RelPtr(HeaderReader->ReadUInt32(CurrentReadPos + offsetof(RDRHeader, CodeBlocksOffset))).GetPtr(data.data()); for (uint32_t i = 0; i < CommonHeader.CodeBlocksCount; i++) { - RelPtr offset = RelPtr(Reader->ReadUInt32(reinterpret_cast(codeBlocksOffset + i))); + RelPtr offset = RelPtr(HeaderReader->ReadUInt32(reinterpret_cast(codeBlocksOffset + i))); CommonHeader.CodeBlockOffsets[i] = offset.GetPtr(data.data()); if (Options::DecompileOptions::Verbose) - VerboseComment("//Code Block Offset: ", Reader->ReadUInt32(codeBlocksOffset + i) & 0x0FFFFFFF); + VerboseComment("//Code Block Offset: ", HeaderReader->ReadUInt32(codeBlocksOffset + i) & 0x0FFFFFFF); } } diff --git a/RASM/Include/Decompiler/Decompiler.h b/RASM/Include/Decompiler/Decompiler.h index 80a0b62..aeee3e3 100644 --- a/RASM/Include/Decompiler/Decompiler.h +++ b/RASM/Include/Decompiler/Decompiler.h @@ -537,7 +537,7 @@ class DecompileGTAIV : public DecompileBase class DecompileRDR : public DecompileBase { #pragma region Vars - const Opcode _CommonOpsIndexedByTargetOps[255] = { Opcode::Nop, Opcode::Add, Opcode::Sub, Opcode::Mult, Opcode::Div, Opcode::Mod, Opcode::Not, Opcode::Neg, Opcode::CmpEQ, Opcode::CmpNE, Opcode::CmpGT, Opcode::CmpGE, Opcode::CmpLT, Opcode::CmpLE, Opcode::fAdd, Opcode::fSub, Opcode::fMult, Opcode::fDiv, Opcode::fMod, Opcode::fNeg, Opcode::fCmpEQ, Opcode::fCmpNE, Opcode::fCmpGT, Opcode::fCmpGE, Opcode::fCmpLT, Opcode::fCmpLE, Opcode::vAdd, Opcode::vSub, Opcode::vMult, Opcode::vDiv, Opcode::vNeg, Opcode::And, Opcode::Or, Opcode::Xor, Opcode::ItoF, Opcode::FtoI, Opcode::FtoV, Opcode::PushB, Opcode::PushB2, Opcode::PushB3, Opcode::Push, Opcode::PushF, Opcode::Dup, Opcode::Drop, Opcode::CallNative, Opcode::Function, Opcode::Return, Opcode::pGet, Opcode::pSet, Opcode::pPeekSet, Opcode::ToStack, Opcode::FromStack, Opcode::GetArrayP1, Opcode::GetArray1, Opcode::SetArray1, Opcode::GetLocalP1, Opcode::GetLocal1, Opcode::SetLocal1, Opcode::GetStaticP1, Opcode::GetStatic1, Opcode::SetStatic1, Opcode::AddImm1, Opcode::GetImm1, Opcode::SetImm1, Opcode::MultImm1, Opcode::PushS, Opcode::AddImm2, Opcode::GetImm2, Opcode::SetImm2, Opcode::MultImm2, Opcode::GetArrayP2, Opcode::GetArray2, Opcode::SetArray2, Opcode::GetLocalP2, Opcode::GetLocal2, Opcode::SetLocal2, Opcode::GetStaticP2, Opcode::GetStatic2, Opcode::SetStatic2, Opcode::GetGlobalP2, Opcode::GetGlobal2, Opcode::SetGlobal2, Opcode::Call2, Opcode::Call2h1, Opcode::Call2h2, Opcode::Call2h3, Opcode::Call2h4, Opcode::Call2h5, Opcode::Call2h6, Opcode::Call2h7, Opcode::Call2h8, Opcode::Call2h9, Opcode::Call2hA, Opcode::Call2hB, Opcode::Call2hC, Opcode::Call2hD, Opcode::Call2hE, Opcode::Call2hF, Opcode::Jump, Opcode::JumpFalse, Opcode::JumpNE, Opcode::JumpEQ, Opcode::JumpLE, Opcode::JumpLT, Opcode::JumpGE, Opcode::JumpGT, Opcode::GetGlobalP3, Opcode::GetGlobal3, Opcode::SetGlobal3, Opcode::PushI24, Opcode::Switch, Opcode::PushString, Opcode::PushArray, Opcode::PushStringNull, Opcode::StrCopy, Opcode::ItoS, Opcode::StrAdd, Opcode::StrAddi, Opcode::MemCopy, Opcode::Catch, Opcode::Throw, Opcode::pCall, Opcode::ReturnP0R0, Opcode::ReturnP0R1, Opcode::ReturnP0R2, Opcode::ReturnP0R3, Opcode::ReturnP1R0, Opcode::ReturnP1R1, Opcode::ReturnP1R2, Opcode::ReturnP1R3, Opcode::ReturnP2R0, Opcode::ReturnP2R1, Opcode::ReturnP2R2, Opcode::ReturnP2R3, Opcode::ReturnP3R0, Opcode::ReturnP3R1, Opcode::ReturnP3R2, Opcode::ReturnP3R3, Opcode::Push_Neg1, Opcode::Push_0, Opcode::Push_1, Opcode::Push_2, Opcode::Push_3, Opcode::Push_4, Opcode::Push_5, Opcode::Push_6, Opcode::Push_7, Opcode::PushF_Neg1, Opcode::PushF_0, Opcode::PushF_1, Opcode::PushF_2, Opcode::PushF_3, Opcode::PushF_4, Opcode::PushF_5, Opcode::PushF_6, Opcode::PushF_7, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized }; + const Opcode _CommonOpsIndexedByTargetOps[255] = { Opcode::Nop, Opcode::Add, Opcode::Sub, Opcode::Mult, Opcode::Div, Opcode::Mod, Opcode::Not, Opcode::Neg, Opcode::CmpEQ, Opcode::CmpNE, Opcode::CmpGT, Opcode::CmpGE, Opcode::CmpLT, Opcode::CmpLE, Opcode::fAdd, Opcode::fSub, Opcode::fMult, Opcode::fDiv, Opcode::fMod, Opcode::fNeg, Opcode::fCmpEQ, Opcode::fCmpNE, Opcode::fCmpGT, Opcode::fCmpGE, Opcode::fCmpLT, Opcode::fCmpLE, Opcode::vAdd, Opcode::vSub, Opcode::vMult, Opcode::vDiv, Opcode::vNeg, Opcode::And, Opcode::Or, Opcode::Xor, Opcode::ItoF, Opcode::FtoI, Opcode::FtoV, Opcode::PushB, Opcode::PushB2, Opcode::PushB3, Opcode::Push, Opcode::PushF, Opcode::Dup, Opcode::Drop, Opcode::CallNative, Opcode::Function, Opcode::Return, Opcode::pGet, Opcode::pSet, Opcode::pPeekSet, Opcode::ToStack, Opcode::FromStack, Opcode::GetArrayP1, Opcode::GetArray1, Opcode::SetArray1, Opcode::GetLocalP1, Opcode::GetLocal1, Opcode::SetLocal1, Opcode::GetStaticP1, Opcode::GetStatic1, Opcode::SetStatic1, Opcode::AddImm1, Opcode::GetImm1, Opcode::SetImm1, Opcode::MultImm1, Opcode::PushS, Opcode::AddImm2, Opcode::GetImm2, Opcode::SetImm2, Opcode::MultImm2, Opcode::GetArrayP2, Opcode::GetArray2, Opcode::SetArray2, Opcode::GetLocalP2, Opcode::GetLocal2, Opcode::SetLocal2, Opcode::GetStaticP2, Opcode::GetStatic2, Opcode::SetStatic2, Opcode::GetGlobalP2, Opcode::GetGlobal2, Opcode::SetGlobal2, Opcode::Call2, Opcode::Call2h1, Opcode::Call2h2, Opcode::Call2h3, Opcode::Call2h4, Opcode::Call2h5, Opcode::Call2h6, Opcode::Call2h7, Opcode::Call2h8, Opcode::Call2h9, Opcode::Call2hA, Opcode::Call2hB, Opcode::Call2hC, Opcode::Call2hD, Opcode::Call2hE, Opcode::Call2hF, Opcode::Jump, Opcode::JumpFalse, Opcode::JumpNE, Opcode::JumpEQ, Opcode::JumpLE, Opcode::JumpLT, Opcode::JumpGE, Opcode::JumpGT, Opcode::GetGlobalP3, Opcode::GetGlobal3, Opcode::SetGlobal3, Opcode::PushI24, Opcode::Switch, Opcode::PushString, Opcode::PushArray, Opcode::PushStringNull, Opcode::StrCopy, Opcode::ItoS, Opcode::StrAdd, Opcode::StrAddi, Opcode::MemCopy, Opcode::Catch, Opcode::Throw, Opcode::pCall, Opcode::ReturnP0R0, Opcode::ReturnP0R1, Opcode::ReturnP0R2, Opcode::ReturnP0R3, Opcode::ReturnP1R0, Opcode::ReturnP1R1, Opcode::ReturnP1R2, Opcode::ReturnP1R3, Opcode::ReturnP2R0, Opcode::ReturnP2R1, Opcode::ReturnP2R2, Opcode::ReturnP2R3, Opcode::ReturnP3R0, Opcode::ReturnP3R1, Opcode::ReturnP3R2, Opcode::ReturnP3R3, Opcode::Push_Neg1, Opcode::Push_0, Opcode::Push_1, Opcode::Push_2, Opcode::Push_3, Opcode::Push_4, Opcode::Push_5, Opcode::Push_6, Opcode::Push_7, Opcode::PushF_Neg1, Opcode::PushF_0, Opcode::PushF_1, Opcode::PushF_2, Opcode::PushF_3, Opcode::PushF_4, Opcode::PushF_5, Opcode::PushF_6, Opcode::PushF_7, Opcode::PatchRet, Opcode::PatchTrap0, Opcode::PatchTrap1, Opcode::PatchTrap2, Opcode::PatchTrap3, Opcode::PatchTrap4, Opcode::PatchTrap5, Opcode::PatchTrap6, Opcode::PatchTrap7, Opcode::PatchTrap8, Opcode::PatchTrap9, Opcode::PatchTrapA, Opcode::PatchTrapB, Opcode::PatchTrapC, Opcode::PatchTrapD, Opcode::PatchTrapE, Opcode::PatchTrapF, Opcode::CallPatch, Opcode::CallOutOfPatch, Opcode::LoadRef, Opcode::StoreRef, Opcode::StoreVector, Opcode::MakeVector, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized, Opcode::Uninitialized }; #pragma endregion protected: diff --git a/RASM/Include/Utils/Constants.h b/RASM/Include/Utils/Constants.h index 173b59c..382df5e 100644 --- a/RASM/Include/Utils/Constants.h +++ b/RASM/Include/Utils/Constants.h @@ -291,7 +291,31 @@ enum class Opcode : uint16_t SetParamCount, SetSignature, Pad, - + + // rdr1 pc/nsw + PatchRet, + PatchTrap0, + PatchTrap1, + PatchTrap2, + PatchTrap3, + PatchTrap4, + PatchTrap5, + PatchTrap6, + PatchTrap7, + PatchTrap8, + PatchTrap9, + PatchTrapA, + PatchTrapB, + PatchTrapC, + PatchTrapD, + PatchTrapE, + PatchTrapF, + CallPatch, + CallOutOfPatch, + LoadRef, + StoreRef, + StoreVector, + MakeVector, //custom multi ops //GetArrayP, @@ -449,7 +473,7 @@ const std::unordered_map OpcodeNamesUpper = {"PUSHSTRING", Opcode::PushString}, {"PUSHSTRINGS", Opcode::PushStringS}, {"PUSHARRAY", Opcode::PushArray}, - //{"PUSHSTRINGNULL", Opcode::PushStringNull}, + {"PUSHSTRINGNULL", Opcode::PushStringNull}, {"GETHASH", Opcode::GetHash}, {"STRCOPY", Opcode::StrCopy}, {"ITOS", Opcode::ItoS}, @@ -540,6 +564,30 @@ const std::unordered_map OpcodeNamesUpper = {"SETSIGNATURE", Opcode::SetSignature}, {"PAD", Opcode::Pad}, + {"PATCHRET", Opcode::PatchRet}, + {"PATCHTRAP0", Opcode::PatchTrap0}, + {"PATCHTRAP1", Opcode::PatchTrap1}, + {"PATCHTRAP2", Opcode::PatchTrap2}, + {"PATCHTRAP3", Opcode::PatchTrap3}, + {"PATCHTRAP4", Opcode::PatchTrap4}, + {"PATCHTRAP5", Opcode::PatchTrap5}, + {"PATCHTRAP6", Opcode::PatchTrap6}, + {"PATCHTRAP7", Opcode::PatchTrap7}, + {"PATCHTRAP8", Opcode::PatchTrap8}, + {"PATCHTRAP9", Opcode::PatchTrap9}, + {"PATCHTRAPA", Opcode::PatchTrapA}, + {"PATCHTRAPB", Opcode::PatchTrapB}, + {"PATCHTRAPC", Opcode::PatchTrapC}, + {"PATCHTRAPD", Opcode::PatchTrapD}, + {"PATCHTRAPE", Opcode::PatchTrapE}, + {"PATCHTRAPF", Opcode::PatchTrapF}, + {"CALLPATCH", Opcode::CallPatch}, + {"CALLOUTOFPATCH", Opcode::CallOutOfPatch}, + {"LOADREF", Opcode::LoadRef}, + {"STOREREF", Opcode::StoreRef}, + {"STOREVECTOR", Opcode::StoreVector}, + {"MAKEVECTOR", Opcode::MakeVector}, + { "ADDIMM", Opcode::AddImm1 }, { "MULTIMM", Opcode::MultImm1 }, { "GETARRAYP", Opcode::GetArrayP1 }, diff --git a/RASM/Include/Utils/Utils.cpp b/RASM/Include/Utils/Utils.cpp index c32ce29..5035796 100644 --- a/RASM/Include/Utils/Utils.cpp +++ b/RASM/Include/Utils/Utils.cpp @@ -11,12 +11,12 @@ #include "ConsoleColor.h" #include #include +#include #include "Compression/xcompress.h" #include #include #include - using namespace std; using namespace Utils::System; using namespace Utils::Bitwise; @@ -1017,6 +1017,149 @@ namespace Utils return "UNK_ERR" + to_string(errorcode); } + void ZSTD_DecompressNew(uint8_t* in, uint32_t inSize, std::vector& out) { + size_t ec; + size_t have; + ZSTD_DStream* dstream = nullptr; + ZSTD_inBuffer input; + ZSTD_outBuffer output; + unsigned char outbuf[CHUNK]; + uint32_t inIndex = 0; + + out.clear(); + + // Create the decompression stream + dstream = ZSTD_createDStream(); + if (!dstream) { + throw std::runtime_error("ZSTD_createDStream Failed"); + } + + // Initialize the decompression stream + ec = ZSTD_initDStream(dstream); + if (ZSTD_isError(ec)) { + ZSTD_freeDStream(dstream); + std::cerr << "Error: " << ZSTD_getErrorName(ec) << '\n'; + throw std::runtime_error("ZSTD_initDStream Failed"); + } + + // Decompress the input data in chunks + while (inIndex < inSize) { + // Prepare the input buffer + uint32_t remaining = inSize - inIndex; + uint32_t sizeToCopy = remaining > CHUNK ? CHUNK : remaining; + + input.src = in + inIndex; + input.size = sizeToCopy; + input.pos = 0; + inIndex += sizeToCopy; + + // Decompress until input is consumed or output buffer is full + do { + output.dst = outbuf; + output.size = CHUNK; + output.pos = 0; + + ec = ZSTD_decompressStream(dstream, &output, &input); + + if (ZSTD_isError(ec)) { + ZSTD_freeDStream(dstream); + std::cerr << "Error: " << ZSTD_getErrorName(ec) << '\n'; + throw std::runtime_error("ZSTD_decompressStream Failed"); + } + + // Append decompressed data to the output vector + have = output.pos; + out.insert(out.end(), outbuf, outbuf + have); + } while (input.pos < input.size); + } + + // Clean up and free resources + ec = ZSTD_freeDStream(dstream); + if (ZSTD_isError(ec)) { + std::cerr << "Error: " << ZSTD_getErrorName(ec) << '\n'; + throw std::runtime_error("ZSTD_freeDStream Failed"); + } + } + + void ZSTD_CompressNew(const std::vector& in, std::vector& out) { + size_t ec; + size_t have; + ZSTD_CStream* cstream = nullptr; + ZSTD_inBuffer input; + ZSTD_outBuffer output; + uint8_t outbuf[CHUNK]; + uint32_t inIndex = 0; + + out.clear(); + + // Create the compression stream + cstream = ZSTD_createCStream(); + if (!cstream) { + throw std::runtime_error("ZSTD_createCStream Failed"); + } + + // Initialize the compression stream with the default compression level + ec = ZSTD_initCStream(cstream, 6); + if (ZSTD_isError(ec)) { + ZSTD_freeCStream(cstream); + std::cerr << "Error: " << ZSTD_getErrorName(ec) << '\n'; + throw std::runtime_error("ZSTD_initCStream Failed"); + } + + // Compress the input data in chunks + while (inIndex < in.size()) { + // Prepare the input buffer + uint32_t remaining = in.size() - inIndex; + uint32_t sizeToCopy = remaining > CHUNK ? CHUNK : remaining; + + input.src = in.data() + inIndex; + input.size = sizeToCopy; + input.pos = 0; + inIndex += sizeToCopy; + + // Compress until input is consumed or output buffer is full + do { + output.dst = outbuf; + output.size = CHUNK; + output.pos = 0; + + ec = ZSTD_compressStream(cstream, &output, &input); + if (ZSTD_isError(ec)) { + ZSTD_freeCStream(cstream); + std::cerr << "Error: " << ZSTD_getErrorName(ec) << '\n'; + throw std::runtime_error("ZSTD_compressStream Failed"); + } + + // Append compressed data to the output vector + have = output.pos; + out.insert(out.end(), outbuf, outbuf + have); + } while (input.pos < input.size); + } + + // Finalize the compression (flush remaining output) + do { + output.dst = outbuf; + output.size = CHUNK; + output.pos = 0; + + ec = ZSTD_endStream(cstream, &output); + if (ZSTD_isError(ec)) { + ZSTD_freeCStream(cstream); + std::cerr << "Error: " << ZSTD_getErrorName(ec) << '\n'; + throw std::runtime_error("ZSTD_endStream Failed"); + } + + have = output.pos; + out.insert(out.end(), outbuf, outbuf + have); + } while (ec != 0); + + // Clean up and free resources + ec = ZSTD_freeCStream(cstream); + if (ZSTD_isError(ec)) { + std::cerr << "Error: " << ZSTD_getErrorName(ec) << '\n'; + throw std::runtime_error("ZSTD_freeCStream Failed"); + } + } } namespace Crypt diff --git a/RASM/Include/Utils/Utils.h b/RASM/Include/Utils/Utils.h index 0b69677..b9ead94 100644 --- a/RASM/Include/Utils/Utils.h +++ b/RASM/Include/Utils/Utils.h @@ -118,19 +118,19 @@ namespace Utils inline uint16_t rotr(uint16_t x, int shift) { return std::rotr(x, shift); } inline uint32_t rotr(uint32_t x, int shift) { return std::rotr(x, shift); } inline uint64_t rotr(uint64_t x, int shift) { return std::rotr(x, shift); } - inline int8_t rotr(int8_t x, int shift) { return std::rotr(x, shift); } - inline int16_t rotr(int16_t x, int shift) { return std::rotr(x, shift); } - inline int32_t rotr(int32_t x, int shift) { return std::rotr(x, shift); } - inline int64_t rotr(int64_t x, int shift) { return std::rotr(x, shift); } + inline int8_t rotr(int8_t x, int shift) { return std::rotr(x, shift); } + inline int16_t rotr(int16_t x, int shift) { return std::rotr(x, shift); } + inline int32_t rotr(int32_t x, int shift) { return std::rotr(x, shift); } + inline int64_t rotr(int64_t x, int shift) { return std::rotr(x, shift); } inline float rotr(float x, int shift) { return DataConversion::IntToFloat(std::rotr(*(uint32_t*)&x, shift)); } inline uint8_t rotl(uint8_t x, int shift) { return std::rotl(x, shift); } inline uint16_t rotl(uint16_t x, int shift) { return std::rotl(x, shift); } inline uint32_t rotl(uint32_t x, int shift) { return std::rotl(x, shift); } inline uint64_t rotl(uint64_t x, int shift) { return std::rotl(x, shift); } - inline int8_t rotl(int8_t x, int shift) { return std::rotl(x, shift); } - inline int16_t rotl(int16_t x, int shift) { return std::rotl(x, shift); } - inline int32_t rotl(int32_t x, int shift) { return std::rotl(x, shift); } - inline int64_t rotl(int64_t x, int shift) { return std::rotl(x, shift); } + inline int8_t rotl(int8_t x, int shift) { return std::rotl(x, shift); } + inline int16_t rotl(int16_t x, int shift) { return std::rotl(x, shift); } + inline int32_t rotl(int32_t x, int shift) { return std::rotl(x, shift); } + inline int64_t rotl(int64_t x, int shift) { return std::rotl(x, shift); } inline float rotl(float x, int shift) { return DataConversion::IntToFloat(std::rotl(*(uint32_t*)&x, shift)); } } namespace IO @@ -173,6 +173,9 @@ namespace Utils void ZLIB_CompressNew(const std::vector& in, std::vector& out); void ZLIB_CompressChecksum(uint8_t* in, uint32_t inSize, uint8_t* out, uint32_t& outSize); std::string ZLIB_ErrorCodeToStr(int32_t errorcode); + + void ZSTD_DecompressNew(uint8_t* in, uint32_t inSize, std::vector& out); + void ZSTD_CompressNew(const std::vector& in, std::vector& out); } namespace Crypt { diff --git a/RASM/RASM.vcxproj b/RASM/RASM.vcxproj index 5bff905..c41e118 100644 --- a/RASM/RASM.vcxproj +++ b/RASM/RASM.vcxproj @@ -209,6 +209,7 @@ + @@ -222,5 +223,6 @@ + \ No newline at end of file diff --git a/RASM/packages.config b/RASM/packages.config index 23539b6..812753d 100644 --- a/RASM/packages.config +++ b/RASM/packages.config @@ -8,4 +8,5 @@ + \ No newline at end of file