Disassembly: 
  L1: 55 ?? push ebp
   8b ec ?? mov ebp, esp
   51 ?? push ecx
   8b 55 10 ?? mov edx, dword ss:[ebp + 0x10<16>]
   8b 4d 0c ?? mov ecx, dword ss:[ebp + 12]
   53 ?? push ebx
   56 ?? push esi
   57 ?? push edi
   8b 7d 08 ?? mov edi, dword ss:[ebp + 8]
   33 f6 ?? xor esi, esi
   2b d7 ?? sub edx, edi
   89 55 10 ?? mov dword ss:[ebp + 0x10<16>], edx
  
  L2: 8b 45 14 ?? mov eax, dword ss:[ebp + 0x14<20>]
   89 4d fc ?? mov dword ss:[ebp + 0xfc<252,-4>], ecx
   83 f8 10 ?? cmp eax, 0x10<16>
   72 05 ?? jb basic block L4
  
  L3: b8 10 00 00 00 ?? mov eax, 0x00000010<16>
  
  L4: 3b f0 ?? cmp esi, eax
   73 25 ?? jae basic block L7
  
  L5: 8a 1c 3a ?? mov bl, byte ds:[edx + edi]
   0f b6 c3 ?? movzx eax, bl
   50 ?? push eax
   68 e8 6d 40 00 ?? push 0x00406de8<"%.2X ">
   51 ?? push ecx
   ff 15 88 94 40 00 ?? call dword ds:[0x00409488]
  
  L6: 8b 4d fc ?? mov ecx, dword ss:[ebp + 0xfc<252,-4>]
   8b 55 10 ?? mov edx, dword ss:[ebp + 0x10<16>]
   83 c4 0c ?? add esp, 12
   88 1f ?? mov byte ds:[edi], bl
   46 ?? inc esi
   83 c1 03 ?? add ecx, 3
   47 ?? inc edi
   eb c7 ?? jmp basic block L2
  
  L7: 8b 45 08 ?? mov eax, dword ss:[ebp + 8]
   5f ?? pop edi
   c6 04 06 00 ?? mov byte ds:[esi + eax], 0
   8b 45 0c ?? mov eax, dword ss:[ebp + 12]
   8d 04 70 ?? lea eax, ds:[eax + esi * 2]
   c6 04 06 00 ?? mov byte ds:[esi + eax], 0
   5e ?? pop esi
   5b ?? pop ebx
   8b e5 ?? mov esp, ebp
   5d ?? pop ebp
   c3 ?? ret
  
  