Disassembly: 
  L1: 8b ff ?? mov edi, edi
   55 ?? push ebp
   8b ec ?? mov ebp, esp
   53 ?? push ebx
   33 db ?? xor ebx, ebx
   39 5d 10 ?? cmp dword ss:[ebp + 0x10<16>], ebx
   75 1d ?? jne basic block L5
  
  L2: e8 cb c8 ff ff ?? call function 0x0040e097
  
  L3: 53 ?? push ebx
   53 ?? push ebx
   53 ?? push ebx
   53 ?? push ebx
   53 ?? push ebx
   c7 00 16 00 00 00 ?? mov dword ds:[eax], 0x00000016<22>
   e8 fb 89 ff ff ?? call function 0x0040a1d7
  
  L4: 83 c4 14 ?? add esp, 0x14<20>
   83 c8 ff ?? or eax, 0xff<255,-1>
   eb 5b ?? jmp basic block L18
  
  L5: 56 ?? push esi
   8b 75 08 ?? mov esi, dword ss:[ebp + 8]
   3b f3 ?? cmp esi, ebx
   74 05 ?? je basic block L7
  
  L6: 39 5d 0c ?? cmp dword ss:[ebp + 12], ebx
   77 0d ?? ja basic block L9
  
  L7: e8 a1 c8 ff ff ?? call function 0x0040e097
  
  L8: c7 00 16 00 00 00 ?? mov dword ds:[eax], 0x00000016<22>
   eb 30 ?? jmp basic block L15
  
  L9: ff 75 18 ?? push dword ss:[ebp + 0x18<24>]
   ff 75 14 ?? push dword ss:[ebp + 0x14<20>]
   ff 75 10 ?? push dword ss:[ebp + 0x10<16>]
   ff 75 0c ?? push dword ss:[ebp + 12]
   56 ?? push esi
   68 96 43 42 00 ?? push function 0x00424396
   e8 86 fe ff ff ?? call function 0x0041169b
  
  L10: 83 c4 18 ?? add esp, 0x18<24>
   3b c3 ?? cmp eax, ebx
   7d 02 ?? jge basic block L12
  
  L11: 88 1e ?? mov byte ds:[esi], bl
  
  L12: 83 f8 fe ?? cmp eax, 0xfe<254,-2>
   75 1b ?? jne basic block L17
  
  L13: e8 6f c8 ff ff ?? call function 0x0040e097
  
  L14: c7 00 22 00 00 00 ?? mov dword ds:[eax], 0x00000022<34>
  
  L15: 53 ?? push ebx
   53 ?? push ebx
   53 ?? push ebx
   53 ?? push ebx
   53 ?? push ebx
   e8 9f 89 ff ff ?? call function 0x0040a1d7
  
  L16: 83 c4 14 ?? add esp, 0x14<20>
   83 c8 ff ?? or eax, 0xff<255,-1>
  
  L17: 5e ?? pop esi
  
  L18: 5b ?? pop ebx
   5d ?? pop ebp
   c3 ?? ret
  
  