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
   57 ?? push edi
   8b f9 ?? mov edi, ecx
   3b fb ?? cmp edi, ebx
   74 41 ?? je basic block L11
  
  L2: 8b 43 08 ?? mov eax, dword ds:[ebx + 8]
   89 47 08 ?? mov dword ds:[edi + 8], eax
   85 c0 ?? test eax, eax
   8b 43 04 ?? mov eax, dword ds:[ebx + 4]
   74 31 ?? je basic block L10
  
  L3: 85 c0 ?? test eax, eax
   74 27 ?? je basic block L9
  
  L4: 50 ?? push eax
   e8 de 4c 00 00 ?? call function 0x00407570
  
  L5: 8b f0 ?? mov esi, eax
   46 ?? inc esi
   56 ?? push esi
   e8 97 04 00 00 ?? call function 0x00402d32
  
  L6: 59 ?? pop ecx
   59 ?? pop ecx
   89 47 04 ?? mov dword ds:[edi + 4], eax
   85 c0 ?? test eax, eax
   74 18 ?? je basic block L11
  
  L7: ff 73 04 ?? push dword ds:[ebx + 4]
   56 ?? push esi
   50 ?? push eax
   e8 4f 4c 00 00 ?? call function 0x004074fd
  
  L8: 83 c4 0c ?? add esp, 12
   eb 09 ?? jmp basic block L11
  
  L9: 83 67 04 00 ?? and dword ds:[edi + 4], 0
   eb 03 ?? jmp basic block L11
  
  L10: 89 47 04 ?? mov dword ds:[edi + 4], eax
  
  L11: 8b c7 ?? mov eax, edi
   5f ?? pop edi
   5e ?? pop esi
   5b ?? pop ebx
   5d ?? pop ebp
   c2 04 00 ?? ret 4
  
  