Dissembling Disassembly Experience


Sitting in the sunshine at my favorite hippie coffee shop yesterday, I was trying to reverse-engineer a C switch statement out of assembly and was stuck on “leal 0xffffffce(%eax), %edx”. A couple guys were nerding out near me, so during a lull in their conversation, I leaned over and said, “Hello! How much do you love assembly?” They gallantly looked over my binder of printed textbook pages, and asked, “What framework is this? I worked in Mac. Is this x86?”

And I had to admit that for me, assembly lives in that sheaf of papers. I have never compiled a program and dived into its disassembled state. (I experimented once, early on, but didn’t inhale.) My dev buddies cringed when I told them later that night about the coffee shop incident; one even said, reassuringly: “How embarrassing.”

Still, I am kind of loving being the beginner who makes groan-inducing, pity-pat-garnering goofs. (Well, I have a choice: either embrace it, or die of shame.) Liberated from my Whiz Kid aspirations, I see the humor in these situations–and who can help but love the learning process when you get to laugh yourself through it?

So I’m laughing all the way to my console, where I’m looking, finally, at disassembled code. Jmp on it!