Disassembly: 
  L1: 55 ?? push ebp
   8b ec ?? mov ebp, esp
   56 ?? push esi
   8b f1 ?? mov esi, ecx
   8b 4d 08 ?? mov ecx, dword ss:[ebp + 8]
   57 ?? push edi
   8b 7e 10 ?? mov edi, dword ds:[esi + 0x10<16>]
   3b f9 ?? cmp edi, ecx
   73 0b ?? jae basic block L3
  
  L2: 68 48 6b 40 00 ?? push 0x00406b48<"invalid string position">
   ff 15 90 90 40 00 ?? call dword ds:[0x00409090]
  
  L3: 8b 55 0c ?? mov edx, dword ss:[ebp + 12]
   8b c7 ?? mov eax, edi
   2b c1 ?? sub eax, ecx
   3b c2 ?? cmp eax, edx
   77 23 ?? ja basic block L7
  
  L4: 89 4e 10 ?? mov dword ds:[esi + 0x10<16>], ecx
   83 7e 14 10 ?? cmp dword ds:[esi + 0x14<20>], 0x10<16>
   72 0e ?? jb basic block L6
  
  L5: 8b 06 ?? mov eax, dword ds:[esi]
   5f ?? pop edi
   c6 04 08 00 ?? mov byte ds:[eax + ecx], 0
   8b c6 ?? mov eax, esi
   5e ?? pop esi
   5d ?? pop ebp
   c2 08 00 ?? ret 8
  
  L6: 8b c6 ?? mov eax, esi
   5f ?? pop edi
   5e ?? pop esi
   c6 04 08 00 ?? mov byte ds:[eax + ecx], 0
   5d ?? pop ebp
   c2 08 00 ?? ret 8
  
  L7: 85 d2 ?? test edx, edx
   74 45 ?? je basic block L17
  
  L8: 83 7e 14 10 ?? cmp dword ds:[esi + 0x14<20>], 0x10<16>
   72 04 ?? jb basic block L10
  
  L9: 8b 06 ?? mov eax, dword ds:[esi]
   eb 02 ?? jmp basic block L11
  
  L10: 8b c6 ?? mov eax, esi
  
  L11: 2b fa ?? sub edi, edx
   53 ?? push ebx
   8d 1c 08 ?? lea ebx, ds:[eax + ecx]
   8b c7 ?? mov eax, edi
   2b c1 ?? sub eax, ecx
   74 0f ?? je basic block L14
  
  L12: 50 ?? push eax
   8d 04 13 ?? lea eax, ds:[ebx + edx]
   50 ?? push eax
   53 ?? push ebx
   ff 15 f8 90 40 00 ?? call dword ds:[0x004090f8]
  
  L13: 83 c4 0c ?? add esp, 12
  
  L14: 83 7e 14 10 ?? cmp dword ds:[esi + 0x14<20>], 0x10<16>
   89 7e 10 ?? mov dword ds:[esi + 0x10<16>], edi
   5b ?? pop ebx
   72 0e ?? jb basic block L16
  
  L15: 8b 06 ?? mov eax, dword ds:[esi]
   c6 04 38 00 ?? mov byte ds:[eax + edi], 0
   8b c6 ?? mov eax, esi
   5f ?? pop edi
   5e ?? pop esi
   5d ?? pop ebp
   c2 08 00 ?? ret 8
  
  L16: 8b c6 ?? mov eax, esi
   c6 04 38 00 ?? mov byte ds:[eax + edi], 0
  
  L17: 5f ?? pop edi
   8b c6 ?? mov eax, esi
   5e ?? pop esi
   5d ?? pop ebp
   c2 08 00 ?? ret 8
  
  