Disassembly: 
  L1: 8b ff ?? mov edi, edi
   55 ?? push ebp
   8b ec ?? mov ebp, esp
   83 ec 20 ?? sub esp, 0x20<32>
   56 ?? push esi
   33 f6 ?? xor esi, esi
   39 75 0c ?? cmp dword ss:[ebp + 12], esi
   75 1d ?? jne basic block L5
  
  L2: e8 b0 ca ff ff ?? call function 0x0040e097
  
  L3: 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 e0 8b ff ff ?? call function 0x0040a1d7
  
  L4: 83 c4 14 ?? add esp, 0x14<20>
   83 c8 ff ?? or eax, 0xff<255,-1>
   eb 27 ?? jmp basic block L7
  
  L5: ff 75 14 ?? push dword ss:[ebp + 0x14<20>]
   8d 45 e0 ?? lea eax, ss:[ebp + 0xe0<224,-32>]
   ff 75 10 ?? push dword ss:[ebp + 0x10<16>]
   c7 45 e4 ff ff ff 7f ?? mov dword ss:[ebp + 0xe4<228,-28>], 0x7fffffff
   ff 75 0c ?? push dword ss:[ebp + 12]
   c7 45 ec 42 00 00 00 ?? mov dword ss:[ebp + 0xec<236,-20>], 0x00000042<66>
   50 ?? push eax
   89 75 e8 ?? mov dword ss:[ebp + 0xe8<232,-24>], esi
   89 75 e0 ?? mov dword ss:[ebp + 0xe0<224,-32>], esi
   ff 55 08 ?? call dword ss:[ebp + 8]
  
  L6: 83 c4 10 ?? add esp, 0x10<16>
  
  L7: 5e ?? pop esi
   c9 ?? leave
   c3 ?? ret
  
  