Disassembly: 
  L1: 55 ?? push ebp
   8b ec ?? mov ebp, esp
   83 ec 20 ?? sub esp, 0x20<32>
   b8 cc cc cc cc ?? mov eax, 0xcccccccc
   89 45 e0 ?? mov dword ss:[ebp + 0xe0<224,-32>], eax
   89 45 e4 ?? mov dword ss:[ebp + 0xe4<228,-28>], eax
   89 45 e8 ?? mov dword ss:[ebp + 0xe8<232,-24>], eax
   89 45 ec ?? mov dword ss:[ebp + 0xec<236,-20>], eax
   89 45 f0 ?? mov dword ss:[ebp + 0xf0<240,-16>], eax
   89 45 f4 ?? mov dword ss:[ebp + 0xf4<244,-12>], eax
   89 45 f8 ?? mov dword ss:[ebp + 0xf8<248,-8>], eax
   89 45 fc ?? mov dword ss:[ebp + 0xfc<252,-4>], eax
   89 4d fc ?? mov dword ss:[ebp + 0xfc<252,-4>], ecx
   8b 4d fc ?? mov ecx, dword ss:[ebp + 0xfc<252,-4>]
   e8 aa e2 ff ff ?? call function 0x004013e8
  
  L2: 89 45 f8 ?? mov dword ss:[ebp + 0xf8<248,-8>], eax
   8b 4d fc ?? mov ecx, dword ss:[ebp + 0xfc<252,-4>]
   e8 24 e0 ff ff ?? call function 0x0040116d
  
  L3: 89 45 f4 ?? mov dword ss:[ebp + 0xf4<244,-12>], eax
   8b 45 08 ?? mov eax, dword ss:[ebp + 8]
   83 c8 0f ?? or eax, 15
   89 45 ec ?? mov dword ss:[ebp + 0xec<236,-20>], eax
   8b 4d ec ?? mov ecx, dword ss:[ebp + 0xec<236,-20>]
   3b 4d f8 ?? cmp ecx, dword ss:[ebp + 0xf8<248,-8>]
   76 05 ?? jbe basic block L5
  
  L4: 8b 45 f8 ?? mov eax, dword ss:[ebp + 0xf8<248,-8>]
   eb 3a ?? jmp basic block L9
  
  L5: 8b 55 f4 ?? mov edx, dword ss:[ebp + 0xf4<244,-12>]
   8b 42 18 ?? mov eax, dword ds:[edx + 0x18<24>]
   89 45 e4 ?? mov dword ss:[ebp + 0xe4<228,-28>], eax
   8b 4d e4 ?? mov ecx, dword ss:[ebp + 0xe4<228,-28>]
   d1 e9 ?? shr ecx, 1
   8b 55 f8 ?? mov edx, dword ss:[ebp + 0xf8<248,-8>]
   2b d1 ?? sub edx, ecx
   39 55 e4 ?? cmp dword ss:[ebp + 0xe4<228,-28>], edx
   76 05 ?? jbe basic block L7
  
  L6: 8b 45 f8 ?? mov eax, dword ss:[ebp + 0xf8<248,-8>]
   eb 1d ?? jmp basic block L9
  
  L7: 8b 45 e4 ?? mov eax, dword ss:[ebp + 0xe4<228,-28>]
   d1 e8 ?? shr eax, 1
   03 45 e4 ?? add eax, dword ss:[ebp + 0xe4<228,-28>]
   89 45 e0 ?? mov dword ss:[ebp + 0xe0<224,-32>], eax
   8d 4d e0 ?? lea ecx, ss:[ebp + 0xe0<224,-32>]
   51 ?? push ecx
   8d 55 ec ?? lea edx, ss:[ebp + 0xec<236,-20>]
   52 ?? push edx
   e8 2e e2 ff ff ?? call function 0x004013c5
  
  L8: 83 c4 08 ?? add esp, 8
   8b 00 ?? mov eax, dword ds:[eax]
  
  L9: 52 ?? push edx
   8b cd ?? mov ecx, ebp
   50 ?? push eax
   8d 15 c0 31 40 00 ?? lea edx, ds:[0x004031c0]
   e8 34 e1 ff ff ?? call function 0x004012df
  
  L10: 58 ?? pop eax
   5a ?? pop edx
   83 c4 20 ?? add esp, 0x20<32>
   3b ec ?? cmp ebp, esp
   e8 f6 e0 ff ff ?? call function 0x004012ad
  
  L11: 8b e5 ?? mov esp, ebp
   5d ?? pop ebp
   c2 04 00 ?? ret 4
  
  