413f32:	8b 7d 9c             	mov    -0x64(%ebp),%edi
413f35:	8d 45 f4             	lea    -0xc(%ebp),%eax
413f38:	8b 75 d4             	mov    -0x2c(%ebp),%esi
413f3b:	8d 8d 7c ff ff ff    	lea    -0x84(%ebp),%ecx
413f41:	89 45 8c             	mov    %eax,-0x74(%ebp)
413f44:	33 c0                	xor    %eax,%eax
413f46:	83 7d cc 04          	cmpl   $0x4,-0x34(%ebp)
413f4a:	51                   	push   %ecx
413f4b:	0f 94 c0             	sete   %al
413f4e:	89 9d 7c ff ff ff    	mov    %ebx,-0x84(%ebp)
413f54:	40                   	inc    %eax
413f55:	89 5d 80             	mov    %ebx,-0x80(%ebp)
413f58:	50                   	push   %eax
413f59:	89 45 dc             	mov    %eax,-0x24(%ebp)
413f5c:	8d 45 8c             	lea    -0x74(%ebp),%eax
413f5f:	50                   	push   %eax
413f60:	8d 45 b8             	lea    -0x48(%ebp),%eax
413f63:	50                   	push   %eax
413f64:	e8 de 0b 00 00       	call   0x414b47
413f69:	83 c4 10             	add    $0x10,%esp
413f6c:	83 f8 ff             	cmp    $0xffffffff,%eax
413f6f:	0f 84 03 02 00 00    	je     0x414178
413f75:	eb 55                	jmp    0x413fcc
413f77:	0f b6 07             	movzbl (%edi),%eax
413f7a:	0f be 88 58 67 42 00 	movsbl 0x426758(%eax),%ecx
413f81:	41                   	inc    %ecx
413f82:	89 4d d4             	mov    %ecx,-0x2c(%ebp)
413f85:	3b ca                	cmp    %edx,%ecx
413f87:	0f 8f 9e 01 00 00    	jg     0x41412b
413f8d:	33 c0                	xor    %eax,%eax
413f8f:	89 9d 74 ff ff ff    	mov    %ebx,-0x8c(%ebp)
413f95:	83 f9 04             	cmp    $0x4,%ecx
413f98:	89 9d 78 ff ff ff    	mov    %ebx,-0x88(%ebp)
413f9e:	8d 8d 74 ff ff ff    	lea    -0x8c(%ebp),%ecx
413fa4:	89 7d cc             	mov    %edi,-0x34(%ebp)
413fa7:	0f 94 c0             	sete   %al
413faa:	40                   	inc    %eax
413fab:	51                   	push   %ecx
413fac:	50                   	push   %eax
413fad:	89 45 dc             	mov    %eax,-0x24(%ebp)
413fb0:	8d 45 cc             	lea    -0x34(%ebp),%eax
413fb3:	50                   	push   %eax
413fb4:	8d 45 b8             	lea    -0x48(%ebp),%eax
413fb7:	50                   	push   %eax
413fb8:	e8 8a 0b 00 00       	call   0x414b47
413fbd:	83 c4 10             	add    $0x10,%esp
413fc0:	83 f8 ff             	cmp    $0xffffffff,%eax
413fc3:	0f 84 af 01 00 00    	je     0x414178
413fc9:	8b 75 d4             	mov    -0x2c(%ebp),%esi
413fcc:	4f                   	dec    %edi
413fcd:	03 fe                	add    %esi,%edi
413fcf:	eb 7f                	jmp    0x414050
413fd1:	8a 54 01 2d          	mov    0x2d(%ecx,%eax,1),%dl
413fd5:	f6 c2 04             	test   $0x4,%dl
413fd8:	74 1e                	je     0x413ff8
413fda:	8a 44 01 2e          	mov    0x2e(%ecx,%eax,1),%al
413fde:	80 e2 fb             	and    $0xfb,%dl
413fe1:	88 45 ec             	mov    %al,-0x14(%ebp)
413fe4:	8a 07                	mov    (%edi),%al
413fe6:	88 45 ed             	mov    %al,-0x13(%ebp)
413fe9:	8b 45 d4             	mov    -0x2c(%ebp),%eax
413fec:	6a 02                	push   $0x2
413fee:	88 54 01 2d          	mov    %dl,0x2d(%ecx,%eax,1)
413ff2:	8d 45 ec             	lea    -0x14(%ebp),%eax
413ff5:	50                   	push   %eax
413ff6:	eb 43                	jmp    0x41403b
413ff8:	8a 07                	mov    (%edi),%al
413ffa:	88 45 e3             	mov    %al,-0x1d(%ebp)
413ffd:	e8 bd c9 ff ff       	call   0x4109bf
414002:	0f b6 4d e3          	movzbl -0x1d(%ebp),%ecx
414006:	66 39 1c 48          	cmp    %bx,(%eax,%ecx,2)
41400a:	7d 2c                	jge    0x414038
41400c:	8d 47 01             	lea    0x1(%edi),%eax
41400f:	89 45 cc             	mov    %eax,-0x34(%ebp)
414012:	3b 45 a4             	cmp    -0x5c(%ebp),%eax
414015:	0f 83 31 01 00 00    	jae    0x41414c
41401b:	6a 02                	push   $0x2
41401d:	8d 45 b8             	lea    -0x48(%ebp),%eax
414020:	57                   	push   %edi
414021:	50                   	push   %eax
414022:	e8 72 e5 ff ff       	call   0x412599
414027:	83 c4 0c             	add    $0xc,%esp
41402a:	83 f8 ff             	cmp    $0xffffffff,%eax
41402d:	0f 84 45 01 00 00    	je     0x414178
414033:	8b 7d cc             	mov    -0x34(%ebp),%edi
414036:	eb 18                	jmp    0x414050
414038:	6a 01                	push   $0x1
41403a:	57                   	push   %edi
41403b:	8d 45 b8             	lea    -0x48(%ebp),%eax
41403e:	50                   	push   %eax
41403f:	e8 55 e5 ff ff       	call   0x412599
414044:	83 c4 0c             	add    $0xc,%esp
414047:	83 f8 ff             	cmp    $0xffffffff,%eax
41404a:	0f 84 28 01 00 00    	je     0x414178
414050:	53                   	push   %ebx
414051:	53                   	push   %ebx
414052:	6a 05                	push   $0x5
414054:	8d 45 e4             	lea    -0x1c(%ebp),%eax
414057:	47                   	inc    %edi
414058:	50                   	push   %eax
414059:	ff 75 dc             	push   -0x24(%ebp)
41405c:	8d 45 b8             	lea    -0x48(%ebp),%eax
41405f:	89 7d 9c             	mov    %edi,-0x64(%ebp)
414062:	50                   	push   %eax
414063:	53                   	push   %ebx
414064:	ff 75 88             	push   -0x78(%ebp)
414067:	e8 d9 bf ff ff       	call   0x410045
41406c:	83 c4 20             	add    $0x20,%esp
41406f:	89 45 cc             	mov    %eax,-0x34(%ebp)
414072:	85 c0                	test   %eax,%eax
414074:	0f 84 fe 00 00 00    	je     0x414178
41407a:	53                   	push   %ebx
41407b:	8d 4d a0             	lea    -0x60(%ebp),%ecx
41407e:	51                   	push   %ecx
41407f:	50                   	push   %eax
414080:	8d 45 e4             	lea    -0x1c(%ebp),%eax
414083:	50                   	push   %eax
414084:	ff 75 94             	push   -0x6c(%ebp)
414087:	ff 15 80 c0 41 00    	call   *0x41c080
41408d:	85 c0                	test   %eax,%eax
41408f:	0f 84 da 00 00 00    	je     0x41416f
414095:	8b 75 b0             	mov    -0x50(%ebp),%esi
414098:	2b 75 98             	sub    -0x68(%ebp),%esi
41409b:	8b 45 cc             	mov    -0x34(%ebp),%eax
41409e:	03 f7                	add    %edi,%esi
4140a0:	89 75 ac             	mov    %esi,-0x54(%ebp)
4140a3:	39 45 a0             	cmp    %eax,-0x60(%ebp)
4140a6:	0f 82 cc 00 00 00    	jb     0x414178
4140ac:	80 7d d1 0a          	cmpb   $0xa,-0x2f(%ebp)
4140b0:	75 34                	jne    0x4140e6
4140b2:	6a 0d                	push   $0xd
4140b4:	58                   	pop    %eax
4140b5:	53                   	push   %ebx
4140b6:	66 89 45 d0          	mov    %ax,-0x30(%ebp)
4140ba:	8d 45 a0             	lea    -0x60(%ebp),%eax
4140bd:	50                   	push   %eax
4140be:	6a 01                	push   $0x1
4140c0:	8d 45 d0             	lea    -0x30(%ebp),%eax
4140c3:	50                   	push   %eax
4140c4:	ff 75 94             	push   -0x6c(%ebp)
4140c7:	ff 15 80 c0 41 00    	call   *0x41c080
4140cd:	85 c0                	test   %eax,%eax
4140cf:	0f 84 9a 00 00 00    	je     0x41416f
4140d5:	83 7d a0 01          	cmpl   $0x1,-0x60(%ebp)
4140d9:	0f 82 99 00 00 00    	jb     0x414178
4140df:	ff 45 b0             	incl   -0x50(%ebp)
4140e2:	46                   	inc    %esi
4140e3:	89 75 ac             	mov    %esi,-0x54(%ebp)
4140e6:	3b 7d a4             	cmp    -0x5c(%ebp),%edi
4140e9:	0f 83 89 00 00 00    	jae    0x414178
4140ef:	8b 4d 84             	mov    -0x7c(%ebp),%ecx
4140f2:	e9 7c fd ff ff       	jmp    0x413e73
4140f7:	85 d2                	test   %edx,%edx
4140f9:	7e 25                	jle    0x414120
4140fb:	8b f1                	mov    %ecx,%esi
4140fd:	8b 45 b4             	mov    -0x4c(%ebp),%eax
414100:	8b 0c 85 18 70 42 00 	mov    0x427018(,%eax,4),%ecx
414107:	8a 04 3b             	mov    (%ebx,%edi,1),%al
41410a:	03 ce                	add    %esi,%ecx
41410c:	8b 75 dc             	mov    -0x24(%ebp),%esi
41410f:	03 cb                	add    %ebx,%ecx
414111:	43                   	inc    %ebx
414112:	88 44 31 2e          	mov    %al,0x2e(%ecx,%esi,1)
414116:	8b 75 d8             	mov    -0x28(%ebp),%esi
414119:	3b da                	cmp    %edx,%ebx
41411b:	7c e0                	jl     0x4140fd
41411d:	8b 75 ac             	mov    -0x54(%ebp),%esi
414120:	03 f2                	add    %edx,%esi
414122:	80 7d c8 00          	cmpb   $0x0,-0x38(%ebp)
414126:	89 75 ac             	mov    %esi,-0x54(%ebp)
414129:	eb 50                	jmp    0x41417b
41412b:	85 d2                	test   %edx,%edx
41412d:	7e f1                	jle    0x414120
41412f:	8b 75 d8             	mov    -0x28(%ebp),%esi
414132:	8b 45 b4             	mov    -0x4c(%ebp),%eax
414135:	8b 0c 85 18 70 42 00 	mov    0x427018(,%eax,4),%ecx
41413c:	8a 04 3b             	mov    (%ebx,%edi,1),%al
41413f:	03 ce                	add    %esi,%ecx
414141:	88 44 19 2e          	mov    %al,0x2e(%ecx,%ebx,1)
414145:	43                   	inc    %ebx
414146:	3b da                	cmp    %edx,%ebx
414148:	7c e8                	jl     0x414132
41414a:	eb d1                	jmp    0x41411d
41414c:	8b 55 b4             	mov    -0x4c(%ebp),%edx
41414f:	8b 4d d8             	mov    -0x28(%ebp),%ecx
414152:	8a 5d e3             	mov    -0x1d(%ebp),%bl
414155:	8b 04 95 18 70 42 00 	mov    0x427018(,%edx,4),%eax
41415c:	88 5c 01 2e          	mov    %bl,0x2e(%ecx,%eax,1)
414160:	8b 04 95 18 70 42 00 	mov    0x427018(,%edx,4),%eax
414167:	80 4c 01 2d 04       	orb    $0x4,0x2d(%ecx,%eax,1)
41416c:	46                   	inc    %esi
41416d:	eb b3                	jmp    0x414122
41416f:	ff 15 48 c1 41 00    	call   *0x41c148
414175:	89 45 a8             	mov    %eax,-0x58(%ebp)
414178:	38 5d c8             	cmp    %bl,-0x38(%ebp)
41417b:	74 0a                	je     0x414187
41417d:	8b 45 bc             	mov    -0x44(%ebp),%eax
414180:	83 a0 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%eax)
414187:	8b 45 08             	mov    0x8(%ebp),%eax
41418a:	8d 75 a8             	lea    -0x58(%ebp),%esi
41418d:	8b 4d fc             	mov    -0x4(%ebp),%ecx
414190:	8b f8                	mov    %eax,%edi
414192:	33 cd                	xor    %ebp,%ecx
414194:	a5                   	movsl  %ds:(%esi),%es:(%edi)
414195:	a5                   	movsl  %ds:(%esi),%es:(%edi)
414196:	a5                   	movsl  %ds:(%esi),%es:(%edi)
414197:	5f                   	pop    %edi
414198:	5e                   	pop    %esi
414199:	5b                   	pop    %ebx
41419a:	e8 56 4a ff ff       	call   0x408bf5
41419f:	c9                   	leave
4141a0:	c3                   	ret
4141a1:	8b ff                	mov    %edi,%edi
4141a3:	55                   	push   %ebp
4141a4:	8b ec                	mov    %esp,%ebp
4141a6:	51                   	push   %ecx
4141a7:	53                   	push   %ebx
4141a8:	56                   	push   %esi
4141a9:	8b 75 08             	mov    0x8(%ebp),%esi
4141ac:	33 c0                	xor    %eax,%eax
4141ae:	57                   	push   %edi
4141af:	8b fe                	mov    %esi,%edi
4141b1:	ab                   	stos   %eax,%es:(%edi)
4141b2:	ab                   	stos   %eax,%es:(%edi)
4141b3:	ab                   	stos   %eax,%es:(%edi)
4141b4:	8b 7d 0c             	mov    0xc(%ebp),%edi
4141b7:	8b 45 10             	mov    0x10(%ebp),%eax
4141ba:	03 c7                	add    %edi,%eax
4141bc:	89 45 fc             	mov    %eax,-0x4(%ebp)
4141bf:	3b f8                	cmp    %eax,%edi
4141c1:	73 3f                	jae    0x414202
4141c3:	0f b7 1f             	movzwl (%edi),%ebx
4141c6:	53                   	push   %ebx
4141c7:	e8 1c 27 00 00       	call   0x4168e8
4141cc:	59                   	pop    %ecx
4141cd:	66 3b c3             	cmp    %bx,%ax
4141d0:	75 28                	jne    0x4141fa
4141d2:	83 46 04 02          	addl   $0x2,0x4(%esi)
4141d6:	83 fb 0a             	cmp    $0xa,%ebx
4141d9:	75 15                	jne    0x4141f0
4141db:	6a 0d                	push   $0xd
4141dd:	5b                   	pop    %ebx
4141de:	53                   	push   %ebx
4141df:	e8 04 27 00 00       	call   0x4168e8
4141e4:	59                   	pop    %ecx
4141e5:	66 3b c3             	cmp    %bx,%ax
4141e8:	75 10                	jne    0x4141fa
4141ea:	ff 46 04             	incl   0x4(%esi)
4141ed:	ff 46 08             	incl   0x8(%esi)
4141f0:	83 c7 02             	add    $0x2,%edi
4141f3:	3b 7d fc             	cmp    -0x4(%ebp),%edi
4141f6:	72 cb                	jb     0x4141c3
4141f8:	eb 08                	jmp    0x414202
4141fa:	ff 15 48 c1 41 00    	call   *0x41c148
414200:	89 06                	mov    %eax,(%esi)
414202:	5f                   	pop    %edi
414203:	8b c6                	mov    %esi,%eax
414205:	5e                   	pop    %esi
414206:	5b                   	pop    %ebx
414207:	c9                   	leave
414208:	c3                   	ret
414209:	8b ff                	mov    %edi,%edi
41420b:	55                   	push   %ebp
41420c:	8b ec                	mov    %esp,%ebp
41420e:	51                   	push   %ecx
41420f:	56                   	push   %esi
414210:	8b 75 08             	mov    0x8(%ebp),%esi
414213:	57                   	push   %edi
414214:	56                   	push   %esi
414215:	e8 0d 07 00 00       	call   0x414927
41421a:	59                   	pop    %ecx
41421b:	85 c0                	test   %eax,%eax
41421d:	74 55                	je     0x414274
41421f:	8b fe                	mov    %esi,%edi
414221:	83 e6 3f             	and    $0x3f,%esi
414224:	c1 ff 06             	sar    $0x6,%edi
414227:	6b f6 38             	imul   $0x38,%esi,%esi
41422a:	8b 04 bd 18 70 42 00 	mov    0x427018(,%edi,4),%eax
414231:	80 7c 30 28 00       	cmpb   $0x0,0x28(%eax,%esi,1)
414236:	7d 3c                	jge    0x414274
414238:	e8 cc a5 ff ff       	call   0x40e809
41423d:	8b 40 4c             	mov    0x4c(%eax),%eax
414240:	83 b8 a8 00 00 00 00 	cmpl   $0x0,0xa8(%eax)
414247:	75 0e                	jne    0x414257
414249:	8b 04 bd 18 70 42 00 	mov    0x427018(,%edi,4),%eax
414250:	80 7c 30 29 00       	cmpb   $0x0,0x29(%eax,%esi,1)
414255:	74 1d                	je     0x414274
414257:	8d 45 fc             	lea    -0x4(%ebp),%eax
41425a:	50                   	push   %eax
41425b:	8b 04 bd 18 70 42 00 	mov    0x427018(,%edi,4),%eax
414262:	ff 74 30 18          	push   0x18(%eax,%esi,1)
414266:	ff 15 f4 c0 41 00    	call   *0x41c0f4
41426c:	85 c0                	test   %eax,%eax
41426e:	74 04                	je     0x414274
414270:	b0 01                	mov    $0x1,%al
414272:	eb 02                	jmp    0x414276
414274:	32 c0                	xor    %al,%al
414276:	5f                   	pop    %edi
414277:	5e                   	pop    %esi
414278:	c9                   	leave
414279:	c3                   	ret
41427a:	8b ff                	mov    %edi,%edi
41427c:	55                   	push   %ebp
41427d:	8b ec                	mov    %esp,%ebp
41427f:	b8 0c 14 00 00       	mov    $0x140c,%eax
414284:	e8 a7 51 00 00       	call   0x419430
414289:	a1 18 60 42 00       	mov    0x426018,%eax
41428e:	33 c5                	xor    %ebp,%eax
414290:	89 45 fc             	mov    %eax,-0x4(%ebp)
414293:	8b 4d 0c             	mov    0xc(%ebp),%ecx
414296:	8b c1                	mov    %ecx,%eax
414298:	8b 55 14             	mov    0x14(%ebp),%edx
41429b:	83 e1 3f             	and    $0x3f,%ecx
41429e:	c1 f8 06             	sar    $0x6,%eax
4142a1:	6b c9 38             	imul   $0x38,%ecx,%ecx
4142a4:	53                   	push   %ebx
4142a5:	8b 5d 08             	mov    0x8(%ebp),%ebx
4142a8:	8b 04 85 18 70 42 00 	mov    0x427018(,%eax,4),%eax
4142af:	56                   	push   %esi
4142b0:	57                   	push   %edi
4142b1:	8b fb                	mov    %ebx,%edi
4142b3:	8b 44 08 18          	mov    0x18(%eax,%ecx,1),%eax
4142b7:	8b 4d 10             	mov    0x10(%ebp),%ecx
4142ba:	03 d1                	add    %ecx,%edx
4142bc:	89 85 f8 eb ff ff    	mov    %eax,-0x1408(%ebp)
4142c2:	33 c0                	xor    %eax,%eax
4142c4:	ab                   	stos   %eax,%es:(%edi)
4142c5:	89 95 f4 eb ff ff    	mov    %edx,-0x140c(%ebp)
4142cb:	ab                   	stos   %eax,%es:(%edi)
4142cc:	ab                   	stos   %eax,%es:(%edi)
4142cd:	3b ca                	cmp    %edx,%ecx
4142cf:	73 73                	jae    0x414344
4142d1:	8b bd f8 eb ff ff    	mov    -0x1408(%ebp),%edi
4142d7:	8d b5 fc eb ff ff    	lea    -0x1404(%ebp),%esi
4142dd:	3b ca                	cmp    %edx,%ecx
4142df:	73 18                	jae    0x4142f9
4142e1:	8a 01                	mov    (%ecx),%al
4142e3:	41                   	inc    %ecx
4142e4:	3c 0a                	cmp    $0xa,%al
4142e6:	75 07                	jne    0x4142ef
4142e8:	ff 43 08             	incl   0x8(%ebx)
4142eb:	c6 06 0d             	movb   $0xd,(%esi)
4142ee:	46                   	inc    %esi
4142ef:	88 06                	mov    %al,(%esi)
4142f1:	46                   	inc    %esi
4142f2:	8d 45 fb             	lea    -0x5(%ebp),%eax
4142f5:	3b f0                	cmp    %eax,%esi
4142f7:	72 e4                	jb     0x4142dd
4142f9:	8d 85 fc eb ff ff    	lea    -0x1404(%ebp),%eax
4142ff:	89 4d 10             	mov    %ecx,0x10(%ebp)