void ApplyPatchesAndCallHookStartingApp() { PatchInvidualMethodHooks(method_hooks_hooks, method_hooks_size_hooks, method_calls_hooks); for(int32_t plugin_index=0; plugin_index<gbl_replacement_data.number_used_plugins; plugin_index++) { CallHookEx(WUPS_LOADER_HOOK_STARTING_APPLICATION,plugin_index); new_PatchInvidualMethodHooks(&gbl_replacement_data.plugin_data[plugin_index]); CallHookEx(WUPS_LOADER_HOOK_FUNCTIONS_PATCHED,plugin_index); } }
void ApplyPatches() { log_print("Patching FS functions\n"); PatchInvidualMethodHooks(method_hooks_fs, method_hooks_size_fs, method_calls_fs); log_print("Patching functions for AOC support\n"); PatchInvidualMethodHooks(method_hooks_aoc, method_hooks_size_aoc, method_calls_aoc); log_print("Patching more FS functions (SD)\n"); PatchInvidualMethodHooks(method_hooks_fs_sd, method_hooks_size_fs_sd, method_calls_fs_sd); log_print("Patching functions for RPX/RPL loading\n"); PatchInvidualMethodHooks(method_hooks_rplrpx, method_hooks_size_rplrpx, method_calls_rplrpx); log_print("Patching extra log functions\n"); PatchInvidualMethodHooks(method_hooks_extra_log, method_hooks_size_extra_log, method_calls_extra_log); log_print("Patching controller_patcher (Hid to VPAD)\n"); PatchInvidualMethodHooks(method_hooks_hid_controller, method_hooks_size_hid_controller, method_calls_hid_controller); }