Jump to content
1337-D34thk1ller

Find the algorithm of Values

Recommended Posts

4 hours ago, 1337-D34thk1ller said:

But 1 question is left:

Its the Anti-cheat system of the Game "Anima"

All values (in Dword) a encrypted with 2 values that random generated every time they change.

Anti-cheat 1 XOR Anti-cheat 2 = real Value (Dword)

No problem to Bypass this😉

BUT the Weaponstats are saved in float

Anti-cheat 1 = 1.355.811.694d = 2,79232799e10f

Anti-cheat 2 = 302.734.446d = 4,39745947e-28f

Real Value = 1.116.471.296d = 70.0f

Other example:

Anti-cheat 1 = 1.342.267.165d = 8.681.976.832,0f

Anti-cheat 2 = 325.013.789d = 2,8186549e-27f

Real Value = 1.129.316.352d = 208.0f

 

No matter how i calculate there is always an difference. 

Now the Question: is there an dword value for 0.0 float that is not 0?

In some games i found -0.0 float that has a long dword value (sorry dont find it for example anymore)

Maybe i need this 0.0float to XOR the Anti-cheat value befor calculate them🤔

If i XOR the 2 Anti-cheat values and search for the result, I dont find anything. Same with calculate the Anti-cheat 1 or 2 with real value.

I might have to see it in memory browser... In case more info is needed. 

Share this post


Link to post
Share on other sites

1 hour ago, NoFear said:

I might have to see it in memory browser... In case more info is needed. 

Cant upload screenshot (some Problem with my Phone)

But you can see the memory editor here.

At ~0:30min 

 

Share this post


Link to post
Share on other sites

Not sure.  I think something is missing still....

One: this person doesn't realize he can just group copy and group paste.... Which discredits the knowledge level for me.

Two: they explain how the "calculation" works, but never utilizes that knowledge to create any custom value, but instead just uses data in memory.

 

 

I would have to go looking around for myself to find proper method. I think they have SOME of the information.... Or are misinterpreting the data at hand.

Share this post


Link to post
Share on other sites
15 hours ago, 1337-D34thk1ller said:

Anti-cheat 1 = 1.355.811.694d = 2,79232799e10f

Anti-cheat 2 = 302.734.446d = 4,39745947e-28f

Real Value = 1.116.471.296d = 70.0f

Firstly, since we are dealing with bitwise operations, it is reasonable to convert all values to hex:
Anti-cheat 1 = 0x50D00B6E
Anti-cheat 2 = 0x120B5C6E
Real value = 0x428C0000

Now let's define new values that are derived from these "anti-cheat" values:
Key1 = Anti-cheat 1 = 0x50D00B6E
Key2 = Anti-cheat 2 with 2nd and 3rd bytes swapped = 0x125C0B6E

Real value can then be calculated from previously defined values like this:
Real value = Key1 XOR Key2
Real value = 0x50D00B6E XOR 0x125C0B6E = 0x428C0000

15 hours ago, 1337-D34thk1ller said:

Other example:

Anti-cheat 1 = 1.342.267.165d = 8.681.976.832,0f

Anti-cheat 2 = 325.013.789d = 2,8186549e-27f

Real Value = 1.129.316.352d = 208.0f

Following the same steps for this example:

  1. Anti-cheat 1 = 0x50015F1D
    Anti-cheat 2 = 0x135F511D
    Real value = 0x43500000
     
  2. Key1 = 0x50015F1D
    Key2 = 0x13515F1D
     
  3. Real value = 0x50015F1D XOR 0x13515F1D = 0x43500000

Share this post


Link to post
Share on other sites
10 minutes ago, CmP said:

Firstly, since we are dealing with bitwise operations, it is reasonable to convert all values to hex:
Anti-cheat 1 = 0x50D00B6E
Anti-cheat 2 = 0x120B5C6E
Real value = 0x428C0000

Now let's define new values that are derived from these "anti-cheat" values:
Key1 = Anti-cheat 1 = 0x50D00B6E
Key2 = Anti-cheat 2 with 2nd and 3rd bytes swapped = 0x125C0B6E

Real value can then be calculated from previously defined values like this:
Real value = Key1 XOR Key2
Real value = 0x50D00B6E XOR 0x125C0B6E = 0x428C0000

Following the same steps for this example:

  1. Anti-cheat 1 = 0x50015F1D
    Anti-cheat 2 = 0x135F511D
    Real value = 0x43500000
     
  2. Key1 = 0x50015F1D
    Key2 = 0x13515F1D
     
  3. Real value = 0x50015F1D XOR 0x13515F1D = 0x43500000

Well done.  Not much more I can say, other than impressive 🙂

Share this post


Link to post
Share on other sites
43 minutes ago, CmP said:

Firstly, since we are dealing with bitwise operations, it is reasonable to convert all values to hex:
Anti-cheat 1 = 0x50D00B6E
Anti-cheat 2 = 0x120B5C6E
Real value = 0x428C0000

Now let's define new values that are derived from these "anti-cheat" values:
Key1 = Anti-cheat 1 = 0x50D00B6E
Key2 = Anti-cheat 2 with 2nd and 3rd bytes swapped = 0x125C0B6E

Real value can then be calculated from previously defined values like this:
Real value = Key1 XOR Key2
Real value = 0x50D00B6E XOR 0x125C0B6E = 0x428C0000

Following the same steps for this example:

  1. Anti-cheat 1 = 0x50015F1D
    Anti-cheat 2 = 0x135F511D
    Real value = 0x43500000
     
  2. Key1 = 0x50015F1D
    Key2 = 0x13515F1D
     
  3. Real value = 0x50015F1D XOR 0x13515F1D = 0x43500000

Really impressive 🖒🖒🖒🖒

Thanks for this.

Really helpfull😊

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...