Disassembly: 
  L1: 56 ?? push esi
   8b f1 ?? mov esi, ecx
   8b 4e 14 ?? mov ecx, dword ds:[esi + 0x14<20>]
   83 f9 10 ?? cmp ecx, 0x10<16>
   72 27 ?? jb basic block L7
  
  L2: 8b 06 ?? mov eax, dword ds:[esi]
   41 ?? inc ecx
   81 f9 00 10 00 00 ?? cmp ecx, 0x00001000<4096>
   72 12 ?? jb basic block L5
  
  L3: 8b 50 fc ?? mov edx, dword ds:[eax + 0xfc<252,-4>]
   83 c1 23 ?? add ecx, 0x23<35>
   2b c2 ?? sub eax, edx
   83 c0 fc ?? add eax, 0xfc<252,-4>
   83 f8 1f ?? cmp eax, 0x1f<31>
   77 1f ?? ja basic block L8
  
  L4: 8b c2 ?? mov eax, edx
  
  L5: 51 ?? push ecx
   50 ?? push eax
   e8 49 03 00 00 ?? call function 0x00401878
  
  L6: 83 c4 08 ?? add esp, 8
  
  L7: c7 46 10 00 00 00 00 ?? mov dword ds:[esi + 0x10<16>], 0
   c7 46 14 0f 00 00 00 ?? mov dword ds:[esi + 0x14<20>], 15
   c6 06 00 ?? mov byte ds:[esi], 0
   5e ?? pop esi
   c3 ?? ret
  
  L8: ff 15 b0 30 40 00 ?? call dword ds:[0x004030b0<":<@">]
  
  L9: cc ?? int3
  
  L10: cc ?? int3
  
  L11: cc ?? int3
  
  L12: cc ?? int3
  
  L13: cc ?? int3
  
  