Disassembly: 
  L1: 8b ff ?? mov edi, edi
   55 ?? push ebp
   8b ec ?? mov ebp, esp
   83 ec 2c ?? sub esp, 0x2c<44>
   8b 45 08 ?? mov eax, dword ss:[ebp + 8]
   0f b7 48 0a ?? movzx ecx, word ds:[eax + 10]
   53 ?? push ebx
   8b d9 ?? mov ebx, ecx
   81 e1 00 80 00 00 ?? and ecx, 0x00008000<32768>
   89 4d ec ?? mov dword ss:[ebp + 0xec<236,-20>], ecx
   8b 48 06 ?? mov ecx, dword ds:[eax + 6]
   89 4d e0 ?? mov dword ss:[ebp + 0xe0<224,-32>], ecx
   8b 48 02 ?? mov ecx, dword ds:[eax + 2]
   0f b7 00 ?? movzx eax, word ds:[eax]
   81 e3 ff 7f 00 00 ?? and ebx, 0x00007fff<32767>
   81 eb ff 3f 00 00 ?? sub ebx, 0x00003fff<16383>
   c1 e0 10 ?? shl eax, 0x10<16>
   57 ?? push edi
   89 4d e4 ?? mov dword ss:[ebp + 0xe4<228,-28>], ecx
   89 45 e8 ?? mov dword ss:[ebp + 0xe8<232,-24>], eax
   81 fb 01 c0 ff ff ?? cmp ebx, 0xffffc001<4294950913,-16383>
   75 27 ?? jne basic block L7
  
  L2: 33 db ?? xor ebx, ebx
   33 c0 ?? xor eax, eax
  
  L3: 39 5c 85 e0 ?? cmp dword ss:[ebp + 0xe0<224,-32> + eax * 4], ebx
   75 0d ?? jne basic block L6
  
  L4: 40 ?? inc eax
   83 f8 03 ?? cmp eax, 3
   7c f4 ?? jl basic block L3
  
  L5: 33 c0 ?? xor eax, eax
   e9 a5 04 00 00 ?? jmp basic block L100
  
  L6: 33 c0 ?? xor eax, eax
   8d 7d e0 ?? lea edi, ss:[ebp + 0xe0<224,-32>]
   ab ?? stosd
   ab ?? stosd
   6a 02 ?? push 2
   ab ?? stosd
   58 ?? pop eax
   e9 95 04 00 00 ?? jmp basic block L100
  
  L7: 83 65 08 00 ?? and dword ss:[ebp + 8], 0
   56 ?? push esi
   8d 75 e0 ?? lea esi, ss:[ebp + 0xe0<224,-32>]
   8d 7d d4 ?? lea edi, ss:[ebp + 0xd4<212,-44>]
   a5 ?? movsd
   a5 ?? movsd
   a5 ?? movsd
   8b 35 78 54 44 00 ?? mov esi, dword ds:[0x00445478<"5">]
   4e ?? dec esi
   8d 4e 01 ?? lea ecx, ds:[esi + 1]
   8b c1 ?? mov eax, ecx
   99 ?? cdq
   83 e2 1f ?? and edx, 0x1f<31>
   03 c2 ?? add eax, edx
   c1 f8 05 ?? sar eax, 5
   8b d1 ?? mov edx, ecx
   81 e2 1f 00 00 80 ?? and edx, 0x8000001f
   89 5d f0 ?? mov dword ss:[ebp + 0xf0<240,-16>], ebx
   89 45 f4 ?? mov dword ss:[ebp + 0xf4<244,-12>], eax
   79 05 ?? jns basic block L9
  
  L8: 4a ?? dec edx
   83 ca e0 ?? or edx, 0xe0<224,-32>
   42 ?? inc edx
  
  L9: 8d 7c 85 e0 ?? lea edi, ss:[ebp + 0xe0<224,-32> + eax * 4]
   6a 1f ?? push 0x1f<31>
   33 c0 ?? xor eax, eax
   59 ?? pop ecx
   2b ca ?? sub ecx, edx
   40 ?? inc eax
   d3 e0 ?? shl eax, cl
   89 4d f8 ?? mov dword ss:[ebp + 0xf8<248,-8>], ecx
   85 07 ?? test dword ds:[edi], eax
   0f 84 8d 00 00 00 ?? je basic block L26
  
  L10: 8b 45 f4 ?? mov eax, dword ss:[ebp + 0xf4<244,-12>]
   83 ca ff ?? or edx, 0xff<255,-1>
   d3 e2 ?? shl edx, cl
   f7 d2 ?? not edx
   85 54 85 e0 ?? test dword ss:[ebp + 0xe0<224,-32> + eax * 4], edx
   eb 05 ?? jmp basic block L12
  
  L11: 83 7c 85 e0 00 ?? cmp dword ss:[ebp + 0xe0<224,-32> + eax * 4], 0
  
  L12: 75 08 ?? jne basic block L15
  
  L13: 40 ?? inc eax
   83 f8 03 ?? cmp eax, 3
   7c f3 ?? jl basic block L11
  
  L14: eb 6e ?? jmp basic block L26
  
  L15: 8b c6 ?? mov eax, esi
   99 ?? cdq
   6a 1f ?? push 0x1f<31>
   59 ?? pop ecx
   23 d1 ?? and edx, ecx
   03 c2 ?? add eax, edx
   c1 f8 05 ?? sar eax, 5
   81 e6 1f 00 00 80 ?? and esi, 0x8000001f
   79 05 ?? jns basic block L17
  
  L16: 4e ?? dec esi
   83 ce e0 ?? or esi, 0xe0<224,-32>
   46 ?? inc esi
  
  L17: 83 65 fc 00 ?? and dword ss:[ebp + 0xfc<252,-4>], 0
   2b ce ?? sub ecx, esi
   33 d2 ?? xor edx, edx
   42 ?? inc edx
   d3 e2 ?? shl edx, cl
   8d 4c 85 e0 ?? lea ecx, ss:[ebp + 0xe0<224,-32> + eax * 4]
   8b 31 ?? mov esi, dword ds:[ecx]
   03 f2 ?? add esi, edx
   89 75 08 ?? mov dword ss:[ebp + 8], esi
   8b 31 ?? mov esi, dword ds:[ecx]
   39 75 08 ?? cmp dword ss:[ebp + 8], esi
   72 22 ?? jb basic block L23
  
  L18: 39 55 08 ?? cmp dword ss:[ebp + 8], edx
   eb 1b ?? jmp basic block L22
  
  L19: 85 c9 ?? test ecx, ecx
   74 2b ?? je basic block L25
  
  L20: 83 65 fc 00 ?? and dword ss:[ebp + 0xfc<252,-4>], 0
   8d 4c 85 e0 ?? lea ecx, ss:[ebp + 0xe0<224,-32> + eax * 4]
   8b 11 ?? mov edx, dword ds:[ecx]
   8d 72 01 ?? lea esi, ds:[edx + 1]
   89 75 08 ?? mov dword ss:[ebp + 8], esi
   3b f2 ?? cmp esi, edx
   72 05 ?? jb basic block L23
  
  L21: 83 fe 01 ?? cmp esi, 1
  
  L22: 73 07 ?? jae basic block L24
  
  L23: c7 45 fc 01 00 00 00 ?? mov dword ss:[ebp + 0xfc<252,-4>], 1
  
  L24: 48 ?? dec eax
   8b 55 08 ?? mov edx, dword ss:[ebp + 8]
   89 11 ?? mov dword ds:[ecx], edx
   8b 4d fc ?? mov ecx, dword ss:[ebp + 0xfc<252,-4>]
   79 d1 ?? jns basic block L19
  
  L25: 89 4d 08 ?? mov dword ss:[ebp + 8], ecx
  
  L26: 8b 4d f8 ?? mov ecx, dword ss:[ebp + 0xf8<248,-8>]
   83 c8 ff ?? or eax, 0xff<255,-1>
   d3 e0 ?? shl eax, cl
   21 07 ?? and dword ds:[edi], eax
   8b 45 f4 ?? mov eax, dword ss:[ebp + 0xf4<244,-12>]
   40 ?? inc eax
   83 f8 03 ?? cmp eax, 3
   7d 0d ?? jge basic block L28
  
  L27: 6a 03 ?? push 3
   59 ?? pop ecx
   8d 7c 85 e0 ?? lea edi, ss:[ebp + 0xe0<224,-32> + eax * 4]
   2b c8 ?? sub ecx, eax
   33 c0 ?? xor eax, eax
   f3 ab ?? rep_stosd
  
  L28: 83 7d 08 00 ?? cmp dword ss:[ebp + 8], 0
   74 01 ?? je basic block L30
  
  L29: 43 ?? inc ebx
  
  L30: a1 74 54 44 00 ?? mov eax, dword ds:[0x00445474]
   8b c8 ?? mov ecx, eax
   2b 0d 78 54 44 00 ?? sub ecx, dword ds:[0x00445478<"5">]
   3b d9 ?? cmp ebx, ecx
   7d 0d ?? jge basic block L32
  
  L31: 33 c0 ?? xor eax, eax
   8d 7d e0 ?? lea edi, ss:[ebp + 0xe0<224,-32>]
   ab ?? stosd
   ab ?? stosd
   ab ?? stosd
   e9 0d 02 00 00 ?? jmp basic block L75
  
  L32: 3b d8 ?? cmp ebx, eax
   0f 8f 0f 02 00 00 ?? jg basic block L76
  
  L33: 2b 45 f0 ?? sub eax, dword ss:[ebp + 0xf0<240,-16>]
   8d 75 d4 ?? lea esi, ss:[ebp + 0xd4<212,-44>]
   8b c8 ?? mov ecx, eax
   8d 7d e0 ?? lea edi, ss:[ebp + 0xe0<224,-32>]
   a5 ?? movsd
   99 ?? cdq
   83 e2 1f ?? and edx, 0x1f<31>
   03 c2 ?? add eax, edx
   a5 ?? movsd
   8b d1 ?? mov edx, ecx
   c1 f8 05 ?? sar eax, 5
   81 e2 1f 00 00 80 ?? and edx, 0x8000001f
   a5 ?? movsd
   79 05 ?? jns basic block L35
  
  L34: 4a ?? dec edx
   83 ca e0 ?? or edx, 0xe0<224,-32>
   42 ?? inc edx
  
  L35: 83 65 f4 00 ?? and dword ss:[ebp + 0xf4<244,-12>], 0
   83 65 08 00 ?? and dword ss:[ebp + 8], 0
   83 cf ff ?? or edi, 0xff<255,-1>
   8b ca ?? mov ecx, edx
   d3 e7 ?? shl edi, cl
   c7 45 fc 20 00 00 00 ?? mov dword ss:[ebp + 0xfc<252,-4>], 0x00000020<32>
   29 55 fc ?? sub dword ss:[ebp + 0xfc<252,-4>], edx
   f7 d7 ?? not edi
  
  L36: 8b 5d 08 ?? mov ebx, dword ss:[ebp + 8]
   8d 5c 9d e0 ?? lea ebx, ss:[ebp + 0xe0<224,-32> + ebx * 4]
   8b 33 ?? mov esi, dword ds:[ebx]
   8b ce ?? mov ecx, esi
   23 cf ?? and ecx, edi
   89 4d f0 ?? mov dword ss:[ebp + 0xf0<240,-16>], ecx
   8b ca ?? mov ecx, edx
   d3 ee ?? shr esi, cl
   8b 4d fc ?? mov ecx, dword ss:[ebp + 0xfc<252,-4>]
   0b 75 f4 ?? or esi, dword ss:[ebp + 0xf4<244,-12>]
   89 33 ?? mov dword ds:[ebx], esi
   8b 75 f0 ?? mov esi, dword ss:[ebp + 0xf0<240,-16>]
   d3 e6 ?? shl esi, cl
   ff 45 08 ?? inc dword ss:[ebp + 8]
   83 7d 08 03 ?? cmp dword ss:[ebp + 8], 3
   89 75 f4 ?? mov dword ss:[ebp + 0xf4<244,-12>], esi
  
  L37: 7c d3 ?? jl basic block L36
  
  L38: 8b f0 ?? mov esi, eax
   6a 02 ?? push 2
   c1 e6 02 ?? shl esi, 2
   8d 4d e8 ?? lea ecx, ss:[ebp + 0xe8<232,-24>]
   5a ?? pop edx
   2b ce ?? sub ecx, esi
  
  L39: 3b d0 ?? cmp edx, eax
   7c 08 ?? jl basic block L41
  
  L40: 8b 31 ?? mov esi, dword ds:[ecx]
   89 74 95 e0 ?? mov dword ss:[ebp + 0xe0<224,-32> + edx * 4], esi
   eb 05 ?? jmp basic block L42
  
  L41: 83 64 95 e0 00 ?? and dword ss:[ebp + 0xe0<224,-32> + edx * 4], 0
  
  L42: 4a ?? dec edx
   83 e9 04 ?? sub ecx, 4
   85 d2 ?? test edx, edx
   7d e7 ?? jge basic block L39
  
  L43: 8b 35 78 54 44 00 ?? mov esi, dword ds:[0x00445478<"5">]
   4e ?? dec esi
   8d 4e 01 ?? lea ecx, ds:[esi + 1]
   8b c1 ?? mov eax, ecx
   99 ?? cdq
   83 e2 1f ?? and edx, 0x1f<31>
   03 c2 ?? add eax, edx
   c1 f8 05 ?? sar eax, 5
   8b d1 ?? mov edx, ecx
   81 e2 1f 00 00 80 ?? and edx, 0x8000001f
   89 45 f4 ?? mov dword ss:[ebp + 0xf4<244,-12>], eax
   79 05 ?? jns basic block L45
  
  L44: 4a ?? dec edx
   83 ca e0 ?? or edx, 0xe0<224,-32>
   42 ?? inc edx
  
  L45: 6a 1f ?? push 0x1f<31>
   59 ?? pop ecx
   2b ca ?? sub ecx, edx
   33 d2 ?? xor edx, edx
   42 ?? inc edx
   d3 e2 ?? shl edx, cl
   8d 5c 85 e0 ?? lea ebx, ss:[ebp + 0xe0<224,-32> + eax * 4]
   89 4d f0 ?? mov dword ss:[ebp + 0xf0<240,-16>], ecx
   85 13 ?? test dword ds:[ebx], edx
   0f 84 82 00 00 00 ?? je basic block L63
  
  L46: 83 ca ff ?? or edx, 0xff<255,-1>
   d3 e2 ?? shl edx, cl
   f7 d2 ?? not edx
   85 54 85 e0 ?? test dword ss:[ebp + 0xe0<224,-32> + eax * 4], edx
   eb 05 ?? jmp basic block L48
  
  L47: 83 7c 85 e0 00 ?? cmp dword ss:[ebp + 0xe0<224,-32> + eax * 4], 0
  
  L48: 75 08 ?? jne basic block L51
  
  L49: 40 ?? inc eax
   83 f8 03 ?? cmp eax, 3
   7c f3 ?? jl basic block L47
  
  L50: eb 66 ?? jmp basic block L63
  
  L51: 8b c6 ?? mov eax, esi
   99 ?? cdq
   6a 1f ?? push 0x1f<31>
   59 ?? pop ecx
   23 d1 ?? and edx, ecx
   03 c2 ?? add eax, edx
   c1 f8 05 ?? sar eax, 5
   81 e6 1f 00 00 80 ?? and esi, 0x8000001f
   79 05 ?? jns basic block L53
  
  L52: 4e ?? dec esi
   83 ce e0 ?? or esi, 0xe0<224,-32>
   46 ?? inc esi
  
  L53: 83 65 08 00 ?? and dword ss:[ebp + 8], 0
   33 d2 ?? xor edx, edx
   2b ce ?? sub ecx, esi
   42 ?? inc edx
   d3 e2 ?? shl edx, cl
   8d 4c 85 e0 ?? lea ecx, ss:[ebp + 0xe0<224,-32> + eax * 4]
   8b 31 ?? mov esi, dword ds:[ecx]
   8d 3c 16 ?? lea edi, ds:[esi + edx]
   3b fe ?? cmp edi, esi
   72 04 ?? jb basic block L55
  
  L54: 3b fa ?? cmp edi, edx
   73 07 ?? jae basic block L56
  
  L55: c7 45 08 01 00 00 00 ?? mov dword ss:[ebp + 8], 1
  
  L56: 89 39 ?? mov dword ds:[ecx], edi
   8b 4d 08 ?? mov ecx, dword ss:[ebp + 8]
   eb 1f ?? jmp basic block L62
  
  L57: 85 c9 ?? test ecx, ecx
   74 1e ?? je basic block L63
  
  L58: 8d 4c 85 e0 ?? lea ecx, ss:[ebp + 0xe0<224,-32> + eax * 4]
   8b 11 ?? mov edx, dword ds:[ecx]
   8d 72 01 ?? lea esi, ds:[edx + 1]
   33 ff ?? xor edi, edi
   3b f2 ?? cmp esi, edx
   72 05 ?? jb basic block L60
  
  L59: 83 fe 01 ?? cmp esi, 1
   73 03 ?? jae basic block L61
  
  L60: 33 ff ?? xor edi, edi
   47 ?? inc edi
  
  L61: 89 31 ?? mov dword ds:[ecx], esi
   8b cf ?? mov ecx, edi
  
  L62: 48 ?? dec eax
   79 de ?? jns basic block L57
  
  L63: 8b 4d f0 ?? mov ecx, dword ss:[ebp + 0xf0<240,-16>]
   83 c8 ff ?? or eax, 0xff<255,-1>
   d3 e0 ?? shl eax, cl
   21 03 ?? and dword ds:[ebx], eax
   8b 45 f4 ?? mov eax, dword ss:[ebp + 0xf4<244,-12>]
   40 ?? inc eax
   83 f8 03 ?? cmp eax, 3
   7d 0d ?? jge basic block L65
  
  L64: 6a 03 ?? push 3
   59 ?? pop ecx
   8d 7c 85 e0 ?? lea edi, ss:[ebp + 0xe0<224,-32> + eax * 4]
   2b c8 ?? sub ecx, eax
   33 c0 ?? xor eax, eax
   f3 ab ?? rep_stosd
  
  L65: 8b 0d 7c 54 44 00 ?? mov ecx, dword ds:[0x0044547c<"\v">]
   41 ?? inc ecx
   8b c1 ?? mov eax, ecx
   99 ?? cdq
   83 e2 1f ?? and edx, 0x1f<31>
   03 c2 ?? add eax, edx
   8b d1 ?? mov edx, ecx
   c1 f8 05 ?? sar eax, 5
   81 e2 1f 00 00 80 ?? and edx, 0x8000001f
   79 05 ?? jns basic block L67
  
  L66: 4a ?? dec edx
   83 ca e0 ?? or edx, 0xe0<224,-32>
   42 ?? inc edx
  
  L67: 83 65 f4 00 ?? and dword ss:[ebp + 0xf4<244,-12>], 0
   83 65 08 00 ?? and dword ss:[ebp + 8], 0
   83 cf ff ?? or edi, 0xff<255,-1>
   8b ca ?? mov ecx, edx
   d3 e7 ?? shl edi, cl
   c7 45 fc 20 00 00 00 ?? mov dword ss:[ebp + 0xfc<252,-4>], 0x00000020<32>
   29 55 fc ?? sub dword ss:[ebp + 0xfc<252,-4>], edx
   f7 d7 ?? not edi
  
  L68: 8b 5d 08 ?? mov ebx, dword ss:[ebp + 8]
   8d 5c 9d e0 ?? lea ebx, ss:[ebp + 0xe0<224,-32> + ebx * 4]
   8b 33 ?? mov esi, dword ds:[ebx]
   8b ce ?? mov ecx, esi
   23 cf ?? and ecx, edi
   89 4d f0 ?? mov dword ss:[ebp + 0xf0<240,-16>], ecx
   8b ca ?? mov ecx, edx
   d3 ee ?? shr esi, cl
   8b 4d fc ?? mov ecx, dword ss:[ebp + 0xfc<252,-4>]
   0b 75 f4 ?? or esi, dword ss:[ebp + 0xf4<244,-12>]
   89 33 ?? mov dword ds:[ebx], esi
   8b 75 f0 ?? mov esi, dword ss:[ebp + 0xf0<240,-16>]
   d3 e6 ?? shl esi, cl
   ff 45 08 ?? inc dword ss:[ebp + 8]
   83 7d 08 03 ?? cmp dword ss:[ebp + 8], 3
   89 75 f4 ?? mov dword ss:[ebp + 0xf4<244,-12>], esi
  
  L69: 7c d3 ?? jl basic block L68
  
  L70: 8b f0 ?? mov esi, eax
   6a 02 ?? push 2
   c1 e6 02 ?? shl esi, 2
   8d 4d e8 ?? lea ecx, ss:[ebp + 0xe8<232,-24>]
   5a ?? pop edx
   2b ce ?? sub ecx, esi
  
  L71: 3b d0 ?? cmp edx, eax
   7c 08 ?? jl basic block L73
  
  L72: 8b 31 ?? mov esi, dword ds:[ecx]
   89 74 95 e0 ?? mov dword ss:[ebp + 0xe0<224,-32> + edx * 4], esi
   eb 05 ?? jmp basic block L74
  
  L73: 83 64 95 e0 00 ?? and dword ss:[ebp + 0xe0<224,-32> + edx * 4], 0
  
  L74: 4a ?? dec edx
   83 e9 04 ?? sub ecx, 4
   85 d2 ?? test edx, edx
   7d e7 ?? jge basic block L71
  
  L75: 6a 02 ?? push 2
   33 db ?? xor ebx, ebx
   58 ?? pop eax
   e9 5a 01 00 00 ?? jmp basic block L99
  
  L76: 3b 1d 70 54 44 00 ?? cmp ebx, dword ds:[0x00445470]
   8b 0d 7c 54 44 00 ?? mov ecx, dword ds:[0x0044547c<"\v">]
   0f 8c ad 00 00 00 ?? jl basic block L88
  
  L77: 33 c0 ?? xor eax, eax
   8d 7d e0 ?? lea edi, ss:[ebp + 0xe0<224,-32>]
   ab ?? stosd
   ab ?? stosd
   ab ?? stosd
   81 4d e0 00 00 00 80 ?? or dword ss:[ebp + 0xe0<224,-32>], 0x80000000
   8b c1 ?? mov eax, ecx
   99 ?? cdq
   83 e2 1f ?? and edx, 0x1f<31>
   03 c2 ?? add eax, edx
   8b d1 ?? mov edx, ecx
   c1 f8 05 ?? sar eax, 5
   81 e2 1f 00 00 80 ?? and edx, 0x8000001f
   79 05 ?? jns basic block L79
  
  L78: 4a ?? dec edx
   83 ca e0 ?? or edx, 0xe0<224,-32>
   42 ?? inc edx
  
  L79: 83 65 f4 00 ?? and dword ss:[ebp + 0xf4<244,-12>], 0
   83 65 08 00 ?? and dword ss:[ebp + 8], 0
   83 cf ff ?? or edi, 0xff<255,-1>
   8b ca ?? mov ecx, edx
   d3 e7 ?? shl edi, cl
   c7 45 fc 20 00 00 00 ?? mov dword ss:[ebp + 0xfc<252,-4>], 0x00000020<32>
   29 55 fc ?? sub dword ss:[ebp + 0xfc<252,-4>], edx
   f7 d7 ?? not edi
  
  L80: 8b 5d 08 ?? mov ebx, dword ss:[ebp + 8]
   8d 5c 9d e0 ?? lea ebx, ss:[ebp + 0xe0<224,-32> + ebx * 4]
   8b 33 ?? mov esi, dword ds:[ebx]
   8b ce ?? mov ecx, esi
   23 cf ?? and ecx, edi
   89 4d f0 ?? mov dword ss:[ebp + 0xf0<240,-16>], ecx
   8b ca ?? mov ecx, edx
   d3 ee ?? shr esi, cl
   8b 4d fc ?? mov ecx, dword ss:[ebp + 0xfc<252,-4>]
   0b 75 f4 ?? or esi, dword ss:[ebp + 0xf4<244,-12>]
   89 33 ?? mov dword ds:[ebx], esi
   8b 75 f0 ?? mov esi, dword ss:[ebp + 0xf0<240,-16>]
   d3 e6 ?? shl esi, cl
   ff 45 08 ?? inc dword ss:[ebp + 8]
   83 7d 08 03 ?? cmp dword ss:[ebp + 8], 3
   89 75 f4 ?? mov dword ss:[ebp + 0xf4<244,-12>], esi
  
  L81: 7c d3 ?? jl basic block L80
  
  L82: 8b f0 ?? mov esi, eax
   6a 02 ?? push 2
   c1 e6 02 ?? shl esi, 2
   8d 4d e8 ?? lea ecx, ss:[ebp + 0xe8<232,-24>]
   5a ?? pop edx
   2b ce ?? sub ecx, esi
  
  L83: 3b d0 ?? cmp edx, eax
   7c 08 ?? jl basic block L85
  
  L84: 8b 31 ?? mov esi, dword ds:[ecx]
   89 74 95 e0 ?? mov dword ss:[ebp + 0xe0<224,-32> + edx * 4], esi
   eb 05 ?? jmp basic block L86
  
  L85: 83 64 95 e0 00 ?? and dword ss:[ebp + 0xe0<224,-32> + edx * 4], 0
  
  L86: 4a ?? dec edx
   83 e9 04 ?? sub ecx, 4
   85 d2 ?? test edx, edx
   7d e7 ?? jge basic block L83
  
  L87: a1 70 54 44 00 ?? mov eax, dword ds:[0x00445470]
   8b 0d 84 54 44 00 ?? mov ecx, dword ds:[0x00445484]
   8d 1c 01 ?? lea ebx, ds:[ecx + eax]
   33 c0 ?? xor eax, eax
   40 ?? inc eax
   e9 9b 00 00 00 ?? jmp basic block L99
  
  L88: a1 84 54 44 00 ?? mov eax, dword ds:[0x00445484]
   81 65 e0 ff ff ff 7f ?? and dword ss:[ebp + 0xe0<224,-32>], 0x7fffffff
   03 d8 ?? add ebx, eax
   8b c1 ?? mov eax, ecx
   99 ?? cdq
   83 e2 1f ?? and edx, 0x1f<31>
   03 c2 ?? add eax, edx
   8b d1 ?? mov edx, ecx
   c1 f8 05 ?? sar eax, 5
   81 e2 1f 00 00 80 ?? and edx, 0x8000001f
   79 05 ?? jns basic block L90
  
  L89: 4a ?? dec edx
   83 ca e0 ?? or edx, 0xe0<224,-32>
   42 ?? inc edx
  
  L90: 83 65 f4 00 ?? and dword ss:[ebp + 0xf4<244,-12>], 0
   83 65 08 00 ?? and dword ss:[ebp + 8], 0
   83 ce ff ?? or esi, 0xff<255,-1>
   8b ca ?? mov ecx, edx
   d3 e6 ?? shl esi, cl
   c7 45 fc 20 00 00 00 ?? mov dword ss:[ebp + 0xfc<252,-4>], 0x00000020<32>
   29 55 fc ?? sub dword ss:[ebp + 0xfc<252,-4>], edx
   f7 d6 ?? not esi
  
  L91: 8b 4d 08 ?? mov ecx, dword ss:[ebp + 8]
   8b 7c 8d e0 ?? mov edi, dword ss:[ebp + 0xe0<224,-32> + ecx * 4]
   8b cf ?? mov ecx, edi
   23 ce ?? and ecx, esi
   89 4d f0 ?? mov dword ss:[ebp + 0xf0<240,-16>], ecx
   8b ca ?? mov ecx, edx
   d3 ef ?? shr edi, cl
   8b 4d 08 ?? mov ecx, dword ss:[ebp + 8]
   0b 7d f4 ?? or edi, dword ss:[ebp + 0xf4<244,-12>]
   89 7c 8d e0 ?? mov dword ss:[ebp + 0xe0<224,-32> + ecx * 4], edi
   8b 7d f0 ?? mov edi, dword ss:[ebp + 0xf0<240,-16>]
   8b 4d fc ?? mov ecx, dword ss:[ebp + 0xfc<252,-4>]
   d3 e7 ?? shl edi, cl
   ff 45 08 ?? inc dword ss:[ebp + 8]
   83 7d 08 03 ?? cmp dword ss:[ebp + 8], 3
   89 7d f4 ?? mov dword ss:[ebp + 0xf4<244,-12>], edi
  
  L92: 7c d0 ?? jl basic block L91
  
  L93: 8b f0 ?? mov esi, eax
   6a 02 ?? push 2
   c1 e6 02 ?? shl esi, 2
   8d 4d e8 ?? lea ecx, ss:[ebp + 0xe8<232,-24>]
   5a ?? pop edx
   2b ce ?? sub ecx, esi
  
  L94: 3b d0 ?? cmp edx, eax
   7c 08 ?? jl basic block L96
  
  L95: 8b 31 ?? mov esi, dword ds:[ecx]
   89 74 95 e0 ?? mov dword ss:[ebp + 0xe0<224,-32> + edx * 4], esi
   eb 05 ?? jmp basic block L97
  
  L96: 83 64 95 e0 00 ?? and dword ss:[ebp + 0xe0<224,-32> + edx * 4], 0
  
  L97: 4a ?? dec edx
   83 e9 04 ?? sub ecx, 4
   85 d2 ?? test edx, edx
   7d e7 ?? jge basic block L94
  
  L98: 33 c0 ?? xor eax, eax
  
  L99: 5e ?? pop esi
  
  L100: 6a 1f ?? push 0x1f<31>
   59 ?? pop ecx
   2b 0d 7c 54 44 00 ?? sub ecx, dword ds:[0x0044547c<"\v">]
   d3 e3 ?? shl ebx, cl
   8b 4d ec ?? mov ecx, dword ss:[ebp + 0xec<236,-20>]
   f7 d9 ?? neg ecx
   1b c9 ?? sbb ecx, ecx
   81 e1 00 00 00 80 ?? and ecx, 0x80000000
   0b d9 ?? or ebx, ecx
   8b 0d 80 54 44 00 ?? mov ecx, dword ds:[0x00445480<"@">]
   0b 5d e0 ?? or ebx, dword ss:[ebp + 0xe0<224,-32>]
   83 f9 40 ?? cmp ecx, 0x40<64>
   75 0d ?? jne basic block L102
  
  L101: 8b 4d 0c ?? mov ecx, dword ss:[ebp + 12]
   8b 55 e4 ?? mov edx, dword ss:[ebp + 0xe4<228,-28>]
   89 59 04 ?? mov dword ds:[ecx + 4], ebx
   89 11 ?? mov dword ds:[ecx], edx
   eb 0a ?? jmp basic block L104
  
  L102: 83 f9 20 ?? cmp ecx, 0x20<32>
   75 05 ?? jne basic block L104
  
  L103: 8b 4d 0c ?? mov ecx, dword ss:[ebp + 12]
   89 19 ?? mov dword ds:[ecx], ebx
  
  L104: 5f ?? pop edi
   5b ?? pop ebx
   c9 ?? leave
   c3 ?? ret
  
  