Disassembly: 
  L1: 55 ?? push ebp
   8b ec ?? mov ebp, esp
   83 ec 08 ?? sub esp, 8
   89 4d f8 ?? mov dword ss:[ebp + 0xf8<248,-8>], ecx
   8b 45 08 ?? mov eax, dword ss:[ebp + 8]
   50 ?? push eax
   8b 4d f8 ?? mov ecx, dword ss:[ebp + 0xf8<248,-8>]
   e8 13 b4 ff ff ?? call function 0x00401208
  
  L2: 0f b6 c8 ?? movzx ecx, al
   85 c9 ?? test ecx, ecx
   74 23 ?? je basic block L6
  
  L3: 8b 55 0c ?? mov edx, dword ss:[ebp + 12]
   52 ?? push edx
   8b 4d f8 ?? mov ecx, dword ss:[ebp + 0xf8<248,-8>]
   e8 93 b2 ff ff ?? call function 0x0040109b
  
  L4: 8b 4d 08 ?? mov ecx, dword ss:[ebp + 8]
   2b c8 ?? sub ecx, eax
   51 ?? push ecx
   8b 55 f8 ?? mov edx, dword ss:[ebp + 0xf8<248,-8>]
   52 ?? push edx
   8b 4d f8 ?? mov ecx, dword ss:[ebp + 0xf8<248,-8>]
   e8 43 b4 ff ff ?? call function 0x0040125d
  
  L5: e9 89 00 00 00 ?? jmp basic block L16
  
  L6: 8b 45 f8 ?? mov eax, dword ss:[ebp + 0xf8<248,-8>]
   8b 0d e0 d0 43 00 ?? mov ecx, dword ds:[0x0043d0e0]
   2b 48 14 ?? sub ecx, dword ds:[eax + 0x14<20>]
   3b 4d 0c ?? cmp ecx, dword ss:[ebp + 12]
   76 11 ?? jbe basic block L8
  
  L7: 8b 55 f8 ?? mov edx, dword ss:[ebp + 0xf8<248,-8>]
   8b 42 14 ?? mov eax, dword ds:[edx + 0x14<20>]
   03 45 0c ?? add eax, dword ss:[ebp + 12]
   8b 4d f8 ?? mov ecx, dword ss:[ebp + 0xf8<248,-8>]
   3b 41 14 ?? cmp eax, dword ds:[ecx + 0x14<20>]
   73 05 ?? jae basic block L9
  
  L8: e8 8d 2a 00 00 ?? call function 0x004088d3
  
  L9: 83 7d 0c 00 ?? cmp dword ss:[ebp + 12], 0
   76 59 ?? jbe basic block L15
  
  L10: 8b 55 f8 ?? mov edx, dword ss:[ebp + 0xf8<248,-8>]
   8b 42 14 ?? mov eax, dword ds:[edx + 0x14<20>]
   03 45 0c ?? add eax, dword ss:[ebp + 12]
   89 45 fc ?? mov dword ss:[ebp + 0xfc<252,-4>], eax
   6a 00 ?? push 0
   8b 4d fc ?? mov ecx, dword ss:[ebp + 0xfc<252,-4>]
   51 ?? push ecx
   8b 4d f8 ?? mov ecx, dword ss:[ebp + 0xf8<248,-8>]
   e8 52 b3 ff ff ?? call function 0x004011b8
  
  L11: 0f b6 d0 ?? movzx edx, al
   85 d2 ?? test edx, edx
   74 38 ?? je basic block L15
  
  L12: 8b 45 0c ?? mov eax, dword ss:[ebp + 12]
   50 ?? push eax
   8b 4d 08 ?? mov ecx, dword ss:[ebp + 8]
   51 ?? push ecx
   8b 55 f8 ?? mov edx, dword ss:[ebp + 0xf8<248,-8>]
   8b 45 f8 ?? mov eax, dword ss:[ebp + 0xf8<248,-8>]
   8b 4a 18 ?? mov ecx, dword ds:[edx + 0x18<24>]
   2b 48 14 ?? sub ecx, dword ds:[eax + 0x14<20>]
   51 ?? push ecx
   8b 4d f8 ?? mov ecx, dword ss:[ebp + 0xf8<248,-8>]
   e8 11 b2 ff ff ?? call function 0x0040109b
  
  L13: 8b 55 f8 ?? mov edx, dword ss:[ebp + 0xf8<248,-8>]
   03 42 14 ?? add eax, dword ds:[edx + 0x14<20>]
   50 ?? push eax
   e8 9e b4 ff ff ?? call function 0x00401334
  
  L14: 83 c4 10 ?? add esp, 0x10<16>
   8b 45 fc ?? mov eax, dword ss:[ebp + 0xfc<252,-4>]
   50 ?? push eax
   8b 4d f8 ?? mov ecx, dword ss:[ebp + 0xf8<248,-8>]
   e8 e0 b3 ff ff ?? call function 0x00401285
  
  L15: 8b 45 f8 ?? mov eax, dword ss:[ebp + 0xf8<248,-8>]
  
  L16: 8b e5 ?? mov esp, ebp
   5d ?? pop ebp
   c2 08 00 ?? ret 8
  
  