Disassembly: 
  L1: 8b ff ?? mov edi, edi
   55 ?? push ebp
   8b ec ?? mov ebp, esp
   56 ?? push esi
   57 ?? push edi
   e8 80 1a 00 00 ?? call function 0x0040c070
  
  L2: 8b 48 70 ?? mov ecx, dword ds:[eax + 0x70<112>]
   f6 c1 02 ?? test cl, 2
   6a 00 ?? push 0
   5a ?? pop edx
   0f 94 c2 ?? sete dl
   42 ?? inc edx
   8b fa ?? mov edi, edx
   8b 55 08 ?? mov edx, dword ss:[ebp + 8]
   83 fa ff ?? cmp edx, 0xff<255,-1>
   74 3a ?? je basic block L12
  
  L3: 33 f6 ?? xor esi, esi
   3b d6 ?? cmp edx, esi
   74 3b ?? je basic block L13
  
  L4: 83 fa 01 ?? cmp edx, 1
   74 27 ?? je basic block L10
  
  L5: 83 fa 02 ?? cmp edx, 2
   74 1d ?? je basic block L9
  
  L6: e8 d0 21 00 00 ?? call function 0x0040c7ec
  
  L7: 56 ?? push esi
   56 ?? push esi
   56 ?? push esi
   56 ?? push esi
   56 ?? push esi
   c7 00 16 00 00 00 ?? mov dword ds:[eax], 0x00000016<22>
   e8 b4 c2 ff ff ?? call function 0x004068e0
  
  L8: 83 c4 14 ?? add esp, 0x14<20>
   83 c8 ff ?? or eax, 0xff<255,-1>
   eb 16 ?? jmp basic block L14
  
  L9: 83 e1 fd ?? and ecx, 0xfd<253,-3>
   eb 03 ?? jmp basic block L11
  
  L10: 83 c9 02 ?? or ecx, 2
  
  L11: 89 48 70 ?? mov dword ds:[eax + 0x70<112>], ecx
   eb 07 ?? jmp basic block L13
  
  L12: 83 0d 30 50 43 00 ff ?? or dword ds:[0x00435030], 0xff<255,-1>
  
  L13: 8b c7 ?? mov eax, edi
  
  L14: 5f ?? pop edi
   5e ?? pop esi
   5d ?? pop ebp
   c3 ?? ret
  
  