TKC-Community

Hacking and Art => Mount and Blade => Topic started by: Troll on November 24, 2016, 02:28:03 am

Title: Anti-Autoblock
Post by: Troll on November 24, 2016, 02:28:03 am
R u done with autoblockerz? Do you hate spoonfed shaits that dont know shit about the work people have done? Then you are right here! In this topic I want to discuss so called Anti-Autoblock.
Anyone who has a idea feel free to share. Executables are okay, altough code snippets would be better (because learning has to start somewhere)

So my idea was to create a code cave, OR the value with a random attackdirection, multiply the random value with a specific number (dont know anymore what it was) and OR again so it "blocks" (releases attack). Better would be to first OR-block, then OR-attack. I already implemented this and it works, but its not the best solution...

With OR i mean the or instruction that controlls attack direction, block direction, but also walking and stuff.

Assembly code will be shown soon if i get some time.

Feel free to show ur ideas  :icon_thumbsup
Title: Re: Anti-Autoblock
Post by: Troll on November 24, 2016, 02:30:07 am
OR [esi+blah],eax if I remember right.
Title: Re: Anti-Autoblock
Post by: MrMedic on November 24, 2016, 04:04:17 pm
if you reverse deeper inside the autoblock function you will find something interesting which is directly related to your question.
Title: Re: Anti-Autoblock
Post by: ZOldDude on November 24, 2016, 09:54:54 pm
if you reverse deeper inside the autoblock function you will find something interesting which is directly related to your question.

You may even find a way to keep people from being able to block...which I think was his question/thought.
 
Title: Re: Anti-Autoblock
Post by: MrMedic on November 24, 2016, 10:05:35 pm
yes , z , that is exactly what i was refering to.
Title: Re: Anti-Autoblock
Post by: Troll on November 27, 2016, 01:36:52 pm
yes , z , that is exactly what i was refering to.
But I highly doubt that you mean this OR function. Problem is that its 2016 and I still didn't manage to find the function that enables the autoblocking. This function here (the OR instruction) only changes the block direction (gets called 100 times when i hold down Right MB). Gonna take a quicker look and scan for the masks that were posted in the "reversal engineer" sticky topic. But thanks for the information. Keeping others from blocking sounds strange o.0 Thinks like this should be controlled server-sided, if I think correctly...
Title: Re: Anti-Autoblock
Post by: MrMedic on November 27, 2016, 05:30:23 pm
But I highly doubt that you mean this OR function. Problem is that its 2016 and I still didn't manage to find the function that enables the autoblocking. This function here (the OR instruction) only changes the block direction (gets called 100 times when i hold down Right MB). Gonna take a quicker look and scan for the masks that were posted in the "reversal engineer" sticky topic. But thanks for the information. Keeping others from blocking sounds strange o.0 Thinks like this should be controlled server-sided, if I think correctly...

You are thinking inside the box , its quite typical .. Think outside of the box.

The OR function is irrelevant , here is why.

The reason you are hitting a brick wall is in fact that the majority of info posted by others is misleading i.e. they have got it wrong , there is another function that decides what to do when you are attacking and another when you are being attacked, You will also be quite surprised by what it actually hinges on.

What you should be looking at is what actually calls the 'blocking function' and why, you will see that it is infact client side , you will also see why 'ping' and fps have such a big impact.


This is the function that you should be looking at :
*removed too much info reverse it and you will see why I removed it*

Simple.  :icon_thumbsup
Title: Re: Anti-Autoblock
Post by: Troll on November 27, 2016, 08:40:22 pm
But I highly doubt that you mean this OR function. Problem is that its 2016 and I still didn't manage to find the function that enables the autoblocking. This function here (the OR instruction) only changes the block direction (gets called 100 times when i hold down Right MB). Gonna take a quicker look and scan for the masks that were posted in the "reversal engineer" sticky topic. But thanks for the information. Keeping others from blocking sounds strange o.0 Thinks like this should be controlled server-sided, if I think correctly...

You are thinking inside the box , its quite typical .. Think outside of the box.

The OR function is irrelevant , here is why.

The reason you are hitting a brick wall is in fact that the majority of info posted by others is misleading i.e. they have got it wrong , there is another function that decides what to do when you are attacking and another when you are being attacked, You will also be quite surprised by what it actually hinges on.

What you should be looking at is what actually calls the 'blocking function' and why, you will see that it is infact client side , you will also see why 'ping' and fps have such a big impact.


This is the function that you should be looking at :
*removed too much info reverse it and you will see why I removed it*

Simple.  :icon_thumbsup

Block not controlled by server??? This is insane! Anyways gonna take a look next week. Will put some breakpoints around and stuff :P

CE is my friend, and no I will not convert to OllyDBG.

Aynways thanks for your help!
Title: Re: Anti-Autoblock
Post by: Troll on November 28, 2016, 01:02:36 am
But I highly doubt that you mean this OR function. Problem is that its 2016 and I still didn't manage to find the function that enables the autoblocking. This function here (the OR instruction) only changes the block direction (gets called 100 times when i hold down Right MB). Gonna take a quicker look and scan for the masks that were posted in the "reversal engineer" sticky topic. But thanks for the information. Keeping others from blocking sounds strange o.0 Thinks like this should be controlled server-sided, if I think correctly...

You are thinking inside the box , its quite typical .. Think outside of the box.

The OR function is irrelevant , here is why.

The reason you are hitting a brick wall is in fact that the majority of info posted by others is misleading i.e. they have got it wrong , there is another function that decides what to do when you are attacking and another when you are being attacked, You will also be quite surprised by what it actually hinges on.

What you should be looking at is what actually calls the 'blocking function' and why, you will see that it is infact client side , you will also see why 'ping' and fps have such a big impact.


This is the function that you should be looking at :
*removed too much info reverse it and you will see why I removed it*

Simple.  :icon_thumbsup

What have I just found o.0 that was crazy... Let the short story time begin.

So I did as you told me, some breaking sum tracing, you know basic stuff. I managed to reverse to the point it got called. Now what I do would professionals like you call rather stupid but it works (often): learning by doing (and in this case learning by experimenting and crashing stuff). And thats what I did. I went to the place you told me (hope it was that place) and changed some conditions (e.g. jne, je, jnge,...). And then the game froze. Yes the game froze, but not the typical way like when you set it on freeze or it crashes. More like when the match ends and everything stabds still. You can hear some people dying in the background. I have no idea what that was, but I need to investigate this place further. There might be some potential here.
Title: Re: Anti-Autoblock
Post by: Troll on November 28, 2016, 09:38:36 pm
But I highly doubt that you mean this OR function. Problem is that its 2016 and I still didn't manage to find the function that enables the autoblocking. This function here (the OR instruction) only changes the block direction (gets called 100 times when i hold down Right MB). Gonna take a quicker look and scan for the masks that were posted in the "reversal engineer" sticky topic. But thanks for the information. Keeping others from blocking sounds strange o.0 Thinks like this should be controlled server-sided, if I think correctly...

You are thinking inside the box , its quite typical .. Think outside of the box.

The OR function is irrelevant , here is why.

The reason you are hitting a brick wall is in fact that the majority of info posted by others is misleading i.e. they have got it wrong , there is another function that decides what to do when you are attacking and another when you are being attacked, You will also be quite surprised by what it actually hinges on.

What you should be looking at is what actually calls the 'blocking function' and why, you will see that it is infact client side , you will also see why 'ping' and fps have such a big impact.


This is the function that you should be looking at :
*removed too much info reverse it and you will see why I removed it*

Simple.  :icon_thumbsup

What have I just found o.0 that was crazy... Let the short story time begin.

So I did as you told me, some breaking sum tracing, you know basic stuff. I managed to reverse to the point it got called. Now what I do would professionals like you call rather stupid but it works (often): learning by doing (and in this case learning by experimenting and crashing stuff). And thats what I did. I went to the place you told me (hope it was that place) and changed some conditions (e.g. jne, je, jnge,...). And then the game froze. Yes the game froze, but not the typical way like when you set it on freeze or it crashes. More like when the match ends and everything stabds still. You can hear some people dying in the background. I have no idea what that was, but I need to investigate this place further. There might be some potential here.
Ok what I found is weird. Everyone stops moving but still the player positions get updated at an intervall... Everything moves choppy and at a rate of 4 seconds. Still I die if someone kills me so I think what I found is wrong and I am on the wrong path again...
Title: Re: Anti-Autoblock
Post by: Troll on December 05, 2016, 02:10:25 am
To conclude -

What I just found mist be the handler of internet pakets I get periodically. Since nop-ing the jump instruction lead to no update. Whereever I was - it was the networking function (most likely).
Title: Re: Anti-Autoblock
Post by: MrMedic on December 05, 2016, 09:17:39 pm
what you actually found is the client update function. its unrelated to what you are looking for.