Disassembly: 
  L1: 83 3e 01 ?? cmp dword ds:[esi], 1
   8b 0f ?? mov ecx, dword ds:[edi]
   53 ?? push ebx
   76 19 ?? jbe basic block L4
  
  L2: 6a 0a ?? push 10
   99 ?? cdq
   5b ?? pop ebx
   f7 fb ?? idiv ebx
   80 c2 30 ?? add dl, 0x30<48>
   88 11 ?? mov byte ds:[ecx], dl
   41 ?? inc ecx
   ff 0e ?? dec dword ds:[esi]
   8b 16 ?? mov edx, dword ds:[esi]
   85 c0 ?? test eax, eax
   7e 05 ?? jle basic block L4
  
  L3: 83 fa 01 ?? cmp edx, 1
   77 e7 ?? ja basic block L2
  
  L4: 8b 07 ?? mov eax, dword ds:[edi]
   89 0f ?? mov dword ds:[edi], ecx
   49 ?? dec ecx
  
  L5: 8a 18 ?? mov bl, byte ds:[eax]
   8a 11 ?? mov dl, byte ds:[ecx]
   88 19 ?? mov byte ds:[ecx], bl
   49 ?? dec ecx
   88 10 ?? mov byte ds:[eax], dl
   40 ?? inc eax
   3b c1 ?? cmp eax, ecx
  
  L6: 72 f2 ?? jb basic block L5
  
  L7: 5b ?? pop ebx
   c3 ?? ret
  
  