Disassembly: 
  L1: 55 ?? push ebp
   8b ec ?? mov ebp, esp
   6a ff ?? push 0xff<255,-1>
   68 b0 49 40 00 ?? push 0x004049b0
   64 a1 00 00 00 00 ?? mov eax, dword fs:[0]
   50 ?? push eax
   53 ?? push ebx
   56 ?? push esi
   57 ?? push edi
   a1 04 80 40 00 ?? mov eax, dword ds:[0x00408004]
   33 c5 ?? xor eax, ebp
   50 ?? push eax
   8d 45 f4 ?? lea eax, ss:[ebp + 0xf4<244,-12>]
   64 a3 00 00 00 00 ?? mov dword fs:[0], eax
   8b f1 ?? mov esi, ecx
   8b 45 08 ?? mov eax, dword ss:[ebp + 8]
   8b f8 ?? mov edi, eax
   83 e7 01 ?? and edi, 1
   a8 02 ?? test al, 2
   74 3f ?? je basic block L7
  
  L2: 68 27 11 40 00 ?? push function 0x00401127
   ff 76 fc ?? push dword ds:[esi + 0xfc<252,-4>]
   8d 5e fc ?? lea ebx, ds:[esi + 0xfc<252,-4>]
   6a 20 ?? push 0x20<32>
   56 ?? push esi
   e8 93 fb ff ff ?? call function 0x004011f9
  
  L3: 85 ff ?? test edi, edi
   74 12 ?? je basic block L6
  
  L4: 8b 0b ?? mov ecx, dword ds:[ebx]
   c1 e1 05 ?? shl ecx, 5
   83 c1 04 ?? add ecx, 4
   51 ?? push ecx
   53 ?? push ebx
   e8 1b fc ff ff ?? call function 0x00401294
  
  L5: 83 c4 08 ?? add esp, 8
  
  L6: 8b c3 ?? mov eax, ebx
   8b 4d f4 ?? mov ecx, dword ss:[ebp + 0xf4<244,-12>]
   64 89 0d 00 00 00 00 ?? mov dword fs:[0], ecx
   59 ?? pop ecx
   5f ?? pop edi
   5e ?? pop esi
   5b ?? pop ebx
   8b e5 ?? mov esp, ebp
   5d ?? pop ebp
   c2 04 00 ?? ret 4
  
  L7: e8 90 fa ff ff ?? call function 0x00401127
  
  L8: 85 ff ?? test edi, edi
   74 0b ?? je basic block L11
  
  L9: 6a 20 ?? push 0x20<32>
   56 ?? push esi
   e8 ad f9 ff ff ?? call function 0x00401050
  
  L10: 83 c4 08 ?? add esp, 8
  
  L11: 8b c6 ?? mov eax, esi
   8b 4d f4 ?? mov ecx, dword ss:[ebp + 0xf4<244,-12>]
   64 89 0d 00 00 00 00 ?? mov dword fs:[0], ecx
   59 ?? pop ecx
   5f ?? pop edi
   5e ?? pop esi
   5b ?? pop ebx
   8b e5 ?? mov esp, ebp
   5d ?? pop ebp
   c2 04 00 ?? ret 4
  
  