45c3ab:	33 c0                	xor    %eax,%eax
45c3ad:	8a c3                	mov    %bl,%al
45c3af:	0f b7 04 45 a0 df 48 	movzwl 0x48dfa0(,%eax,2),%eax
45c3b6:	00
45c3b7:	50                   	push   %eax
45c3b8:	6a 00                	push   $0x0
45c3ba:	6a 00                	push   $0x0
45c3bc:	6a 00                	push   $0x0
45c3be:	6a 00                	push   $0x0
45c3c0:	6a 00                	push   $0x0
45c3c2:	8b 45 08             	mov    0x8(%ebp),%eax
45c3c5:	8b 40 fc             	mov    -0x4(%eax),%eax
45c3c8:	8b 40 30             	mov    0x30(%eax),%eax
45c3cb:	50                   	push   %eax
45c3cc:	e8 ff ab fa ff       	call   0x406fd0
45c3d1:	88 1d 9c df 48 00    	mov    %bl,0x48df9c
45c3d7:	5b                   	pop    %ebx
45c3d8:	5d                   	pop    %ebp
45c3d9:	c3                   	ret
45c3da:	8b c0                	mov    %eax,%eax
45c3dc:	55                   	push   %ebp
45c3dd:	8b ec                	mov    %esp,%ebp
45c3df:	51                   	push   %ecx
45c3e0:	53                   	push   %ebx
45c3e1:	56                   	push   %esi
45c3e2:	57                   	push   %edi
45c3e3:	89 45 fc             	mov    %eax,-0x4(%ebp)
45c3e6:	8b 45 fc             	mov    -0x4(%ebp),%eax
45c3e9:	83 78 30 00          	cmpl   $0x0,0x30(%eax)
45c3ed:	74 6c                	je     0x45c45b
45c3ef:	a1 b8 cb 49 00       	mov    0x49cbb8,%eax
45c3f4:	e8 e7 d1 ff ff       	call   0x4595e0
45c3f9:	8b f0                	mov    %eax,%esi
45c3fb:	4e                   	dec    %esi
45c3fc:	85 f6                	test   %esi,%esi
45c3fe:	7c 52                	jl     0x45c452
45c400:	46                   	inc    %esi
45c401:	33 ff                	xor    %edi,%edi
45c403:	8b d7                	mov    %edi,%edx
45c405:	a1 b8 cb 49 00       	mov    0x49cbb8,%eax
45c40a:	e8 bd d1 ff ff       	call   0x4595cc
45c40f:	8b d8                	mov    %eax,%ebx
45c411:	80 7b 57 00          	cmpb   $0x0,0x57(%ebx)
45c415:	74 37                	je     0x45c44e
45c417:	83 bb 90 01 00 00 00 	cmpl   $0x0,0x190(%ebx)
45c41e:	74 23                	je     0x45c443
45c420:	8b c3                	mov    %ebx,%eax
45c422:	e8 a1 65 fe ff       	call   0x4429c8
45c427:	84 c0                	test   %al,%al
45c429:	75 18                	jne    0x45c443
45c42b:	8b 83 90 01 00 00    	mov    0x190(%ebx),%eax
45c431:	50                   	push   %eax
45c432:	8b c3                	mov    %ebx,%eax
45c434:	e8 2f 63 fe ff       	call   0x442768
45c439:	50                   	push   %eax
45c43a:	e8 e9 a9 fa ff       	call   0x406e28
45c43f:	85 c0                	test   %eax,%eax
45c441:	75 0b                	jne    0x45c44e
45c443:	55                   	push   %ebp
45c444:	b0 01                	mov    $0x1,%al
45c446:	e8 35 ff ff ff       	call   0x45c380
45c44b:	59                   	pop    %ecx
45c44c:	eb 0d                	jmp    0x45c45b
45c44e:	47                   	inc    %edi
45c44f:	4e                   	dec    %esi
45c450:	75 b1                	jne    0x45c403
45c452:	55                   	push   %ebp
45c453:	33 c0                	xor    %eax,%eax
45c455:	e8 26 ff ff ff       	call   0x45c380
45c45a:	59                   	pop    %ecx
45c45b:	5f                   	pop    %edi
45c45c:	5e                   	pop    %esi
45c45d:	5b                   	pop    %ebx
45c45e:	59                   	pop    %ecx
45c45f:	5d                   	pop    %ebp
45c460:	c3                   	ret
45c461:	8d 40 00             	lea    0x0(%eax),%eax
45c464:	53                   	push   %ebx
45c465:	56                   	push   %esi
45c466:	8b f0                	mov    %eax,%esi
45c468:	33 db                	xor    %ebx,%ebx
45c46a:	83 7e 4c 00          	cmpl   $0x0,0x4c(%esi)
45c46e:	75 0d                	jne    0x45c47d
45c470:	8d 46 4c             	lea    0x4c(%esi),%eax
45c473:	e8 fc 98 fa ff       	call   0x405d74
45c478:	e8 5f 17 fd ff       	call   0x42dbdc
45c47d:	83 7e 4c 00          	cmpl   $0x0,0x4c(%esi)
45c481:	74 02                	je     0x45c485
45c483:	b3 01                	mov    $0x1,%bl
45c485:	8b c3                	mov    %ebx,%eax
45c487:	5e                   	pop    %esi
45c488:	5b                   	pop    %ebx
45c489:	c3                   	ret
45c48a:	8b c0                	mov    %eax,%eax
45c48c:	53                   	push   %ebx
45c48d:	56                   	push   %esi
45c48e:	57                   	push   %edi
45c48f:	8b d9                	mov    %ecx,%ebx
45c491:	8b f2                	mov    %edx,%esi
45c493:	8b f8                	mov    %eax,%edi
45c495:	8b c7                	mov    %edi,%eax
45c497:	e8 34 00 00 00       	call   0x45c4d0
45c49c:	68 bc a1 45 00       	push   $0x45a1bc
45c4a1:	56                   	push   %esi
45c4a2:	6a 00                	push   $0x0
45c4a4:	6a 00                	push   $0x0
45c4a6:	e8 0d ab fa ff       	call   0x406fb8
45c4ab:	66 89 87 8a 00 00 00 	mov    %ax,0x8a(%edi)
45c4b2:	88 9f 89 00 00 00    	mov    %bl,0x89(%edi)
45c4b8:	66 83 bf 8a 00 00 00 	cmpw   $0x0,0x8a(%edi)
45c4bf:	00
45c4c0:	75 07                	jne    0x45c4c9
45c4c2:	8b c7                	mov    %edi,%eax
45c4c4:	e8 bb 01 00 00       	call   0x45c684
45c4c9:	5f                   	pop    %edi
45c4ca:	5e                   	pop    %esi
45c4cb:	5b                   	pop    %ebx
45c4cc:	c3                   	ret
45c4cd:	8d 40 00             	lea    0x0(%eax),%eax
45c4d0:	53                   	push   %ebx
45c4d1:	8b d8                	mov    %eax,%ebx
45c4d3:	66 8b 83 8a 00 00 00 	mov    0x8a(%ebx),%ax
45c4da:	66 85 c0             	test   %ax,%ax
45c4dd:	74 14                	je     0x45c4f3
45c4df:	0f b7 c0             	movzwl %ax,%eax
45c4e2:	50                   	push   %eax
45c4e3:	6a 00                	push   $0x0
45c4e5:	e8 7e a9 fa ff       	call   0x406e68
45c4ea:	66 c7 83 8a 00 00 00 	movw   $0x0,0x8a(%ebx)
45c4f1:	00 00
45c4f3:	5b                   	pop    %ebx
45c4f4:	c3                   	ret
45c4f5:	8d 40 00             	lea    0x0(%eax),%eax
45c4f8:	53                   	push   %ebx
45c4f9:	56                   	push   %esi
45c4fa:	57                   	push   %edi
45c4fb:	55                   	push   %ebp
45c4fc:	83 c4 e0             	add    $0xffffffe0,%esp
45c4ff:	8b e9                	mov    %ecx,%ebp
45c501:	8b fa                	mov    %edx,%edi
45c503:	8b f0                	mov    %eax,%esi
45c505:	8d 54 24 18          	lea    0x18(%esp),%edx
45c509:	8b 45 08             	mov    0x8(%ebp),%eax
45c50c:	e8 a3 ab fa ff       	call   0x4070b4
45c511:	8d 54 24 18          	lea    0x18(%esp),%edx
45c515:	8d 4c 24 10          	lea    0x10(%esp),%ecx
45c519:	8b c7                	mov    %edi,%eax
45c51b:	e8 00 f6 fd ff       	call   0x43bb20
45c520:	8d 44 24 10          	lea    0x10(%esp),%eax
45c524:	b2 01                	mov    $0x1,%dl
45c526:	e8 89 e3 fd ff       	call   0x43a8b4
45c52b:	e8 6c dc ff ff       	call   0x45a19c
45c530:	8b d8                	mov    %eax,%ebx
45c532:	85 db                	test   %ebx,%ebx
45c534:	74 09                	je     0x45c53f
45c536:	80 bb 99 00 00 00 00 	cmpb   $0x0,0x99(%ebx)
45c53d:	75 0c                	jne    0x45c54b
45c53f:	8b c6                	mov    %esi,%eax
45c541:	e8 3e 01 00 00       	call   0x45c684
45c546:	e9 b4 00 00 00       	jmp    0x45c5ff
45c54b:	3b 5e 60             	cmp    0x60(%esi),%ebx
45c54e:	75 30                	jne    0x45c580
45c550:	8d 54 24 18          	lea    0x18(%esp),%edx
45c554:	8b 45 08             	mov    0x8(%ebp),%eax
45c557:	e8 58 ab fa ff       	call   0x4070b4
45c55c:	8d 54 24 18          	lea    0x18(%esp),%edx
45c560:	8d 4c 24 10          	lea    0x10(%esp),%ecx
45c564:	8b c7                	mov    %edi,%eax
45c566:	e8 b5 f5 fd ff       	call   0x43bb20
45c56b:	ff 74 24 14          	push   0x14(%esp)
45c56f:	ff 74 24 14          	push   0x14(%esp)
45c573:	8d 46 64             	lea    0x64(%esi),%eax
45c576:	50                   	push   %eax
45c577:	e8 6c a9 fa ff       	call   0x406ee8
45c57c:	85 c0                	test   %eax,%eax
45c57e:	75 7f                	jne    0x45c5ff
45c580:	8a 46 58             	mov    0x58(%esi),%al
45c583:	88 44 24 04          	mov    %al,0x4(%esp)
45c587:	80 7c 24 04 00       	cmpb   $0x0,0x4(%esp)
45c58c:	74 0b                	je     0x45c599
45c58e:	8b 86 80 00 00 00    	mov    0x80(%esi),%eax
45c594:	89 04 24             	mov    %eax,(%esp)
45c597:	eb 06                	jmp    0x45c59f
45c599:	8b 46 78             	mov    0x78(%esi),%eax
45c59c:	89 04 24             	mov    %eax,(%esp)
45c59f:	8b c4                	mov    %esp,%eax
45c5a1:	50                   	push   %eax
45c5a2:	33 c9                	xor    %ecx,%ecx
45c5a4:	8a 4c 24 08          	mov    0x8(%esp),%cl
45c5a8:	ba 41 b0 00 00       	mov    $0xb041,%edx
45c5ad:	8b c3                	mov    %ebx,%eax
45c5af:	e8 ec 0b fe ff       	call   0x43d1a0
45c5b4:	80 7c 24 04 00       	cmpb   $0x0,0x4(%esp)
45c5b9:	74 27                	je     0x45c5e2
45c5bb:	83 3c 24 00          	cmpl   $0x0,(%esp)
45c5bf:	75 21                	jne    0x45c5e2
45c5c1:	8a 44 24 04          	mov    0x4(%esp),%al
45c5c5:	88 46 58             	mov    %al,0x58(%esi)
45c5c8:	89 5e 60             	mov    %ebx,0x60(%esi)
45c5cb:	8d 44 24 05          	lea    0x5(%esp),%eax
45c5cf:	50                   	push   %eax
45c5d0:	e8 eb a6 fa ff       	call   0x406cc0
45c5d5:	8d 54 24 05          	lea    0x5(%esp),%edx
45c5d9:	8b c6                	mov    %esi,%eax
45c5db:	e8 3c 03 00 00       	call   0x45c91c
45c5e0:	eb 1d                	jmp    0x45c5ff
45c5e2:	8b c6                	mov    %esi,%eax
45c5e4:	e8 9b 00 00 00       	call   0x45c684
45c5e9:	8a 44 24 04          	mov    0x4(%esp),%al
45c5ed:	88 46 58             	mov    %al,0x58(%esi)
45c5f0:	89 5e 60             	mov    %ebx,0x60(%esi)
45c5f3:	33 c9                	xor    %ecx,%ecx
45c5f5:	8b 14 24             	mov    (%esp),%edx
45c5f8:	8b c6                	mov    %esi,%eax
45c5fa:	e8 8d fe ff ff       	call   0x45c48c
45c5ff:	83 c4 20             	add    $0x20,%esp
45c602:	5d                   	pop    %ebp
45c603:	5f                   	pop    %edi
45c604:	5e                   	pop    %esi
45c605:	5b                   	pop    %ebx
45c606:	c3                   	ret
45c607:	90                   	nop
45c608:	53                   	push   %ebx
45c609:	83 c4 f8             	add    $0xfffffff8,%esp
45c60c:	8b d8                	mov    %eax,%ebx
45c60e:	8b c3                	mov    %ebx,%eax
45c610:	e8 bb fe ff ff       	call   0x45c4d0
45c615:	8a 83 89 00 00 00    	mov    0x89(%ebx),%al
45c61b:	2c 01                	sub    $0x1,%al
45c61d:	72 0b                	jb     0x45c62a
45c61f:	75 18                	jne    0x45c639
45c621:	8b c3                	mov    %ebx,%eax
45c623:	e8 18 00 00 00       	call   0x45c640
45c628:	eb 0f                	jmp    0x45c639
45c62a:	54                   	push   %esp
45c62b:	e8 90 a6 fa ff       	call   0x406cc0
45c630:	8b d4                	mov    %esp,%edx
45c632:	8b c3                	mov    %ebx,%eax
45c634:	e8 e3 02 00 00       	call   0x45c91c
45c639:	59                   	pop    %ecx
45c63a:	5a                   	pop    %edx
45c63b:	5b                   	pop    %ebx
45c63c:	c3                   	ret
45c63d:	8d 40 00             	lea    0x0(%eax),%eax
45c640:	53                   	push   %ebx
45c641:	56                   	push   %esi
45c642:	8b d8                	mov    %eax,%ebx
45c644:	8b b3 84 00 00 00    	mov    0x84(%ebx),%esi
45c64a:	85 f6                	test   %esi,%esi
45c64c:	74 33                	je     0x45c681
45c64e:	8b c6                	mov    %esi,%eax
45c650:	e8 73 63 fe ff       	call   0x4429c8
45c655:	84 c0                	test   %al,%al
45c657:	74 28                	je     0x45c681
45c659:	8b 83 84 00 00 00    	mov    0x84(%ebx),%eax
45c65f:	e8 04 61 fe ff       	call   0x442768
45c664:	50                   	push   %eax
45c665:	e8 ee a7 fa ff       	call   0x406e58
45c66a:	85 c0                	test   %eax,%eax
45c66c:	74 13                	je     0x45c681
45c66e:	6a 00                	push   $0x0
45c670:	8b 83 84 00 00 00    	mov    0x84(%ebx),%eax
45c676:	e8 ed 60 fe ff       	call   0x442768
45c67b:	50                   	push   %eax
45c67c:	e8 77 a9 fa ff       	call   0x406ff8
45c681:	5e                   	pop    %esi
45c682:	5b                   	pop    %ebx
45c683:	c3                   	ret
45c684:	53                   	push   %ebx
45c685:	8b d8                	mov    %eax,%ebx
45c687:	83 7b 60 00          	cmpl   $0x0,0x60(%ebx)
45c68b:	74 1c                	je     0x45c6a9
45c68d:	8b c3                	mov    %ebx,%eax
45c68f:	e8 ac ff ff ff       	call   0x45c640
45c694:	33 c0                	xor    %eax,%eax
45c696:	89 43 60             	mov    %eax,0x60(%ebx)
45c699:	c6 43 58 00          	movb   $0x0,0x58(%ebx)
45c69d:	e8 82 dc ff ff       	call   0x45a324
45c6a2:	8b c3                	mov    %ebx,%eax
45c6a4:	e8 27 fe ff ff       	call   0x45c4d0
45c6a9:	5b                   	pop    %ebx
45c6aa:	c3                   	ret
45c6ab:	90                   	nop
45c6ac:	51                   	push   %ecx
45c6ad:	89 d1                	mov    %edx,%ecx
45c6af:	89 fa                	mov    %edi,%edx
45c6b1:	89 c7                	mov    %eax,%edi
45c6b3:	58                   	pop    %eax
45c6b4:	f3 ae                	repz scas %es:(%edi),%al
45c6b6:	89 c8                	mov    %ecx,%eax
45c6b8:	89 d7                	mov    %edx,%edi
45c6ba:	c3                   	ret
45c6bb:	90                   	nop
45c6bc:	55                   	push   %ebp
45c6bd:	8b ec                	mov    %esp,%ebp
45c6bf:	83 c4 d8             	add    $0xffffffd8,%esp
45c6c2:	53                   	push   %ebx
45c6c3:	56                   	push   %esi
45c6c4:	57                   	push   %edi
45c6c5:	6a 0e                	push   $0xe
45c6c7:	a1 fc b0 49 00       	mov    0x49b0fc,%eax
45c6cc:	8b 00                	mov    (%eax),%eax
45c6ce:	ff d0                	call   *%eax
45c6d0:	89 45 fc             	mov    %eax,-0x4(%ebp)
45c6d3:	8d 45 d8             	lea    -0x28(%ebp),%eax
45c6d6:	50                   	push   %eax
45c6d7:	e8 dc a5 fa ff       	call   0x406cb8
45c6dc:	50                   	push   %eax
45c6dd:	e8 16 a6 fa ff       	call   0x406cf8
45c6e2:	85 c0                	test   %eax,%eax
45c6e4:	0f 84 1b 01 00 00    	je     0x45c805
45c6ea:	33 d2                	xor    %edx,%edx
45c6ec:	55                   	push   %ebp
45c6ed:	68 fe c7 45 00       	push   $0x45c7fe
45c6f2:	64 ff 32             	push   %fs:(%edx)
45c6f5:	64 89 22             	mov    %esp,%fs:(%edx)
45c6f8:	8d 4d f4             	lea    -0xc(%ebp),%ecx
45c6fb:	8d 55 f8             	lea    -0x8(%ebp),%edx
45c6fe:	8b 45 e4             	mov    -0x1c(%ebp),%eax
45c701:	e8 12 cd fc ff       	call   0x429418
45c706:	8b 45 f8             	mov    -0x8(%ebp),%eax
45c709:	03 45 f4             	add    -0xc(%ebp),%eax
45c70c:	e8 fb bb fa ff       	call   0x40830c
45c711:	89 45 f0             	mov    %eax,-0x10(%ebp)
45c714:	33 d2                	xor    %edx,%edx
45c716:	55                   	push   %ebp
45c717:	68 cf c7 45 00       	push   $0x45c7cf
45c71c:	64 ff 32             	push   %fs:(%edx)
45c71f:	64 89 22             	mov    %esp,%fs:(%edx)
45c722:	8b 5d f0             	mov    -0x10(%ebp),%ebx
45c725:	03 5d f8             	add    -0x8(%ebp),%ebx
45c728:	53                   	push   %ebx
45c729:	8b 75 f0             	mov    -0x10(%ebp),%esi
45c72c:	8b ce                	mov    %esi,%ecx
45c72e:	33 d2                	xor    %edx,%edx
45c730:	8b 45 e4             	mov    -0x1c(%ebp),%eax
45c733:	e8 98 cd fc ff       	call   0x4294d0
45c738:	84 c0                	test   %al,%al
45c73a:	74 77                	je     0x45c7b3
45c73c:	8b 45 f0             	mov    -0x10(%ebp),%eax
45c73f:	66 83 78 0e 01       	cmpw   $0x1,0xe(%eax)
45c744:	75 6d                	jne    0x45c7b3
45c746:	8b 46 04             	mov    0x4(%esi),%eax
45c749:	8b d0                	mov    %eax,%edx
45c74b:	0f b7 4e 0e          	movzwl 0xe(%esi),%ecx
45c74f:	0f af d1             	imul   %ecx,%edx
45c752:	83 c2 1f             	add    $0x1f,%edx
45c755:	83 e2 e0             	and    $0xffffffe0,%edx
45c758:	85 d2                	test   %edx,%edx
45c75a:	79 03                	jns    0x45c75f