Reverse engineering usually refers to code not handed to us. When you have the code in your hands there is not any special strategy most of the times or it might be dictated by what we want to accomplish with it. Usually you can get a general sense of structure and what it accomplishes and than focus and understand the parts that are relevant to your task. Lots of times running it with a debugger and stoping at certain points to inspect variables helps in making sense faster.
When it uses libraries that are new to me I try to understand the purpose they serve and see how they are used within the code and read more about them from documentation or other resources and usually go as deep as to make me understand in order to complete my task. We can not really know the inner workings of ALL the libraries we use throughout our code.
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.