i wan't to learn how to exploit win applications (for educational purposes)
I have strong knowledge of c/c++/python
Please suggest me what languages should i learn and why some good books and/or websites
Russian is also good, chinese is difficult as fuck. Even chinese children who learn algebra when they are 6 still use 5-6 years to learn how to read chinese. And they are native speakers. And even speaking chinese is hard as fuck, they have 7 different "a" sounds and I can barely hear any difference between them. Russian is a cakewalk compared to it.
Assembly, you first step to success.
After that you will need to find the addresses with assembly, this requires a lot of work and you have to know what you want to do.
Use Ollydebug or CheatEngine, both are handy and are good to use.
Get familiar with the Windows API and learn how to do stuff like DLL injections, how to fuck with handles and so forth.
Learn to use reverse engineering tools like IDA pro and Cheatengine (don't laugh, it's free and it works fine).
The most important rule is to never accept blackboxes. Take everything apart and figure out how it works until you can recreate it.
Write your own tools. The main difference between a good and a shitty cracker is that the shitty cracker is completely fucked without his tools.
sit your ass down and learn x86 assembly ( at least the operands , get your hands on IDA or any other decent disassembler Hopper will do if you are a faggot) and start getting familiar with the way programs work.
Best case would be to write your own programs and then to analyze/break them with IDA, as then you have a good understanding of both sides of the wall (before and after compiler went through your code) toy with different compilers (boralnd / VS etc)
Then learn codecaves detours and dll injection, if you want to mess with windows, oh and learn win sys calls because it's a clusterfuck.