Disassembly: 
  L1: 8b ff ?? mov edi, edi
   55 ?? push ebp
   8b ec ?? mov ebp, esp
   56 ?? push esi
   8b f1 ?? mov esi, ecx
   80 7e 04 01 ?? cmp byte ds:[esi + 4], 1
   7f 2d ?? jg basic block L10
  
  L2: 83 3e 00 ?? cmp dword ds:[esi], 0
   8b 45 08 ?? mov eax, dword ss:[ebp + 8]
   74 1f ?? je basic block L9
  
  L3: 83 f8 02 ?? cmp eax, 2
   74 1a ?? je basic block L9
  
  L4: 83 f8 03 ?? cmp eax, 3
   74 15 ?? je basic block L9
  
  L5: 85 c0 ?? test eax, eax
   74 17 ?? je basic block L10
  
  L6: 50 ?? push eax
   e8 12 fa ff ff ?? call function 0x0040977e
  
  L7: 59 ?? pop ecx
   50 ?? push eax
   8b ce ?? mov ecx, esi
   e8 89 fd ff ff ?? call function 0x00409afe
  
  L8: eb 06 ?? jmp basic block L10
  
  L9: 50 ?? push eax
   e8 0d fe ff ff ?? call function 0x00409b8a
  
  L10: 8b c6 ?? mov eax, esi
   5e ?? pop esi
   5d ?? pop ebp
   c2 04 00 ?? ret 4
  
  