Disassembly: 
  L1: a1 58 9c 42 00 ?? mov eax, dword ds:[0x00429c58]
   56 ?? push esi
   8b 35 48 9c 42 00 ?? mov esi, dword ds:[0x00429c48]
   57 ?? push edi
   33 ff ?? xor edi, edi
   3b f0 ?? cmp esi, eax
   75 34 ?? jne basic block L6
  
  L2: 83 c0 10 ?? add eax, 0x10<16>
   6b c0 14 ?? imul eax, eax, 0x14<20>
   50 ?? push eax
   ff 35 4c 9c 42 00 ?? push dword ds:[0x00429c4c]
   57 ?? push edi
   ff 35 0c 99 42 00 ?? push dword ds:[0x0042990c]
   ff 15 80 a2 42 00 ?? call dword ds:[0x0042a280]
  
  L3: 3b c7 ?? cmp eax, edi
   75 04 ?? jne basic block L5
  
  L4: 33 c0 ?? xor eax, eax
   eb 78 ?? jmp basic block L13
  
  L5: 83 05 58 9c 42 00 10 ?? add dword ds:[0x00429c58], 0x10<16>
   8b 35 48 9c 42 00 ?? mov esi, dword ds:[0x00429c48]
   a3 4c 9c 42 00 ?? mov dword ds:[0x00429c4c], eax
  
  L6: 6b f6 14 ?? imul esi, esi, 0x14<20>
   03 35 4c 9c 42 00 ?? add esi, dword ds:[0x00429c4c]
   68 c4 41 00 00 ?? push 0x000041c4<16836>
   6a 08 ?? push 8
   ff 35 0c 99 42 00 ?? push dword ds:[0x0042990c]
   ff 15 f0 a1 42 00 ?? call dword ds:[0x0042a1f0]
  
  L7: 89 46 10 ?? mov dword ds:[esi + 0x10<16>], eax
   3b c7 ?? cmp eax, edi
   74 c7 ?? je basic block L4
  
  L8: 6a 04 ?? push 4
   68 00 20 00 00 ?? push 0x00002000<8192>
   68 00 00 10 00 ?? push 0x00100000
   57 ?? push edi
   ff 15 7c a2 42 00 ?? call dword ds:[0x0042a27c]
  
  L9: 89 46 0c ?? mov dword ds:[esi + 12], eax
   3b c7 ?? cmp eax, edi
   75 12 ?? jne basic block L12
  
  L10: ff 76 10 ?? push dword ds:[esi + 0x10<16>]
   57 ?? push edi
   ff 35 0c 99 42 00 ?? push dword ds:[0x0042990c]
   ff 15 ec a1 42 00 ?? call dword ds:[0x0042a1ec]
  
  L11: eb 9b ?? jmp basic block L4
  
  L12: 83 4e 08 ff ?? or dword ds:[esi + 8], 0xff<255,-1>
   89 3e ?? mov dword ds:[esi], edi
   89 7e 04 ?? mov dword ds:[esi + 4], edi
   ff 05 48 9c 42 00 ?? inc dword ds:[0x00429c48]
   8b 46 10 ?? mov eax, dword ds:[esi + 0x10<16>]
   83 08 ff ?? or dword ds:[eax], 0xff<255,-1>
   8b c6 ?? mov eax, esi
  
  L13: 5f ?? pop edi
   5e ?? pop esi
   c3 ?? ret
  
  