# Course 33 - Static Analysis for Reverse Engineering | Episode 5: Register Fundamentals, Graphical Analysis, and the Easy Peasy Solution Page: https://stenobird.com/podcast/cybercode-academy-7578615/course-33-static-analysis-for-reverse-engineering-episode-5-register-fundamentals-graphical-analysis-and-the-easy-peasy-solution Text version: https://stenobird.com/podcast/cybercode-academy-7578615/course-33-static-analysis-for-reverse-engineering-episode-5-register-fundamentals-graphical-analysis-and-the-easy-peasy-solution.md Podcast: [CyberCode Academy](https://stenobird.com/podcast/cybercode-academy-7578615) Published: 2026-05-17T06:00:02+00:00 Episode link: https://www.spreaker.com/episode/course-33-static-analysis-for-reverse-engineering-episode-5-register-fundamentals-graphical-analysis-and-the-easy-peasy-solution--71927871 Audio file: https://dts.podtrac.com/redirect.mp3/api.spreaker.com/download/episode/71927871/cracking_64_bit_software_via_registers.mp3 Processing state: not_requested JSON: https://stenobird.com/v1/public/podcasts/cybercode-academy-7578615/episodes/course-33-static-analysis-for-reverse-engineering-episode-5-register-fundamentals-graphical-analysis-and-the-easy-peasy-solution Duration seconds: 1205 ## Resource In this lesson, you’ll learn about: cracking 64-bit software and understanding architectural differences1. Transition from 32-bit to 64-bit🔹 Register Naming Changes 32-bit: EAX, EBX, ECX 64-bit: RAX, RBX, RCX 🔹 New Registers Additional registers introduced: R8 → R15 👉 These give you: More space for data handling More efficient execution 2. Key Difference: Parameter Passing🔹 32-bit Systems Arguments passed via: Stack 🔹 64-bit Systems Arguments passed via: Registers (faster & cleaner) 🔹 Common Calling Convention (Important) First parameters usually go into: RCX RDX R8 R9 👉 This changes how you: Trace function calls Identify input comparisons 3. Identifying a 64-bit Binary Use tools like: Detect It Easy Look for: PE64 format 4. Practical Analysis WorkflowUsing: x64dbg 🔹 Step 1: Find Key Strings Search for: “Wrong password” “Access denied” 👉 Leads you to: Validation functions 🔹 Step 2: Use Graph View (CFG)** Press: G This shows: Decision branches Logic flow 🔹 Step 3: Locate Decision Points Identify: Comparisons (CMP) Conditional jumps (JE, JNE, etc.) 🔹 Step 4: Trace Credentials** Follow: Register values (NOT stack like before) 👉 Look inside: RCX / RDX / R8 / R9 5. “Fishing” for Credentials Track how input is compared against: Hardcoded values Stored strings 👉 Often you’ll find: Correct username/password directly in registers 6. Essential x64dbg Graph Shortcuts🔹 Navigation & Simulation Enter Follow a branch - (Minus) Go back 🔹 Synchronization S key Return to origin of graph 🔹 Trace Recording Highlights: Actual execution path 👉 Helps you see: What REALLY happens during runtime Key Takeaways 64-bit = new registers + new workflow Parameters are passed via registers, not stack CFG makes logic easier to understand Credential checks are still: Comparisons + jumps Core cra… ## Actions - request_transcript: `POST https://stenobird.com/v1/public/podcasts/cybercode-academy-7578615/episodes/course-33-static-analysis-for-reverse-engineering-episode-5-register-fundamentals-graphical-analysis-and-the-easy-peasy-solution/transcription-requests` — Idempotently request low-priority transcript generation for this episode. - read_markdown: `GET https://stenobird.com/podcast/cybercode-academy-7578615/course-33-static-analysis-for-reverse-engineering-episode-5-register-fundamentals-graphical-analysis-and-the-easy-peasy-solution.md` — Read the agent-friendly Markdown representation of this episode resource. A page view does not enqueue transcription. Agents should invoke `request_transcript` explicitly when they need this episode processed. ## Transcript Full transcripts are not published on public pages unless there is a clear rights basis.