Disassembly: 
  L1: 55 ?? push ebp
   8b ec ?? mov ebp, esp
   6a ff ?? push 0xff<255,-1>
   68 ef 84 43 00 ?? push 0x004384ef
   64 a1 00 00 00 00 ?? mov eax, dword fs:[0]
   50 ?? push eax
   81 ec b0 00 00 00 ?? sub esp, 0x000000b0<176>
   a1 44 44 44 00 ?? mov eax, dword ds:[0x00444444]
   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
   c7 85 58 ff ff ff 00 00 ?? mov dword ss:[ebp + 0xffffff58<4294967128,-168>], 0
   00 00
   83 7d 08 00 ?? cmp dword ss:[ebp + 8], 0
   0f 84 1d 01 00 00 ?? je basic block L14
  
  L2: 8b 45 08 ?? mov eax, dword ss:[ebp + 8]
   83 38 00 ?? cmp dword ds:[eax], 0
   0f 85 11 01 00 00 ?? jne basic block L14
  
  L3: 6a 18 ?? push 0x18<24>
   e8 7d 39 00 00 ?? call function 0x00409ffc
  
  L4: 83 c4 04 ?? add esp, 4
   89 45 ec ?? mov dword ss:[ebp + 0xec<236,-20>], eax
   c7 45 fc 00 00 00 00 ?? mov dword ss:[ebp + 0xfc<252,-4>], 0
   83 7d ec 00 ?? cmp dword ss:[ebp + 0xec<236,-20>], 0
   0f 84 89 00 00 00 ?? je basic block L9
  
  L5: 6a 01 ?? push 1
   6a 00 ?? push 0
   8d 8d 5c ff ff ff ?? lea ecx, ss:[ebp + 0xffffff5c<4294967132,-164>]
   51 ?? push ecx
   8b 4d 0c ?? mov ecx, dword ss:[ebp + 12]
   e8 3d aa ff ff ?? call function 0x004010e6
  
  L6: 89 85 54 ff ff ff ?? mov dword ss:[ebp + 0xffffff54<4294967124,-172>], eax
   8b 95 54 ff ff ff ?? mov edx, dword ss:[ebp + 0xffffff54<4294967124,-172>]
   89 95 50 ff ff ff ?? mov dword ss:[ebp + 0xffffff50<4294967120,-176>], edx
   c6 45 fc 01 ?? mov byte ss:[ebp + 0xfc<252,-4>], 1
   8b 85 58 ff ff ff ?? mov eax, dword ss:[ebp + 0xffffff58<4294967128,-168>]
   83 c8 01 ?? or eax, 1
   89 85 58 ff ff ff ?? mov dword ss:[ebp + 0xffffff58<4294967128,-168>], eax
   8b 8d 50 ff ff ff ?? mov ecx, dword ss:[ebp + 0xffffff50<4294967120,-176>]
   51 ?? push ecx
   8d 8d 78 ff ff ff ?? lea ecx, ss:[ebp + 0xffffff78<4294967160,-136>]
   e8 37 ab ff ff ?? call function 0x00401217
  
  L7: 89 85 4c ff ff ff ?? mov dword ss:[ebp + 0xffffff4c<4294967116,-180>], eax
   8b 95 4c ff ff ff ?? mov edx, dword ss:[ebp + 0xffffff4c<4294967116,-180>]
   89 95 48 ff ff ff ?? mov dword ss:[ebp + 0xffffff48<4294967112,-184>], edx
   c7 45 fc 02 00 00 00 ?? mov dword ss:[ebp + 0xfc<252,-4>], 2
   8b 85 58 ff ff ff ?? mov eax, dword ss:[ebp + 0xffffff58<4294967128,-168>]
   83 c8 02 ?? or eax, 2
   89 85 58 ff ff ff ?? mov dword ss:[ebp + 0xffffff58<4294967128,-168>], eax
   8b 8d 48 ff ff ff ?? mov ecx, dword ss:[ebp + 0xffffff48<4294967112,-184>]
   51 ?? push ecx
   8b 4d ec ?? mov ecx, dword ss:[ebp + 0xec<236,-20>]
   e8 b6 a9 ff ff ?? call function 0x004010cd
  
  L8: 89 85 44 ff ff ff ?? mov dword ss:[ebp + 0xffffff44<4294967108,-188>], eax
   eb 0a ?? jmp basic block L10
  
  L9: c7 85 44 ff ff ff 00 00 ?? mov dword ss:[ebp + 0xffffff44<4294967108,-188>], 0
   00 00
  
  L10: 8b 95 44 ff ff ff ?? mov edx, dword ss:[ebp + 0xffffff44<4294967108,-188>]
   89 55 f0 ?? mov dword ss:[ebp + 0xf0<240,-16>], edx
   c7 45 fc 04 00 00 00 ?? mov dword ss:[ebp + 0xfc<252,-4>], 4
   8b 45 08 ?? mov eax, dword ss:[ebp + 8]
   8b 4d f0 ?? mov ecx, dword ss:[ebp + 0xf0<240,-16>]
   89 08 ?? mov dword ds:[eax], ecx
   c7 45 fc 03 00 00 00 ?? mov dword ss:[ebp + 0xfc<252,-4>], 3
   8b 95 58 ff ff ff ?? mov edx, dword ss:[ebp + 0xffffff58<4294967128,-168>]
   83 e2 02 ?? and edx, 2
   74 12 ?? je basic block L12
  
  L11: 83 a5 58 ff ff ff fd ?? and dword ss:[ebp + 0xffffff58<4294967128,-168>], 0xfd<253,-3>
   8d 8d 78 ff ff ff ?? lea ecx, ss:[ebp + 0xffffff78<4294967160,-136>]
   e8 cd a8 ff ff ?? call function 0x00401032
  
  L12: c7 45 fc ff ff ff ff ?? mov dword ss:[ebp + 0xfc<252,-4>], 0xffffffff<4294967295,-1>
   8b 85 58 ff ff ff ?? mov eax, dword ss:[ebp + 0xffffff58<4294967128,-168>]
   83 e0 01 ?? and eax, 1
   74 12 ?? je basic block L14
  
  L13: 83 a5 58 ff ff ff fe ?? and dword ss:[ebp + 0xffffff58<4294967128,-168>], 0xfe<254,-2>
   8d 8d 5c ff ff ff ?? lea ecx, ss:[ebp + 0xffffff5c<4294967132,-164>]
   e8 e3 aa ff ff ?? call function 0x0040126c
  
  L14: b8 04 00 00 00 ?? mov eax, 4
   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
   8b e5 ?? mov esp, ebp
   5d ?? pop ebp
   c3 ?? ret
  
  