Advertisement
Guest User

Untitled

a guest
Jul 24th, 2013
443
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 30.37 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Reflection;
  5. using System.Text;
  6. using System.Threading;
  7. using System.Threading.Tasks;
  8. using System.Windows.Forms;
  9.  
  10. namespace BO2RPC
  11. {
  12.     public class Util
  13.     {
  14.         public static Assembly PS3TMAPI_DLL;
  15.         public static uint[] Processes;
  16.         public static uint Process;
  17.         public static Assembly LoadPS3TMAPI()
  18.         {
  19.             AppDomain.CurrentDomain.AssemblyResolve += (s, e) =>
  20.             {
  21.                 var filename = new AssemblyName(e.Name).Name;
  22.                 var Path1 = string.Format(@"C:\Program Files\SN Systems\PS3\bin\ps3tmapi_net.dll", filename);
  23.                 var Path2 = string.Format(@"C:\Program Files (x64)\SN Systems\PS3\bin\ps3tmapi_net.dll", filename);
  24.                 var Path3 = string.Format(@"C:\Program Files (x86)\SN Systems\PS3\bin\ps3tmapi_net.dll", filename);
  25.                 try
  26.                 {
  27.                     if (System.IO.File.Exists(Path1))
  28.                     {
  29.                         PS3TMAPI_DLL = Assembly.LoadFile(Path1);
  30.                     }
  31.                     else
  32.                     {
  33.                         if (System.IO.File.Exists(Path2))
  34.                         {
  35.                             PS3TMAPI_DLL = Assembly.LoadFile(Path2);
  36.                         }
  37.                         else
  38.                         {
  39.                             if (System.IO.File.Exists(Path3))
  40.                             {
  41.                                 PS3TMAPI_DLL = Assembly.LoadFile(Path3);
  42.                             }
  43.  
  44.                         }
  45.                     }
  46.                     return PS3TMAPI_DLL;
  47.                 }
  48.                 catch
  49.                 {
  50.                    
  51.                 }
  52.                 return PS3TMAPI_DLL;
  53.             };
  54.             return PS3TMAPI_DLL;
  55.         }
  56.    
  57.         public static void Init()
  58.         {
  59.             PS3TMAPI.InitTargetComms();
  60.             PS3TMAPI.Connect(0, null);
  61.             PS3TMAPI.GetProcessList(0, out Processes);
  62.             Process = Processes[0];
  63.             PS3TMAPI.ProcessAttach(0, PS3TMAPI.UnitType.PPU, Process);
  64.             PS3TMAPI.ProcessContinue(0, Process);
  65.             System.Threading.Thread.Sleep(100);
  66.             EnableRPC();
  67.         }
  68.  
  69.         public static byte[] normal = new byte[] { 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x64, 0x65, 0x62, 0x75, 0x67, 0x48, 0x65, 0x61, 0x6C, 0x74, 0x68, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x73, 0x75, 0x73, 0x74, 0x61, 0x69, 0x6E, 0x41, 0x6D, 0x6D, 0x6F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x63, 0x6C, 0x69, 0x70, 0x53, 0x69, 0x7A, 0x65, 0x4D, 0x75, 0x6C, 0x74, 0x69, 0x70, 0x6C, 0x69, 0x65, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x6C, 0x61, 0x73, 0x74, 0x53, 0x74, 0x61, 0x6E, 0x64, 0x42, 0x6C, 0x65, 0x65, 0x64, 0x6F, 0x75, 0x74, 0x54, 0x69, 0x6D, 0x65, 0x00, 0x00, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x6C, 0x61, 0x73, 0x74, 0x53, 0x74, 0x61, 0x6E, 0x64, 0x42, 0x6C, 0x65, 0x65, 0x64, 0x6F, 0x75, 0x74, 0x54, 0x69, 0x6D, 0x65, 0x4E, 0x6F, 0x52, 0x65, 0x76, 0x69, 0x76, 0x65, 0x00, 0x00, 0x00, 0x00, 0x72, 0x65, 0x76, 0x69, 0x76, 0x65, 0x5F, 0x74, 0x69, 0x6D, 0x65, 0x5F, 0x74, 0x61, 0x6B, 0x65, 0x6E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x6C, 0x61, 0x73, 0x74, 0x53, 0x74, 0x61, 0x6E, 0x64, 0x48, 0x65, 0x61, 0x6C, 0x74, 0x68, 0x4F, 0x76, 0x65, 0x72, 0x6C, 0x61, 0x79, 0x54, 0x69, 0x6D, 0x65, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x72, 0x65, 0x76, 0x69, 0x76, 0x65, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x52, 0x61, 0x64, 0x69, 0x75, 0x73, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x72, 0x65, 0x76, 0x69, 0x76, 0x65, 0x50, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x4C, 0x69, 0x73, 0x74, 0x43, 0x79, 0x63, 0x6C, 0x65, 0x54, 0x69, 0x6D, 0x65, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x62, 0x67, 0x5F, 0x76, 0x73, 0x6D, 0x6F, 0x64, 0x65, 0x5F, 0x68, 0x75, 0x64, 0x00, 0x00, 0x00, 0x62, 0x67, 0x5F, 0x64, 0x6F, 0x67, 0x5F, 0x73, 0x77, 0x69, 0x6D, 0x5F, 0x65, 0x6E, 0x61, 0x62, 0x6C, 0x65, 0x64, 0x00, 0x00, 0x00, 0x00, 0x00, 0x62, 0x67, 0x5F, 0x64, 0x6F, 0x67, 0x5F, 0x73, 0x77, 0x69, 0x6D, 0x5F, 0x77, 0x61, 0x74, 0x65, 0x72, 0x5F, 0x6D, 0x69, 0x6E, 0x00, 0x00, 0x00, 0x62, 0x67, 0x5F, 0x64, 0x6F, 0x67, 0x5F, 0x73, 0x77, 0x69, 0x6D, 0x5F, 0x77, 0x61, 0x74, 0x65, 0x72, 0x5F, 0x6D, 0x61, 0x78, 0x00, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x65, 0x6E, 0x61, 0x62, 0x6C, 0x65, 0x53, 0x68, 0x75, 0x66, 0x66, 0x6C, 0x65, 0x41, 0x6E, 0x69, 0x6D, 0x73, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x61, 0x6E, 0x69, 0x6D, 0x52, 0x75, 0x6E, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68, 0x68, 0x6F, 0x6C, 0x64, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x61, 0x6E, 0x69, 0x6D, 0x57, 0x61, 0x6C, 0x6B, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68, 0x68, 0x6F, 0x6C, 0x64, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x72, 0x75, 0x6E, 0x62, 0x6B, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68, 0x68, 0x6F, 0x6C, 0x64, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x6D, 0x6F, 0x76, 0x65, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68, 0x68, 0x6F, 0x6C, 0x64, 0x00, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x66, 0x6F, 0x6F, 0x74, 0x73, 0x74, 0x65, 0x70, 0x73, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68, 0x68, 0x6F, 0x6C, 0x64, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x72, 0x75, 0x6E, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68, 0x68, 0x6F, 0x6C, 0x64, 0x00, 0x00, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x6B, 0x6E, 0x6F, 0x63, 0x6B, 0x62, 0x61, 0x63, 0x6B, 0x4D, 0x6F, 0x76, 0x65, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68, 0x68, 0x6F, 0x6C, 0x64, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x73, 0x70, 0x72, 0x69, 0x6E, 0x74, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68, 0x68, 0x6F, 0x6C, 0x64, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x77, 0x61, 0x74, 0x65, 0x72, 0x53, 0x70, 0x65, 0x65, 0x64, 0x53, 0x63, 0x61, 0x6C, 0x65, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x73, 0x6C, 0x69, 0x64, 0x69, 0x6E, 0x67, 0x5F, 0x66, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6F, 0x6E, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x73, 0x6C, 0x69, 0x64, 0x69, 0x6E, 0x67, 0x5F, 0x77, 0x69, 0x73, 0x68, 0x73, 0x70, 0x65, 0x65, 0x64, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x73, 0x6C, 0x69, 0x63, 0x6B, 0x5F, 0x77, 0x69, 0x73, 0x68, 0x73, 0x70, 0x65, 0x65, 0x64, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x73, 0x6C, 0x69, 0x63, 0x6B, 0x5F, 0x69, 0x6E, 0x76, 0x73, 0x70, 0x65, 0x65, 0x64, 0x00, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x73, 0x6C, 0x69, 0x63, 0x6B, 0x5F, 0x61, 0x63, 0x63, 0x65, 0x6C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x73, 0x6C, 0x69, 0x64, 0x69, 0x6E, 0x67, 0x5F, 0x76, 0x65, 0x6C, 0x6F, 0x63, 0x69, 0x74, 0x79, 0x5F, 0x63, 0x61, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x73, 0x74, 0x72, 0x61, 0x66, 0x65, 0x53, 0x70, 0x65, 0x65, 0x64, 0x53, 0x63, 0x61, 0x6C, 0x65, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x62, 0x61, 0x63, 0x6B, 0x53, 0x70, 0x65, 0x65, 0x64, 0x53, 0x63, 0x61, 0x6C, 0x65, 0x00, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x73, 0x74, 0x72, 0x61, 0x66, 0x65, 0x41, 0x6E, 0x69, 0x6D, 0x43, 0x6F, 0x73, 0x41, 0x6E, 0x67, 0x6C, 0x65, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x73, 0x6C, 0x6F, 0x70, 0x65, 0x41, 0x6E, 0x69, 0x6D, 0x41, 0x6E, 0x67, 0x6C, 0x65, 0x00, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x73, 0x70, 0x65, 0x63, 0x74, 0x61, 0x74, 0x65, 0x53, 0x70, 0x65, 0x65, 0x64, 0x53, 0x63, 0x61, 0x6C, 0x65, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x65, 0x6E, 0x64, 0x75, 0x72, 0x61, 0x6E, 0x63, 0x65, 0x53, 0x70, 0x65, 0x65, 0x64, 0x53, 0x63, 0x61, 0x6C, 0x65, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x7A, 0x6F, 0x6D, 0x62, 0x69, 0x65, 0x53, 0x70, 0x72, 0x69, 0x6E, 0x74, 0x53, 0x70, 0x65, 0x65, 0x64, 0x53, 0x63, 0x61, 0x6C, 0x65, 0x00, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x7A, 0x6F, 0x6D, 0x62, 0x69, 0x65, 0x53, 0x70, 0x65, 0x65, 0x64, 0x53, 0x63, 0x61, 0x6C, 0x65, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x73, 0x70, 0x72, 0x69, 0x6E, 0x74, 0x46, 0x6F, 0x72, 0x77, 0x61, 0x72, 0x64, 0x4D, 0x69, 0x6E, 0x69, 0x6D, 0x75, 0x6D, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x73, 0x70, 0x72, 0x69, 0x6E, 0x74, 0x53, 0x70, 0x65, 0x65, 0x64, 0x53, 0x63, 0x61, 0x6C, 0x65, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x73, 0x70, 0x72, 0x69, 0x6E, 0x74, 0x55, 0x6E, 0x6C, 0x69, 0x6D, 0x69, 0x74, 0x65, 0x64, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x73, 0x70, 0x72, 0x69, 0x6E, 0x74, 0x54, 0x69, 0x6D, 0x65, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x73, 0x70, 0x72, 0x69, 0x6E, 0x74, 0x4D, 0x69, 0x6E, 0x54, 0x69, 0x6D, 0x65, 0x00, 0x00, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x73, 0x70, 0x72, 0x69, 0x6E, 0x74, 0x52, 0x65, 0x63, 0x68, 0x61, 0x72, 0x67, 0x65, 0x50, 0x61, 0x75, 0x73, 0x65, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x73, 0x70, 0x72, 0x69, 0x6E, 0x74, 0x53, 0x74, 0x72, 0x61, 0x66, 0x65, 0x53, 0x70, 0x65, 0x65, 0x64, 0x53, 0x63, 0x61, 0x6C, 0x65, 0x00, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x73, 0x70, 0x72, 0x69, 0x6E, 0x74, 0x43, 0x61, 0x6D, 0x65, 0x72, 0x61, 0x42, 0x6F, 0x62, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x74, 0x75, 0x72, 0x6E, 0x41, 0x6E, 0x69, 0x6D, 0x73, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x62, 0x61, 0x79, 0x6F, 0x6E, 0x65, 0x74, 0x4C, 0x61, 0x75, 0x6E, 0x63, 0x68, 0x50, 0x72, 0x6F, 0x6F, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x62, 0x61, 0x79, 0x6F, 0x6E, 0x65, 0x74, 0x4C, 0x61, 0x75, 0x6E, 0x63, 0x68, 0x44, 0x65, 0x62, 0x75, 0x67, 0x67, 0x69, 0x6E, 0x67, 0x00, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x62, 0x61, 0x79, 0x6F, 0x6E, 0x65, 0x74, 0x4C, 0x61, 0x75, 0x6E, 0x63, 0x68, 0x5A, 0x43, 0x61, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x73, 0x74, 0x61, 0x6E, 0x64, 0x69, 0x6E, 0x67, 0x56, 0x69, 0x65, 0x77, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x74, 0x75, 0x36, 0x5F, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x73, 0x68, 0x61, 0x6C, 0x6C, 0x6F, 0x77, 0x57, 0x61, 0x74, 0x65, 0x72, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x00, 0x00, 0x00, 0x74, 0x75, 0x31, 0x31, 0x5F, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x6B, 0x65, 0x65, 0x70, 0x5A, 0x56, 0x65, 0x6C, 0x6F, 0x63, 0x69, 0x74, 0x79, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6C, 0x65, 0x57, 0x65, 0x61, 0x70, 0x6F, 0x6E, 0x73, 0x4F, 0x6E, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6C, 0x65, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x6C, 0x6F, 0x6F, 0x6B, 0x41, 0x74, 0x45, 0x6E, 0x74, 0x69, 0x74, 0x79, 0x41, 0x6C, 0x6C, 0x6F, 0x77, 0x43, 0x68, 0x69, 0x6C, 0x64, 0x72, 0x65, 0x6E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x64, 0x6D, 0x67, 0x74, 0x69, 0x6D, 0x65, 0x72, 0x5F, 0x74, 0x69, 0x6D, 0x65, 0x50, 0x65, 0x72, 0x50, 0x6F, 0x69, 0x6E, 0x74, 0x00, 0x00, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x64, 0x6D, 0x67, 0x74, 0x69, 0x6D, 0x65, 0x72, 0x5F, 0x6D, 0x61, 0x78, 0x54, 0x69, 0x6D, 0x65, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x64, 0x6D, 0x67, 0x74, 0x69, 0x6D, 0x65, 0x72, 0x5F, 0x6D, 0x69, 0x6E, 0x53, 0x63, 0x61, 0x6C, 0x65, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x64, 0x6D, 0x67, 0x74, 0x69, 0x6D, 0x65, 0x72, 0x5F, 0x73, 0x74, 0x75, 0x6D, 0x62, 0x6C, 0x65, 0x54, 0x69, 0x6D, 0x65, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x64, 0x6D, 0x67, 0x74, 0x69, 0x6D, 0x65, 0x72, 0x5F, 0x66, 0x6C, 0x69, 0x6E, 0x63, 0x68, 0x54, 0x69, 0x6D, 0x65, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x73, 0x68, 0x65, 0x6C, 0x6C, 0x73, 0x68, 0x6F, 0x63, 0x6B, 0x5F, 0x6C, 0x6F, 0x6F, 0x70, 0x00, 0x73, 0x68, 0x65, 0x6C, 0x6C, 0x73, 0x68, 0x6F, 0x63, 0x6B, 0x5F, 0x6C, 0x6F, 0x6F, 0x70, 0x5F, 0x73, 0x69, 0x6C, 0x65, 0x6E, 0x74, 0x00, 0x00, 0x73, 0x68, 0x65, 0x6C, 0x6C, 0x73, 0x68, 0x6F, 0x63, 0x6B, 0x5F, 0x65, 0x6E, 0x64, 0x00, 0x00, 0x73, 0x68, 0x65, 0x6C, 0x6C, 0x73, 0x68, 0x6F, 0x63, 0x6B, 0x5F, 0x65, 0x6E, 0x64, 0x5F, 0x61, 0x62, 0x6F, 0x72, 0x74, 0x00, 0x00, 0x00, 0x00, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6C, 0x74, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x6D, 0x65, 0x6C, 0x65, 0x65, 0x52, 0x61, 0x6E, 0x67, 0x65, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x6D, 0x65, 0x6C, 0x65, 0x65, 0x57, 0x69, 0x64, 0x74, 0x68, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x6D, 0x65, 0x6C, 0x65, 0x65, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x6D, 0x65, 0x6C, 0x65, 0x65, 0x49, 0x6E, 0x74, 0x65, 0x72, 0x72, 0x75, 0x70, 0x74, 0x46, 0x72, 0x61, 0x63, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x74, 0x75, 0x35, 0x5F, 0x75, 0x61, 0x76, 0x5F, 0x61, 0x64, 0x73, 0x5F, 0x66, 0x69, 0x78, 0x00, 0x74, 0x75, 0x36, 0x5F, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x6A, 0x75, 0x6D, 0x70, 0x5F, 0x62, 0x6C, 0x6F, 0x63, 0x6B, 0x73, 0x5F, 0x74, 0x61, 0x63, 0x5F, 0x69, 0x6E, 0x73, 0x65, 0x72, 0x74, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x74, 0x75, 0x37, 0x5F, 0x6D, 0x61, 0x70, 0x62, 0x61, 0x73, 0x65, 0x64, 0x5F, 0x6B, 0x69, 0x6C, 0x6C, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6B, 0x73, 0x5F, 0x66, 0x69, 0x78, 0x00, 0x00, 0x00, 0x00, 0x74, 0x75, 0x31, 0x32, 0x5F, 0x7A, 0x6D, 0x5F, 0x73, 0x74, 0x6F, 0x70, 0x5F, 0x66, 0x69, 0x72, 0x69, 0x6E, 0x67, 0x5F, 0x77, 0x68, 0x65, 0x6E, 0x5F, 0x6F, 0x76, 0x65, 0x72, 0x68, 0x65, 0x61, 0x74, 0x65, 0x64, 0x00, 0x00, 0x00, 0x00, 0x00, 0x74, 0x75, 0x31, 0x32, 0x5F, 0x7A, 0x6D, 0x5F, 0x73, 0x74, 0x61, 0x63, 0x6B, 0x5F, 0x66, 0x69, 0x72, 0x65, 0x5F, 0x66, 0x69, 0x78, 0x00, 0x00, 0x64, 0x6C, 0x63, 0x33, 0x5F, 0x7A, 0x6D, 0x5F, 0x61, 0x69, 0x5F, 0x6C, 0x6F, 0x6F, 0x6B, 0x41, 0x68, 0x65, 0x61, 0x64, 0x41, 0x6C, 0x6C, 0x6F, 0x77, 0x42, 0x61, 0x63, 0x6B, 0x54, 0x72, 0x61, 0x63, 0x6B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x64, 0x6C, 0x63, 0x33, 0x5F, 0x7A, 0x6D, 0x5F, 0x61, 0x69, 0x5F, 0x6C, 0x6F, 0x6F, 0x6B, 0x41, 0x68, 0x65, 0x61, 0x64, 0x41, 0x6C, 0x6C, 0x6F, 0x77, 0x52, 0x65, 0x73, 0x74, 0x6F, 0x72, 0x65, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x74, 0x75, 0x31, 0x33, 0x5F, 0x7A, 0x6D, 0x5F, 0x63, 0x68, 0x65, 0x63, 0x6B, 0x5F, 0x74, 0x72, 0x61, 0x76, 0x65, 0x72, 0x73, 0x61, 0x6C, 0x5F, 0x6D, 0x61, 0x78, 0x5F, 0x7A, 0x00, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x6D, 0x65, 0x6C, 0x65, 0x65, 0x43, 0x68, 0x61, 0x72, 0x67, 0x65, 0x4D, 0x61, 0x78, 0x53, 0x70, 0x65, 0x65, 0x64, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x6D, 0x65, 0x6C, 0x65, 0x65, 0x43, 0x61, 0x6C, 0x63, 0x53, 0x70, 0x65, 0x65, 0x64, 0x46, 0x72, 0x6F, 0x6D, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x6D, 0x65, 0x6C, 0x65, 0x65, 0x43, 0x68, 0x61, 0x72, 0x67, 0x65, 0x46, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6F, 0x6E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x74, 0x75, 0x37, 0x5F, 0x63, 0x6C, 0x61, 0x6D, 0x70, 0x4D, 0x65, 0x6C, 0x65, 0x65, 0x43, 0x68, 0x61, 0x72, 0x67, 0x65, 0x4A, 0x75, 0x6D, 0x70, 0x69, 0x6E, 0x67, 0x00, 0x00, 0x00, 0x00, 0x00, 0x74, 0x75, 0x37, 0x5F, 0x63, 0x6C, 0x61, 0x6D, 0x70, 0x4D, 0x65, 0x6C, 0x65, 0x65, 0x43, 0x68, 0x61, 0x72, 0x67, 0x65, 0x48, 0x6F, 0x72, 0x7A, 0x4C, 0x61, 0x75, 0x6E, 0x63, 0x68, 0x00, 0x00, 0x74, 0x75, 0x37, 0x5F, 0x63, 0x6C, 0x61, 0x6D, 0x70, 0x4D, 0x65, 0x6C, 0x65, 0x65, 0x43, 0x68, 0x61, 0x72, 0x67, 0x65, 0x4A, 0x75, 0x6D, 0x70, 0x69, 0x6E, 0x67, 0x4D, 0x61, 0x78, 0x5A, 0x56, 0x65, 0x6C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x7A, 0x6F, 0x6D, 0x62, 0x69, 0x65, 0x4D, 0x65, 0x6C, 0x65, 0x65, 0x52, 0x61, 0x6E, 0x67, 0x65, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x7A, 0x6F, 0x6D, 0x62, 0x69, 0x65, 0x4D, 0x65, 0x6C, 0x65, 0x65, 0x57, 0x69, 0x64, 0x74, 0x68, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x7A, 0x6F, 0x6D, 0x62, 0x69, 0x65, 0x4D, 0x65, 0x6C, 0x65, 0x65, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x62, 0x61, 0x79, 0x6F, 0x6E, 0x65, 0x74, 0x52, 0x61, 0x6E, 0x67, 0x65, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x62, 0x61, 0x79, 0x6F, 0x6E, 0x65, 0x74, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x44, 0x69, 0x73, 0x74, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x62, 0x67, 0x5F, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x62, 0x67, 0x5F, 0x6C, 0x6F, 0x77, 0x47, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x00, 0x00, 0x00, 0x62, 0x67, 0x5F, 0x6D, 0x6F, 0x6F, 0x6E, 0x47, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x73, 0x77, 0x69, 0x6D, 0x54, 0x69, 0x6D, 0x65, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x73, 0x77, 0x69, 0x6D, 0x44, 0x61, 0x6D, 0x61, 0x67, 0x65, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x73, 0x77, 0x69, 0x6D, 0x44, 0x61, 0x6D, 0x61, 0x67, 0x65, 0x72, 0x49, 0x6E, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x76, 0x69, 0x65, 0x77, 0x4C, 0x6F, 0x63, 0x6B, 0x45, 0x6E, 0x74, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x76, 0x69, 0x65, 0x77, 0x52, 0x61, 0x74, 0x65, 0x53, 0x63, 0x61, 0x6C, 0x65, 0x00, 0x00, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x66, 0x6F, 0x72, 0x63, 0x65, 0x52, 0x65, 0x64, 0x43, 0x72, 0x6F, 0x73, 0x73, 0x68, 0x61, 0x69, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x62, 0x75, 0x6C, 0x6C, 0x65, 0x74, 0x5F, 0x70, 0x65, 0x6E, 0x65, 0x74, 0x72, 0x61, 0x74, 0x69, 0x6F, 0x6E, 0x4D, 0x69, 0x6E, 0x46, 0x78, 0x44, 0x69, 0x73, 0x74, 0x00, 0x00, 0x00, 0x00, 0x00, 0x62, 0x75, 0x6C, 0x6C, 0x65, 0x74, 0x5F, 0x72, 0x69, 0x63, 0x6F, 0x63, 0x68, 0x65, 0x74, 0x42, 0x61, 0x73, 0x65, 0x43, 0x68, 0x61, 0x6E, 0x63, 0x65, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x63, 0x67, 0x5F, 0x63, 0x69, 0x6E, 0x65, 0x6D, 0x61, 0x74, 0x69, 0x63, 0x46, 0x75, 0x6C, 0x6C, 0x73, 0x63, 0x72, 0x65, 0x65, 0x6E, 0x00, 0x00, 0x64, 0x6F, 0x67, 0x5F, 0x4D, 0x65, 0x6C, 0x65, 0x65, 0x44, 0x61, 0x6D, 0x61, 0x67, 0x65, 0x00, 0x64, 0x6F, 0x67, 0x5F, 0x74, 0x75, 0x72, 0x6E, 0x39, 0x30, 0x5F, 0x61, 0x6E, 0x67, 0x6C, 0x65, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x64, 0x6F, 0x67, 0x5F, 0x74, 0x75, 0x72, 0x6E, 0x31, 0x38, 0x30, 0x5F, 0x61, 0x6E, 0x67, 0x6C, 0x65, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x64, 0x6F, 0x67, 0x5F, 0x74, 0x75, 0x72, 0x6E, 0x5F, 0x6D, 0x69, 0x6E, 0x5F, 0x67, 0x6F, 0x61, 0x6C, 0x5F, 0x64, 0x69, 0x73, 0x74, 0x00, 0x00, 0x76, 0x65, 0x68, 0x4C, 0x6F, 0x63, 0x6B, 0x54, 0x75, 0x72, 0x72, 0x65, 0x74, 0x54, 0x6F, 0x50, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x56, 0x69, 0x65, 0x77, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x76, 0x65, 0x68, 0x4C, 0x6F, 0x63, 0x61, 0x74, 0x69, 0x6F, 0x6E, 0x61, 0x6C, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6C, 0x65, 0x53, 0x65, 0x61, 0x74, 0x45, 0x6E, 0x74, 0x72, 0x79, 0x00, 0x00, 0x00, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6C, 0x65, 0x5F, 0x72, 0x69, 0x64, 0x69, 0x6E, 0x67, 0x00, 0x00, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6C, 0x65, 0x5F, 0x73, 0x65, 0x6C, 0x66, 0x43, 0x6F, 0x6C, 0x6C, 0x69, 0x73, 0x69, 0x6F, 0x6E, 0x00, 0x00, 0x00, 0x62, 0x67, 0x5F, 0x73, 0x68, 0x69, 0x65, 0x6C, 0x64, 0x48, 0x69, 0x74, 0x45, 0x6E, 0x63, 0x6F, 0x64, 0x65, 0x57, 0x69, 0x64, 0x74, 0x68, 0x57, 0x6F, 0x72, 0x6C, 0x64, 0x00, 0x00, 0x00, 0x00, 0x62, 0x67, 0x5F, 0x73, 0x68, 0x69, 0x65, 0x6C, 0x64, 0x48, 0x69, 0x74, 0x45, 0x6E, 0x63, 0x6F, 0x64, 0x65, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x57, 0x6F, 0x72, 0x6C, 0x64, 0x00, 0x00, 0x00, 0x62, 0x67, 0x5F, 0x73, 0x68, 0x69, 0x65, 0x6C, 0x64, 0x48, 0x69, 0x74, 0x45, 0x6E, 0x63, 0x6F, 0x64, 0x65, 0x57, 0x69, 0x64, 0x74, 0x68, 0x56, 0x4D, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x62, 0x67, 0x5F, 0x73, 0x68, 0x69, 0x65, 0x6C, 0x64, 0x48, 0x69, 0x74, 0x45, 0x6E, 0x63, 0x6F, 0x64, 0x65, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x56, 0x4D, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x62, 0x67, 0x5F, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6C, 0x65, 0x57, 0x65, 0x61, 0x70, 0x6F, 0x6E, 0x50, 0x6C, 0x61, 0x6E, 0x74, 0x69, 0x6E, 0x67, 0x49, 0x6E, 0x57, 0x61, 0x74, 0x65, 0x72, 0x00, 0x62, 0x67, 0x5F, 0x70, 0x6C, 0x61, 0x6E, 0x74, 0x49, 0x6E, 0x57, 0x61, 0x74, 0x65, 0x72, 0x44, 0x65, 0x70, 0x74, 0x68, 0x00, 0x00, 0x00, 0x00, 0x62, 0x67, 0x5F, 0x67, 0x75, 0x6E, 0x58, 0x4F, 0x66, 0x66, 0x73, 0x65, 0x74, 0x00, 0x00, 0x00, 0x62, 0x67, 0x5F, 0x73, 0x6C, 0x6F, 0x70, 0x65, 0x46, 0x72, 0x61, 0x6D, 0x65, 0x73, 0x00, 0x00, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6C, 0x65, 0x5F, 0x72, 0x6F, 0x70, 0x65, 0x00, 0x00, 0x00, 0x00, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6C, 0x65, 0x5F, 0x73, 0x6F, 0x75, 0x6E, 0x64, 0x73, 0x5F, 0x63, 0x75, 0x74, 0x6F, 0x66, 0x66, 0x00, 0x00, 0x00, 0x66, 0x6F, 0x6F, 0x74, 0x73, 0x74, 0x65, 0x70, 0x5F, 0x73, 0x6F, 0x75, 0x6E, 0x64, 0x73, 0x5F, 0x63, 0x75, 0x74, 0x6F, 0x66, 0x66, 0x00, 0x00, 0x62, 0x67, 0x5F, 0x74, 0x65, 0x6C, 0x65, 0x70, 0x6F, 0x72, 0x74, 0x41, 0x6C, 0x69, 0x67, 0x6E, 0x54, 0x69, 0x6D, 0x65, 0x00, 0x00, 0x00, 0x00, 0x77, 0x61, 0x74, 0x65, 0x72, 0x62, 0x72, 0x75, 0x73, 0x68, 0x5F, 0x65, 0x6E, 0x74, 0x69, 0x74, 0x79, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x50, 0x75, 0x73, 0x68, 0x41, 0x6D, 0x6F, 0x75, 0x6E, 0x74, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x73, 0x63, 0x72, 0x5F, 0x70, 0x6C, 0x61, 0x79, 0x65, 0x72, 0x5F, 0x73, 0x70, 0x72, 0x69, 0x6E, 0x74, 0x74, 0x69, 0x6D, 0x65, 0x00, 0x00, 0x00, 0x73, 0x63, 0x72, 0x5F, 0x64, 0x79, 0x6E, 0x61, 0x6D, 0x69, 0x63, 0x5F, 0x73, 0x6F, 0x75, 0x72, 0x63, 0x65, 0x5F, 0x6C, 0x6F, 0x61, 0x64, 0x69, 0x6E, 0x67, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x62, 0x67, 0x5F, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6C, 0x65, 0x5F, 0x67, 0x72, 0x6F, 0x75, 0x6E, 0x64, 0x5F, 0x6D, 0x69, 0x6E, 0x5F, 0x6E, 0x6F, 0x72, 0x6D, 0x61, 0x6C, 0x00, 0x00, 0x00, 0x00, 0x62, 0x67, 0x5F, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6C, 0x65, 0x5F, 0x67, 0x72, 0x6F, 0x75, 0x6E, 0x64, 0x5F, 0x6D, 0x61, 0x78, 0x5F, 0x6E, 0x6F, 0x72, 0x6D, 0x61, 0x6C, 0x00, 0x00, 0x00, 0x00, 0x62, 0x67, 0x5F, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6C, 0x65, 0x5F, 0x73, 0x6C, 0x69, 0x64, 0x65, 0x5F, 0x6D, 0x69, 0x6E, 0x5F, 0x6E, 0x6F, 0x72, 0x6D, 0x61, 0x6C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x62, 0x67, 0x5F, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6C, 0x65, 0x5F, 0x70, 0x69, 0x74, 0x63, 0x68, 0x5F, 0x74, 0x72, 0x61, 0x63, 0x6B, 0x00, 0x00, 0x62, 0x67, 0x5F, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6C, 0x65, 0x5F, 0x72, 0x6F, 0x6C, 0x6C, 0x5F, 0x74, 0x72, 0x61, 0x63, 0x6B, 0x00, 0x00, 0x00, 0x62, 0x67, 0x5F, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6C, 0x65, 0x5F, 0x6D, 0x61, 0x78, 0x5F, 0x70, 0x69, 0x74, 0x63, 0x68, 0x00, 0x00, 0x00, 0x00, 0x62, 0x67, 0x5F, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6C, 0x65, 0x5F, 0x6D, 0x61, 0x78, 0x5F, 0x72, 0x6F, 0x6C, 0x6C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x62, 0x67, 0x5F, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6C, 0x65, 0x5F, 0x6D, 0x61, 0x78, 0x5F, 0x62, 0x6F, 0x64, 0x79, 0x5F, 0x70, 0x69, 0x74, 0x63, 0x68, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x62, 0x67, 0x5F, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6C, 0x65, 0x5F, 0x6D, 0x61, 0x78, 0x5F, 0x62, 0x6F, 0x64, 0x79, 0x5F, 0x72, 0x6F, 0x6C, 0x6C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x62, 0x67, 0x5F, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6C, 0x65, 0x5F, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x79, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x62, 0x67, 0x5F, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6C, 0x65, 0x5F, 0x74, 0x72, 0x61, 0x63, 0x65, 0x5F, 0x6F, 0x66, 0x66, 0x73, 0x65, 0x74, 0x00, 0x62, 0x67, 0x5F, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6C, 0x65, 0x5F, 0x6F, 0x76, 0x65, 0x72, 0x63, 0x6C, 0x69, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x62, 0x67, 0x5F, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6C, 0x65, 0x5F, 0x74, 0x61, 0x6E, 0x67, 0x65, 0x6E, 0x74, 0x69, 0x61, 0x6C, 0x5F, 0x63, 0x6C, 0x69, 0x70, 0x5F, 0x76, 0x65, 0x6C, 0x5F, 0x73, 0x63, 0x61, 0x6C, 0x65, 0x00, 0x00, 0x00, 0x00, 0x62, 0x67, 0x5F, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6C, 0x65, 0x5F, 0x74, 0x61, 0x6E, 0x67, 0x65, 0x6E, 0x74, 0x69, 0x61, 0x6C, 0x5F, 0x63, 0x6C, 0x69, 0x70, 0x5F, 0x6D, 0x61, 0x78, 0x5F, 0x73, 0x63, 0x61, 0x6C, 0x65, 0x00, 0x00, 0x00, 0x00, 0x62, 0x67, 0x5F, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6C, 0x65, 0x5F, 0x73, 0x74, 0x65, 0x70, 0x73, 0x69, 0x7A, 0x65, 0x00, 0x00, 0x00, 0x00, 0x00, 0x62, 0x67, 0x5F, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6C, 0x65, 0x5F, 0x73, 0x70, 0x68, 0x65, 0x72, 0x65, 0x5F, 0x62, 0x6F, 0x75, 0x6E, 0x64, 0x73, 0x5F, 0x6F, 0x66, 0x66, 0x73, 0x65, 0x74, 0x5F, 0x7A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x74, 0x75, 0x72, 0x72, 0x65, 0x74, 0x5F, 0x70, 0x6C, 0x61, 0x63, 0x65, 0x6D, 0x65, 0x6E, 0x74, 0x5F, 0x74, 0x72, 0x61, 0x63, 0x65, 0x5F, 0x6D, 0x61, 0x78, 0x73, 0x00, 0x00, 0x00, 0x00, 0x00, 0x74, 0x75, 0x72, 0x72, 0x65, 0x74, 0x5F, 0x70, 0x6C, 0x61, 0x63, 0x65, 0x6D, 0x65, 0x6E, 0x74, 0x5F, 0x74, 0x72, 0x61, 0x63, 0x65, 0x5F, 0x6D, 0x69, 0x6E, 0x73, 0x00, 0x00, 0x00, 0x00, 0x00, 0x6D, 0x69, 0x63, 0x72, 0x6F, 0x77, 0x61, 0x76, 0x65, 0x5F, 0x74, 0x75, 0x72, 0x72, 0x65, 0x74, 0x5F, 0x70, 0x6C, 0x61, 0x63, 0x65, 0x6D, 0x65, 0x6E, 0x74, 0x5F, 0x74, 0x72, 0x61, 0x63, 0x65, 0x5F, 0x6D, 0x61, 0x78, 0x73, 0x00, 0x00, 0x00, 0x6D, 0x69, 0x63, 0x72, 0x6F, 0x77, 0x61, 0x76, 0x65, 0x5F, 0x74, 0x75, 0x72, 0x72, 0x65, 0x74, 0x5F, 0x70, 0x6C, 0x61, 0x63, 0x65, 0x6D, 0x65, 0x6E, 0x74, 0x5F, 0x74, 0x72, 0x61, 0x63, 0x65, 0x5F, 0x6D, 0x69, 0x6E, 0x73, 0x00, 0x00, 0x00, 0x77, 0x61, 0x6C, 0x6C, 0x6D, 0x6F, 0x75, 0x6E, 0x74, 0x5F, 0x74, 0x75, 0x72, 0x72, 0x65, 0x74, 0x5F, 0x70, 0x6C, 0x61, 0x63, 0x65, 0x6D, 0x65, 0x6E, 0x74, 0x5F, 0x74, 0x72, 0x61, 0x63, 0x65, 0x5F, 0x6D, 0x61, 0x78, 0x73, 0x00, 0x00, 0x00, 0x77, 0x61, 0x6C, 0x6C, 0x6D, 0x6F, 0x75, 0x6E, 0x74, 0x5F, 0x74, 0x75, 0x72, 0x72, 0x65, 0x74, 0x5F, 0x70, 0x6C, 0x61, 0x63, 0x65, 0x6D, 0x65, 0x6E, 0x74, 0x5F, 0x74, 0x72, 0x61, 0x63, 0x65, 0x5F, 0x6D, 0x69, 0x6E, 0x73, 0x00, 0x00, 0x00, 0x74, 0x75, 0x72, 0x72, 0x65, 0x74, 0x70, 0x6C, 0x61, 0x63, 0x65, 0x6D, 0x65, 0x6E, 0x74, 0x5F, 0x75, 0x73, 0x65, 0x54, 0x72, 0x61, 0x63, 0x65, 0x4F, 0x66, 0x66, 0x73, 0x65, 0x74, 0x00 };
  70.  
  71.         public static void EnableRPC()
  72.         {
  73.             SetMemory(0x467B88, new byte[] { 0x38, 0x60, 0x00, 0x00 });
  74.             SetMemory(0x5C14EC, new byte[] { 0x60, 0x00, 0x00, 0x00 });
  75.             SetMemory(0x753818, new byte[] { 0x60, 0x00, 0x00, 0x00 });
  76.             SetMemory(0x2B1FA24, new byte[4]);
  77.             SetMemory(0x295A570, new byte[4]);
  78.             SetMemory(0x7A725C, new byte[] { 0xFB, 0xE1, 0x00, 0x80, 0xFB, 0xA1, 0x00, 0x70, 0x3C, 0x60, 0x02, 0xB2, 0x80, 0x63, 0xFA, 0x24, 0x2C, 0x03, 0x00, 0x00, 0x41, 0x82, 0x00, 0x2C, 0x3D, 0x00, 0x00, 0x98, 0x80, 0x68, 0x92, 0x2C, 0x80, 0x88, 0x92, 0x30, 0x80, 0xA8, 0x92, 0x34, 0x80, 0xC8, 0x92, 0x38, 0x80, 0xE8, 0x92, 0x3C, 0x39, 0x00, 0x00, 0x00, 0x48, 0x00, 0x00, 0x45, 0x3C, 0x80, 0x02, 0x96, 0x90, 0x64, 0xA5, 0x70, 0xE8, 0x01, 0x00, 0xD0, 0x7C, 0x08, 0x03, 0xA6, 0xCB, 0x21, 0x00, 0x88, 0xCB, 0x41, 0x00, 0x90, 0xCB, 0x61, 0x00, 0x98, 0xCB, 0x81, 0x00, 0xA0, 0xCB, 0xA1, 0x00, 0xA8, 0xCB, 0xC1, 0x00, 0xB0, 0xCB, 0xE1, 0x00, 0xB8, 0xEB, 0xA1, 0x00, 0x70, 0xEB, 0xC1, 0x00, 0x78, 0xEB, 0xE1, 0x00, 0x80, 0x38, 0x21, 0x00, 0xC0, 0x4E, 0x80, 0x00, 0x20, 0x3D, 0x80, 0x02, 0xB2, 0x81, 0x8C, 0xFA, 0x24, 0x7C, 0x08, 0x02, 0xA6, 0xF8, 0x01, 0x00, 0x20, 0x7D, 0x89, 0x03, 0xA6, 0x4E, 0x80, 0x04, 0x21, 0xE8, 0x01, 0x00, 0x20, 0x7C, 0x08, 0x03, 0xA6, 0x38, 0x80, 0x00, 0x00, 0x3C, 0xA0, 0x02, 0xB2, 0x90, 0x85, 0xFA, 0x24, 0x4E, 0x80, 0x00, 0x20, 0x60, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00 });
  79.         }
  80.  
  81.         public static int Call(uint funcAddr, int param1 = 0, int param2 = 0, int param3 = 0, int param4 = 0, int param5 = 0)
  82.         {
  83.             SetMemory(0x97922C, new byte[0x14]);
  84.             byte[] arg1 = BitConverter.GetBytes(param1);
  85.             byte[] arg2 = BitConverter.GetBytes(param2);
  86.             byte[] arg3 = BitConverter.GetBytes(param3);
  87.             byte[] arg4 = BitConverter.GetBytes(param4);
  88.             byte[] arg5 = BitConverter.GetBytes(param5);
  89.             Array.Reverse(arg1);
  90.             Array.Reverse(arg2);
  91.             Array.Reverse(arg3);
  92.             Array.Reverse(arg4);
  93.             Array.Reverse(arg5);
  94.             byte[] set = Combine(arg1, arg2, arg3, arg4, arg5);
  95.             SetMemory(0x97922C, set);
  96.             byte[] addr = BitConverter.GetBytes(funcAddr);
  97.             Array.Reverse(addr);
  98.             SetMemory(0x2B1FA24, addr);
  99.             System.Threading.Thread.Sleep(20);
  100.             SetMemory(0x97922C, normal);
  101.             byte[] ret = GetMemory(0x295A570, 4);
  102.             Array.Reverse(ret);
  103.             return BitConverter.ToInt32(ret, 0);
  104.         }
  105.  
  106.         public static int str_pointer(string str)
  107.         {
  108.             int addr = 0;
  109.             for (addr = 0x979240; addr <= 0x97A19A; addr += 0x312)
  110.             {
  111.                 byte[] t = GetMemory((uint)addr, 1);
  112.                 if (t[0] == 0x00) break;
  113.                 if (addr == 0x97A19A)
  114.                 {
  115.                     SetMemory(0x979240, new byte[0xFF3]);
  116.                     addr = 0x979240;
  117.                     break;
  118.                 }
  119.             }
  120.             SetMemory((uint)addr, Encoding.UTF8.GetBytes(str + Convert.ToString(new byte[] { 0x00, 0x00, 0x00 })));
  121.             return addr;
  122.         }
  123.  
  124.         public static byte[] Combine(params byte[][] arrays)
  125.         {
  126.             byte[] rv = new byte[arrays.Sum(a => a.Length)];
  127.             int offset = 0;
  128.             foreach (byte[] array in arrays)
  129.             {
  130.                 Buffer.BlockCopy(array, 0, rv, offset, array.Length);
  131.                 offset += array.Length;
  132.             }
  133.             return rv;
  134.         }
  135.  
  136.         public static void SetMemory(uint addr, byte[] val)
  137.         {
  138.             PS3TMAPI.ProcessSetMemory(0, PS3TMAPI.UnitType.PPU, Process, 0, addr, val);
  139.         }
  140.  
  141.         public static byte[] GetMemory(uint addr, int length)
  142.         {
  143.             byte[] temp = new byte[length];
  144.             PS3TMAPI.ProcessGetMemory(0, PS3TMAPI.UnitType.PPU, Process, 0, addr, ref temp);
  145.             return temp;
  146.         }
  147.     }
  148. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement