Disassembly: 
  L1: 8b ff ?? mov edi, edi
   56 ?? push esi
   8b f1 ?? mov esi, ecx
   83 7e 04 00 ?? cmp dword ds:[esi + 4], 0
   74 1b ?? je basic block L6
  
  L2: eb 0f ?? jmp basic block L5
  
  L3: 8b 46 0c ?? mov eax, dword ds:[esi + 12]
   8b 00 ?? mov eax, dword ds:[eax]
   ff 76 0c ?? push dword ds:[esi + 12]
   89 46 08 ?? mov dword ds:[esi + 8], eax
   ff 56 04 ?? call dword ds:[esi + 4]
  
  L4: 59 ?? pop ecx
  
  L5: 8b 46 08 ?? mov eax, dword ds:[esi + 8]
   89 46 0c ?? mov dword ds:[esi + 12], eax
   85 c0 ?? test eax, eax
   75 e7 ?? jne basic block L3
  
  L6: 5e ?? pop esi
   c3 ?? ret
  
  