4141f4:	4b                   	dec    %ebx
4141f5:	89 46 04             	mov    %eax,0x4(%esi)
4141f8:	75 d4                	jne    0x4141ce
4141fa:	8b 45 f8             	mov    -0x8(%ebp),%eax
4141fd:	8b d0                	mov    %eax,%edx
4141ff:	c1 fa 10             	sar    $0x10,%edx
414202:	8b c8                	mov    %eax,%ecx
414204:	c1 f9 08             	sar    $0x8,%ecx
414207:	32 d1                	xor    %cl,%dl
414209:	8a 4d 0f             	mov    0xf(%ebp),%cl
41420c:	32 d0                	xor    %al,%dl
41420e:	32 d1                	xor    %cl,%dl
414210:	80 f2 5a             	xor    $0x5a,%dl
414213:	89 07                	mov    %eax,(%edi)
414215:	3a 55 0b             	cmp    0xb(%ebp),%dl
414218:	74 04                	je     0x41421e
41421a:	32 c0                	xor    %al,%al
41421c:	eb 2a                	jmp    0x414248
41421e:	8b 36                	mov    (%esi),%esi
414220:	8d 54 06 ff          	lea    -0x1(%esi,%eax,1),%edx
414224:	8b 45 f4             	mov    -0xc(%ebp),%eax
414227:	89 77 08             	mov    %esi,0x8(%edi)
41422a:	8b 70 7c             	mov    0x7c(%eax),%esi
41422d:	3b f2                	cmp    %edx,%esi
41422f:	7d 02                	jge    0x414233
414231:	8b d6                	mov    %esi,%edx
414233:	89 50 7c             	mov    %edx,0x7c(%eax)
414236:	8a d1                	mov    %cl,%dl
414238:	c0 ea 06             	shr    $0x6,%dl
41423b:	b0 01                	mov    $0x1,%al
41423d:	22 d0                	and    %al,%dl
41423f:	c0 e9 07             	shr    $0x7,%cl
414242:	88 57 10             	mov    %dl,0x10(%edi)
414245:	88 4f 11             	mov    %cl,0x11(%edi)
414248:	5b                   	pop    %ebx
414249:	5f                   	pop    %edi
41424a:	5e                   	pop    %esi
41424b:	c9                   	leave
41424c:	c2 08 00             	ret    $0x8
41424f:	55                   	push   %ebp
414250:	8b ec                	mov    %esp,%ebp
414252:	81 ec c8 01 00 00    	sub    $0x1c8,%esp
414258:	8b 45 0c             	mov    0xc(%ebp),%eax
41425b:	80 78 11 00          	cmpb   $0x0,0x11(%eax)
41425f:	89 4d fc             	mov    %ecx,-0x4(%ebp)
414262:	75 07                	jne    0x41426b
414264:	b0 01                	mov    $0x1,%al
414266:	e9 92 02 00 00       	jmp    0x4144fd
41426b:	56                   	push   %esi
41426c:	8b 75 08             	mov    0x8(%ebp),%esi
41426f:	80 7e 08 00          	cmpb   $0x0,0x8(%esi)
414273:	75 17                	jne    0x41428c
414275:	8b 41 78             	mov    0x78(%ecx),%eax
414278:	83 e8 19             	sub    $0x19,%eax
41427b:	39 06                	cmp    %eax,(%esi)
41427d:	7e 0d                	jle    0x41428c
41427f:	e8 8b dd ff ff       	call   0x41200f
414284:	84 c0                	test   %al,%al
414286:	0f 84 70 02 00 00    	je     0x4144fc
41428c:	83 65 0c 00          	andl   $0x0,0xc(%ebp)
414290:	53                   	push   %ebx
414291:	57                   	push   %edi
414292:	8b ce                	mov    %esi,%ecx
414294:	e8 b6 54 ff ff       	call   0x40974f
414299:	c1 e8 0c             	shr    $0xc,%eax
41429c:	6a 04                	push   $0x4
41429e:	8b ce                	mov    %esi,%ecx
4142a0:	0f b6 d8             	movzbl %al,%ebx
4142a3:	e8 90 54 ff ff       	call   0x409738
4142a8:	83 fb 0f             	cmp    $0xf,%ebx
4142ab:	75 42                	jne    0x4142ef
4142ad:	8b ce                	mov    %esi,%ecx
4142af:	e8 9b 54 ff ff       	call   0x40974f
4142b4:	c1 e8 0c             	shr    $0xc,%eax
4142b7:	6a 04                	push   $0x4
4142b9:	8b ce                	mov    %esi,%ecx
4142bb:	0f b6 f8             	movzbl %al,%edi
4142be:	e8 75 54 ff ff       	call   0x409738
4142c3:	85 ff                	test   %edi,%edi
4142c5:	75 09                	jne    0x4142d0
4142c7:	8b 45 0c             	mov    0xc(%ebp),%eax
4142ca:	88 5c 05 e8          	mov    %bl,-0x18(%ebp,%eax,1)
4142ce:	eb 26                	jmp    0x4142f6
4142d0:	47                   	inc    %edi
4142d1:	47                   	inc    %edi
4142d2:	eb 12                	jmp    0x4142e6
4142d4:	4f                   	dec    %edi
4142d5:	83 7d 0c 14          	cmpl   $0x14,0xc(%ebp)
4142d9:	73 0f                	jae    0x4142ea
4142db:	8b 45 0c             	mov    0xc(%ebp),%eax
4142de:	ff 45 0c             	incl   0xc(%ebp)
4142e1:	c6 44 05 e8 00       	movb   $0x0,-0x18(%ebp,%eax,1)
4142e6:	85 ff                	test   %edi,%edi
4142e8:	7f ea                	jg     0x4142d4
4142ea:	ff 4d 0c             	decl   0xc(%ebp)
4142ed:	eb 07                	jmp    0x4142f6
4142ef:	8b 45 0c             	mov    0xc(%ebp),%eax
4142f2:	88 5c 05 e8          	mov    %bl,-0x18(%ebp,%eax,1)
4142f6:	ff 45 0c             	incl   0xc(%ebp)
4142f9:	83 7d 0c 14          	cmpl   $0x14,0xc(%ebp)
4142fd:	72 93                	jb     0x414292
4142ff:	8b 7d 10             	mov    0x10(%ebp),%edi
414302:	8b 4d fc             	mov    -0x4(%ebp),%ecx
414305:	6a 14                	push   $0x14
414307:	81 c7 b0 3b 00 00    	add    $0x3bb0,%edi
41430d:	57                   	push   %edi
41430e:	8d 45 e8             	lea    -0x18(%ebp),%eax
414311:	50                   	push   %eax
414312:	e8 58 e1 ff ff       	call   0x41246f
414317:	83 65 0c 00          	andl   $0x0,0xc(%ebp)
41431b:	80 7e 08 00          	cmpb   $0x0,0x8(%esi)
41431f:	75 1a                	jne    0x41433b
414321:	8b 4d fc             	mov    -0x4(%ebp),%ecx
414324:	8b 41 78             	mov    0x78(%ecx),%eax
414327:	83 e8 05             	sub    $0x5,%eax
41432a:	39 06                	cmp    %eax,(%esi)
41432c:	7e 0d                	jle    0x41433b
41432e:	e8 dc dc ff ff       	call   0x41200f
414333:	84 c0                	test   %al,%al
414335:	0f 84 63 01 00 00    	je     0x41449e
41433b:	8b ce                	mov    %esi,%ecx
41433d:	e8 c8 53 ff ff       	call   0x40970a
414342:	8b 9f 84 00 00 00    	mov    0x84(%edi),%ebx
414348:	25 fe ff 00 00       	and    $0xfffe,%eax
41434d:	3b 44 9f 04          	cmp    0x4(%edi,%ebx,4),%eax
414351:	73 29                	jae    0x41437c
414353:	6a 10                	push   $0x10
414355:	59                   	pop    %ecx
414356:	2b cb                	sub    %ebx,%ecx
414358:	d3 e8                	shr    %cl,%eax
41435a:	0f b6 8c 38 88 00 00 	movzbl 0x88(%eax,%edi,1),%ecx
414361:	00
414362:	03 4e 04             	add    0x4(%esi),%ecx
414365:	8b d1                	mov    %ecx,%edx
414367:	c1 ea 03             	shr    $0x3,%edx
41436a:	01 16                	add    %edx,(%esi)
41436c:	83 e1 07             	and    $0x7,%ecx
41436f:	89 4e 04             	mov    %ecx,0x4(%esi)
414372:	0f b7 84 47 88 04 00 	movzwl 0x488(%edi,%eax,2),%eax
414379:	00
41437a:	eb 4b                	jmp    0x4143c7
41437c:	6a 0f                	push   $0xf
41437e:	5a                   	pop    %edx
41437f:	43                   	inc    %ebx
414380:	3b da                	cmp    %edx,%ebx
414382:	73 15                	jae    0x414399
414384:	8d 4c 9f 04          	lea    0x4(%edi,%ebx,4),%ecx
414388:	3b 01                	cmp    (%ecx),%eax
41438a:	72 0b                	jb     0x414397
41438c:	43                   	inc    %ebx
41438d:	83 c1 04             	add    $0x4,%ecx
414390:	83 fb 0f             	cmp    $0xf,%ebx
414393:	72 f3                	jb     0x414388
414395:	eb 02                	jmp    0x414399
414397:	8b d3                	mov    %ebx,%edx
414399:	8b 4e 04             	mov    0x4(%esi),%ecx
41439c:	03 ca                	add    %edx,%ecx
41439e:	8b d9                	mov    %ecx,%ebx
4143a0:	83 e1 07             	and    $0x7,%ecx
4143a3:	89 4e 04             	mov    %ecx,0x4(%esi)
4143a6:	c1 eb 03             	shr    $0x3,%ebx
4143a9:	01 1e                	add    %ebx,(%esi)
4143ab:	2b 04 97             	sub    (%edi,%edx,4),%eax
4143ae:	6a 10                	push   $0x10
4143b0:	59                   	pop    %ecx
4143b1:	2b ca                	sub    %edx,%ecx
4143b3:	d3 e8                	shr    %cl,%eax
4143b5:	03 44 97 44          	add    0x44(%edi,%edx,4),%eax
4143b9:	3b 07                	cmp    (%edi),%eax
4143bb:	72 02                	jb     0x4143bf
4143bd:	33 c0                	xor    %eax,%eax
4143bf:	0f b7 84 47 88 0c 00 	movzwl 0xc88(%edi,%eax,2),%eax
4143c6:	00
4143c7:	83 f8 10             	cmp    $0x10,%eax
4143ca:	7d 12                	jge    0x4143de
4143cc:	8b 4d 0c             	mov    0xc(%ebp),%ecx
4143cf:	ff 45 0c             	incl   0xc(%ebp)
4143d2:	88 84 0d 38 fe ff ff 	mov    %al,-0x1c8(%ebp,%ecx,1)
4143d9:	e9 a3 00 00 00       	jmp    0x414481
4143de:	83 f8 12             	cmp    $0x12,%eax
4143e1:	8b ce                	mov    %esi,%ecx
4143e3:	7d 55                	jge    0x41443a
4143e5:	83 f8 10             	cmp    $0x10,%eax
4143e8:	75 11                	jne    0x4143fb
4143ea:	e8 60 53 ff ff       	call   0x40974f
4143ef:	8b d8                	mov    %eax,%ebx
4143f1:	c1 eb 0d             	shr    $0xd,%ebx
4143f4:	83 c3 03             	add    $0x3,%ebx
4143f7:	6a 03                	push   $0x3
4143f9:	eb 0f                	jmp    0x41440a
4143fb:	e8 4f 53 ff ff       	call   0x40974f
414400:	8b d8                	mov    %eax,%ebx
414402:	c1 eb 09             	shr    $0x9,%ebx
414405:	83 c3 0b             	add    $0xb,%ebx
414408:	6a 07                	push   $0x7
41440a:	8b ce                	mov    %esi,%ecx
41440c:	e8 27 53 ff ff       	call   0x409738
414411:	8b 45 0c             	mov    0xc(%ebp),%eax
414414:	85 c0                	test   %eax,%eax
414416:	7e 69                	jle    0x414481
414418:	eb 1a                	jmp    0x414434
41441a:	4b                   	dec    %ebx
41441b:	3d ae 01 00 00       	cmp    $0x1ae,%eax
414420:	7d 6c                	jge    0x41448e
414422:	8a 8c 05 37 fe ff ff 	mov    -0x1c9(%ebp,%eax,1),%cl
414429:	88 8c 05 38 fe ff ff 	mov    %cl,-0x1c8(%ebp,%eax,1)
414430:	40                   	inc    %eax
414431:	89 45 0c             	mov    %eax,0xc(%ebp)
414434:	85 db                	test   %ebx,%ebx
414436:	7f e2                	jg     0x41441a
414438:	eb 47                	jmp    0x414481
41443a:	75 11                	jne    0x41444d
41443c:	e8 0e 53 ff ff       	call   0x40974f
414441:	8b d8                	mov    %eax,%ebx
414443:	c1 eb 0d             	shr    $0xd,%ebx
414446:	83 c3 03             	add    $0x3,%ebx
414449:	6a 03                	push   $0x3
41444b:	eb 0f                	jmp    0x41445c
41444d:	e8 fd 52 ff ff       	call   0x40974f
414452:	8b d8                	mov    %eax,%ebx
414454:	c1 eb 09             	shr    $0x9,%ebx
414457:	83 c3 0b             	add    $0xb,%ebx
41445a:	6a 07                	push   $0x7
41445c:	8b ce                	mov    %esi,%ecx
41445e:	e8 d5 52 ff ff       	call   0x409738
414463:	eb 18                	jmp    0x41447d
414465:	4b                   	dec    %ebx
414466:	81 7d 0c ae 01 00 00 	cmpl   $0x1ae,0xc(%ebp)
41446d:	7d 1f                	jge    0x41448e
41446f:	8b 45 0c             	mov    0xc(%ebp),%eax
414472:	ff 45 0c             	incl   0xc(%ebp)
414475:	c6 84 05 38 fe ff ff 	movb   $0x0,-0x1c8(%ebp,%eax,1)
41447c:	00
41447d:	85 db                	test   %ebx,%ebx
41447f:	7f e4                	jg     0x414465
414481:	81 7d 0c ae 01 00 00 	cmpl   $0x1ae,0xc(%ebp)
414488:	0f 8c 8d fe ff ff    	jl     0x41431b
41448e:	80 7e 08 00          	cmpb   $0x0,0x8(%esi)
414492:	8b 7d fc             	mov    -0x4(%ebp),%edi
414495:	75 0b                	jne    0x4144a2
414497:	8b 06                	mov    (%esi),%eax
414499:	3b 47 78             	cmp    0x78(%edi),%eax
41449c:	7e 04                	jle    0x4144a2
41449e:	32 c0                	xor    %al,%al
4144a0:	eb 58                	jmp    0x4144fa
4144a2:	8b 75 10             	mov    0x10(%ebp),%esi
4144a5:	68 32 01 00 00       	push   $0x132
4144aa:	56                   	push   %esi
4144ab:	8d 85 38 fe ff ff    	lea    -0x1c8(%ebp),%eax
4144b1:	50                   	push   %eax
4144b2:	8b cf                	mov    %edi,%ecx
4144b4:	e8 b6 df ff ff       	call   0x41246f
4144b9:	6a 40                	push   $0x40
4144bb:	8d 86 ec 0e 00 00    	lea    0xeec(%esi),%eax
4144c1:	50                   	push   %eax
4144c2:	8d 85 6a ff ff ff    	lea    -0x96(%ebp),%eax
4144c8:	50                   	push   %eax
4144c9:	8b cf                	mov    %edi,%ecx
4144cb:	e8 9f df ff ff       	call   0x41246f
4144d0:	6a 10                	push   $0x10
4144d2:	8d 86 d8 1d 00 00    	lea    0x1dd8(%esi),%eax
4144d8:	50                   	push   %eax
4144d9:	8d 45 aa             	lea    -0x56(%ebp),%eax
4144dc:	50                   	push   %eax
4144dd:	8b cf                	mov    %edi,%ecx
4144df:	e8 8b df ff ff       	call   0x41246f
4144e4:	6a 2c                	push   $0x2c
4144e6:	81 c6 c4 2c 00 00    	add    $0x2cc4,%esi
4144ec:	56                   	push   %esi
4144ed:	8d 45 ba             	lea    -0x46(%ebp),%eax
4144f0:	50                   	push   %eax
4144f1:	8b cf                	mov    %edi,%ecx
4144f3:	e8 77 df ff ff       	call   0x41246f
4144f8:	b0 01                	mov    $0x1,%al
4144fa:	5f                   	pop    %edi
4144fb:	5b                   	pop    %ebx
4144fc:	5e                   	pop    %esi
4144fd:	c9                   	leave
4144fe:	c2 0c 00             	ret    $0xc
414501:	e9 4a dc ff ff       	jmp    0x412150
414506:	81 c1 8c 4a 00 00    	add    $0x4a8c,%ecx
41450c:	e9 0e d7 ff ff       	jmp    0x411c1f
414511:	56                   	push   %esi
414512:	6a 01                	push   $0x1
414514:	8b f1                	mov    %ecx,%esi
414516:	e8 02 e1 ff ff       	call   0x41261d
41451b:	8b 46 04             	mov    0x4(%esi),%eax
41451e:	8b 0e                	mov    (%esi),%ecx
414520:	8b 54 24 08          	mov    0x8(%esp),%edx
414524:	89 54 81 fc          	mov    %edx,-0x4(%ecx,%eax,4)
414528:	5e                   	pop    %esi
414529:	c2 04 00             	ret    $0x4
41452c:	8b 44 24 04          	mov    0x4(%esp),%eax
414530:	3b 41 08             	cmp    0x8(%ecx),%eax
414533:	76 0b                	jbe    0x414540
414535:	2b 41 04             	sub    0x4(%ecx),%eax
414538:	50                   	push   %eax
414539:	e8 57 e1 ff ff       	call   0x412695
41453e:	eb 03                	jmp    0x414543
414540:	89 41 04             	mov    %eax,0x4(%ecx)
414543:	c2 04 00             	ret    $0x4
414546:	56                   	push   %esi
414547:	57                   	push   %edi
414548:	6a 01                	push   $0x1
41454a:	8b f1                	mov    %ecx,%esi
41454c:	e8 44 e1 ff ff       	call   0x412695
414551:	8b 46 04             	mov    0x4(%esi),%eax
414554:	8b 0e                	mov    (%esi),%ecx
414556:	c1 e0 04             	shl    $0x4,%eax
414559:	8d 7c 08 f0          	lea    -0x10(%eax,%ecx,1),%edi
41455d:	8d 74 24 0c          	lea    0xc(%esp),%esi
414561:	a5                   	movsl  %ds:(%esi),%es:(%edi)
414562:	a5                   	movsl  %ds:(%esi),%es:(%edi)
414563:	a5                   	movsl  %ds:(%esi),%es:(%edi)
414564:	a5                   	movsl  %ds:(%esi),%es:(%edi)
414565:	5f                   	pop    %edi
414566:	5e                   	pop    %esi
414567:	c2 10 00             	ret    $0x10
41456a:	55                   	push   %ebp
41456b:	8b ec                	mov    %esp,%ebp
41456d:	83 ec 2c             	sub    $0x2c,%esp
414570:	57                   	push   %edi
414571:	8b 7d 08             	mov    0x8(%ebp),%edi
414574:	80 7f 2c 00          	cmpb   $0x0,0x2c(%edi)
414578:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
41457b:	75 25                	jne    0x4145a2
41457d:	8d 47 30             	lea    0x30(%edi),%eax
414580:	50                   	push   %eax
414581:	8d 47 18             	lea    0x18(%edi),%eax
414584:	50                   	push   %eax
414585:	8d 47 04             	lea    0x4(%edi),%eax
414588:	50                   	push   %eax
414589:	c6 47 2c 01          	movb   $0x1,0x2c(%edi)
41458d:	e8 bd fc ff ff       	call   0x41424f
414592:	84 c0                	test   %al,%al
414594:	75 0c                	jne    0x4145a2
414596:	c6 87 d0 4a 00 00 01 	movb   $0x1,0x4ad0(%edi)
41459d:	e9 87 05 00 00       	jmp    0x414b29
4145a2:	8b 47 18             	mov    0x18(%edi),%eax
4145a5:	8b 4f 24             	mov    0x24(%edi),%ecx
4145a8:	56                   	push   %esi
4145a9:	8d 77 04             	lea    0x4(%edi),%esi
4145ac:	03 c8                	add    %eax,%ecx
4145ae:	39 0e                	cmp    %ecx,(%esi)
4145b0:	7e 0c                	jle    0x4145be
4145b2:	c6 87 d0 4a 00 00 01 	movb   $0x1,0x4ad0(%edi)
4145b9:	e9 6a 05 00 00       	jmp    0x414b28
4145be:	8b 4f 20             	mov    0x20(%edi),%ecx
4145c1:	83 a7 d8 4a 00 00 00 	andl   $0x0,0x4ad8(%edi)
4145c8:	8d 44 01 ff          	lea    -0x1(%ecx,%eax,1),%eax