Disassembly: 
  L1: 8b ff ?? mov edi, edi
   55 ?? push ebp
   8b ec ?? mov ebp, esp
   53 ?? push ebx
   8b 5d 08 ?? mov ebx, dword ss:[ebp + 8]
   56 ?? push esi
   8b 75 0c ?? mov esi, dword ss:[ebp + 12]
   57 ?? push edi
   8b f9 ?? mov edi, ecx
   83 27 00 ?? and dword ds:[edi], 0
   85 f6 ?? test esi, esi
   74 29 ?? je basic block L10
  
  L2: 85 db ?? test ebx, ebx
   74 25 ?? je basic block L10
  
  L3: 8b 56 18 ?? mov edx, dword ds:[esi + 0x18<24>]
   8d 46 04 ?? lea eax, ds:[esi + 4]
   83 fa 10 ?? cmp edx, 0x10<16>
   72 04 ?? jb basic block L5
  
  L4: 8b 08 ?? mov ecx, dword ds:[eax]
   eb 02 ?? jmp basic block L6
  
  L5: 8b c8 ?? mov ecx, eax
  
  L6: 3b cb ?? cmp ecx, ebx
   77 10 ?? ja basic block L10
  
  L7: 83 fa 10 ?? cmp edx, 0x10<16>
   72 02 ?? jb basic block L9
  
  L8: 8b 00 ?? mov eax, dword ds:[eax]
  
  L9: 8b 4e 14 ?? mov ecx, dword ds:[esi + 0x14<20>]
   03 c8 ?? add ecx, eax
   3b d9 ?? cmp ebx, ecx
   76 05 ?? jbe basic block L11
  
  L10: e8 14 2d 00 00 ?? call function 0x004069e6
  
  L11: 89 37 ?? mov dword ds:[edi], esi
   89 5f 04 ?? mov dword ds:[edi + 4], ebx
   8b c7 ?? mov eax, edi
   5f ?? pop edi
   5e ?? pop esi
   5b ?? pop ebx
   5d ?? pop ebp
   c2 08 00 ?? ret 8
  
  