Usin NOPs is useful but there is also another trick - compile with debugging symbols and then use "objdump" with "-S" parameter to interleave C code with disassembly.
@mrigankadas5435
4 жыл бұрын
I did a whole lot of research by myself to actually understand this video.
@kuldeepsharma7499
3 жыл бұрын
I am feeling like am not smart enough to understand 😞
@prashantd6252
3 жыл бұрын
Then you've made some progress...keep it up. If you need more help try to join forums online to better find useful resources and learn by building something.
@nagitokomaeda3237
3 жыл бұрын
Amazing! This is what youre supposed to dk on a LiveOverflow video.
@kuhluhOG
4 жыл бұрын
In case somebody is asking how a big collection of numbers is getting used in a call (e.g. struct { int64_t a, b, c, d, e, f; } which is 48 Bytes), it's just puts everything onto the stack (also for returns).
@hikaru-live
5 жыл бұрын
Suggestion: improve the makefiles so they would use -O0, -O2 and -Os optimization levels. That will change how the code is generated.
@michimarz
8 жыл бұрын
The reason behind placing mov eax, 0x0 instructions before fun1() and fun2() calls is that in 64-bit mode the eax register is used to pass information about the number of vector registers used to hold arguments to functions with variable arguments. In our case of fun1() and fun2() the compiler doesn't see the function declaration, which means it doesn't have enough information about function parameters so it has to zero the eax, just in case the function happens to accept variable arguments.
@krzysztofadamski2884
8 жыл бұрын
This is not entirely true (but close). It is because the compiler treats fun1 as function with (potentially) variadic number of arguments but it's not because there is no function declaration. The real problem is that in C declaring function as "void func()" is not the same as "void func(void)". See C99 standard, "6.7.5.3", paragraph 14.
@damejelyas
6 жыл бұрын
Our deepest fear is not that we are inadequate. Our deepest fear is that we are powerful beyond measure. It is our light, not our darkness, that most frightens us. Your playing small does not serve the world. There is nothing enlightened about shrinking so that other people won't feel insecure around you. We are all meant to shine as children do. It's not just in some of us; it is in everyone. And as we let our own lights shine, we unconsciously give other people permission to do the same. As we are liberated from our own fear, our presence automatically liberates others Thanks man.
@boweneveritt3400
5 жыл бұрын
Me too
@uchihasurvival
5 жыл бұрын
Either I'm dumb or I've been nullified from literature symbolisms after programming daily for months.
@ronalerquinigoagurto555
6 жыл бұрын
There should be more stuff like yours on youtube
@dedkeny
3 жыл бұрын
I've watched these the last 7 episodes on repeat hand in hand with the art of exploitation v2 and they are almost the same for the first 5 chapters
@zoomzoom4055
3 жыл бұрын
Then whats the different
@bitcode_
8 жыл бұрын
yes master...lol. I wish i understood everything...im taking a course on assembly x86 and C and Python, but i am not yet to understand everything here in the tutorial, one day hopefully will become second nature the more i practice, thanks for these tutorials, i will be coming back to these over and over.
@bitcode_
7 жыл бұрын
́ ̈ Whats up bro, wow you have made my day, man it has been a wild year, long story short I am studying full stack javascript, I might get an internship like in 4 to 6 months, my love for assembly and C are the same, still a fan of your videos, still have goals of participating on ctfs but my skills are not there yet but i have a much better understanding now, I have just bit concentrating a lot in javascript, but my ultimate goal is to travel and attend hackathons and ctfs, thank you for asking!!! i want to give back to the community like you do with your videos!
@user-xm6gb6pu1n
7 жыл бұрын
mylampdatabases good to hear (: Have a nice day (y)
@XseuguhX
6 жыл бұрын
It's time for the yearly report I think, dude. How's your assembly going ?
@boweneveritt3400
5 жыл бұрын
b1tc0de, its been 2 years, do you have an internship and hows assembly going??
@compilationsmania451
4 жыл бұрын
Welp, time for the 3 year report. How're you doing now?
@mrigankadas5435
4 жыл бұрын
I actually like the way you point out the important informations to keep in mind. I made an Instagram account just to post what I understood and learnt about reverse engineering (basically the important things one should know before getting into Reversing stuffs) I got inspired from your research method and implemented it for myself, and it feels great. Thumbs up for the video, subscribed to your channel
@executablelinkable6169
4 жыл бұрын
Can u give me a recourses so I can understand it better?
@executablelinkable6169
4 жыл бұрын
Especially pointers I dont understand IP, SP, BP
@Windowicker
4 жыл бұрын
I'm a happy watcher when I watch a video, and see another video. Makes you find new points to learn from. =] Tanks M8^_________^
@robinhood3841
4 жыл бұрын
i love you so much man you saved my life
@xziaah6j63kx9
2 жыл бұрын
thanks for adding CC
@addonsOlivierESP
7 жыл бұрын
Why do you prefer using volatile for all variables over using gcc -O0 ? Nice vids btw :>
@nullnull6032
5 жыл бұрын
because the compiler may try to optimize the code and remove some of these variables because they are unused
@nullnull6032
5 жыл бұрын
so the compiler may also cache the values of unused variables and never read the value from memory again
@nullnull6032
5 жыл бұрын
but when you use volatile you basically tell the compilers to fuck off
@Caellyan
4 жыл бұрын
@@nullnull6032 Or simply, as others said '-O0'
@Edmondfreak
6 жыл бұрын
Great stuff but please use straight lines instead of freehand drawn for the arrows or box illustrations, it's not precise and guessing leads to confusion
@jamilhneini1002
5 жыл бұрын
I think the lines are cute
@haru8414
4 жыл бұрын
Liveoverflow: dont be a script kiddie Me: thats why im here
@RDY-ke4fn
6 жыл бұрын
Great job!
@richardleandro8694
6 жыл бұрын
Thank you, your channel it's awesome!
@justfuture6585
4 жыл бұрын
Awesome video! :)
@muudus_tv
3 жыл бұрын
Okay, i saw your content, nicely done. Now I want to understand the ins and out of this video and even have a further discussion. I know C language but I didn't understand anything about the content. so tell me what should I learn to be able to understand whatever is going on the screen and whatever you told about reverse engineering. Hoping to get a reply from you.
@muudus_tv
3 жыл бұрын
@blvckmetxlyeah that's true man.. anyways thanks for replying man. All Hail Gorgoroth, Amon Amarth, Carpathian Forest (Norwegian blvckmetxl). 🤘
@JakeDownsWuzHere
3 жыл бұрын
still interesting in 2021
@lopo8000
2 жыл бұрын
Buffer Overflow!!!!!!!!!!!!!
@777pios
5 жыл бұрын
Good men, How do you learn ASM?! Reading books, only practicing and playing? Thanks master !
@giuseppelamalfa2966
5 жыл бұрын
practice is the best teacher, ASM is such a primitive language with so many instructions and so many variations (architectures, processor extensions, etc) that, even if a book were to extensively cover a good portion of it, it would be extremely hard for a beginner my favorite way of learning is getting a basic understanding of the fundamentals and then work my way up with practice and reference guides
@777pios
5 жыл бұрын
@@giuseppelamalfa2966 thanks for your advice men :) !!
@jaaps772
5 жыл бұрын
You could also download The Intel 64 and IA-32 Architectures Software Developer's Manual. At first this might look a bit overwhelming, but once you understand the basics of assembler it gets easy.
Пікірлер: 57