45b419:	8a 83 89 00 00 00    	mov    0x89(%ebx),%al
45b41f:	2c 01                	sub    $0x1,%al
45b421:	72 0b                	jb     0x45b42e
45b423:	75 18                	jne    0x45b43d
45b425:	8b c3                	mov    %ebx,%eax
45b427:	e8 18 00 00 00       	call   0x45b444
45b42c:	eb 0f                	jmp    0x45b43d
45b42e:	54                   	push   %esp
45b42f:	e8 6c b1 fa ff       	call   0x4065a0
45b434:	8b d4                	mov    %esp,%edx
45b436:	8b c3                	mov    %ebx,%eax
45b438:	e8 e3 02 00 00       	call   0x45b720
45b43d:	59                   	pop    %ecx
45b43e:	5a                   	pop    %edx
45b43f:	5b                   	pop    %ebx
45b440:	c3                   	ret
45b441:	8d 40 00             	lea    0x0(%eax),%eax
45b444:	53                   	push   %ebx
45b445:	56                   	push   %esi
45b446:	8b d8                	mov    %eax,%ebx
45b448:	8b b3 84 00 00 00    	mov    0x84(%ebx),%esi
45b44e:	85 f6                	test   %esi,%esi
45b450:	74 33                	je     0x45b485
45b452:	8b c6                	mov    %esi,%eax
45b454:	e8 07 63 fe ff       	call   0x441760
45b459:	84 c0                	test   %al,%al
45b45b:	74 28                	je     0x45b485
45b45d:	8b 83 84 00 00 00    	mov    0x84(%ebx),%eax
45b463:	e8 f4 5f fe ff       	call   0x44145c
45b468:	50                   	push   %eax
45b469:	e8 ca b2 fa ff       	call   0x406738
45b46e:	85 c0                	test   %eax,%eax
45b470:	74 13                	je     0x45b485
45b472:	6a 00                	push   $0x0
45b474:	8b 83 84 00 00 00    	mov    0x84(%ebx),%eax
45b47a:	e8 dd 5f fe ff       	call   0x44145c
45b47f:	50                   	push   %eax
45b480:	e8 43 b4 fa ff       	call   0x4068c8
45b485:	5e                   	pop    %esi
45b486:	5b                   	pop    %ebx
45b487:	c3                   	ret
45b488:	53                   	push   %ebx
45b489:	8b d8                	mov    %eax,%ebx
45b48b:	83 7b 60 00          	cmpl   $0x0,0x60(%ebx)
45b48f:	74 1c                	je     0x45b4ad
45b491:	8b c3                	mov    %ebx,%eax
45b493:	e8 ac ff ff ff       	call   0x45b444
45b498:	33 c0                	xor    %eax,%eax
45b49a:	89 43 60             	mov    %eax,0x60(%ebx)
45b49d:	c6 43 58 00          	movb   $0x0,0x58(%ebx)
45b4a1:	e8 82 dc ff ff       	call   0x459128
45b4a6:	8b c3                	mov    %ebx,%eax
45b4a8:	e8 27 fe ff ff       	call   0x45b2d4
45b4ad:	5b                   	pop    %ebx
45b4ae:	c3                   	ret
45b4af:	90                   	nop
45b4b0:	51                   	push   %ecx
45b4b1:	89 d1                	mov    %edx,%ecx
45b4b3:	89 fa                	mov    %edi,%edx
45b4b5:	89 c7                	mov    %eax,%edi
45b4b7:	58                   	pop    %eax
45b4b8:	f3 ae                	repz scas %es:(%edi),%al
45b4ba:	89 c8                	mov    %ecx,%eax
45b4bc:	89 d7                	mov    %edx,%edi
45b4be:	c3                   	ret
45b4bf:	90                   	nop
45b4c0:	55                   	push   %ebp
45b4c1:	8b ec                	mov    %esp,%ebp
45b4c3:	83 c4 d8             	add    $0xffffffd8,%esp
45b4c6:	53                   	push   %ebx
45b4c7:	56                   	push   %esi
45b4c8:	57                   	push   %edi
45b4c9:	6a 0e                	push   $0xe
45b4cb:	a1 b4 7d 46 00       	mov    0x467db4,%eax
45b4d0:	8b 00                	mov    (%eax),%eax
45b4d2:	ff d0                	call   *%eax
45b4d4:	89 45 fc             	mov    %eax,-0x4(%ebp)
45b4d7:	8d 45 d8             	lea    -0x28(%ebp),%eax
45b4da:	50                   	push   %eax
45b4db:	e8 b8 b0 fa ff       	call   0x406598
45b4e0:	50                   	push   %eax
45b4e1:	e8 f2 b0 fa ff       	call   0x4065d8
45b4e6:	85 c0                	test   %eax,%eax
45b4e8:	0f 84 1b 01 00 00    	je     0x45b609
45b4ee:	33 d2                	xor    %edx,%edx
45b4f0:	55                   	push   %ebp
45b4f1:	68 02 b6 45 00       	push   $0x45b602
45b4f6:	64 ff 32             	push   %fs:(%edx)
45b4f9:	64 89 22             	mov    %esp,%fs:(%edx)
45b4fc:	8d 4d f4             	lea    -0xc(%ebp),%ecx
45b4ff:	8d 55 f8             	lea    -0x8(%ebp),%edx
45b502:	8b 45 e4             	mov    -0x1c(%ebp),%eax
45b505:	e8 c2 37 fc ff       	call   0x41eccc
45b50a:	8b 45 f8             	mov    -0x8(%ebp),%eax
45b50d:	03 45 f4             	add    -0xc(%ebp),%eax
45b510:	e8 e7 c5 fa ff       	call   0x407afc
45b515:	89 45 f0             	mov    %eax,-0x10(%ebp)
45b518:	33 d2                	xor    %edx,%edx
45b51a:	55                   	push   %ebp
45b51b:	68 d3 b5 45 00       	push   $0x45b5d3
45b520:	64 ff 32             	push   %fs:(%edx)
45b523:	64 89 22             	mov    %esp,%fs:(%edx)
45b526:	8b 5d f0             	mov    -0x10(%ebp),%ebx
45b529:	03 5d f8             	add    -0x8(%ebp),%ebx
45b52c:	53                   	push   %ebx
45b52d:	8b 75 f0             	mov    -0x10(%ebp),%esi
45b530:	8b ce                	mov    %esi,%ecx
45b532:	33 d2                	xor    %edx,%edx
45b534:	8b 45 e4             	mov    -0x1c(%ebp),%eax
45b537:	e8 48 38 fc ff       	call   0x41ed84
45b53c:	84 c0                	test   %al,%al
45b53e:	74 77                	je     0x45b5b7
45b540:	8b 45 f0             	mov    -0x10(%ebp),%eax
45b543:	66 83 78 0e 01       	cmpw   $0x1,0xe(%eax)
45b548:	75 6d                	jne    0x45b5b7
45b54a:	8b 46 04             	mov    0x4(%esi),%eax
45b54d:	8b d0                	mov    %eax,%edx
45b54f:	0f b7 4e 0e          	movzwl 0xe(%esi),%ecx
45b553:	0f af d1             	imul   %ecx,%edx
45b556:	83 c2 1f             	add    $0x1f,%edx
45b559:	83 e2 e0             	and    $0xffffffe0,%edx
45b55c:	85 d2                	test   %edx,%edx
45b55e:	79 03                	jns    0x45b563
45b560:	83 c2 07             	add    $0x7,%edx
45b563:	c1 fa 03             	sar    $0x3,%edx
45b566:	89 55 ec             	mov    %edx,-0x14(%ebp)
45b569:	8b f8                	mov    %eax,%edi
45b56b:	0f af 7d ec          	imul   -0x14(%ebp),%edi
45b56f:	03 5d f4             	add    -0xc(%ebp),%ebx
45b572:	2b df                	sub    %edi,%ebx
45b574:	b9 ff 00 00 00       	mov    $0xff,%ecx
45b579:	8b d7                	mov    %edi,%edx
45b57b:	8b c3                	mov    %ebx,%eax
45b57d:	e8 2e ff ff ff       	call   0x45b4b0
45b582:	89 45 fc             	mov    %eax,-0x4(%ebp)
45b585:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
45b589:	75 1c                	jne    0x45b5a7
45b58b:	8b 46 08             	mov    0x8(%esi),%eax
45b58e:	8b 56 04             	mov    0x4(%esi),%edx
45b591:	03 d2                	add    %edx,%edx
45b593:	3b c2                	cmp    %edx,%eax
45b595:	7c 10                	jl     0x45b5a7
45b597:	8b c3                	mov    %ebx,%eax
45b599:	2b c7                	sub    %edi,%eax
45b59b:	33 c9                	xor    %ecx,%ecx
45b59d:	8b d7                	mov    %edi,%edx
45b59f:	e8 0c ff ff ff       	call   0x45b4b0
45b5a4:	89 45 fc             	mov    %eax,-0x4(%ebp)
45b5a7:	8b 45 fc             	mov    -0x4(%ebp),%eax
45b5aa:	99                   	cltd
45b5ab:	f7 7d ec             	idivl  -0x14(%ebp)
45b5ae:	89 45 fc             	mov    %eax,-0x4(%ebp)
45b5b1:	8b 45 e0             	mov    -0x20(%ebp),%eax
45b5b4:	29 45 fc             	sub    %eax,-0x4(%ebp)
45b5b7:	33 c0                	xor    %eax,%eax
45b5b9:	5a                   	pop    %edx
45b5ba:	59                   	pop    %ecx
45b5bb:	59                   	pop    %ecx
45b5bc:	64 89 10             	mov    %edx,%fs:(%eax)
45b5bf:	68 da b5 45 00       	push   $0x45b5da
45b5c4:	8b 55 f8             	mov    -0x8(%ebp),%edx
45b5c7:	03 55 f4             	add    -0xc(%ebp),%edx
45b5ca:	8b 45 f0             	mov    -0x10(%ebp),%eax
45b5cd:	e8 0a 71 fa ff       	call   0x4026dc
45b5d2:	c3                   	ret
45b5d3:	e9 e8 83 fa ff       	jmp    0x4039c0
45b5d8:	eb ea                	jmp    0x45b5c4
45b5da:	33 c0                	xor    %eax,%eax
45b5dc:	5a                   	pop    %edx
45b5dd:	59                   	pop    %ecx
45b5de:	59                   	pop    %ecx
45b5df:	64 89 10             	mov    %edx,%fs:(%eax)
45b5e2:	68 09 b6 45 00       	push   $0x45b609
45b5e7:	8b 45 e8             	mov    -0x18(%ebp),%eax
45b5ea:	85 c0                	test   %eax,%eax
45b5ec:	74 06                	je     0x45b5f4
45b5ee:	50                   	push   %eax
45b5ef:	e8 84 ac fa ff       	call   0x406278
45b5f4:	8b 45 e4             	mov    -0x1c(%ebp),%eax
45b5f7:	85 c0                	test   %eax,%eax
45b5f9:	74 06                	je     0x45b601
45b5fb:	50                   	push   %eax
45b5fc:	e8 77 ac fa ff       	call   0x406278
45b601:	c3                   	ret
45b602:	e9 b9 83 fa ff       	jmp    0x4039c0
45b607:	eb de                	jmp    0x45b5e7
45b609:	8b 45 fc             	mov    -0x4(%ebp),%eax
45b60c:	5f                   	pop    %edi
45b60d:	5e                   	pop    %esi
45b60e:	5b                   	pop    %ebx
45b60f:	8b e5                	mov    %ebp,%esp
45b611:	5d                   	pop    %ebp
45b612:	c3                   	ret
45b613:	90                   	nop
45b614:	55                   	push   %ebp
45b615:	8b ec                	mov    %esp,%ebp
45b617:	53                   	push   %ebx
45b618:	56                   	push   %esi
45b619:	8b d8                	mov    %eax,%ebx
45b61b:	85 db                	test   %ebx,%ebx
45b61d:	75 06                	jne    0x45b625
45b61f:	8b 1d 00 dd 45 00    	mov    0x45dd00,%ebx
45b625:	8b 45 08             	mov    0x8(%ebp),%eax
45b628:	8b 40 fc             	mov    -0x4(%eax),%eax
45b62b:	8b b0 84 00 00 00    	mov    0x84(%eax),%esi
45b631:	85 f6                	test   %esi,%esi
45b633:	74 0e                	je     0x45b643
45b635:	8b 45 08             	mov    0x8(%ebp),%eax
45b638:	8b c6                	mov    %esi,%eax
45b63a:	e8 75 7b fa ff       	call   0x4031b4
45b63f:	3b d8                	cmp    %eax,%ebx
45b641:	74 2a                	je     0x45b66d
45b643:	8b 45 08             	mov    0x8(%ebp),%eax
45b646:	8b 40 fc             	mov    -0x4(%eax),%eax
45b649:	8b 80 84 00 00 00    	mov    0x84(%eax),%eax
45b64f:	e8 18 7c fa ff       	call   0x40326c
45b654:	8b 45 08             	mov    0x8(%ebp),%eax
45b657:	8b 48 fc             	mov    -0x4(%eax),%ecx
45b65a:	b2 01                	mov    $0x1,%dl
45b65c:	8b c3                	mov    %ebx,%eax
45b65e:	ff 50 2c             	call   *0x2c(%eax)
45b661:	8b 55 08             	mov    0x8(%ebp),%edx
45b664:	8b 52 fc             	mov    -0x4(%edx),%edx
45b667:	89 82 84 00 00 00    	mov    %eax,0x84(%edx)
45b66d:	5e                   	pop    %esi
45b66e:	5b                   	pop    %ebx
45b66f:	5d                   	pop    %ebp
45b670:	c3                   	ret
45b671:	8d 40 00             	lea    0x0(%eax),%eax
45b674:	55                   	push   %ebp
45b675:	8b ec                	mov    %esp,%ebp
45b677:	83 c4 f8             	add    $0xfffffff8,%esp
45b67a:	53                   	push   %ebx
45b67b:	56                   	push   %esi
45b67c:	33 d2                	xor    %edx,%edx
45b67e:	89 55 f8             	mov    %edx,-0x8(%ebp)
45b681:	33 d2                	xor    %edx,%edx
45b683:	55                   	push   %ebp
45b684:	68 0e b7 45 00       	push   $0x45b70e
45b689:	64 ff 32             	push   %fs:(%edx)
45b68c:	64 89 22             	mov    %esp,%fs:(%edx)
45b68f:	33 d2                	xor    %edx,%edx
45b691:	89 55 fc             	mov    %edx,-0x4(%ebp)
45b694:	8b d8                	mov    %eax,%ebx
45b696:	85 db                	test   %ebx,%ebx
45b698:	74 5e                	je     0x45b6f8
45b69a:	eb 57                	jmp    0x45b6f3
45b69c:	8b f3                	mov    %ebx,%esi
45b69e:	eb 09                	jmp    0x45b6a9
45b6a0:	8b c3                	mov    %ebx,%eax
45b6a2:	e8 9d 0c fb ff       	call   0x40c344
45b6a7:	8b d8                	mov    %eax,%ebx
45b6a9:	8a 03                	mov    (%ebx),%al
45b6ab:	84 c0                	test   %al,%al
45b6ad:	74 08                	je     0x45b6b7
45b6af:	2c 0a                	sub    $0xa,%al
45b6b1:	74 04                	je     0x45b6b7
45b6b3:	2c 03                	sub    $0x3,%al
45b6b5:	75 e9                	jne    0x45b6a0
45b6b7:	8b cb                	mov    %ebx,%ecx
45b6b9:	2b ce                	sub    %esi,%ecx
45b6bb:	8d 45 f8             	lea    -0x8(%ebp),%eax
45b6be:	8b d6                	mov    %esi,%edx
45b6c0:	e8 e7 89 fa ff       	call   0x4040ac
45b6c5:	8b 45 08             	mov    0x8(%ebp),%eax
45b6c8:	8b 40 fc             	mov    -0x4(%eax),%eax
45b6cb:	8b 80 84 00 00 00    	mov    0x84(%eax),%eax
45b6d1:	8b 80 08 02 00 00    	mov    0x208(%eax),%eax
45b6d7:	8b 55 f8             	mov    -0x8(%ebp),%edx
45b6da:	e8 ad 21 fc ff       	call   0x41d88c
45b6df:	3b 45 fc             	cmp    -0x4(%ebp),%eax
45b6e2:	7e 03                	jle    0x45b6e7
45b6e4:	89 45 fc             	mov    %eax,-0x4(%ebp)
45b6e7:	80 3b 0d             	cmpb   $0xd,(%ebx)
45b6ea:	75 01                	jne    0x45b6ed
45b6ec:	43                   	inc    %ebx
45b6ed:	80 3b 0a             	cmpb   $0xa,(%ebx)
45b6f0:	75 01                	jne    0x45b6f3
45b6f2:	43                   	inc    %ebx
45b6f3:	80 3b 00             	cmpb   $0x0,(%ebx)
45b6f6:	75 a4                	jne    0x45b69c
45b6f8:	33 c0                	xor    %eax,%eax
45b6fa:	5a                   	pop    %edx
45b6fb:	59                   	pop    %ecx
45b6fc:	59                   	pop    %ecx
45b6fd:	64 89 10             	mov    %edx,%fs:(%eax)
45b700:	68 15 b7 45 00       	push   $0x45b715
45b705:	8d 45 f8             	lea    -0x8(%ebp),%eax
45b708:	e8 af 88 fa ff       	call   0x403fbc
45b70d:	c3                   	ret
45b70e:	e9 ad 82 fa ff       	jmp    0x4039c0
45b713:	eb f0                	jmp    0x45b705
45b715:	8b 45 fc             	mov    -0x4(%ebp),%eax
45b718:	5e                   	pop    %esi
45b719:	5b                   	pop    %ebx
45b71a:	59                   	pop    %ecx
45b71b:	59                   	pop    %ecx
45b71c:	5d                   	pop    %ebp
45b71d:	c3                   	ret
45b71e:	8b c0                	mov    %eax,%eax
45b720:	55                   	push   %ebp
45b721:	8b ec                	mov    %esp,%ebp
45b723:	81 c4 70 ff ff ff    	add    $0xffffff70,%esp
45b729:	53                   	push   %ebx
45b72a:	56                   	push   %esi
45b72b:	57                   	push   %edi
45b72c:	33 c9                	xor    %ecx,%ecx
45b72e:	89 8d 74 ff ff ff    	mov    %ecx,-0x8c(%ebp)
45b734:	89 8d 70 ff ff ff    	mov    %ecx,-0x90(%ebp)
45b73a:	8b f2                	mov    %edx,%esi
45b73c:	8d 7d f4             	lea    -0xc(%ebp),%edi
45b73f:	a5                   	movsl  %ds:(%esi),%es:(%edi)
45b740:	a5                   	movsl  %ds:(%esi),%es:(%edi)
45b741:	89 45 fc             	mov    %eax,-0x4(%ebp)
45b744:	8d 45 a0             	lea    -0x60(%ebp),%eax
45b747:	8b 15 a0 15 45 00    	mov    0x4515a0,%edx
45b74d:	e8 d6 91 fa ff       	call   0x404928
45b752:	8d 5d fc             	lea    -0x4(%ebp),%ebx
45b755:	33 c0                	xor    %eax,%eax
45b757:	55                   	push   %ebp
45b758:	68 a6 ba 45 00       	push   $0x45baa6
45b75d:	64 ff 30             	push   %fs:(%eax)
45b760:	64 89 20             	mov    %esp,%fs:(%eax)
45b763:	8b 03                	mov    (%ebx),%eax
45b765:	c6 40 58 00          	movb   $0x0,0x58(%eax)
45b769:	8b 03                	mov    (%ebx),%eax
45b76b:	80 b8 88 00 00 00 00 	cmpb   $0x0,0x88(%eax)
45b772:	0f 84 e7 02 00 00    	je     0x45ba5f
45b778:	8b 03                	mov    (%ebx),%eax
45b77a:	83 78 60 00          	cmpl   $0x0,0x60(%eax)
45b77e:	0f 84 db 02 00 00    	je     0x45ba5f
45b784:	e8 cf 61 ff ff       	call   0x451958
45b789:	84 c0                	test   %al,%al
45b78b:	0f 84 ce 02 00 00    	je     0x45ba5f
45b791:	8d 45 f4             	lea    -0xc(%ebp),%eax
45b794:	b2 01                	mov    $0x1,%dl
45b796:	e8 91 dd fd ff       	call   0x43952c
45b79b:	e8 00 d8 ff ff       	call   0x458fa0
45b7a0:	8b 13                	mov    (%ebx),%edx
45b7a2:	3b 42 60             	cmp    0x60(%edx),%eax
45b7a5:	0f 85 b4 02 00 00    	jne    0x45ba5f
45b7ab:	8b 03                	mov    (%ebx),%eax
45b7ad:	8b 40 60             	mov    0x60(%eax),%eax
45b7b0:	89 45 a0             	mov    %eax,-0x60(%ebp)
45b7b3:	8b 45 f4             	mov    -0xc(%ebp),%eax
45b7b6:	89 45 a8             	mov    %eax,-0x58(%ebp)
45b7b9:	8b 45 f8             	mov    -0x8(%ebp),%eax
45b7bc:	89 45 ac             	mov    %eax,-0x54(%ebp)
45b7bf:	e8 fc fc ff ff       	call   0x45b4c0
45b7c4:	01 45 ac             	add    %eax,-0x54(%ebp)