46fccd:	0f 86 6b 0c 00 00    	jbe    0x47093e
46fcd3:	8b 04 d1             	mov    (%ecx,%edx,8),%eax
46fcd6:	8b 74 d1 04          	mov    0x4(%ecx,%edx,8),%esi
46fcda:	8d 8d 38 ff ff ff    	lea    -0xc8(%ebp),%ecx
46fce0:	89 85 1c ff ff ff    	mov    %eax,-0xe4(%ebp)
46fce6:	ff 15 20 74 4a 00    	call   *0x4a7420
46fcec:	0f b7 c6             	movzwl %si,%eax
46fcef:	8d 8d 38 ff ff ff    	lea    -0xc8(%ebp),%ecx
46fcf5:	50                   	push   %eax
46fcf6:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
46fcfa:	ff 15 40 74 4a 00    	call   *0x4a7440
46fd00:	85 c0                	test   %eax,%eax
46fd02:	74 19                	je     0x46fd1d
46fd04:	8b 8d 38 ff ff ff    	mov    -0xc8(%ebp),%ecx
46fd0a:	8d 95 08 ff ff ff    	lea    -0xf8(%ebp),%edx
46fd10:	e8 3c 63 fb ff       	call   0x426051
46fd15:	85 c0                	test   %eax,%eax
46fd17:	0f 88 0a 0c 00 00    	js     0x470927
46fd1d:	6a 13                	push   $0x13
46fd1f:	58                   	pop    %eax
46fd20:	66 89 85 c0 fe ff ff 	mov    %ax,-0x140(%ebp)
46fd27:	8b 85 1c ff ff ff    	mov    -0xe4(%ebp),%eax
46fd2d:	6a 30                	push   $0x30
46fd2f:	89 85 c8 fe ff ff    	mov    %eax,-0x138(%ebp)
46fd35:	ff 15 14 74 4a 00    	call   *0x4a7414
46fd3b:	59                   	pop    %ecx
46fd3c:	89 85 d4 fe ff ff    	mov    %eax,-0x12c(%ebp)
46fd42:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
46fd46:	85 c0                	test   %eax,%eax
46fd48:	74 11                	je     0x46fd5b
46fd4a:	8b c8                	mov    %eax,%ecx
46fd4c:	e8 2c f7 ff ff       	call   0x46f47d
46fd51:	8b f0                	mov    %eax,%esi
46fd53:	89 b5 18 ff ff ff    	mov    %esi,-0xe8(%ebp)
46fd59:	eb 08                	jmp    0x46fd63
46fd5b:	8b f3                	mov    %ebx,%esi
46fd5d:	89 9d 18 ff ff ff    	mov    %ebx,-0xe8(%ebp)
46fd63:	8d 85 08 ff ff ff    	lea    -0xf8(%ebp),%eax
46fd69:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
46fd6d:	50                   	push   %eax
46fd6e:	68 d0 f5 40 00       	push   $0x40f5d0
46fd73:	8b ce                	mov    %esi,%ecx
46fd75:	e8 d0 f7 ff ff       	call   0x46f54a
46fd7a:	8d 85 c0 fe ff ff    	lea    -0x140(%ebp),%eax
46fd80:	8b ce                	mov    %esi,%ecx
46fd82:	50                   	push   %eax
46fd83:	68 8c f8 40 00       	push   $0x40f88c
46fd88:	e8 bd f7 ff ff       	call   0x46f54a
46fd8d:	89 9d 34 ff ff ff    	mov    %ebx,-0xcc(%ebp)
46fd93:	8d 46 2c             	lea    0x2c(%esi),%eax
46fd96:	c6 45 fc 04          	movb   $0x4,-0x4(%ebp)
46fd9a:	8b 30                	mov    (%eax),%esi
46fd9c:	8d 8d 34 ff ff ff    	lea    -0xcc(%ebp),%ecx
46fda2:	51                   	push   %ecx
46fda3:	68 70 fd 40 00       	push   $0x40fd70
46fda8:	50                   	push   %eax
46fda9:	8b 0e                	mov    (%esi),%ecx
46fdab:	ff 15 2c 81 4a 00    	call   *0x4a812c
46fdb1:	ff 16                	call   *(%esi)
46fdb3:	89 85 30 ff ff ff    	mov    %eax,-0xd0(%ebp)
46fdb9:	85 c0                	test   %eax,%eax
46fdbb:	79 35                	jns    0x46fdf2
46fdbd:	8b bd 18 ff ff ff    	mov    -0xe8(%ebp),%edi
46fdc3:	6a 01                	push   $0x1
46fdc5:	8b 07                	mov    (%edi),%eax
46fdc7:	8b 70 04             	mov    0x4(%eax),%esi
46fdca:	8b ce                	mov    %esi,%ecx
46fdcc:	ff 15 2c 81 4a 00    	call   *0x4a812c
46fdd2:	8b cf                	mov    %edi,%ecx
46fdd4:	ff d6                	call   *%esi
46fdd6:	8d 8d 34 ff ff ff    	lea    -0xcc(%ebp),%ecx
46fddc:	e8 90 0b fb ff       	call   0x420971
46fde1:	8d 8d 38 ff ff ff    	lea    -0xc8(%ebp),%ecx
46fde7:	ff 15 1c 74 4a 00    	call   *0x4a741c
46fded:	e9 97 00 00 00       	jmp    0x46fe89
46fdf2:	8b 85 28 ff ff ff    	mov    -0xd8(%ebp),%eax
46fdf8:	ff b5 34 ff ff ff    	push   -0xcc(%ebp)
46fdfe:	50                   	push   %eax
46fdff:	8b 08                	mov    (%eax),%ecx
46fe01:	8b 71 14             	mov    0x14(%ecx),%esi
46fe04:	8b ce                	mov    %esi,%ecx
46fe06:	ff 15 2c 81 4a 00    	call   *0x4a812c
46fe0c:	ff d6                	call   *%esi
46fe0e:	8d 85 08 ff ff ff    	lea    -0xf8(%ebp),%eax
46fe14:	50                   	push   %eax
46fe15:	ff 15 64 7e 4a 00    	call   *0x4a7e64
46fe1b:	8d 85 c0 fe ff ff    	lea    -0x140(%ebp),%eax
46fe21:	50                   	push   %eax
46fe22:	ff 15 64 7e 4a 00    	call   *0x4a7e64
46fe28:	8d 8d 34 ff ff ff    	lea    -0xcc(%ebp),%ecx
46fe2e:	e8 3e 0b fb ff       	call   0x420971
46fe33:	8d 8d 38 ff ff ff    	lea    -0xc8(%ebp),%ecx
46fe39:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
46fe3d:	ff 15 1c 74 4a 00    	call   *0x4a741c
46fe43:	8b 95 20 ff ff ff    	mov    -0xe0(%ebp),%edx
46fe49:	8b 8d 2c ff ff ff    	mov    -0xd4(%ebp),%ecx
46fe4f:	42                   	inc    %edx
46fe50:	89 95 20 ff ff ff    	mov    %edx,-0xe0(%ebp)
46fe56:	e9 55 fe ff ff       	jmp    0x46fcb0
46fe5b:	8b 85 a8 fe ff ff    	mov    -0x158(%ebp),%eax
46fe61:	89 85 38 ff ff ff    	mov    %eax,-0xc8(%ebp)
46fe67:	b8 7d fe 46 00       	mov    $0x46fe7d,%eax
46fe6c:	c3                   	ret
46fe6d:	c7 85 38 ff ff ff 05 	movl   $0x80004005,-0xc8(%ebp)
46fe74:	40 00 80
46fe77:	b8 7d fe 46 00       	mov    $0x46fe7d,%eax
46fe7c:	c3                   	ret
46fe7d:	8b 85 38 ff ff ff    	mov    -0xc8(%ebp),%eax
46fe83:	89 85 30 ff ff ff    	mov    %eax,-0xd0(%ebp)
46fe89:	c7 45 fc 06 00 00 00 	movl   $0x6,-0x4(%ebp)
46fe90:	8b 85 28 ff ff ff    	mov    -0xd8(%ebp),%eax
46fe96:	e9 ec 07 00 00       	jmp    0x470687
46fe9b:	ba 30 f6 40 00       	mov    $0x40f630,%edx
46fea0:	8b cb                	mov    %ebx,%ecx
46fea2:	8b 04 8e             	mov    (%esi,%ecx,4),%eax
46fea5:	3b 04 8a             	cmp    (%edx,%ecx,4),%eax
46fea8:	0f 85 f8 07 00 00    	jne    0x4706a6
46feae:	41                   	inc    %ecx
46feaf:	83 f9 04             	cmp    $0x4,%ecx
46feb2:	75 ee                	jne    0x46fea2
46feb4:	89 9d 34 ff ff ff    	mov    %ebx,-0xcc(%ebp)
46feba:	c7 45 fc 09 00 00 00 	movl   $0x9,-0x4(%ebp)
46fec1:	8d 8d 34 ff ff ff    	lea    -0xcc(%ebp),%ecx
46fec7:	8b 85 2c ff ff ff    	mov    -0xd4(%ebp),%eax
46fecd:	51                   	push   %ecx
46fece:	68 0c 34 41 00       	push   $0x41340c
46fed3:	8b 40 08             	mov    0x8(%eax),%eax
46fed6:	50                   	push   %eax
46fed7:	8b 30                	mov    (%eax),%esi
46fed9:	8b 0e                	mov    (%esi),%ecx
46fedb:	ff 15 2c 81 4a 00    	call   *0x4a812c
46fee1:	ff 16                	call   *(%esi)
46fee3:	89 85 30 ff ff ff    	mov    %eax,-0xd0(%ebp)
46fee9:	85 c0                	test   %eax,%eax
46feeb:	0f 88 89 07 00 00    	js     0x47067a
46fef1:	89 9d c4 fe ff ff    	mov    %ebx,-0x13c(%ebp)
46fef7:	89 9d c8 fe ff ff    	mov    %ebx,-0x138(%ebp)
46fefd:	89 9d cc fe ff ff    	mov    %ebx,-0x134(%ebp)
46ff03:	c6 45 fc 0b          	movb   $0xb,-0x4(%ebp)
46ff07:	8d 8d c0 fe ff ff    	lea    -0x140(%ebp),%ecx
46ff0d:	8b 7f 24             	mov    0x24(%edi),%edi
46ff10:	51                   	push   %ecx
46ff11:	ff b5 20 ff ff ff    	push   -0xe0(%ebp)
46ff17:	8b 07                	mov    (%edi),%eax
46ff19:	8b 70 08             	mov    0x8(%eax),%esi
46ff1c:	8b ce                	mov    %esi,%ecx
46ff1e:	ff 15 2c 81 4a 00    	call   *0x4a812c
46ff24:	8b cf                	mov    %edi,%ecx
46ff26:	ff d6                	call   *%esi
46ff28:	85 c0                	test   %eax,%eax
46ff2a:	78 24                	js     0x46ff50
46ff2c:	8b 85 34 ff ff ff    	mov    -0xcc(%ebp),%eax
46ff32:	50                   	push   %eax
46ff33:	8b 08                	mov    (%eax),%ecx
46ff35:	8b 71 24             	mov    0x24(%ecx),%esi
46ff38:	8b ce                	mov    %esi,%ecx
46ff3a:	ff 15 2c 81 4a 00    	call   *0x4a812c
46ff40:	ff d6                	call   *%esi
46ff42:	8b bd 24 ff ff ff    	mov    -0xdc(%ebp),%edi
46ff48:	8d b5 c0 fe ff ff    	lea    -0x140(%ebp),%esi
46ff4e:	eb 09                	jmp    0x46ff59
46ff50:	8b bd 24 ff ff ff    	mov    -0xdc(%ebp),%edi
46ff56:	8d 77 14             	lea    0x14(%edi),%esi
46ff59:	8b 07                	mov    (%edi),%eax
46ff5b:	89 b5 28 ff ff ff    	mov    %esi,-0xd8(%ebp)
46ff61:	2b c3                	sub    %ebx,%eax
46ff63:	0f 84 7f 03 00 00    	je     0x4702e8
46ff69:	83 e8 01             	sub    $0x1,%eax
46ff6c:	0f 84 d6 01 00 00    	je     0x470148
46ff72:	83 e8 01             	sub    $0x1,%eax
46ff75:	0f 85 4d 01 00 00    	jne    0x4700c8
46ff7b:	8b ce                	mov    %esi,%ecx
46ff7d:	e8 f0 13 fb ff       	call   0x421372
46ff82:	8b c8                	mov    %eax,%ecx
46ff84:	89 9d 2c ff ff ff    	mov    %ebx,-0xd4(%ebp)
46ff8a:	89 8d 1c ff ff ff    	mov    %ecx,-0xe4(%ebp)
46ff90:	8b c3                	mov    %ebx,%eax
46ff92:	3b c1                	cmp    %ecx,%eax
46ff94:	0f 83 2e 01 00 00    	jae    0x4700c8
46ff9a:	50                   	push   %eax
46ff9b:	8b ce                	mov    %esi,%ecx
46ff9d:	e8 f3 09 00 00       	call   0x470995
46ffa2:	8b f0                	mov    %eax,%esi
46ffa4:	8d bd fc fe ff ff    	lea    -0x104(%ebp),%edi
46ffaa:	33 c0                	xor    %eax,%eax
46ffac:	6a 30                	push   $0x30
46ffae:	a5                   	movsl  %ds:(%esi),%es:(%edi)
46ffaf:	a5                   	movsl  %ds:(%esi),%es:(%edi)
46ffb0:	a5                   	movsl  %ds:(%esi),%es:(%edi)
46ffb1:	8d bd ec fe ff ff    	lea    -0x114(%ebp),%edi
46ffb7:	ab                   	stos   %eax,%es:(%edi)
46ffb8:	ab                   	stos   %eax,%es:(%edi)
46ffb9:	ab                   	stos   %eax,%es:(%edi)
46ffba:	ab                   	stos   %eax,%es:(%edi)
46ffbb:	33 c0                	xor    %eax,%eax
46ffbd:	8d bd dc fe ff ff    	lea    -0x124(%ebp),%edi
46ffc3:	ab                   	stos   %eax,%es:(%edi)
46ffc4:	ab                   	stos   %eax,%es:(%edi)
46ffc5:	ab                   	stos   %eax,%es:(%edi)
46ffc6:	ab                   	stos   %eax,%es:(%edi)
46ffc7:	33 c0                	xor    %eax,%eax
46ffc9:	8d bd 08 ff ff ff    	lea    -0xf8(%ebp),%edi
46ffcf:	ab                   	stos   %eax,%es:(%edi)
46ffd0:	ab                   	stos   %eax,%es:(%edi)
46ffd1:	ab                   	stos   %eax,%es:(%edi)
46ffd2:	ab                   	stos   %eax,%es:(%edi)
46ffd3:	ff 15 14 74 4a 00    	call   *0x4a7414
46ffd9:	59                   	pop    %ecx
46ffda:	89 85 d4 fe ff ff    	mov    %eax,-0x12c(%ebp)
46ffe0:	c6 45 fc 15          	movb   $0x15,-0x4(%ebp)
46ffe4:	85 c0                	test   %eax,%eax
46ffe6:	74 0b                	je     0x46fff3
46ffe8:	8b c8                	mov    %eax,%ecx
46ffea:	e8 8e f4 ff ff       	call   0x46f47d
46ffef:	8b f8                	mov    %eax,%edi
46fff1:	eb 02                	jmp    0x46fff5
46fff3:	8b fb                	mov    %ebx,%edi
46fff5:	6a 0b                	push   $0xb
46fff7:	59                   	pop    %ecx
46fff8:	88 4d fc             	mov    %cl,-0x4(%ebp)
46fffb:	8b 85 04 ff ff ff    	mov    -0xfc(%ebp),%eax
470001:	85 c0                	test   %eax,%eax
470003:	74 23                	je     0x470028
470005:	6a 13                	push   $0x13
470007:	59                   	pop    %ecx
470008:	89 85 10 ff ff ff    	mov    %eax,-0xf0(%ebp)
47000e:	8d 85 08 ff ff ff    	lea    -0xf8(%ebp),%eax
470014:	50                   	push   %eax
470015:	66 89 8d 08 ff ff ff 	mov    %cx,-0xf8(%ebp)
47001c:	8b cf                	mov    %edi,%ecx
47001e:	68 8c f8 40 00       	push   $0x40f88c
470023:	e8 22 f5 ff ff       	call   0x46f54a
470028:	6a 13                	push   $0x13
47002a:	58                   	pop    %eax
47002b:	66 89 85 ec fe ff ff 	mov    %ax,-0x114(%ebp)
470032:	8b cf                	mov    %edi,%ecx
470034:	8b 85 fc fe ff ff    	mov    -0x104(%ebp),%eax
47003a:	89 85 f4 fe ff ff    	mov    %eax,-0x10c(%ebp)
470040:	8d 85 ec fe ff ff    	lea    -0x114(%ebp),%eax
470046:	50                   	push   %eax
470047:	68 e0 f4 40 00       	push   $0x40f4e0
47004c:	e8 f9 f4 ff ff       	call   0x46f54a
470051:	6a 13                	push   $0x13
470053:	58                   	pop    %eax
470054:	66 89 85 dc fe ff ff 	mov    %ax,-0x124(%ebp)
47005b:	8b cf                	mov    %edi,%ecx
47005d:	8b 85 00 ff ff ff    	mov    -0x100(%ebp),%eax
470063:	89 85 e4 fe ff ff    	mov    %eax,-0x11c(%ebp)
470069:	8d 85 dc fe ff ff    	lea    -0x124(%ebp),%eax
47006f:	50                   	push   %eax
470070:	68 bc f5 40 00       	push   $0x40f5bc
470075:	e8 d0 f4 ff ff       	call   0x46f54a
47007a:	89 9d 38 ff ff ff    	mov    %ebx,-0xc8(%ebp)
470080:	8d 47 2c             	lea    0x2c(%edi),%eax
470083:	c6 45 fc 16          	movb   $0x16,-0x4(%ebp)
470087:	8b 30                	mov    (%eax),%esi
470089:	8d 8d 38 ff ff ff    	lea    -0xc8(%ebp),%ecx
47008f:	51                   	push   %ecx
470090:	68 70 fd 40 00       	push   $0x40fd70
470095:	50                   	push   %eax
470096:	8b 0e                	mov    (%esi),%ecx
470098:	ff 15 2c 81 4a 00    	call   *0x4a812c
47009e:	ff 16                	call   *(%esi)
4700a0:	89 85 30 ff ff ff    	mov    %eax,-0xd0(%ebp)
4700a6:	85 c0                	test   %eax,%eax
4700a8:	79 2e                	jns    0x4700d8
4700aa:	8b 07                	mov    (%edi),%eax
4700ac:	6a 01                	push   $0x1
4700ae:	8b 70 04             	mov    0x4(%eax),%esi
4700b1:	8b ce                	mov    %esi,%ecx
4700b3:	ff 15 2c 81 4a 00    	call   *0x4a812c
4700b9:	8b cf                	mov    %edi,%ecx
4700bb:	ff d6                	call   *%esi
4700bd:	8d 8d 38 ff ff ff    	lea    -0xc8(%ebp),%ecx
4700c3:	e8 a9 08 fb ff       	call   0x420971
4700c8:	8d 8d c0 fe ff ff    	lea    -0x140(%ebp),%ecx
4700ce:	e8 3d d8 fa ff       	call   0x41d910
4700d3:	e9 a2 05 00 00       	jmp    0x47067a
4700d8:	8b 85 34 ff ff ff    	mov    -0xcc(%ebp),%eax
4700de:	ff b5 38 ff ff ff    	push   -0xc8(%ebp)
4700e4:	50                   	push   %eax
4700e5:	8b 08                	mov    (%eax),%ecx
4700e7:	8b 71 14             	mov    0x14(%ecx),%esi
4700ea:	8b ce                	mov    %esi,%ecx
4700ec:	ff 15 2c 81 4a 00    	call   *0x4a812c
4700f2:	ff d6                	call   *%esi
4700f4:	8d 85 ec fe ff ff    	lea    -0x114(%ebp),%eax
4700fa:	50                   	push   %eax
4700fb:	ff 15 64 7e 4a 00    	call   *0x4a7e64
470101:	8d 85 dc fe ff ff    	lea    -0x124(%ebp),%eax
470107:	50                   	push   %eax
470108:	ff 15 64 7e 4a 00    	call   *0x4a7e64
47010e:	8d 85 08 ff ff ff    	lea    -0xf8(%ebp),%eax
470114:	50                   	push   %eax
470115:	ff 15 64 7e 4a 00    	call   *0x4a7e64
47011b:	8d 8d 38 ff ff ff    	lea    -0xc8(%ebp),%ecx
470121:	c6 45 fc 0b          	movb   $0xb,-0x4(%ebp)
470125:	e8 47 08 fb ff       	call   0x420971
47012a:	8b 85 2c ff ff ff    	mov    -0xd4(%ebp),%eax
470130:	8b b5 28 ff ff ff    	mov    -0xd8(%ebp),%esi
470136:	40                   	inc    %eax
470137:	8b 8d 1c ff ff ff    	mov    -0xe4(%ebp),%ecx
47013d:	89 85 2c ff ff ff    	mov    %eax,-0xd4(%ebp)
470143:	e9 4a fe ff ff       	jmp    0x46ff92
470148:	8b ce                	mov    %esi,%ecx
47014a:	e8 23 12 fb ff       	call   0x421372
47014f:	8b c8                	mov    %eax,%ecx
470151:	89 9d 2c ff ff ff    	mov    %ebx,-0xd4(%ebp)
470157:	89 8d 1c ff ff ff    	mov    %ecx,-0xe4(%ebp)
47015d:	8b c3                	mov    %ebx,%eax
47015f:	3b c1                	cmp    %ecx,%eax
470161:	0f 83 61 ff ff ff    	jae    0x4700c8
470167:	50                   	push   %eax
470168:	8b ce                	mov    %esi,%ecx
47016a:	e8 26 08 00 00       	call   0x470995
47016f:	8b f0                	mov    %eax,%esi
470171:	8d bd fc fe ff ff    	lea    -0x104(%ebp),%edi
470177:	33 c0                	xor    %eax,%eax
470179:	6a 13                	push   $0x13
47017b:	59                   	pop    %ecx
47017c:	a5                   	movsl  %ds:(%esi),%es:(%edi)
47017d:	6a 30                	push   $0x30
47017f:	a5                   	movsl  %ds:(%esi),%es:(%edi)
470180:	a5                   	movsl  %ds:(%esi),%es:(%edi)
470181:	8d bd 08 ff ff ff    	lea    -0xf8(%ebp),%edi
470187:	ab                   	stos   %eax,%es:(%edi)
470188:	ab                   	stos   %eax,%es:(%edi)
470189:	ab                   	stos   %eax,%es:(%edi)
47018a:	ab                   	stos   %eax,%es:(%edi)
47018b:	33 c0                	xor    %eax,%eax
47018d:	8d bd dc fe ff ff    	lea    -0x124(%ebp),%edi
470193:	66 89 8d 08 ff ff ff 	mov    %cx,-0xf8(%ebp)
47019a:	ab                   	stos   %eax,%es:(%edi)
47019b:	ab                   	stos   %eax,%es:(%edi)
47019c:	ab                   	stos   %eax,%es:(%edi)
47019d:	ab                   	stos   %eax,%es:(%edi)
47019e:	33 c0                	xor    %eax,%eax
4701a0:	8d bd ec fe ff ff    	lea    -0x114(%ebp),%edi
4701a6:	66 89 8d dc fe ff ff 	mov    %cx,-0x124(%ebp)
4701ad:	ab                   	stos   %eax,%es:(%edi)
4701ae:	ab                   	stos   %eax,%es:(%edi)
4701af:	ab                   	stos   %eax,%es:(%edi)
4701b0:	ab                   	stos   %eax,%es:(%edi)
4701b1:	8b 85 fc fe ff ff    	mov    -0x104(%ebp),%eax
4701b7:	89 85 10 ff ff ff    	mov    %eax,-0xf0(%ebp)
4701bd:	8b 85 00 ff ff ff    	mov    -0x100(%ebp),%eax
4701c3:	89 85 e4 fe ff ff    	mov    %eax,-0x11c(%ebp)
4701c9:	ff 15 14 74 4a 00    	call   *0x4a7414
4701cf:	59                   	pop    %ecx
4701d0:	89 85 d4 fe ff ff    	mov    %eax,-0x12c(%ebp)