Disassembly: 
  L1: 55 ?? push ebp
   8b ec ?? mov ebp, esp
   83 ec 14 ?? sub esp, 0x14<20>
   a1 78 60 40 00 ?? mov eax, dword ds:[0x00406078]
   83 65 f4 00 ?? and dword ss:[ebp + 0xf4<244,-12>], 0
   83 65 f8 00 ?? and dword ss:[ebp + 0xf8<248,-8>], 0
   56 ?? push esi
   57 ?? push edi
   bf 4e e6 40 bb ?? mov edi, 0xbb40e64e
   be 00 00 ff ff ?? mov esi, 0xffff0000<4294901760,-65536>
   3b c7 ?? cmp eax, edi
   74 0d ?? je basic block L4
  
  L2: 85 c6 ?? test esi, eax
   74 09 ?? je basic block L4
  
  L3: f7 d0 ?? not eax
   a3 7c 60 40 00 ?? mov dword ds:[0x0040607c], eax
   eb 66 ?? jmp basic block L13
  
  L4: 8d 45 f4 ?? lea eax, ss:[ebp + 0xf4<244,-12>]
   50 ?? push eax
   ff 15 5c 71 40 00 ?? call dword ds:[0x0040715c]
  
  L5: 8b 45 f8 ?? mov eax, dword ss:[ebp + 0xf8<248,-8>]
   33 45 f4 ?? xor eax, dword ss:[ebp + 0xf4<244,-12>]
   89 45 fc ?? mov dword ss:[ebp + 0xfc<252,-4>], eax
   ff 15 60 71 40 00 ?? call dword ds:[0x00407160]
  
  L6: 31 45 fc ?? xor dword ss:[ebp + 0xfc<252,-4>], eax
   ff 15 58 71 40 00 ?? call dword ds:[0x00407158]
  
  L7: 31 45 fc ?? xor dword ss:[ebp + 0xfc<252,-4>], eax
   8d 45 ec ?? lea eax, ss:[ebp + 0xec<236,-20>]
   50 ?? push eax
   ff 15 64 71 40 00 ?? call dword ds:[0x00407164]
  
  L8: 8b 4d f0 ?? mov ecx, dword ss:[ebp + 0xf0<240,-16>]
   33 4d ec ?? xor ecx, dword ss:[ebp + 0xec<236,-20>]
   8d 45 fc ?? lea eax, ss:[ebp + 0xfc<252,-4>]
   33 4d fc ?? xor ecx, dword ss:[ebp + 0xfc<252,-4>]
   33 c8 ?? xor ecx, eax
   3b cf ?? cmp ecx, edi
   75 07 ?? jne basic block L10
  
  L9: b9 4f e6 40 bb ?? mov ecx, 0xbb40e64f
   eb 10 ?? jmp basic block L12
  
  L10: 85 ce ?? test esi, ecx
   75 0c ?? jne basic block L12
  
  L11: 8b c1 ?? mov eax, ecx
   0d 11 47 00 00 ?? or eax, 0x00004711<18193>
   c1 e0 10 ?? shl eax, 0x10<16>
   0b c8 ?? or ecx, eax
  
  L12: 89 0d 78 60 40 00 ?? mov dword ds:[0x00406078], ecx
   f7 d1 ?? not ecx
   89 0d 7c 60 40 00 ?? mov dword ds:[0x0040607c], ecx
  
  L13: 5f ?? pop edi
   5e ?? pop esi
   c9 ?? leave
   c3 ?? ret
  
  