Disassembly: 
  L1: 8b ff ?? mov edi, edi
   55 ?? push ebp
   8b ec ?? mov ebp, esp
   51 ?? push ecx
   89 4d fc ?? mov dword ss:[ebp + 0xfc<252,-4>], ecx
   8b 09 ?? mov ecx, dword ds:[ecx]
   56 ?? push esi
   8b 75 08 ?? mov esi, dword ss:[ebp + 8]
   57 ?? push edi
   85 c9 ?? test ecx, ecx
   74 35 ?? je basic block L10
  
  L2: 85 f6 ?? test esi, esi
   75 1b ?? jne basic block L7
  
  L3: 8b 01 ?? mov eax, dword ds:[ecx]
   ff 10 ?? call dword ds:[eax]
  
  L4: 8d 78 01 ?? lea edi, ds:[eax + 1]
   56 ?? push esi
   57 ?? push edi
   b9 d0 64 43 00 ?? mov ecx, 0x004364d0
   e8 eb f9 ff ff ?? call function 0x0041771e
  
  L5: 8b f0 ?? mov esi, eax
   85 f6 ?? test esi, esi
   74 1f ?? je basic block L12
  
  L6: eb 03 ?? jmp basic block L8
  
  L7: 8b 7d 0c ?? mov edi, dword ss:[ebp + 12]
  
  L8: 8b 4d fc ?? mov ecx, dword ss:[ebp + 0xfc<252,-4>]
   8d 44 3e ff ?? lea eax, ds:[esi + edi + 0xff<255,-1>]
   50 ?? push eax
   56 ?? push esi
   e8 52 fb ff ff ?? call function 0x0041789e
  
  L9: c6 00 00 ?? mov byte ds:[eax], 0
   eb 07 ?? jmp basic block L12
  
  L10: 85 f6 ?? test esi, esi
   74 03 ?? je basic block L12
  
  L11: c6 06 00 ?? mov byte ds:[esi], 0
  
  L12: 5f ?? pop edi
   8b c6 ?? mov eax, esi
   5e ?? pop esi
   c9 ?? leave
   c2 08 00 ?? ret 8
  
  