Disassembly: 
  L1: 55 ?? push ebp
   8b ec ?? mov ebp, esp
   83 ec 0c ?? sub esp, 12
   8b 45 0c ?? mov eax, dword ss:[ebp + 12]
   89 45 fc ?? mov dword ss:[ebp + 0xfc<252,-4>], eax
   8b 4d fc ?? mov ecx, dword ss:[ebp + 0xfc<252,-4>]
   c6 01 25 ?? mov byte ds:[ecx], 0x25<37>
   8b 55 fc ?? mov edx, dword ss:[ebp + 0xfc<252,-4>]
   83 c2 01 ?? add edx, 1
   89 55 fc ?? mov dword ss:[ebp + 0xfc<252,-4>], edx
   8b 45 14 ?? mov eax, dword ss:[ebp + 0x14<20>]
   83 e0 20 ?? and eax, 0x20<32>
   74 0f ?? je basic block L3
  
  L2: 8b 4d fc ?? mov ecx, dword ss:[ebp + 0xfc<252,-4>]
   c6 01 2b ?? mov byte ds:[ecx], 0x2b<43>
   8b 55 fc ?? mov edx, dword ss:[ebp + 0xfc<252,-4>]
   83 c2 01 ?? add edx, 1
   89 55 fc ?? mov dword ss:[ebp + 0xfc<252,-4>], edx
  
  L3: 8b 45 14 ?? mov eax, dword ss:[ebp + 0x14<20>]
   83 e0 08 ?? and eax, 8
   74 0f ?? je basic block L5
  
  L4: 8b 4d fc ?? mov ecx, dword ss:[ebp + 0xfc<252,-4>]
   c6 01 23 ?? mov byte ds:[ecx], 0x23<35>
   8b 55 fc ?? mov edx, dword ss:[ebp + 0xfc<252,-4>]
   83 c2 01 ?? add edx, 1
   89 55 fc ?? mov dword ss:[ebp + 0xfc<252,-4>], edx
  
  L5: 8b 45 10 ?? mov eax, dword ss:[ebp + 0x10<16>]
   0f be 08 ?? movsx ecx, byte ds:[eax]
   83 f9 4c ?? cmp ecx, 0x4c<76>
   74 15 ?? je basic block L7
  
  L6: 8b 55 fc ?? mov edx, dword ss:[ebp + 0xfc<252,-4>]
   8b 45 10 ?? mov eax, dword ss:[ebp + 0x10<16>]
   8a 08 ?? mov cl, byte ds:[eax]
   88 0a ?? mov byte ds:[edx], cl
   8b 55 fc ?? mov edx, dword ss:[ebp + 0xfc<252,-4>]
   83 c2 01 ?? add edx, 1
   89 55 fc ?? mov dword ss:[ebp + 0xfc<252,-4>], edx
   eb 2d ?? jmp basic block L8
  
  L7: 8b 45 fc ?? mov eax, dword ss:[ebp + 0xfc<252,-4>]
   c6 00 49 ?? mov byte ds:[eax], 0x49<73>
   8b 4d fc ?? mov ecx, dword ss:[ebp + 0xfc<252,-4>]
   83 c1 01 ?? add ecx, 1
   89 4d fc ?? mov dword ss:[ebp + 0xfc<252,-4>], ecx
   8b 55 fc ?? mov edx, dword ss:[ebp + 0xfc<252,-4>]
   c6 02 36 ?? mov byte ds:[edx], 0x36<54>
   8b 45 fc ?? mov eax, dword ss:[ebp + 0xfc<252,-4>]
   83 c0 01 ?? add eax, 1
   89 45 fc ?? mov dword ss:[ebp + 0xfc<252,-4>], eax
   8b 4d fc ?? mov ecx, dword ss:[ebp + 0xfc<252,-4>]
   c6 01 34 ?? mov byte ds:[ecx], 0x34<52>
   8b 55 fc ?? mov edx, dword ss:[ebp + 0xfc<252,-4>]
   83 c2 01 ?? add edx, 1
   89 55 fc ?? mov dword ss:[ebp + 0xfc<252,-4>], edx
  
  L8: 8b 45 14 ?? mov eax, dword ss:[ebp + 0x14<20>]
   25 00 0e 00 00 ?? and eax, 0x00000e00<3584>
   89 45 f8 ?? mov dword ss:[ebp + 0xf8<248,-8>], eax
   81 7d f8 00 04 00 00 ?? cmp dword ss:[ebp + 0xf8<248,-8>], 0x00000400<1024>
   75 06 ?? jne basic block L10
  
  L9: c6 45 f7 6f ?? mov byte ss:[ebp + 0xf7<247,-9>], 0x6f<111>
   eb 2b ?? jmp basic block L14
  
  L10: 81 7d f8 00 08 00 00 ?? cmp dword ss:[ebp + 0xf8<248,-8>], 0x00000800<2048>
   74 0b ?? je basic block L12
  
  L11: 8b 4d 10 ?? mov ecx, dword ss:[ebp + 0x10<16>]
   8a 51 01 ?? mov dl, byte ds:[ecx + 1]
   88 55 f6 ?? mov byte ss:[ebp + 0xf6<246,-10>], dl
   eb 11 ?? jmp basic block L13
  
  L12: 8b 45 14 ?? mov eax, dword ss:[ebp + 0x14<20>]
   83 e0 04 ?? and eax, 4
   f7 d8 ?? neg eax
   1a c0 ?? sbb al, al
   24 e0 ?? and al, 0xe0<224,-32>
   04 78 ?? add al, 0x78<120>
   88 45 f6 ?? mov byte ss:[ebp + 0xf6<246,-10>], al
  
  L13: 8a 4d f6 ?? mov cl, byte ss:[ebp + 0xf6<246,-10>]
   88 4d f7 ?? mov byte ss:[ebp + 0xf7<247,-9>], cl
  
  L14: 8b 55 fc ?? mov edx, dword ss:[ebp + 0xfc<252,-4>]
   8a 45 f7 ?? mov al, byte ss:[ebp + 0xf7<247,-9>]
   88 02 ?? mov byte ds:[edx], al
   8b 4d fc ?? mov ecx, dword ss:[ebp + 0xfc<252,-4>]
   83 c1 01 ?? add ecx, 1
   89 4d fc ?? mov dword ss:[ebp + 0xfc<252,-4>], ecx
   8b 55 fc ?? mov edx, dword ss:[ebp + 0xfc<252,-4>]
   c6 02 00 ?? mov byte ds:[edx], 0
   8b 45 0c ?? mov eax, dword ss:[ebp + 12]
   8b e5 ?? mov esp, ebp
   5d ?? pop ebp
   c3 ?? ret
  
  