Disassembly: 
  L1: 8b ff ?? mov edi, edi
   55 ?? push ebp
   8b ec ?? mov ebp, esp
   b8 e4 1a 00 00 ?? mov eax, 0x00001ae4<6884>
   e8 b2 ea 00 00 ?? call function 0x0041dd60
  
  L2: a1 f0 43 43 00 ?? mov eax, dword ds:[0x004343f0]
   33 c5 ?? xor eax, ebp
   89 45 fc ?? mov dword ss:[ebp + 0xfc<252,-4>], eax
   8b 45 0c ?? mov eax, dword ss:[ebp + 12]
   56 ?? push esi
   33 f6 ?? xor esi, esi
   89 85 34 e5 ff ff ?? mov dword ss:[ebp + 0xffffe534<4294960436,-6860>], eax
   89 b5 38 e5 ff ff ?? mov dword ss:[ebp + 0xffffe538<4294960440,-6856>], esi
   89 b5 30 e5 ff ff ?? mov dword ss:[ebp + 0xffffe530<4294960432,-6864>], esi
   39 75 10 ?? cmp dword ss:[ebp + 0x10<16>], esi
   75 07 ?? jne basic block L4
  
  L3: 33 c0 ?? xor eax, eax
   e9 e9 06 00 00 ?? jmp basic block L136
  
  L4: 3b c6 ?? cmp eax, esi
   75 27 ?? jne basic block L9
  
  L5: e8 50 d2 ff ff ?? call function 0x0040c535
  
  L6: 89 30 ?? mov dword ds:[eax], esi
   e8 36 d2 ff ff ?? call function 0x0040c522
  
  L7: 56 ?? push esi
   56 ?? push esi
   56 ?? push esi
   56 ?? push esi
   56 ?? push esi
   c7 00 16 00 00 00 ?? mov dword ds:[eax], 0x00000016<22>
   e8 c4 76 ff ff ?? call function 0x004069c0
  
  L8: 83 c4 14 ?? add esp, 0x14<20>
   83 c8 ff ?? or eax, 0xff<255,-1>
   e9 be 06 00 00 ?? jmp basic block L136
  
  L9: 53 ?? push ebx
   57 ?? push edi
   8b 7d 08 ?? mov edi, dword ss:[ebp + 8]
   8b c7 ?? mov eax, edi
   c1 f8 05 ?? sar eax, 5
   8d 34 85 a0 66 43 00 ?? lea esi, ds:[0x004366a0 + eax * 4]
   8b 06 ?? mov eax, dword ds:[esi]
   83 e7 1f ?? and edi, 0x1f<31>
   c1 e7 06 ?? shl edi, 6
   03 c7 ?? add eax, edi
   8a 58 24 ?? mov bl, byte ds:[eax + 0x24<36>]
   02 db ?? add bl, bl
   d0 fb ?? sar bl, 1
   89 b5 28 e5 ff ff ?? mov dword ss:[ebp + 0xffffe528<4294960424,-6872>], esi
   88 9d 27 e5 ff ff ?? mov byte ss:[ebp + 0xffffe527<4294960423,-6873>], bl
   80 fb 02 ?? cmp bl, 2
   74 05 ?? je basic block L11
  
  L10: 80 fb 01 ?? cmp bl, 1
   75 30 ?? jne basic block L16
  
  L11: 8b 4d 10 ?? mov ecx, dword ss:[ebp + 0x10<16>]
   f7 d1 ?? not ecx
   f6 c1 01 ?? test cl, 1
   75 26 ?? jne basic block L16
  
  L12: e8 e7 d1 ff ff ?? call function 0x0040c535
  
  L13: 33 f6 ?? xor esi, esi
   89 30 ?? mov dword ds:[eax], esi
   e8 cb d1 ff ff ?? call function 0x0040c522
  
  L14: 56 ?? push esi
   56 ?? push esi
   56 ?? push esi
   56 ?? push esi
   56 ?? push esi
   c7 00 16 00 00 00 ?? mov dword ds:[eax], 0x00000016<22>
   e8 59 76 ff ff ?? call function 0x004069c0
  
  L15: 83 c4 14 ?? add esp, 0x14<20>
   e9 43 06 00 00 ?? jmp basic block L133
  
  L16: f6 40 04 20 ?? test byte ds:[eax + 4], 0x20<32>
   74 11 ?? je basic block L19
  
  L17: 6a 02 ?? push 2
   6a 00 ?? push 0
   6a 00 ?? push 0
   ff 75 08 ?? push dword ss:[ebp + 8]
   e8 15 e2 00 00 ?? call function 0x0041d598
  
  L18: 83 c4 10 ?? add esp, 0x10<16>
  
  L19: ff 75 08 ?? push dword ss:[ebp + 8]
   e8 a8 e3 00 00 ?? call function 0x0041d736
  
  L20: 59 ?? pop ecx
   85 c0 ?? test eax, eax
   0f 84 9d 02 00 00 ?? je basic block L66
  
  L21: 8b 06 ?? mov eax, dword ds:[esi]
   f6 44 07 04 80 ?? test byte ds:[edi + eax + 4], 0x80<128,-128>
   0f 84 90 02 00 00 ?? je basic block L66
  
  L22: e8 a1 c7 ff ff ?? call function 0x0040bb4a
  
  L23: 8b 40 6c ?? mov eax, dword ds:[eax + 0x6c<108>]
   33 c9 ?? xor ecx, ecx
   39 48 14 ?? cmp dword ds:[eax + 0x14<20>], ecx
   8d 85 1c e5 ff ff ?? lea eax, ss:[ebp + 0xffffe51c<4294960412,-6884>]
   0f 94 c1 ?? sete cl
   50 ?? push eax
   8b 06 ?? mov eax, dword ds:[esi]
   ff 34 07 ?? push dword ds:[edi + eax]
   89 8d 20 e5 ff ff ?? mov dword ss:[ebp + 0xffffe520<4294960416,-6880>], ecx
   ff 15 cc 82 43 00 ?? call dword ds:[0x004382cc]
  
  L24: 85 c0 ?? test eax, eax
   0f 84 60 02 00 00 ?? je basic block L66
  
  L25: 33 c9 ?? xor ecx, ecx
   39 8d 20 e5 ff ff ?? cmp dword ss:[ebp + 0xffffe520<4294960416,-6880>], ecx
   74 08 ?? je basic block L27
  
  L26: 84 db ?? test bl, bl
   0f 84 50 02 00 00 ?? je basic block L67
  
  L27: ff 15 c8 82 43 00 ?? call dword ds:[0x004382c8]
  
  L28: 8b 9d 34 e5 ff ff ?? mov ebx, dword ss:[ebp + 0xffffe534<4294960436,-6860>]
   89 85 1c e5 ff ff ?? mov dword ss:[ebp + 0xffffe51c<4294960412,-6884>], eax
   33 c0 ?? xor eax, eax
   89 85 3c e5 ff ff ?? mov dword ss:[ebp + 0xffffe53c<4294960444,-6852>], eax
   39 45 10 ?? cmp dword ss:[ebp + 0x10<16>], eax
   0f 86 42 05 00 00 ?? jbe basic block L119
  
  L29: 89 85 44 e5 ff ff ?? mov dword ss:[ebp + 0xffffe544<4294960452,-6844>], eax
  
  L30: 8a 85 27 e5 ff ff ?? mov al, byte ss:[ebp + 0xffffe527<4294960423,-6873>]
   84 c0 ?? test al, al
   0f 85 67 01 00 00 ?? jne basic block L52
  
  L31: 8a 0b ?? mov cl, byte ds:[ebx]
   8b b5 28 e5 ff ff ?? mov esi, dword ss:[ebp + 0xffffe528<4294960424,-6872>]
   33 c0 ?? xor eax, eax
   80 f9 0a ?? cmp cl, 10
   0f 94 c0 ?? sete al
   89 85 20 e5 ff ff ?? mov dword ss:[ebp + 0xffffe520<4294960416,-6880>], eax
   8b 06 ?? mov eax, dword ds:[esi]
   03 c7 ?? add eax, edi
   83 78 38 00 ?? cmp dword ds:[eax + 0x38<56>], 0
   74 15 ?? je basic block L33
  
  L32: 8a 50 34 ?? mov dl, byte ds:[eax + 0x34<52>]
   88 55 f4 ?? mov byte ss:[ebp + 0xf4<244,-12>], dl
   88 4d f5 ?? mov byte ss:[ebp + 0xf5<245,-11>], cl
   83 60 38 00 ?? and dword ds:[eax + 0x38<56>], 0
   6a 02 ?? push 2
   8d 45 f4 ?? lea eax, ss:[ebp + 0xf4<244,-12>]
   50 ?? push eax
   eb 4b ?? jmp basic block L40
  
  L33: 0f be c1 ?? movsx eax, cl
   50 ?? push eax
   e8 52 e6 00 00 ?? call function 0x0041daad
  
  L34: 59 ?? pop ecx
   85 c0 ?? test eax, eax
   74 3a ?? je basic block L39
  
  L35: 8b 8d 34 e5 ff ff ?? mov ecx, dword ss:[ebp + 0xffffe534<4294960436,-6860>]
   2b cb ?? sub ecx, ebx
   03 4d 10 ?? add ecx, dword ss:[ebp + 0x10<16>]
   33 c0 ?? xor eax, eax
   40 ?? inc eax
   3b c8 ?? cmp ecx, eax
   0f 86 a5 01 00 00 ?? jbe basic block L65
  
  L36: 6a 02 ?? push 2
   8d 85 40 e5 ff ff ?? lea eax, ss:[ebp + 0xffffe540<4294960448,-6848>]
   53 ?? push ebx
   50 ?? push eax
   e8 d6 e5 00 00 ?? call function 0x0041da5b
  
  L37: 83 c4 0c ?? add esp, 12
   83 f8 ff ?? cmp eax, 0xff<255,-1>
   0f 84 b1 04 00 00 ?? je basic block L118
  
  L38: 43 ?? inc ebx
   ff 85 44 e5 ff ff ?? inc dword ss:[ebp + 0xffffe544<4294960452,-6844>]
   eb 1b ?? jmp basic block L42
  
  L39: 6a 01 ?? push 1
   53 ?? push ebx
  
  L40: 8d 85 40 e5 ff ff ?? lea eax, ss:[ebp + 0xffffe540<4294960448,-6848>]
   50 ?? push eax
   e8 b2 e5 00 00 ?? call function 0x0041da5b
  
  L41: 83 c4 0c ?? add esp, 12
   83 f8 ff ?? cmp eax, 0xff<255,-1>
   0f 84 8d 04 00 00 ?? je basic block L118
  
  L42: 33 c0 ?? xor eax, eax
   50 ?? push eax
   50 ?? push eax
   6a 05 ?? push 5
   8d 4d f4 ?? lea ecx, ss:[ebp + 0xf4<244,-12>]
   51 ?? push ecx
   6a 01 ?? push 1
   8d 8d 40 e5 ff ff ?? lea ecx, ss:[ebp + 0xffffe540<4294960448,-6848>]
   51 ?? push ecx
   50 ?? push eax
   ff b5 1c e5 ff ff ?? push dword ss:[ebp + 0xffffe51c<4294960412,-6884>]
   43 ?? inc ebx
   ff 85 44 e5 ff ff ?? inc dword ss:[ebp + 0xffffe544<4294960452,-6844>]
   ff 15 3c 82 43 00 ?? call dword ds:[0x0043823c]
  
  L43: 8b f0 ?? mov esi, eax
   85 f6 ?? test esi, esi
   0f 84 5c 04 00 00 ?? je basic block L118
  
  L44: 6a 00 ?? push 0
   8d 85 3c e5 ff ff ?? lea eax, ss:[ebp + 0xffffe53c<4294960444,-6852>]
   50 ?? push eax
   56 ?? push esi
   8d 45 f4 ?? lea eax, ss:[ebp + 0xf4<244,-12>]
   50 ?? push eax
   8b 85 28 e5 ff ff ?? mov eax, dword ss:[ebp + 0xffffe528<4294960424,-6872>]
   8b 00 ?? mov eax, dword ds:[eax]
   ff 34 07 ?? push dword ds:[edi + eax]
   ff 15 78 82 43 00 ?? call dword ds:[0x00438278]
  
  L45: 85 c0 ?? test eax, eax
   0f 84 29 04 00 00 ?? je basic block L116
  
  L46: 8b 85 44 e5 ff ff ?? mov eax, dword ss:[ebp + 0xffffe544<4294960452,-6844>]
   8b 8d 30 e5 ff ff ?? mov ecx, dword ss:[ebp + 0xffffe530<4294960432,-6864>]
   03 c1 ?? add eax, ecx
   39 b5 3c e5 ff ff ?? cmp dword ss:[ebp + 0xffffe53c<4294960444,-6852>], esi
   89 85 38 e5 ff ff ?? mov dword ss:[ebp + 0xffffe538<4294960440,-6856>], eax
   0f 8c 15 04 00 00 ?? jl basic block L118
  
  L47: 83 bd 20 e5 ff ff 00 ?? cmp dword ss:[ebp + 0xffffe520<4294960416,-6880>], 0
   0f 84 cd 00 00 00 ?? je basic block L63
  
  L48: 6a 00 ?? push 0
   8d 85 3c e5 ff ff ?? lea eax, ss:[ebp + 0xffffe53c<4294960444,-6852>]
   50 ?? push eax
   6a 01 ?? push 1
   8d 45 f4 ?? lea eax, ss:[ebp + 0xf4<244,-12>]
   50 ?? push eax
   8b 85 28 e5 ff ff ?? mov eax, dword ss:[ebp + 0xffffe528<4294960424,-6872>]
   8b 00 ?? mov eax, dword ds:[eax]
   c6 45 f4 0d ?? mov byte ss:[ebp + 0xf4<244,-12>], 13
   ff 34 07 ?? push dword ds:[edi + eax]
   ff 15 78 82 43 00 ?? call dword ds:[0x00438278]
  
  L49: 85 c0 ?? test eax, eax
   0f 84 d0 03 00 00 ?? je basic block L116
  
  L50: 83 bd 3c e5 ff ff 01 ?? cmp dword ss:[ebp + 0xffffe53c<4294960444,-6852>], 1
   0f 8c cf 03 00 00 ?? jl basic block L118
  
  L51: ff 85 30 e5 ff ff ?? inc dword ss:[ebp + 0xffffe530<4294960432,-6864>]
   ff 85 38 e5 ff ff ?? inc dword ss:[ebp + 0xffffe538<4294960440,-6856>]
   e9 83 00 00 00 ?? jmp basic block L63
  
  L52: 3c 01 ?? cmp al, 1
   74 04 ?? je basic block L54
  
  L53: 3c 02 ?? cmp al, 2
   75 21 ?? jne basic block L55
  
  L54: 0f b7 33 ?? movzx esi, word ds:[ebx]
   33 c9 ?? xor ecx, ecx
   66 83 fe 0a ?? cmp si, 10
   0f 94 c1 ?? sete cl
   43 ?? inc ebx
   43 ?? inc ebx
   83 85 44 e5 ff ff 02 ?? add dword ss:[ebp + 0xffffe544<4294960452,-6844>], 2
   89 b5 40 e5 ff ff ?? mov dword ss:[ebp + 0xffffe540<4294960448,-6848>], esi
   89 8d 20 e5 ff ff ?? mov dword ss:[ebp + 0xffffe520<4294960416,-6880>], ecx
  
  L55: 3c 01 ?? cmp al, 1
   74 04 ?? je basic block L57
  
  L56: 3c 02 ?? cmp al, 2
   75 52 ?? jne basic block L63
  
  L57: ff b5 40 e5 ff ff ?? push dword ss:[ebp + 0xffffe540<4294960448,-6848>]
   e8 da e1 00 00 ?? call function 0x0041d79a
  
  L58: 59 ?? pop ecx
   66 3b 85 40 e5 ff ff ?? cmp ax, word ss:[ebp + 0xffffe540<4294960448,-6848>]
   0f 85 68 03 00 00 ?? jne basic block L116
  
  L59: 83 85 38 e5 ff ff 02 ?? add dword ss:[ebp + 0xffffe538<4294960440,-6856>], 2
   83 bd 20 e5 ff ff 00 ?? cmp dword ss:[ebp + 0xffffe520<4294960416,-6880>], 0
   74 29 ?? je basic block L63
  
  L60: 6a 0d ?? push 13
   58 ?? pop eax
   50 ?? push eax
   89 85 40 e5 ff ff ?? mov dword ss:[ebp + 0xffffe540<4294960448,-6848>], eax
   e8 ad e1 00 00 ?? call function 0x0041d79a
  
  L61: 59 ?? pop ecx
   66 3b 85 40 e5 ff ff ?? cmp ax, word ss:[ebp + 0xffffe540<4294960448,-6848>]
   0f 85 3b 03 00 00 ?? jne basic block L116
  
  L62: ff 85 38 e5 ff ff ?? inc dword ss:[ebp + 0xffffe538<4294960440,-6856>]
   ff 85 30 e5 ff ff ?? inc dword ss:[ebp + 0xffffe530<4294960432,-6864>]
  
  L63: 8b 45 10 ?? mov eax, dword ss:[ebp + 0x10<16>]
   39 85 44 e5 ff ff ?? cmp dword ss:[ebp + 0xffffe544<4294960452,-6844>], eax
   0f 82 f9 fd ff ff ?? jb basic block L30
  
  L64: e9 27 03 00 00 ?? jmp basic block L118
  
  L65: 8b 0e ?? mov ecx, dword ds:[esi]
   8a 13 ?? mov dl, byte ds:[ebx]
   ff 85 38 e5 ff ff ?? inc dword ss:[ebp + 0xffffe538<4294960440,-6856>]
   88 54 0f 34 ?? mov byte ds:[edi + ecx + 0x34<52>], dl
   8b 0e ?? mov ecx, dword ds:[esi]
   89 44 0f 38 ?? mov dword ds:[edi + ecx + 0x38<56>], eax
   e9 0e 03 00 00 ?? jmp basic block L118
  
  L66: 33 c9 ?? xor ecx, ecx
  
  L67: 8b 06 ?? mov eax, dword ds:[esi]
   03 c7 ?? add eax, edi
   f6 40 04 80 ?? test byte ds:[eax + 4], 0x80<128,-128>
   0f 84 bf 02 00 00 ?? je basic block L113
  
  L68: 8b 85 34 e5 ff ff ?? mov eax, dword ss:[ebp + 0xffffe534<4294960436,-6860>]
   89 8d 40 e5 ff ff ?? mov dword ss:[ebp + 0xffffe540<4294960448,-6848>], ecx
   84 db ?? test bl, bl
   0f 85 ca 00 00 00 ?? jne basic block L82
  
  L69: 89 85 3c e5 ff ff ?? mov dword ss:[ebp + 0xffffe53c<4294960444,-6852>], eax
   39 4d 10 ?? cmp dword ss:[ebp + 0x10<16>], ecx
   0f 86 20 03 00 00 ?? jbe basic block L127
  
  L70: eb 06 ?? jmp basic block L72
  
  L71: 8b b5 28 e5 ff ff ?? mov esi, dword ss:[ebp + 0xffffe528<4294960424,-6872>]
  
  L72: 8b 8d 3c e5 ff ff ?? mov ecx, dword ss:[ebp + 0xffffe53c<4294960444,-6852>]
   83 a5 44 e5 ff ff 00 ?? and dword ss:[ebp + 0xffffe544<4294960452,-6844>], 0
   2b 8d 34 e5 ff ff ?? sub ecx, dword ss:[ebp + 0xffffe534<4294960436,-6860>]
   8d 85 48 e5 ff ff ?? lea eax, ss:[ebp + 0xffffe548<4294960456,-6840>]
  
  L73: 3b 4d 10 ?? cmp ecx, dword ss:[ebp + 0x10<16>]
   73 39 ?? jae basic block L77
  
  L74: 8b 95 3c e5 ff ff ?? mov edx, dword ss:[ebp + 0xffffe53c<4294960444,-6852>]
   ff 85 3c e5 ff ff ?? inc dword ss:[ebp + 0xffffe53c<4294960444,-6852>]
   8a 12 ?? mov dl, byte ds:[edx]
   41 ?? inc ecx
   80 fa 0a ?? cmp dl, 10
   75 10 ?? jne basic block L76
  
  L75: ff 85 30 e5 ff ff ?? inc dword ss:[ebp + 0xffffe530<4294960432,-6864>]
   c6 00 0d ?? mov byte ds:[eax], 13
   40 ?? inc eax
   ff 85 44 e5 ff ff ?? inc dword ss:[ebp + 0xffffe544<4294960452,-6844>]
  
  L76: 88 10 ?? mov byte ds:[eax], dl
   40 ?? inc eax
   ff 85 44 e5 ff ff ?? inc dword ss:[ebp + 0xffffe544<4294960452,-6844>]
   81 bd 44 e5 ff ff ff 13 ?? cmp dword ss:[ebp + 0xffffe544<4294960452,-6844>], 0x000013ff<5119>
   00 00
   72 c2 ?? jb basic block L73
  
  L77: 8b d8 ?? mov ebx, eax
   8d 85 48 e5 ff ff ?? lea eax, ss:[ebp + 0xffffe548<4294960456,-6840>]
   2b d8 ?? sub ebx, eax
   6a 00 ?? push 0
   8d 85 2c e5 ff ff ?? lea eax, ss:[ebp + 0xffffe52c<4294960428,-6868>]
   50 ?? push eax
   53 ?? push ebx
   8d 85 48 e5 ff ff ?? lea eax, ss:[ebp + 0xffffe548<4294960456,-6840>]
   50 ?? push eax
   8b 06 ?? mov eax, dword ds:[esi]
   ff 34 07 ?? push dword ds:[edi + eax]
   ff 15 78 82 43 00 ?? call dword ds:[0x00438278]
  
  L78: 85 c0 ?? test eax, eax
   0f 84 42 02 00 00 ?? je basic block L116
  
  L79: 8b 85 2c e5 ff ff ?? mov eax, dword ss:[ebp + 0xffffe52c<4294960428,-6868>]
   01 85 38 e5 ff ff ?? add dword ss:[ebp + 0xffffe538<4294960440,-6856>], eax
   3b c3 ?? cmp eax, ebx
   0f 8c 3a 02 00 00 ?? jl basic block L118
  
  L80: 8b 85 3c e5 ff ff ?? mov eax, dword ss:[ebp + 0xffffe53c<4294960444,-6852>]
   2b 85 34 e5 ff ff ?? sub eax, dword ss:[ebp + 0xffffe534<4294960436,-6860>]
   3b 45 10 ?? cmp eax, dword ss:[ebp + 0x10<16>]
   0f 82 4c ff ff ff ?? jb basic block L71
  
  L81: e9 20 02 00 00 ?? jmp basic block L118
  
  L82: 89 85 44 e5 ff ff ?? mov dword ss:[ebp + 0xffffe544<4294960452,-6844>], eax
   80 fb 02 ?? cmp bl, 2
   0f 85 d1 00 00 00 ?? jne basic block L96
  
  L83: 39 4d 10 ?? cmp dword ss:[ebp + 0x10<16>], ecx
   0f 86 4d 02 00 00 ?? jbe basic block L127
  
  L84: eb 06 ?? jmp basic block L86
  
  L85: 8b b5 28 e5 ff ff ?? mov esi, dword ss:[ebp + 0xffffe528<4294960424,-6872>]
  
  L86: 8b 8d 44 e5 ff ff ?? mov ecx, dword ss:[ebp + 0xffffe544<4294960452,-6844>]
   83 a5 3c e5 ff ff 00 ?? and dword ss:[ebp + 0xffffe53c<4294960444,-6852>], 0
   2b 8d 34 e5 ff ff ?? sub ecx, dword ss:[ebp + 0xffffe534<4294960436,-6860>]
   8d 85 48 e5 ff ff ?? lea eax, ss:[ebp + 0xffffe548<4294960456,-6840>]
  
  L87: 3b 4d 10 ?? cmp ecx, dword ss:[ebp + 0x10<16>]
   73 46 ?? jae basic block L91
  
  L88: 8b 95 44 e5 ff ff ?? mov edx, dword ss:[ebp + 0xffffe544<4294960452,-6844>]
   83 85 44 e5 ff ff 02 ?? add dword ss:[ebp + 0xffffe544<4294960452,-6844>], 2
   0f b7 12 ?? movzx edx, word ds:[edx]
   41 ?? inc ecx
   41 ?? inc ecx
   66 83 fa 0a ?? cmp dx, 10
   75 16 ?? jne basic block L90
  
  L89: 83 85 30 e5 ff ff 02 ?? add dword ss:[ebp + 0xffffe530<4294960432,-6864>], 2
   6a 0d ?? push 13
   5b ?? pop ebx
   66 89 18 ?? mov word ds:[eax], bx
   40 ?? inc eax
   40 ?? inc eax
   83 85 3c e5 ff ff 02 ?? add dword ss:[ebp + 0xffffe53c<4294960444,-6852>], 2
  
  L90: 83 85 3c e5 ff ff 02 ?? add dword ss:[ebp + 0xffffe53c<4294960444,-6852>], 2
   66 89 10 ?? mov word ds:[eax], dx
   40 ?? inc eax
   40 ?? inc eax
   81 bd 3c e5 ff ff fe 13 ?? cmp dword ss:[ebp + 0xffffe53c<4294960444,-6852>], 0x000013fe<5118>
   00 00
   72 b5 ?? jb basic block L87
  
  L91: 8b d8 ?? mov ebx, eax
   8d 85 48 e5 ff ff ?? lea eax, ss:[ebp + 0xffffe548<4294960456,-6840>]
   2b d8 ?? sub ebx, eax
   6a 00 ?? push 0
   8d 85 2c e5 ff ff ?? lea eax, ss:[ebp + 0xffffe52c<4294960428,-6868>]
   50 ?? push eax
   53 ?? push ebx
   8d 85 48 e5 ff ff ?? lea eax, ss:[ebp + 0xffffe548<4294960456,-6840>]
   50 ?? push eax
   8b 06 ?? mov eax, dword ds:[esi]
   ff 34 07 ?? push dword ds:[edi + eax]
   ff 15 78 82 43 00 ?? call dword ds:[0x00438278]
  
  L92: 85 c0 ?? test eax, eax
   0f 84 62 01 00 00 ?? je basic block L116
  
  L93: 8b 85 2c e5 ff ff ?? mov eax, dword ss:[ebp + 0xffffe52c<4294960428,-6868>]
   01 85 38 e5 ff ff ?? add dword ss:[ebp + 0xffffe538<4294960440,-6856>], eax
   3b c3 ?? cmp eax, ebx
   0f 8c 5a 01 00 00 ?? jl basic block L118
  
  L94: 8b 85 44 e5 ff ff ?? mov eax, dword ss:[ebp + 0xffffe544<4294960452,-6844>]
   2b 85 34 e5 ff ff ?? sub eax, dword ss:[ebp + 0xffffe534<4294960436,-6860>]
   3b 45 10 ?? cmp eax, dword ss:[ebp + 0x10<16>]
   0f 82 3f ff ff ff ?? jb basic block L85
  
  L95: e9 40 01 00 00 ?? jmp basic block L118
  
  L96: 39 4d 10 ?? cmp dword ss:[ebp + 0x10<16>], ecx
   0f 86 7c 01 00 00 ?? jbe basic block L127
  
  L97: 8b 8d 44 e5 ff ff ?? mov ecx, dword ss:[ebp + 0xffffe544<4294960452,-6844>]
   83 a5 3c e5 ff ff 00 ?? and dword ss:[ebp + 0xffffe53c<4294960444,-6852>], 0
   2b 8d 34 e5 ff ff ?? sub ecx, dword ss:[ebp + 0xffffe534<4294960436,-6860>]
   6a 02 ?? push 2
   8d 85 48 f9 ff ff ?? lea eax, ss:[ebp + 0xfffff948<4294965576,-1720>]
   5e ?? pop esi
  
  L98: 3b 4d 10 ?? cmp ecx, dword ss:[ebp + 0x10<16>]
   73 3c ?? jae basic block L102
  
  L99: 8b 95 44 e5 ff ff ?? mov edx, dword ss:[ebp + 0xffffe544<4294960452,-6844>]
   0f b7 12 ?? movzx edx, word ds:[edx]
   01 b5 44 e5 ff ff ?? add dword ss:[ebp + 0xffffe544<4294960452,-6844>], esi
   03 ce ?? add ecx, esi
   66 83 fa 0a ?? cmp dx, 10
   75 0e ?? jne basic block L101
  
  L100: 6a 0d ?? push 13
   5b ?? pop ebx
   66 89 18 ?? mov word ds:[eax], bx
   03 c6 ?? add eax, esi
   01 b5 3c e5 ff ff ?? add dword ss:[ebp + 0xffffe53c<4294960444,-6852>], esi
  
  L101: 01 b5 3c e5 ff ff ?? add dword ss:[ebp + 0xffffe53c<4294960444,-6852>], esi
   66 89 10 ?? mov word ds:[eax], dx
   03 c6 ?? add eax, esi
   81 bd 3c e5 ff ff a8 06 ?? cmp dword ss:[ebp + 0xffffe53c<4294960444,-6852>], 0x000006a8<1704>
   00 00
   72 bf ?? jb basic block L98
  
  L102: 33 f6 ?? xor esi, esi
   56 ?? push esi
   56 ?? push esi
   68 55 0d 00 00 ?? push 0x00000d55<3413>
   8d 8d f0 eb ff ff ?? lea ecx, ss:[ebp + 0xffffebf0<4294962160,-5136>]
   51 ?? push ecx
   8d 8d 48 f9 ff ff ?? lea ecx, ss:[ebp + 0xfffff948<4294965576,-1720>]
   2b c1 ?? sub eax, ecx
   99 ?? cdq
   2b c2 ?? sub eax, edx
   d1 f8 ?? sar eax, 1
   50 ?? push eax
   8b c1 ?? mov eax, ecx
   50 ?? push eax
   56 ?? push esi
   68 e9 fd 00 00 ?? push 0x0000fde9<65001>
   ff 15 3c 82 43 00 ?? call dword ds:[0x0043823c]
  
  L103: 8b d8 ?? mov ebx, eax
   3b de ?? cmp ebx, esi
   0f 84 97 00 00 00 ?? je basic block L116
  
  L104: 6a 00 ?? push 0
   8d 85 2c e5 ff ff ?? lea eax, ss:[ebp + 0xffffe52c<4294960428,-6868>]
   50 ?? push eax
   8b c3 ?? mov eax, ebx
   2b c6 ?? sub eax, esi
   50 ?? push eax
   8d 84 35 f0 eb ff ff ?? lea eax, ss:[ebp + esi + 0xffffebf0<4294962160,-5136>]
   50 ?? push eax
   8b 85 28 e5 ff ff ?? mov eax, dword ss:[ebp + 0xffffe528<4294960424,-6872>]
   8b 00 ?? mov eax, dword ds:[eax]
   ff 34 07 ?? push dword ds:[edi + eax]
   ff 15 78 82 43 00 ?? call dword ds:[0x00438278]
  
  L105: 85 c0 ?? test eax, eax
   74 0c ?? je basic block L108
  
  L106: 03 b5 2c e5 ff ff ?? add esi, dword ss:[ebp + 0xffffe52c<4294960428,-6868>]
   3b de ?? cmp ebx, esi
   7f cb ?? jg basic block L104
  
  L107: eb 0c ?? jmp basic block L110
  
  L108: ff 15 30 82 43 00 ?? call dword ds:[0x00438230]
  
  L109: 89 85 40 e5 ff ff ?? mov dword ss:[ebp + 0xffffe540<4294960448,-6848>], eax
  
  L110: 3b de ?? cmp ebx, esi
   7f 5c ?? jg basic block L118
  
  L111: 8b 85 44 e5 ff ff ?? mov eax, dword ss:[ebp + 0xffffe544<4294960452,-6844>]
   2b 85 34 e5 ff ff ?? sub eax, dword ss:[ebp + 0xffffe534<4294960436,-6860>]
   89 85 38 e5 ff ff ?? mov dword ss:[ebp + 0xffffe538<4294960440,-6856>], eax
   3b 45 10 ?? cmp eax, dword ss:[ebp + 0x10<16>]
   0f 82 0a ff ff ff ?? jb basic block L97
  
  L112: eb 3f ?? jmp basic block L118
  
  L113: 6a 00 ?? push 0
   8d 8d 2c e5 ff ff ?? lea ecx, ss:[ebp + 0xffffe52c<4294960428,-6868>]
   51 ?? push ecx
   ff 75 10 ?? push dword ss:[ebp + 0x10<16>]
   ff b5 34 e5 ff ff ?? push dword ss:[ebp + 0xffffe534<4294960436,-6860>]
   ff 30 ?? push dword ds:[eax]
   ff 15 78 82 43 00 ?? call dword ds:[0x00438278]
  
  L114: 85 c0 ?? test eax, eax
   74 15 ?? je basic block L116
  
  L115: 8b 85 2c e5 ff ff ?? mov eax, dword ss:[ebp + 0xffffe52c<4294960428,-6868>]
   83 a5 40 e5 ff ff 00 ?? and dword ss:[ebp + 0xffffe540<4294960448,-6848>], 0
   89 85 38 e5 ff ff ?? mov dword ss:[ebp + 0xffffe538<4294960440,-6856>], eax
   eb 0c ?? jmp basic block L118
  
  L116: ff 15 30 82 43 00 ?? call dword ds:[0x00438230]
  
  L117: 89 85 40 e5 ff ff ?? mov dword ss:[ebp + 0xffffe540<4294960448,-6848>], eax
  
  L118: 83 bd 38 e5 ff ff 00 ?? cmp dword ss:[ebp + 0xffffe538<4294960440,-6856>], 0
   75 6c ?? jne basic block L134
  
  L119: 83 bd 40 e5 ff ff 00 ?? cmp dword ss:[ebp + 0xffffe540<4294960448,-6848>], 0
   74 2d ?? je basic block L126
  
  L120: 6a 05 ?? push 5
   5e ?? pop esi
   39 b5 40 e5 ff ff ?? cmp dword ss:[ebp + 0xffffe540<4294960448,-6848>], esi
   75 14 ?? jne basic block L124
  
  L121: e8 be cb ff ff ?? call function 0x0040c522
  
  L122: c7 00 09 00 00 00 ?? mov dword ds:[eax], 9
   e8 c6 cb ff ff ?? call function 0x0040c535
  
  L123: 89 30 ?? mov dword ds:[eax], esi
   eb 3f ?? jmp basic block L133
  
  L124: ff b5 40 e5 ff ff ?? push dword ss:[ebp + 0xffffe540<4294960448,-6848>]
   e8 ca cb ff ff ?? call function 0x0040c548
  
  L125: 59 ?? pop ecx
   eb 31 ?? jmp basic block L133
  
  L126: 8b b5 28 e5 ff ff ?? mov esi, dword ss:[ebp + 0xffffe528<4294960424,-6872>]
  
  L127: 8b 06 ?? mov eax, dword ds:[esi]
   f6 44 07 04 40 ?? test byte ds:[edi + eax + 4], 0x40<64>
   74 0f ?? je basic block L130
  
  L128: 8b 85 34 e5 ff ff ?? mov eax, dword ss:[ebp + 0xffffe534<4294960436,-6860>]
   80 38 1a ?? cmp byte ds:[eax], 0x1a<26>
   75 04 ?? jne basic block L130
  
  L129: 33 c0 ?? xor eax, eax
   eb 24 ?? jmp basic block L135
  
  L130: e8 7e cb ff ff ?? call function 0x0040c522
  
  L131: c7 00 1c 00 00 00 ?? mov dword ds:[eax], 0x0000001c<28>
   e8 86 cb ff ff ?? call function 0x0040c535
  
  L132: 83 20 00 ?? and dword ds:[eax], 0
  
  L133: 83 c8 ff ?? or eax, 0xff<255,-1>
   eb 0c ?? jmp basic block L135
  
  L134: 8b 85 38 e5 ff ff ?? mov eax, dword ss:[ebp + 0xffffe538<4294960440,-6856>]
   2b 85 30 e5 ff ff ?? sub eax, dword ss:[ebp + 0xffffe530<4294960432,-6864>]
  
  L135: 5f ?? pop edi
   5b ?? pop ebx
  
  L136: 8b 4d fc ?? mov ecx, dword ss:[ebp + 0xfc<252,-4>]
   33 cd ?? xor ecx, ebp
   5e ?? pop esi
   e8 be 66 ff ff ?? call function 0x0040608e
  
  L137: c9 ?? leave
   c3 ?? ret
  
  