Disassembly: 
  L1: 55 ?? push ebp
   8b ec ?? mov ebp, esp
   6a ff ?? push 0xff<255,-1>
   68 ad 4a 40 00 ?? push 0x00404aad
   64 a1 00 00 00 00 ?? mov eax, dword fs:[0]
   50 ?? push eax
   83 ec 18 ?? sub esp, 0x18<24>
   56 ?? push esi
   a1 04 80 40 00 ?? mov eax, dword ds:[0x00408004]
   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
   66 a1 ac 6b 40 00 ?? mov ax, word ds:[0x00406bac<"bar">]
   0f 57 c0 ?? xorps xmm0, xmm0
   0f 11 45 dc ?? movups v4float ss:[ebp + 0xdc<220,-36>], xmm0
   66 89 45 dc ?? mov word ss:[ebp + 0xdc<220,-36>], ax
   b9 0f 00 00 00 ?? mov ecx, 15
   a0 ae 6b 40 00 ?? mov al, byte ds:[0x00406bae<"r">]
   c7 45 ec 03 00 00 00 ?? mov dword ss:[ebp + 0xec<236,-20>], 3
   89 4d f0 ?? mov dword ss:[ebp + 0xf0<240,-16>], ecx
   88 45 de ?? mov byte ss:[ebp + 0xde<222,-34>], al
   c6 45 df 00 ?? mov byte ss:[ebp + 0xdf<223,-33>], 0
   8b 45 0c ?? mov eax, dword ss:[ebp + 12]
   33 f6 ?? xor esi, esi
   0f af 45 08 ?? imul eax, dword ss:[ebp + 8]
   c7 45 fc 00 00 00 00 ?? mov dword ss:[ebp + 0xfc<252,-4>], 0
   85 c0 ?? test eax, eax
   7e 2e ?? jle basic block L6
  
  L2: 68 28 10 40 00 ?? push 0x00401028
   8d 45 dc ?? lea eax, ss:[ebp + 0xdc<220,-36>]
   50 ?? push eax
   ff 35 78 90 40 00 ?? push dword ds:[0x00409078]
   e8 b2 f4 ff ff ?? call function 0x004011cc
  
  L3: 83 c4 08 ?? add esp, 8
   8b c8 ?? mov ecx, eax
   ff 15 68 90 40 00 ?? call dword ds:[function 0x00409068]
  
  L4: 8b 45 0c ?? mov eax, dword ss:[ebp + 12]
   46 ?? inc esi
   0f af 45 08 ?? imul eax, dword ss:[ebp + 8]
   3b f0 ?? cmp esi, eax
   7c d5 ?? jl basic block L2
  
  L5: 8b 4d f0 ?? mov ecx, dword ss:[ebp + 0xf0<240,-16>]
  
  L6: 83 f9 10 ?? cmp ecx, 0x10<16>
   72 2e ?? jb basic block L12
  
  L7: 8b 55 dc ?? mov edx, dword ss:[ebp + 0xdc<220,-36>]
   41 ?? inc ecx
   8b c2 ?? mov eax, edx
   81 f9 00 10 00 00 ?? cmp ecx, 0x00001000<4096>
   72 16 ?? jb basic block L10
  
  L8: 8b 50 fc ?? mov edx, dword ds:[eax + 0xfc<252,-4>]
   83 c1 23 ?? add ecx, 0x23<35>
   2b c2 ?? sub eax, edx
   83 c0 fc ?? add eax, 0xfc<252,-4>
   83 f8 1f ?? cmp eax, 0x1f<31>
   76 06 ?? jbe basic block L10
  
  L9: ff 15 20 92 40 00 ?? call dword ds:[0x00409220]
  
  L10: 51 ?? push ecx
   52 ?? push edx
   e8 f6 f2 ff ff ?? call function 0x0040105a
  
  L11: 83 c4 08 ?? add esp, 8
  
  L12: 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
   5e ?? pop esi
   8b e5 ?? mov esp, ebp
   5d ?? pop ebp
   c3 ?? ret
  
  