Results 1 to 8 of 8
  1. #1
    rabir007's Avatar
    Join Date
    Aug 2011
    Gender
    male
    Location
    Behind you...
    Posts
    2,323
    Reputation
    148
    Thanks
    1,925
    My Mood
    Bored

    PatternScanner Class + List

    Hi everyone, i release my list of patterns, so you can use them in your own codes...
    Note, that i use my own self-made pattern scanner, and it may be different from yours...

    So i release the source of it, but its written in C# so you have to convert to C++ if you want to use...

    The patterns are created from Cf Eu...

    PatternScanner Methods:
    Code:
    private static unsafe uint FindPattern(int StartAddress, int Length, string bMask, string szMask)
            {
                byte[] ByteMask = new byte[szMask.Length];
    
    
                //Creating Byte Array
                int State = 0;
                for (int i = 0; i < bMask.Length; i++)
                {
                    if (bMask[i] == 'x')
                    {
                        ByteMask[State] = byte.Parse(bMask.Substring(i + 1, 2), System.Globalization.NumberStyles.HexNumber);
                        State++;
                    }
    
    
                }
    
    
                //Searching Byte Pattern
                for (int i = 0; i < Length; i++)
                {
                    bool Found = true;
                    for (int j = 0; j < ByteMask.Length; j++)
                    {
                        Found = Found && ((ByteMask[j] == *(byte*)(StartAddress + i + j)) || szMask[j] == '?');
                    }
                    if (Found) return (uint)(StartAddress + i); //Found it
                }
                return 0; //Didn't found it
            }
    
    
            public static unsafe int[] SequentedOffsetScanner(int StartAddress, int Length, string bMask, string szMask, int OffsetPos)
            {
                List<int> FoundOffsets = new List<int>();
    
    
                //Creating Byte Array
                byte[] ByteMask = new byte[szMask.Length];
                int State = 0;
                for (int i = 0; i < bMask.Length; i++)
                {
                    if (bMask[i] == 'x')
                    {
                        ByteMask[State] = byte.Parse(bMask.Substring(i + 1, 2), System.Globalization.NumberStyles.HexNumber);
                        State++;
                    }
    
    
                }
    
    
                //Searching Byte Pattern
                for (int i = 0; i < Length; i++)
                {
                    bool Found = true;
                    for (int j = 0; j < ByteMask.Length; j++)
                    {
                        Found = Found && ((ByteMask[j] == *(byte*)(StartAddress + i + j)) || szMask[j] == '?');
                    }
                    if (Found)
                    {
                        if (!FoundOffsets.Contains(*(int*)(StartAddress + i + OffsetPos)))
                            FoundOffsets.Add(*(int*)(StartAddress + i + OffsetPos));
                    }
                }
                return FoundOffsets.ToArray();
            }
    
    
            public static unsafe int[] SequentedByteOffsetScanner(int StartAddress, int Length, string bMask, string szMask, int OffsetPos)
            {
                List<int> FoundOffsets = new List<int>();
    
    
                //Creating Byte Array
                byte[] ByteMask = new byte[szMask.Length];
                int State = 0;
                for (int i = 0; i < bMask.Length; i++)
                {
                    if (bMask[i] == 'x')
                    {
                        ByteMask[State] = byte.Parse(bMask.Substring(i + 1, 2), System.Globalization.NumberStyles.HexNumber);
                        State++;
                    }
    
    
                }
    
    
                //Searching Byte Pattern
                for (int i = 0; i < Length; i++)
                {
                    bool Found = true;
                    for (int j = 0; j < ByteMask.Length; j++)
                    {
                        Found = Found && ((ByteMask[j] == *(byte*)(StartAddress + i + j)) || szMask[j] == '?');
                    }
                    if (Found)
                    {
                        if (!FoundOffsets.Contains((int)(*(byte*)(StartAddress + i + OffsetPos))))
                            FoundOffsets.Add((int)(*(byte*)(StartAddress + i + OffsetPos)));
                    }
                }
                return FoundOffsets.ToArray();
            }
    Pattern Scannings:
    Code:
    public static unsafe uint FindWeaponMgr(uint CShell)
            {
                uint WeaponMgr = FindPattern((int)CShell, 0xFFFFFF, @"\x8B\x4F\x04\xA1\x00\x00\x00\x00\x85\xC0\x8B\x51\x04\x8B\x6A\x04", "xxxx????xxxxxxxx");
                WeaponMgr = (*(uint*)(WeaponMgr + 4)) - CShell;
                return WeaponMgr;
            }
    
    
            public static unsafe uint FindCShellPointer(uint CShell)
            {
                uint CShell_Pointer = FindPattern((int)CShell, 0xFFFFFF, @"\xc6\x01\x01\x8b\x15\x00\x00\x00\x00\x8b\x82\x00\x00\x00\x00\x8B", "xxxxx????xx????x");
                CShell_Pointer = (*(uint*)(CShell_Pointer + 5)) - CShell;
                return CShell_Pointer;
            }
    
    
            public static unsafe uint FindBasicPlayerInfo(uint CShell)
            {
                uint BasicPlayerInfo = FindPattern((int)CShell, 0xFFFFFF, @"\x8B\x0D\xD8\x52\xF6\x10\x83\xC4\x04\x69\xC0\xA8\x00\x00\x00\xD9\x9C\x08\x88\x00\x00\x00\x8B\x4C\x24\x30\x3B\xCB", "xx????xxxxx????xxx????xxx?xx");
                BasicPlayerInfo = (*(uint*)(BasicPlayerInfo + 2)) - CShell;
                return BasicPlayerInfo;
            }
            public static unsafe uint FindPushToConsole(uint CShell)
            {
                uint BasicPlayerInfo = FindPattern((int)CShell, 0xFFFFFF, @"\x68\xB4\xB5\x5B\x10\x68\x28\x27\x4E\x10\xB9\x28\xB6\x5B\x10\xE8\x07\xE4\xB4\xFF\x68\x40\xA1\x4D\x10\xE8\x4A\xDC\xF8\xFF\x59\xC3\xCC\xCC\xCC\xCC\xCC\xCC\xCC\xCC\xCC\xCC\xCC\x6A\x04\x68\x3C\x27\x4E\x10\x68\x38\x3B\x5A\x10\xB9\x38\xB6\x5B\x10\xE8\xDA\xE4\xB4\xFF\x68\x50\xA1\x4D\x10\xE8\x1D\xDC\xF8\xFF", "x????x????x????x????x????x????xxxxxxxxxxxxxx?x????x????x????x????x????x????");
                BasicPlayerInfo = (*(uint*)(BasicPlayerInfo + 1)) - CShell;
                return BasicPlayerInfo;
            }
            //*****************Offsets
            public static unsafe void BetaOffsetSearch(uint CShell)
            {
                int[] Offsets = SequentedByteOffsetScanner((int)CShell, 0xFFFFFF, @"\xD9\x5C\x24\x24\x8B\x0D\xD4\x52\xF6\x10\xD9\x44\x24\x24\x8B\x15\xD8\x52\xF6\x10\x83\xC4\x04\x69\xC9\xA8\x00\x00\x00\xD9\x5C\x11\x08", "xxx?xx????xxx?xx????xx?xx????xxx?", 32);
                for (int i = 0; i < Offsets.Length; i++)
                    Console.WriteLine("Found Offset(C4DefuTimePattern): 0x" + Storage.DecToHex(Offsets[i]));
            }
            //WeaponMgr
            public static unsafe uint FindReloadAnimRatio(uint CShell)
            {
                int[] Offsets = SequentedOffsetScanner((int)CShell, 0xFFFFFF, @"\x8B\x0D\xA4\xC5\xFC\x10\x53\x8D\x3C\xB1\xFF\x15\x54\xC4\x4D\x10\xD9\x5C\x24\x14\xD9\x44\x24\x14\x8B\x07\xD9\x98\x3C\x0C\x00\x00\x83\xC4\x04", "xx????xxxxxx????xxx?xxx?xxxx????xx?", 28);
                return (uint)Offsets[1];
            }
    
    
            public static unsafe uint FindChangeWeaponAnimRatio(uint CShell)
            {
                uint Value = FindPattern((int)CShell, 0xFFFFFF, @"\x8B\x0D\xA4\xC5\xFC\x10\x53\x8D\x3C\xB1\xFF\x15\x54\xC4\x4D\x10\xD9\x5C\x24\x14\x8B\x17\xD9\x44\x24\x14\x8B\x3D\xE0\xC4\x4D\x10\xD9\x9A\x40\x0C\x00\x00\x83\xC4\x04", "xx????xxxxxx????xxx?xxxxx?xx????xx????xx?");
                return (*(uint*)(Value + 34));
            }
    
    
            public static unsafe uint FindLeftClickAttributes(uint CShell)
            {
                int[] Offsets = SequentedOffsetScanner((int)CShell, 0xFFFFFF, @"\x2B\xC1\xC1\xF8\x02\x3B\xF0\x72\x0C\xFF\x15\xE0\xC4\x4D\x10\x8B\x0D\xA4\xC5\xFC\x10\x8B\x04\xB1\x83\x88\xEC\x0A\x00\x00\x01", "xxxx?xxxxxx????xx????xxxxx?????", 26);
                return (uint)Offsets[0];
            }
    
    
            public static unsafe uint FindRightClickAttributes(uint CShell)
            {
                int[] Offsets = SequentedOffsetScanner((int)CShell, 0xFFFFFF, @"\x2B\xC1\xC1\xF8\x02\x3B\xF0\x72\x0C\xFF\x15\xE0\xC4\x4D\x10\x8B\x0D\xA4\xC5\xFC\x10\x8B\x04\xB1\x83\x88\xEC\x0A\x00\x00\x01", "xxxx?xxxxxx????xx????xxxxx?????", 26);
                return (uint)Offsets[1];
            }
    
    
            public static unsafe uint FindZoomAttributes(uint CShell)
            {
                int[] Offsets = SequentedOffsetScanner((int)CShell, 0xFFFFFF, @"\x2B\xC1\xC1\xF8\x02\x3B\xF0\x72\x0C\xFF\x15\xE0\xC4\x4D\x10\x8B\x0D\xA4\xC5\xFC\x10\x8B\x04\xB1\x83\x88\xEC\x0A\x00\x00\x01", "xxxx?xxxxxx????xx????xxxxx?????", 26);
                return (uint)Offsets[2];
            }
            public static unsafe uint FindZoomAction(uint CShell)
            {
                uint Value = FindPattern((int)CShell, 0xFFFFFF, @"\x8B\x0D\xA4\xC5\xFC\x10\x55\x8D\x1C\xB1\xFF\x15\x54\xC4\x4D\x10\xD9\x5C\x24\x14\xD9\x44\x24\x14\x8B\x0B\xD9\x9C\xB9\x20\x39\x00\x00", "xx????xxxxxx????xxx?xxx?xxxxx????");
                return (*(uint*)(Value + 29));
            }
            public static unsafe uint FindRange(uint CShell)
            {
                int[] Offsets = SequentedOffsetScanner((int)CShell, 0xFFFFFF, @"\xD9\x44\x24\x14\x8B\x06\xDC\x0D\x50\xFC\x54\x10\x83\xC4\x04\xD9\x5C\x24\x10\xD9\x44\x24\x10\xD9\x98\x0C\x08\x00\x00", "xxx?xxxx????xx?xxx?xxx?xx????", 25);
                return (uint)Offsets[0];
            }
            public static unsafe uint FindAiModeRange(uint CShell)
            {
                int[] Offsets = SequentedOffsetScanner((int)CShell, 0xFFFFFF, @"\xD9\x44\x24\x14\x8B\x06\xDC\x0D\x50\xFC\x54\x10\x83\xC4\x04\xD9\x5C\x24\x10\xD9\x44\x24\x10\xD9\x98\x0C\x08\x00\x00", "xxx?xxxx????xx?xxx?xxx?xx????", 25);
                return (uint)Offsets[1];
            }
            public static unsafe uint FindDamageVariantionFactor(uint CShell)
            {
                int[] Offsets = SequentedOffsetScanner((int)CShell, 0xFFFFFF, @"\x8D\x34\xA9\xFF\x15\x54\xC4\x4D\x10\xD9\x5C\x24\x14\xD9\x44\x24\x14\x8B\x16\xD9\x9A\x38\x08\x00\x00", "xxxxx????xxx?xxx?xxxx????", 21);
                return (uint)Offsets[2];
            }
            public static unsafe uint FindAmmoDamage(uint CShell)
            {
                int[] Offsets = SequentedOffsetScanner((int)CShell, 0xFFFFFF, @"\x8D\x34\xA9\xFF\x15\x54\xC4\x4D\x10\xD9\x5C\x24\x14\xD9\x44\x24\x14\x8B\x06\xD9\x98\x1C\x08\x00\x00", "xxxxx????xxx?xxx?xxxx????", 21);
                return (uint)Offsets[0];
            }
    
    
    
    
            //BasicPlayerInfo
            public static unsafe uint FindC4DefuseTime(uint CShell)
            {
                int[] Offsets = SequentedOffsetScanner((int)CShell, 0xFFFFFF, @"\x8B\x15\xD4\x52\xF6\x10\xD9\x44\x24\x24\xA1\xD8\x52\xF6\x10\x83\xC4\x04\x69\xD2\xA8\x00\x00\x00\xD9\x9C\x02\x80\x00\x00\x00", "xx????xxx?x????xx?xx????xxx????", 27);
                return (uint)Offsets[0];
            }
            public static unsafe uint FindCharacterHiddenWalkAlpha(uint CShell)
            {
                int[] Offsets = SequentedOffsetScanner((int)CShell, 0xFFFFFF, @"\x8B\x15\xD4\x52\xF6\x10\xD9\x44\x24\x24\xA1\xD8\x52\xF6\x10\x83\xC4\x04\x69\xD2\xA8\x00\x00\x00\xD9\x9C\x02\x80\x00\x00\x00", "xx????xxx?x????xx?xx????xxx????", 27);
                return (uint)Offsets[1];
            }
            public static unsafe uint FindCharacterHiddenRunAlpha(uint CShell)
            {
                int[] Offsets = SequentedOffsetScanner((int)CShell, 0xFFFFFF, @"\x8B\x15\xD4\x52\xF6\x10\xD9\x44\x24\x24\xA1\xD8\x52\xF6\x10\x83\xC4\x04\x69\xD2\xA8\x00\x00\x00\xD9\x9C\x02\x80\x00\x00\x00", "xx????xxx?x????xx?xx????xxx????", 27);
                return (uint)Offsets[1] + 4;
            }
            public static unsafe uint FindMovementWalkRate(uint CShell)
            {
                int[] Offsets = SequentedByteOffsetScanner((int)CShell, 0xFFFFFF, @"\xD9\x5C\x24\x24\x8B\x0D\xD4\x52\xF6\x10\xD9\x44\x24\x24\x8B\x15\xD8\x52\xF6\x10\x83\xC4\x04\x69\xC9\xA8\x00\x00\x00\xD9\x5C\x11\x08", "xxx?xx????xxx?xx????xx?xx????xxx?", 32);
                return (uint)Offsets[0];
            }
    And the Templates project:
    Code:
    //***************************
    CShell_Pointer(5)
    \xc6\x01\x01\x8b\x15\x00\x00\x00\x00\x8b\x82\x00\x00\x00\x00\x8B
    xxxxx????xx????x
    
    
    //***************************
    WeaponMgr(4)
    \x8B\x4F\x04\xA1\x00\x00\x00\x00\x85\xC0\x8B\x51\x04\x8B\x6A\x04
    xxxx????xxxxxxxx
    
    
    //***************************
    BasicPlayerInfo(2)
    \x8B\x0D\xD8\x52\xF6\x10\x83\xC4\x04\x69\xC0\xA8\x00\x00\x00\xD9\x9C\x08\x88\x00\x00\x00\x8B\x4C\x24\x30\x3B\xCB
    xx????xx?xx????xxx????xxx?xx
    
    
    //***************************
    0: LeftClickAttributes(26), 1: RightClickAttributes(26), 2: ZoomAttributes(26), 3: ReloadAttributes(26)
    \x2B\xC1\xC1\xF8\x02\x3B\xF0\x72\x0C\xFF\x15\xE0\xC4\x4D\x10\x8B\x0D\xA4\xC5\xFC\x10\x8B\x04\xB1\x83\x88\xEC\x0A\x00\x00\x01
    xxxx?xxxxxx????xx????xxxxx?????
    
    
    //***************************
    PushToConsole(1)
    \x68\xB4\xB5\x5B\x10\x68\x28\x27\x4E\x10\xB9\x28\xB6\x5B\x10\xE8\x07\xE4\xB4\xFF\x68\x40\xA1\x4D\x10\xE8\x4A\xDC\xF8\xFF\x59\xC3\xCC\xCC\xCC\xCC\xCC\xCC\xCC\xCC\xCC\xCC\xCC\x6A\x04\x68\x3C\x27\x4E\x10\x68\x38\x3B\x5A\x10\xB9\x38\xB6\x5B\x10\xE8\xDA\xE4\xB4\xFF\x68\x50\xA1\x4D\x10\xE8\x1D\xDC\xF8\xFF
    x????x????x????x????x????x????xxxxxxxxxxxxxx?x????x????x????x????x????x????
    
    
    //***************************
    0: Unknown(28), 1: ReloadAnimRatio(28), 2: UnKnown(28)
    \x8B\x0D\xA4\xC5\xFC\x10\x53\x8D\x3C\xB1\xFF\x15\x54\xC4\x4D\x10\xD9\x5C\x24\x14\xD9\x44\x24\x14\x8B\x07\xD9\x98\x3C\x0C\x00\x00\x83\xC4\x04
    xx????xxxxxx????xxx?xxx?xxxx????xx?
    
    
    //***************************
    ChangeWeaponAnimRatio(34)
    \x8B\x0D\xA4\xC5\xFC\x10\x53\x8D\x3C\xB1\xFF\x15\x54\xC4\x4D\x10\xD9\x5C\x24\x14\x8B\x17\xD9\x44\x24\x14\x8B\x3D\xE0\xC4\x4D\x10\xD9\x9A\x40\x0C\x00\x00\x83\xC4\x04
    xx????xxxxxx????xxx?xxxxx?xx????xx????xx?
    
    
    //***************************
    ZoomAction(29)
    \x8B\x0D\xA4\xC5\xFC\x10\x55\x8D\x1C\xB1\xFF\x15\x54\xC4\x4D\x10\xD9\x5C\x24\x14\xD9\x44\x24\x14\x8B\x0B\xD9\x9C\xB9\x20\x39\x00\x00
    xx????xxxxxx????xxx?xxx?xxxxx????
    
    
    //***************************
    0:Range(25), 1:AiModeRange(25)
    \xD9\x44\x24\x14\x8B\x06\xDC\x0D\x50\xFC\x54\x10\x83\xC4\x04\xD9\x5C\x24\x10\xD9\x44\x24\x10\xD9\x98\x0C\x08\x00\x00
    xxx?xxxx????xx?xxx?xxx?xx????
    
    
    //***************************
    0: AIModeDamageFactorByDistance(21), 1: DamageFactorByDistance(21), 2: DamageVariantionFactor(21), 3: BoomDuration(21)
    \x8D\x34\xA9\xFF\x15\x54\xC4\x4D\x10\xD9\x5C\x24\x14\xD9\x44\x24\x14\x8B\x16\xD9\x9A\x38\x08\x00\x00
    xxxxx????xxx?xxx?xxxx????
    
    
    //***************************
    0:AmmoDamage(21), 1: ReloadAnimRatio(21)
    \x8D\x34\xA9\xFF\x15\x54\xC4\x4D\x10\xD9\x5C\x24\x14\xD9\x44\x24\x14\x8B\x06\xD9\x98\x1C\x08\x00\x00
    xxxxx????xxx?xxx?xxxx????
    
    
    //***************************
    0: C4DefuseTime(27), 1: CharacterHiddenWalkAlpha(27), 2: UnKnown(27)
    \x8B\x15\xD4\x52\xF6\x10\xD9\x44\x24\x24\xA1\xD8\x52\xF6\x10\x83\xC4\x04\x69\xD2\xA8\x00\x00\x00\xD9\x9C\x02\x80\x00\x00\x00
    xx????xxx?x????xx?xx????xxx????
    
    
    //***************************
    0: MovementWalkRate(32), 1: UnKnown(32), 2: UnKnown(32), 3: UnKnown(32), 4: UnKnwon(32)
    \xD9\x5C\x24\x24\x8B\x0D\xD4\x52\xF6\x10\xD9\x44\x24\x24\x8B\x15\xD8\x52\xF6\x10\x83\xC4\x04\x69\xC9\xA8\x00\x00\x00\xD9\x5C\x11\x08
    xxx?xx????xxx?xx????xx?xx????xxx?







  2. The Following 2 Users Say Thank You to rabir007 For This Useful Post:

    CrazyFrost (08-06-2013),dreek1 (06-27-2013)

  3. #2
    Astr3Lune's Avatar
    Join Date
    Apr 2013
    Gender
    male
    Location
    Banten
    Posts
    282
    Reputation
    10
    Thanks
    8
    Quote Originally Posted by rabir007 View Post
    Hi everyone, i release my list of patterns, so you can use them in your own codes...
    Note, that i use my own self-made pattern scanner, and it may be different from yours...

    So i release the source of it, but its written in C# so you have to convert to C++ if you want to use...

    The patterns are created from Cf Eu...

    PatternScanner Methods:
    Code:
    private static unsafe uint FindPattern(int StartAddress, int Length, string bMask, string szMask)
            {
                byte[] ByteMask = new byte[szMask.Length];
    
    
                //Creating Byte Array
                int State = 0;
                for (int i = 0; i < bMask.Length; i++)
                {
                    if (bMask[i] == 'x')
                    {
                        ByteMask[State] = byte.Parse(bMask.Substring(i + 1, 2), System.Globalization.NumberStyles.HexNumber);
                        State++;
                    }
    
    
                }
    
    
                //Searching Byte Pattern
                for (int i = 0; i < Length; i++)
                {
                    bool Found = true;
                    for (int j = 0; j < ByteMask.Length; j++)
                    {
                        Found = Found && ((ByteMask[j] == *(byte*)(StartAddress + i + j)) || szMask[j] == '?');
                    }
                    if (Found) return (uint)(StartAddress + i); //Found it
                }
                return 0; //Didn't found it
            }
    
    
            public static unsafe int[] SequentedOffsetScanner(int StartAddress, int Length, string bMask, string szMask, int OffsetPos)
            {
                List<int> FoundOffsets = new List<int>();
    
    
                //Creating Byte Array
                byte[] ByteMask = new byte[szMask.Length];
                int State = 0;
                for (int i = 0; i < bMask.Length; i++)
                {
                    if (bMask[i] == 'x')
                    {
                        ByteMask[State] = byte.Parse(bMask.Substring(i + 1, 2), System.Globalization.NumberStyles.HexNumber);
                        State++;
                    }
    
    
                }
    
    
                //Searching Byte Pattern
                for (int i = 0; i < Length; i++)
                {
                    bool Found = true;
                    for (int j = 0; j < ByteMask.Length; j++)
                    {
                        Found = Found && ((ByteMask[j] == *(byte*)(StartAddress + i + j)) || szMask[j] == '?');
                    }
                    if (Found)
                    {
                        if (!FoundOffsets.Contains(*(int*)(StartAddress + i + OffsetPos)))
                            FoundOffsets.Add(*(int*)(StartAddress + i + OffsetPos));
                    }
                }
                return FoundOffsets.ToArray();
            }
    
    
            public static unsafe int[] SequentedByteOffsetScanner(int StartAddress, int Length, string bMask, string szMask, int OffsetPos)
            {
                List<int> FoundOffsets = new List<int>();
    
    
                //Creating Byte Array
                byte[] ByteMask = new byte[szMask.Length];
                int State = 0;
                for (int i = 0; i < bMask.Length; i++)
                {
                    if (bMask[i] == 'x')
                    {
                        ByteMask[State] = byte.Parse(bMask.Substring(i + 1, 2), System.Globalization.NumberStyles.HexNumber);
                        State++;
                    }
    
    
                }
    
    
                //Searching Byte Pattern
                for (int i = 0; i < Length; i++)
                {
                    bool Found = true;
                    for (int j = 0; j < ByteMask.Length; j++)
                    {
                        Found = Found && ((ByteMask[j] == *(byte*)(StartAddress + i + j)) || szMask[j] == '?');
                    }
                    if (Found)
                    {
                        if (!FoundOffsets.Contains((int)(*(byte*)(StartAddress + i + OffsetPos))))
                            FoundOffsets.Add((int)(*(byte*)(StartAddress + i + OffsetPos)));
                    }
                }
                return FoundOffsets.ToArray();
            }
    Pattern Scannings:
    Code:
    public static unsafe uint FindWeaponMgr(uint CShell)
            {
                uint WeaponMgr = FindPattern((int)CShell, 0xFFFFFF, @"\x8B\x4F\x04\xA1\x00\x00\x00\x00\x85\xC0\x8B\x51\x04\x8B\x6A\x04", "xxxx????xxxxxxxx");
                WeaponMgr = (*(uint*)(WeaponMgr + 4)) - CShell;
                return WeaponMgr;
            }
    
    
            public static unsafe uint FindCShellPointer(uint CShell)
            {
                uint CShell_Pointer = FindPattern((int)CShell, 0xFFFFFF, @"\xc6\x01\x01\x8b\x15\x00\x00\x00\x00\x8b\x82\x00\x00\x00\x00\x8B", "xxxxx????xx????x");
                CShell_Pointer = (*(uint*)(CShell_Pointer + 5)) - CShell;
                return CShell_Pointer;
            }
    
    
            public static unsafe uint FindBasicPlayerInfo(uint CShell)
            {
                uint BasicPlayerInfo = FindPattern((int)CShell, 0xFFFFFF, @"\x8B\x0D\xD8\x52\xF6\x10\x83\xC4\x04\x69\xC0\xA8\x00\x00\x00\xD9\x9C\x08\x88\x00\x00\x00\x8B\x4C\x24\x30\x3B\xCB", "xx????xxxxx????xxx????xxx?xx");
                BasicPlayerInfo = (*(uint*)(BasicPlayerInfo + 2)) - CShell;
                return BasicPlayerInfo;
            }
            public static unsafe uint FindPushToConsole(uint CShell)
            {
                uint BasicPlayerInfo = FindPattern((int)CShell, 0xFFFFFF, @"\x68\xB4\xB5\x5B\x10\x68\x28\x27\x4E\x10\xB9\x28\xB6\x5B\x10\xE8\x07\xE4\xB4\xFF\x68\x40\xA1\x4D\x10\xE8\x4A\xDC\xF8\xFF\x59\xC3\xCC\xCC\xCC\xCC\xCC\xCC\xCC\xCC\xCC\xCC\xCC\x6A\x04\x68\x3C\x27\x4E\x10\x68\x38\x3B\x5A\x10\xB9\x38\xB6\x5B\x10\xE8\xDA\xE4\xB4\xFF\x68\x50\xA1\x4D\x10\xE8\x1D\xDC\xF8\xFF", "x????x????x????x????x????x????xxxxxxxxxxxxxx?x????x????x????x????x????x????");
                BasicPlayerInfo = (*(uint*)(BasicPlayerInfo + 1)) - CShell;
                return BasicPlayerInfo;
            }
            //*****************Offsets
            public static unsafe void BetaOffsetSearch(uint CShell)
            {
                int[] Offsets = SequentedByteOffsetScanner((int)CShell, 0xFFFFFF, @"\xD9\x5C\x24\x24\x8B\x0D\xD4\x52\xF6\x10\xD9\x44\x24\x24\x8B\x15\xD8\x52\xF6\x10\x83\xC4\x04\x69\xC9\xA8\x00\x00\x00\xD9\x5C\x11\x08", "xxx?xx????xxx?xx????xx?xx????xxx?", 32);
                for (int i = 0; i < Offsets.Length; i++)
                    Console.WriteLine("Found Offset(C4DefuTimePattern): 0x" + Storage.DecToHex(Offsets[i]));
            }
            //WeaponMgr
            public static unsafe uint FindReloadAnimRatio(uint CShell)
            {
                int[] Offsets = SequentedOffsetScanner((int)CShell, 0xFFFFFF, @"\x8B\x0D\xA4\xC5\xFC\x10\x53\x8D\x3C\xB1\xFF\x15\x54\xC4\x4D\x10\xD9\x5C\x24\x14\xD9\x44\x24\x14\x8B\x07\xD9\x98\x3C\x0C\x00\x00\x83\xC4\x04", "xx????xxxxxx????xxx?xxx?xxxx????xx?", 28);
                return (uint)Offsets[1];
            }
    
    
            public static unsafe uint FindChangeWeaponAnimRatio(uint CShell)
            {
                uint Value = FindPattern((int)CShell, 0xFFFFFF, @"\x8B\x0D\xA4\xC5\xFC\x10\x53\x8D\x3C\xB1\xFF\x15\x54\xC4\x4D\x10\xD9\x5C\x24\x14\x8B\x17\xD9\x44\x24\x14\x8B\x3D\xE0\xC4\x4D\x10\xD9\x9A\x40\x0C\x00\x00\x83\xC4\x04", "xx????xxxxxx????xxx?xxxxx?xx????xx????xx?");
                return (*(uint*)(Value + 34));
            }
    
    
            public static unsafe uint FindLeftClickAttributes(uint CShell)
            {
                int[] Offsets = SequentedOffsetScanner((int)CShell, 0xFFFFFF, @"\x2B\xC1\xC1\xF8\x02\x3B\xF0\x72\x0C\xFF\x15\xE0\xC4\x4D\x10\x8B\x0D\xA4\xC5\xFC\x10\x8B\x04\xB1\x83\x88\xEC\x0A\x00\x00\x01", "xxxx?xxxxxx????xx????xxxxx?????", 26);
                return (uint)Offsets[0];
            }
    
    
            public static unsafe uint FindRightClickAttributes(uint CShell)
            {
                int[] Offsets = SequentedOffsetScanner((int)CShell, 0xFFFFFF, @"\x2B\xC1\xC1\xF8\x02\x3B\xF0\x72\x0C\xFF\x15\xE0\xC4\x4D\x10\x8B\x0D\xA4\xC5\xFC\x10\x8B\x04\xB1\x83\x88\xEC\x0A\x00\x00\x01", "xxxx?xxxxxx????xx????xxxxx?????", 26);
                return (uint)Offsets[1];
            }
    
    
            public static unsafe uint FindZoomAttributes(uint CShell)
            {
                int[] Offsets = SequentedOffsetScanner((int)CShell, 0xFFFFFF, @"\x2B\xC1\xC1\xF8\x02\x3B\xF0\x72\x0C\xFF\x15\xE0\xC4\x4D\x10\x8B\x0D\xA4\xC5\xFC\x10\x8B\x04\xB1\x83\x88\xEC\x0A\x00\x00\x01", "xxxx?xxxxxx????xx????xxxxx?????", 26);
                return (uint)Offsets[2];
            }
            public static unsafe uint FindZoomAction(uint CShell)
            {
                uint Value = FindPattern((int)CShell, 0xFFFFFF, @"\x8B\x0D\xA4\xC5\xFC\x10\x55\x8D\x1C\xB1\xFF\x15\x54\xC4\x4D\x10\xD9\x5C\x24\x14\xD9\x44\x24\x14\x8B\x0B\xD9\x9C\xB9\x20\x39\x00\x00", "xx????xxxxxx????xxx?xxx?xxxxx????");
                return (*(uint*)(Value + 29));
            }
            public static unsafe uint FindRange(uint CShell)
            {
                int[] Offsets = SequentedOffsetScanner((int)CShell, 0xFFFFFF, @"\xD9\x44\x24\x14\x8B\x06\xDC\x0D\x50\xFC\x54\x10\x83\xC4\x04\xD9\x5C\x24\x10\xD9\x44\x24\x10\xD9\x98\x0C\x08\x00\x00", "xxx?xxxx????xx?xxx?xxx?xx????", 25);
                return (uint)Offsets[0];
            }
            public static unsafe uint FindAiModeRange(uint CShell)
            {
                int[] Offsets = SequentedOffsetScanner((int)CShell, 0xFFFFFF, @"\xD9\x44\x24\x14\x8B\x06\xDC\x0D\x50\xFC\x54\x10\x83\xC4\x04\xD9\x5C\x24\x10\xD9\x44\x24\x10\xD9\x98\x0C\x08\x00\x00", "xxx?xxxx????xx?xxx?xxx?xx????", 25);
                return (uint)Offsets[1];
            }
            public static unsafe uint FindDamageVariantionFactor(uint CShell)
            {
                int[] Offsets = SequentedOffsetScanner((int)CShell, 0xFFFFFF, @"\x8D\x34\xA9\xFF\x15\x54\xC4\x4D\x10\xD9\x5C\x24\x14\xD9\x44\x24\x14\x8B\x16\xD9\x9A\x38\x08\x00\x00", "xxxxx????xxx?xxx?xxxx????", 21);
                return (uint)Offsets[2];
            }
            public static unsafe uint FindAmmoDamage(uint CShell)
            {
                int[] Offsets = SequentedOffsetScanner((int)CShell, 0xFFFFFF, @"\x8D\x34\xA9\xFF\x15\x54\xC4\x4D\x10\xD9\x5C\x24\x14\xD9\x44\x24\x14\x8B\x06\xD9\x98\x1C\x08\x00\x00", "xxxxx????xxx?xxx?xxxx????", 21);
                return (uint)Offsets[0];
            }
    
    
    
    
            //BasicPlayerInfo
            public static unsafe uint FindC4DefuseTime(uint CShell)
            {
                int[] Offsets = SequentedOffsetScanner((int)CShell, 0xFFFFFF, @"\x8B\x15\xD4\x52\xF6\x10\xD9\x44\x24\x24\xA1\xD8\x52\xF6\x10\x83\xC4\x04\x69\xD2\xA8\x00\x00\x00\xD9\x9C\x02\x80\x00\x00\x00", "xx????xxx?x????xx?xx????xxx????", 27);
                return (uint)Offsets[0];
            }
            public static unsafe uint FindCharacterHiddenWalkAlpha(uint CShell)
            {
                int[] Offsets = SequentedOffsetScanner((int)CShell, 0xFFFFFF, @"\x8B\x15\xD4\x52\xF6\x10\xD9\x44\x24\x24\xA1\xD8\x52\xF6\x10\x83\xC4\x04\x69\xD2\xA8\x00\x00\x00\xD9\x9C\x02\x80\x00\x00\x00", "xx????xxx?x????xx?xx????xxx????", 27);
                return (uint)Offsets[1];
            }
            public static unsafe uint FindCharacterHiddenRunAlpha(uint CShell)
            {
                int[] Offsets = SequentedOffsetScanner((int)CShell, 0xFFFFFF, @"\x8B\x15\xD4\x52\xF6\x10\xD9\x44\x24\x24\xA1\xD8\x52\xF6\x10\x83\xC4\x04\x69\xD2\xA8\x00\x00\x00\xD9\x9C\x02\x80\x00\x00\x00", "xx????xxx?x????xx?xx????xxx????", 27);
                return (uint)Offsets[1] + 4;
            }
            public static unsafe uint FindMovementWalkRate(uint CShell)
            {
                int[] Offsets = SequentedByteOffsetScanner((int)CShell, 0xFFFFFF, @"\xD9\x5C\x24\x24\x8B\x0D\xD4\x52\xF6\x10\xD9\x44\x24\x24\x8B\x15\xD8\x52\xF6\x10\x83\xC4\x04\x69\xC9\xA8\x00\x00\x00\xD9\x5C\x11\x08", "xxx?xx????xxx?xx????xx?xx????xxx?", 32);
                return (uint)Offsets[0];
            }
    And the Templates project:
    Code:
    //***************************
    CShell_Pointer(5)
    \xc6\x01\x01\x8b\x15\x00\x00\x00\x00\x8b\x82\x00\x00\x00\x00\x8B
    xxxxx????xx????x
    
    
    //***************************
    WeaponMgr(4)
    \x8B\x4F\x04\xA1\x00\x00\x00\x00\x85\xC0\x8B\x51\x04\x8B\x6A\x04
    xxxx????xxxxxxxx
    
    
    //***************************
    BasicPlayerInfo(2)
    \x8B\x0D\xD8\x52\xF6\x10\x83\xC4\x04\x69\xC0\xA8\x00\x00\x00\xD9\x9C\x08\x88\x00\x00\x00\x8B\x4C\x24\x30\x3B\xCB
    xx????xx?xx????xxx????xxx?xx
    
    
    //***************************
    0: LeftClickAttributes(26), 1: RightClickAttributes(26), 2: ZoomAttributes(26), 3: ReloadAttributes(26)
    \x2B\xC1\xC1\xF8\x02\x3B\xF0\x72\x0C\xFF\x15\xE0\xC4\x4D\x10\x8B\x0D\xA4\xC5\xFC\x10\x8B\x04\xB1\x83\x88\xEC\x0A\x00\x00\x01
    xxxx?xxxxxx????xx????xxxxx?????
    
    
    //***************************
    PushToConsole(1)
    \x68\xB4\xB5\x5B\x10\x68\x28\x27\x4E\x10\xB9\x28\xB6\x5B\x10\xE8\x07\xE4\xB4\xFF\x68\x40\xA1\x4D\x10\xE8\x4A\xDC\xF8\xFF\x59\xC3\xCC\xCC\xCC\xCC\xCC\xCC\xCC\xCC\xCC\xCC\xCC\x6A\x04\x68\x3C\x27\x4E\x10\x68\x38\x3B\x5A\x10\xB9\x38\xB6\x5B\x10\xE8\xDA\xE4\xB4\xFF\x68\x50\xA1\x4D\x10\xE8\x1D\xDC\xF8\xFF
    x????x????x????x????x????x????xxxxxxxxxxxxxx?x????x????x????x????x????x????
    
    
    //***************************
    0: Unknown(28), 1: ReloadAnimRatio(28), 2: UnKnown(28)
    \x8B\x0D\xA4\xC5\xFC\x10\x53\x8D\x3C\xB1\xFF\x15\x54\xC4\x4D\x10\xD9\x5C\x24\x14\xD9\x44\x24\x14\x8B\x07\xD9\x98\x3C\x0C\x00\x00\x83\xC4\x04
    xx????xxxxxx????xxx?xxx?xxxx????xx?
    
    
    //***************************
    ChangeWeaponAnimRatio(34)
    \x8B\x0D\xA4\xC5\xFC\x10\x53\x8D\x3C\xB1\xFF\x15\x54\xC4\x4D\x10\xD9\x5C\x24\x14\x8B\x17\xD9\x44\x24\x14\x8B\x3D\xE0\xC4\x4D\x10\xD9\x9A\x40\x0C\x00\x00\x83\xC4\x04
    xx????xxxxxx????xxx?xxxxx?xx????xx????xx?
    
    
    //***************************
    ZoomAction(29)
    \x8B\x0D\xA4\xC5\xFC\x10\x55\x8D\x1C\xB1\xFF\x15\x54\xC4\x4D\x10\xD9\x5C\x24\x14\xD9\x44\x24\x14\x8B\x0B\xD9\x9C\xB9\x20\x39\x00\x00
    xx????xxxxxx????xxx?xxx?xxxxx????
    
    
    //***************************
    0:Range(25), 1:AiModeRange(25)
    \xD9\x44\x24\x14\x8B\x06\xDC\x0D\x50\xFC\x54\x10\x83\xC4\x04\xD9\x5C\x24\x10\xD9\x44\x24\x10\xD9\x98\x0C\x08\x00\x00
    xxx?xxxx????xx?xxx?xxx?xx????
    
    
    //***************************
    0: AIModeDamageFactorByDistance(21), 1: DamageFactorByDistance(21), 2: DamageVariantionFactor(21), 3: BoomDuration(21)
    \x8D\x34\xA9\xFF\x15\x54\xC4\x4D\x10\xD9\x5C\x24\x14\xD9\x44\x24\x14\x8B\x16\xD9\x9A\x38\x08\x00\x00
    xxxxx????xxx?xxx?xxxx????
    
    
    //***************************
    0:AmmoDamage(21), 1: ReloadAnimRatio(21)
    \x8D\x34\xA9\xFF\x15\x54\xC4\x4D\x10\xD9\x5C\x24\x14\xD9\x44\x24\x14\x8B\x06\xD9\x98\x1C\x08\x00\x00
    xxxxx????xxx?xxx?xxxx????
    
    
    //***************************
    0: C4DefuseTime(27), 1: CharacterHiddenWalkAlpha(27), 2: UnKnown(27)
    \x8B\x15\xD4\x52\xF6\x10\xD9\x44\x24\x24\xA1\xD8\x52\xF6\x10\x83\xC4\x04\x69\xD2\xA8\x00\x00\x00\xD9\x9C\x02\x80\x00\x00\x00
    xx????xxx?x????xx?xx????xxx????
    
    
    //***************************
    0: MovementWalkRate(32), 1: UnKnown(32), 2: UnKnown(32), 3: UnKnown(32), 4: UnKnwon(32)
    \xD9\x5C\x24\x24\x8B\x0D\xD4\x52\xF6\x10\xD9\x44\x24\x24\x8B\x15\xD8\x52\xF6\x10\x83\xC4\x04\x69\xC9\xA8\x00\x00\x00\xD9\x5C\x11\x08
    xxx?xx????xxx?xx????xx?xx????xxx?




    for Make Looger?

  4. #3
    rabir007's Avatar
    Join Date
    Aug 2011
    Gender
    male
    Location
    Behind you...
    Posts
    2,323
    Reputation
    148
    Thanks
    1,925
    My Mood
    Bored
    Quote Originally Posted by Astr3Lune View Post
    for Make Looger?
    Yeah.. But i use them to make self-update hack...







  5. #4
    O conhecimento é o caminho para liberdade.
    MPGH Member
    dreek1's Avatar
    Join Date
    Jun 2012
    Gender
    male
    Location
    localhost
    Posts
    1,175
    Reputation
    74
    Thanks
    1,263
    My Mood
    In Love
    Good Job!
    Quote Originally Posted by rabir007 View Post


    Yeah.. But i use them to make self-update hack...
    Public Hack:
    Jun 2012 / Dec 2017

  6. #5
    sabatbatu's Avatar
    Join Date
    Apr 2013
    Gender
    male
    Posts
    147
    Reputation
    10
    Thanks
    6
    My Mood
    Cold
    good job

  7. #6
    Astr3Lune's Avatar
    Join Date
    Apr 2013
    Gender
    male
    Location
    Banten
    Posts
    282
    Reputation
    10
    Thanks
    8
    Quote Originally Posted by rabir007 View Post


    Yeah.. But i use them to make self-update hack...




    How To Combine source Logger plz ?

  8. #7
    rabir007's Avatar
    Join Date
    Aug 2011
    Gender
    male
    Location
    Behind you...
    Posts
    2,323
    Reputation
    148
    Thanks
    1,925
    My Mood
    Bored
    Quote Originally Posted by Astr3Lune View Post
    How To Combine source Logger plz ?
    I don't think you even know, how to code...







  9. The Following User Says Thank You to rabir007 For This Useful Post:

    Biesi (06-27-2013)

  10. #8
    Astr3Lune's Avatar
    Join Date
    Apr 2013
    Gender
    male
    Location
    Banten
    Posts
    282
    Reputation
    10
    Thanks
    8
    Quote Originally Posted by rabir007 View Post


    I don't think you even know, how to code...

    how to use Logger soutce code?

  11. The Following User Says Thank You to Astr3Lune For This Useful Post:

    Biesi (06-27-2013)

Similar Threads

  1. Big List of Free Web Services
    By sp5710 in forum Spammers Corner
    Replies: 20
    Last Post: 12-22-2018, 07:54 PM
  2. List of Class Builds and other useful stuff
    By Lonesome Cowboy in forum Dungeons & Dragons Neverwinter Hacks / Cheats
    Replies: 1
    Last Post: 08-14-2013, 06:15 PM
  3. [Info] DayZ/DayZ Origins - Class Names List
    By Felix9112 in forum DayZ Mod & Standalone Hacks & Cheats
    Replies: 16
    Last Post: 04-29-2013, 07:03 AM
  4. List of Class Mod Manufacturers?
    By boombewm in forum Borderlands 2 Hacks
    Replies: 2
    Last Post: 10-30-2012, 05:04 PM