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 f8 ?? mov eax, dword ss:[ebp + 0xf8<248,-8>]
   8b 48 14 ?? mov ecx, dword ds:[eax + 0x14<20>]
   3b 4d 08 ?? cmp ecx, dword ss:[ebp + 8]
   73 05 ?? jae basic block L3
  
  L2: e8 72 29 00 00 ?? call function 0x0040890b
  
  L3: 8b 55 f8 ?? mov edx, dword ss:[ebp + 0xf8<248,-8>]
   a1 e0 d0 43 00 ?? mov eax, dword ds:[0x0043d0e0]
   2b 42 14 ?? sub eax, dword ds:[edx + 0x14<20>]
   3b 45 0c ?? cmp eax, dword ss:[ebp + 12]
   77 05 ?? ja basic block L5
  
  L4: e8 25 29 00 00 ?? call function 0x004088d3
  
  L5: 83 7d 0c 00 ?? cmp dword ss:[ebp + 12], 0
   76 7c ?? jbe basic block L13
  
  L6: 8b 4d f8 ?? mov ecx, dword ss:[ebp + 0xf8<248,-8>]
   8b 51 14 ?? mov edx, dword ds:[ecx + 0x14<20>]
   03 55 0c ?? add edx, dword ss:[ebp + 12]
   89 55 fc ?? mov dword ss:[ebp + 0xfc<252,-4>], edx
   6a 00 ?? push 0
   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 ea b1 ff ff ?? call function 0x004011b8
  
  L7: 0f b6 c8 ?? movzx ecx, al
   85 c9 ?? test ecx, ecx
   74 5b ?? je basic block L13
  
  L8: 8b 55 f8 ?? mov edx, dword ss:[ebp + 0xf8<248,-8>]
   8b 42 14 ?? mov eax, dword ds:[edx + 0x14<20>]
   2b 45 08 ?? sub eax, dword ss:[ebp + 8]
   50 ?? push eax
   8b 4d f8 ?? mov ecx, dword ss:[ebp + 0xf8<248,-8>]
   e8 b4 b0 ff ff ?? call function 0x0040109b
  
  L9: 03 45 08 ?? add eax, dword ss:[ebp + 8]
   50 ?? push eax
   8b 4d f8 ?? mov ecx, dword ss:[ebp + 0xf8<248,-8>]
   8b 51 18 ?? mov edx, dword ds:[ecx + 0x18<24>]
   2b 55 08 ?? sub edx, dword ss:[ebp + 8]
   2b 55 0c ?? sub edx, dword ss:[ebp + 12]
   52 ?? push edx
   8b 4d f8 ?? mov ecx, dword ss:[ebp + 0xf8<248,-8>]
   e8 9b b0 ff ff ?? call function 0x0040109b
  
  L10: 03 45 08 ?? add eax, dword ss:[ebp + 8]
   03 45 0c ?? add eax, dword ss:[ebp + 12]
   50 ?? push eax
   e8 71 b0 ff ff ?? call function 0x0040107d
  
  L11: 83 c4 10 ?? add esp, 0x10<16>
   0f b6 45 10 ?? movzx eax, byte ss:[ebp + 0x10<16>]
   50 ?? push eax
   8b 4d 0c ?? mov ecx, dword ss:[ebp + 12]
   51 ?? push ecx
   8b 55 08 ?? mov edx, dword ss:[ebp + 8]
   52 ?? push edx
   8b 4d f8 ?? mov ecx, dword ss:[ebp + 0xf8<248,-8>]
   e8 f9 b0 ff ff ?? call function 0x0040111d
  
  L12: 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 55 b2 ff ff ?? call function 0x00401285
  
  L13: 8b 45 f8 ?? mov eax, dword ss:[ebp + 0xf8<248,-8>]
   8b e5 ?? mov esp, ebp
   5d ?? pop ebp
   c2 0c 00 ?? ret 12
  
  