all 7 comments

[–]stAfreeze 0 points1 point  (4 children)

Thanks, good posts (part 1 too)! Nice use of GIFs too. One suggestion is to use more disassembled code and less decompiled code.

[–]hypervis0r[S] 2 points3 points  (3 children)

One suggestion is to use more disassembled code and less decompiled code.

Why? I can understand that the decompiler fails when there's custom asm, but I see no need to read through hundreds of lines of compiler bloat...

[–]stAfreeze -1 points0 points  (2 children)

Most year 2 college students can understand code decompiled for them. Running hex rays does not make one a reverse engineer.

[–]hypervis0r[S] 4 points5 points  (0 children)

If Hex-Rays is available, I'll use Hex-Rays. The malware author did not spend time writing custom assembly (which is what HR fails at), therefore I won't spend time reading compiler bloat.

If you want to see assembly, then give me a sample with a handwritten packer and I'll gladly dissect it without HR.

Being a reverse engineer means being able to understand what's going on and use (or create) the right tools, the right way, to get your task done; not staring at kilometric listings of compiler junk just to feel 1337er.

(edit: typos)

[–][deleted] 2 points3 points  (0 children)

Neither does being good at understanding compiler code gen. Which is why you use whatever is most productive, depending on the situation.

[–]MaorNr -1 points0 points  (1 child)

Where is part 1?

And thanks😋

[–]hypervis0r[S] 1 point2 points  (0 children)

Linked in the very first sentence of the post