45c503:	e8 f0 7e 00 00       	call   0x4643f8
45c508:	8b d8                	mov    %eax,%ebx
45c50a:	8b 53 08             	mov    0x8(%ebx),%edx
45c50d:	8b c5                	mov    %ebp,%eax
45c50f:	e8 b4 c4 fa ff       	call   0x4089c8
45c514:	85 c0                	test   %eax,%eax
45c516:	74 06                	je     0x45c51e
45c518:	47                   	inc    %edi
45c519:	4e                   	dec    %esi
45c51a:	75 e0                	jne    0x45c4fc
45c51c:	33 db                	xor    %ebx,%ebx
45c51e:	8b c3                	mov    %ebx,%eax
45c520:	5d                   	pop    %ebp
45c521:	5f                   	pop    %edi
45c522:	5e                   	pop    %esi
45c523:	5b                   	pop    %ebx
45c524:	c3                   	ret
45c525:	8d 40 00             	lea    0x0(%eax),%eax
45c528:	53                   	push   %ebx
45c529:	56                   	push   %esi
45c52a:	8b f0                	mov    %eax,%esi
45c52c:	0f b6 1d 7c c5 45 00 	movzbl 0x45c57c,%ebx
45c533:	66 f7 c6 04 00       	test   $0x4,%si
45c538:	74 03                	je     0x45c53d
45c53a:	80 cb 01             	or     $0x1,%bl
45c53d:	66 f7 c6 08 00       	test   $0x8,%si
45c542:	74 03                	je     0x45c547
45c544:	80 cb 04             	or     $0x4,%bl
45c547:	66 f7 c6 01 00       	test   $0x1,%si
45c54c:	74 03                	je     0x45c551
45c54e:	80 cb 08             	or     $0x8,%bl
45c551:	66 f7 c6 02 00       	test   $0x2,%si
45c556:	74 03                	je     0x45c55b
45c558:	80 cb 10             	or     $0x10,%bl
45c55b:	66 f7 c6 10 00       	test   $0x10,%si
45c560:	74 03                	je     0x45c565
45c562:	80 cb 20             	or     $0x20,%bl
45c565:	6a 12                	push   $0x12
45c567:	e8 54 aa fa ff       	call   0x406fc0
45c56c:	66 85 c0             	test   %ax,%ax
45c56f:	7d 03                	jge    0x45c574
45c571:	80 cb 02             	or     $0x2,%bl
45c574:	8b c3                	mov    %ebx,%eax
45c576:	5e                   	pop    %esi
45c577:	5b                   	pop    %ebx
45c578:	c3                   	ret
45c579:	00 00                	add    %al,(%eax)
45c57b:	00 00                	add    %al,(%eax)
45c57d:	00 00                	add    %al,(%eax)
45c57f:	00 53 56             	add    %dl,0x56(%ebx)
45c582:	8b f0                	mov    %eax,%esi
45c584:	0f b6 1d bc c5 45 00 	movzbl 0x45c5bc,%ebx
45c58b:	6a 10                	push   $0x10
45c58d:	e8 2e aa fa ff       	call   0x406fc0
45c592:	66 85 c0             	test   %ax,%ax
45c595:	7d 03                	jge    0x45c59a
45c597:	80 cb 01             	or     $0x1,%bl
45c59a:	6a 11                	push   $0x11
45c59c:	e8 1f aa fa ff       	call   0x406fc0
45c5a1:	66 85 c0             	test   %ax,%ax
45c5a4:	7d 03                	jge    0x45c5a9
45c5a6:	80 cb 04             	or     $0x4,%bl
45c5a9:	f7 c6 00 00 00 20    	test   $0x20000000,%esi
45c5af:	74 03                	je     0x45c5b4
45c5b1:	80 cb 02             	or     $0x2,%bl
45c5b4:	8b c3                	mov    %ebx,%eax
45c5b6:	5e                   	pop    %esi
45c5b7:	5b                   	pop    %ebx
45c5b8:	c3                   	ret
45c5b9:	00 00                	add    %al,(%eax)
45c5bb:	00 00                	add    %al,(%eax)
45c5bd:	00 00                	add    %al,(%eax)
45c5bf:	00 53 56             	add    %dl,0x56(%ebx)
45c5c2:	8b f0                	mov    %eax,%esi
45c5c4:	0f b6 1d 08 c6 45 00 	movzbl 0x45c608,%ebx
45c5cb:	f6 46 10 80          	testb  $0x80,0x10(%esi)
45c5cf:	74 03                	je     0x45c5d4
45c5d1:	80 cb 01             	or     $0x1,%bl
45c5d4:	f6 46 11 80          	testb  $0x80,0x11(%esi)
45c5d8:	74 03                	je     0x45c5dd
45c5da:	80 cb 04             	or     $0x4,%bl
45c5dd:	f6 46 12 80          	testb  $0x80,0x12(%esi)
45c5e1:	74 03                	je     0x45c5e6
45c5e3:	80 cb 02             	or     $0x2,%bl
45c5e6:	f6 46 01 80          	testb  $0x80,0x1(%esi)
45c5ea:	74 03                	je     0x45c5ef
45c5ec:	80 cb 08             	or     $0x8,%bl
45c5ef:	f6 46 02 80          	testb  $0x80,0x2(%esi)
45c5f3:	74 03                	je     0x45c5f8
45c5f5:	80 cb 10             	or     $0x10,%bl
45c5f8:	f6 46 04 80          	testb  $0x80,0x4(%esi)
45c5fc:	74 03                	je     0x45c601
45c5fe:	80 cb 20             	or     $0x20,%bl
45c601:	8b c3                	mov    %ebx,%eax
45c603:	5e                   	pop    %esi
45c604:	5b                   	pop    %ebx
45c605:	c3                   	ret
45c606:	00 00                	add    %al,(%eax)
45c608:	00 00                	add    %al,(%eax)
45c60a:	00 00                	add    %al,(%eax)
45c60c:	55                   	push   %ebp
45c60d:	8b ec                	mov    %esp,%ebp
45c60f:	6a 00                	push   $0x0
45c611:	6a 00                	push   $0x0
45c613:	53                   	push   %ebx
45c614:	56                   	push   %esi
45c615:	8b f2                	mov    %edx,%esi
45c617:	8b d8                	mov    %eax,%ebx
45c619:	33 c0                	xor    %eax,%eax
45c61b:	55                   	push   %ebp
45c61c:	68 6a c6 45 00       	push   $0x45c66a
45c621:	64 ff 30             	push   %fs:(%eax)
45c624:	64 89 20             	mov    %esp,%fs:(%eax)
45c627:	8d 55 fc             	lea    -0x4(%ebp),%edx
45c62a:	8b c6                	mov    %esi,%eax
45c62c:	e8 17 74 fe ff       	call   0x443a48
45c631:	8b 45 fc             	mov    -0x4(%ebp),%eax
45c634:	50                   	push   %eax
45c635:	8d 45 f8             	lea    -0x8(%ebp),%eax
45c638:	8b d3                	mov    %ebx,%edx
45c63a:	e8 f1 82 fa ff       	call   0x404930
45c63f:	8b 45 f8             	mov    -0x8(%ebp),%eax
45c642:	5a                   	pop    %edx
45c643:	e8 80 c3 fa ff       	call   0x4089c8
45c648:	85 c0                	test   %eax,%eax
45c64a:	0f 94 c0             	sete   %al
45c64d:	8b d8                	mov    %eax,%ebx
45c64f:	33 c0                	xor    %eax,%eax
45c651:	5a                   	pop    %edx
45c652:	59                   	pop    %ecx
45c653:	59                   	pop    %ecx
45c654:	64 89 10             	mov    %edx,%fs:(%eax)
45c657:	68 71 c6 45 00       	push   $0x45c671
45c65c:	8d 45 f8             	lea    -0x8(%ebp),%eax
45c65f:	ba 02 00 00 00       	mov    $0x2,%edx
45c664:	e8 03 81 fa ff       	call   0x40476c
45c669:	c3                   	ret
45c66a:	e9 41 7a fa ff       	jmp    0x4040b0
45c66f:	eb eb                	jmp    0x45c65c
45c671:	8b c3                	mov    %ebx,%eax
45c673:	5e                   	pop    %esi
45c674:	5b                   	pop    %ebx
45c675:	59                   	pop    %ecx
45c676:	59                   	pop    %ecx
45c677:	5d                   	pop    %ebp
45c678:	c3                   	ret
45c679:	8d 40 00             	lea    0x0(%eax),%eax
45c67c:	53                   	push   %ebx
45c67d:	56                   	push   %esi
45c67e:	8b da                	mov    %edx,%ebx
45c680:	8b f0                	mov    %eax,%esi
45c682:	eb 03                	jmp    0x45c687
45c684:	8b 76 30             	mov    0x30(%esi),%esi
45c687:	84 db                	test   %bl,%bl
45c689:	75 11                	jne    0x45c69c
45c68b:	8b c6                	mov    %esi,%eax
45c68d:	8b 15 20 ab 45 00    	mov    0x45ab20,%edx
45c693:	e8 10 74 fa ff       	call   0x403aa8
45c698:	84 c0                	test   %al,%al
45c69a:	75 06                	jne    0x45c6a2
45c69c:	83 7e 30 00          	cmpl   $0x0,0x30(%esi)
45c6a0:	75 e2                	jne    0x45c684
45c6a2:	8b c6                	mov    %esi,%eax
45c6a4:	8b 15 20 ab 45 00    	mov    0x45ab20,%edx
45c6aa:	e8 f9 73 fa ff       	call   0x403aa8
45c6af:	84 c0                	test   %al,%al
45c6b1:	74 05                	je     0x45c6b8
45c6b3:	8b c6                	mov    %esi,%eax
45c6b5:	5e                   	pop    %esi
45c6b6:	5b                   	pop    %ebx
45c6b7:	c3                   	ret
45c6b8:	33 c0                	xor    %eax,%eax
45c6ba:	5e                   	pop    %esi
45c6bb:	5b                   	pop    %ebx
45c6bc:	c3                   	ret
45c6bd:	8d 40 00             	lea    0x0(%eax),%eax
45c6c0:	f6 40 1c 10          	testb  $0x10,0x1c(%eax)
45c6c4:	74 02                	je     0x45c6c8
45c6c6:	33 d2                	xor    %edx,%edx
45c6c8:	e8 af ff ff ff       	call   0x45c67c
45c6cd:	c3                   	ret
45c6ce:	8b c0                	mov    %eax,%eax
45c6d0:	55                   	push   %ebp
45c6d1:	8b ec                	mov    %esp,%ebp
45c6d3:	83 c4 f4             	add    $0xfffffff4,%esp
45c6d6:	53                   	push   %ebx
45c6d7:	56                   	push   %esi
45c6d8:	33 c9                	xor    %ecx,%ecx
45c6da:	89 4d f4             	mov    %ecx,-0xc(%ebp)
45c6dd:	8b f0                	mov    %eax,%esi
45c6df:	33 c0                	xor    %eax,%eax
45c6e1:	55                   	push   %ebp
45c6e2:	68 41 c7 45 00       	push   $0x45c741
45c6e7:	64 ff 30             	push   %fs:(%eax)
45c6ea:	64 89 20             	mov    %esp,%fs:(%eax)
45c6ed:	8b c6                	mov    %esi,%eax
45c6ef:	e8 cc ff ff ff       	call   0x45c6c0
45c6f4:	8b d8                	mov    %eax,%ebx
45c6f6:	85 db                	test   %ebx,%ebx
45c6f8:	75 31                	jne    0x45c72b
45c6fa:	8b 46 08             	mov    0x8(%esi),%eax
45c6fd:	89 45 f8             	mov    %eax,-0x8(%ebp)
45c700:	c6 45 fc 0b          	movb   $0xb,-0x4(%ebp)
45c704:	8d 45 f8             	lea    -0x8(%ebp),%eax
45c707:	50                   	push   %eax
45c708:	6a 00                	push   $0x0
45c70a:	8d 55 f4             	lea    -0xc(%ebp),%edx
45c70d:	a1 f4 76 4a 00       	mov    0x4a76f4,%eax
45c712:	e8 5d 9f fa ff       	call   0x406674
45c717:	8b 4d f4             	mov    -0xc(%ebp),%ecx
45c71a:	b2 01                	mov    $0x1,%dl
45c71c:	a1 40 5c 41 00       	mov    0x415c40,%eax
45c721:	e8 26 fd fa ff       	call   0x40c44c
45c726:	e8 65 7a fa ff       	call   0x404190
45c72b:	33 c0                	xor    %eax,%eax
45c72d:	5a                   	pop    %edx
45c72e:	59                   	pop    %ecx
45c72f:	59                   	pop    %ecx
45c730:	64 89 10             	mov    %edx,%fs:(%eax)
45c733:	68 48 c7 45 00       	push   $0x45c748
45c738:	8d 45 f4             	lea    -0xc(%ebp),%eax
45c73b:	e8 08 80 fa ff       	call   0x404748
45c740:	c3                   	ret
45c741:	e9 6a 79 fa ff       	jmp    0x4040b0
45c746:	eb f0                	jmp    0x45c738
45c748:	8b c3                	mov    %ebx,%eax
45c74a:	5e                   	pop    %esi
45c74b:	5b                   	pop    %ebx
45c74c:	8b e5                	mov    %ebp,%esp
45c74e:	5d                   	pop    %ebp
45c74f:	c3                   	ret
45c750:	55                   	push   %ebp
45c751:	8b ec                	mov    %esp,%ebp
45c753:	53                   	push   %ebx
45c754:	56                   	push   %esi
45c755:	57                   	push   %edi
45c756:	84 d2                	test   %dl,%dl
45c758:	74 08                	je     0x45c762
45c75a:	83 c4 f0             	add    $0xfffffff0,%esp
45c75d:	e8 de 74 fa ff       	call   0x403c40
45c762:	8b f1                	mov    %ecx,%esi
45c764:	8b da                	mov    %edx,%ebx
45c766:	8b f8                	mov    %eax,%edi
45c768:	33 d2                	xor    %edx,%edx
45c76a:	8b c7                	mov    %edi,%eax
45c76c:	e8 7b 71 fa ff       	call   0x4038ec
45c771:	89 77 04             	mov    %esi,0x4(%edi)
45c774:	0f b6 45 08          	movzbl 0x8(%ebp),%eax
45c778:	88 47 18             	mov    %al,0x18(%edi)
45c77b:	66 b9 50 00          	mov    $0x50,%cx
45c77f:	66 89 4f 0a          	mov    %cx,0xa(%edi)
45c783:	0f b7 c1             	movzwl %cx,%eax
45c786:	b9 0a 00 00 00       	mov    $0xa,%ecx
45c78b:	33 d2                	xor    %edx,%edx
45c78d:	f7 f1                	div    %ecx
45c78f:	66 89 47 08          	mov    %ax,0x8(%edi)
45c793:	c6 47 1c 01          	movb   $0x1,0x1c(%edi)
45c797:	c7 47 20 0a 00 00 00 	movl   $0xa,0x20(%edi)
45c79e:	c7 47 40 04 00 00 00 	movl   $0x4,0x40(%edi)
45c7a5:	c7 47 3c 0c 00 00 00 	movl   $0xc,0x3c(%edi)
45c7ac:	c7 47 28 14 00 00 ff 	movl   $0xff000014,0x28(%edi)
45c7b3:	c6 47 2c 01          	movb   $0x1,0x2c(%edi)
45c7b7:	c6 47 44 01          	movb   $0x1,0x44(%edi)
45c7bb:	8b c7                	mov    %edi,%eax
45c7bd:	84 db                	test   %bl,%bl
45c7bf:	74 0f                	je     0x45c7d0
45c7c1:	e8 d2 74 fa ff       	call   0x403c98
45c7c6:	64 8f 05 00 00 00 00 	pop    %fs:0x0
45c7cd:	83 c4 0c             	add    $0xc,%esp
45c7d0:	8b c7                	mov    %edi,%eax
45c7d2:	5f                   	pop    %edi
45c7d3:	5e                   	pop    %esi
45c7d4:	5b                   	pop    %ebx
45c7d5:	5d                   	pop    %ebp
45c7d6:	c2 04 00             	ret    $0x4
45c7d9:	8d 40 00             	lea    0x0(%eax),%eax
45c7dc:	0f b6 40 1f          	movzbl 0x1f(%eax),%eax
45c7e0:	34 01                	xor    $0x1,%al
45c7e2:	c3                   	ret
45c7e3:	90                   	nop
45c7e4:	53                   	push   %ebx
45c7e5:	56                   	push   %esi
45c7e6:	57                   	push   %edi
45c7e7:	8b f2                	mov    %edx,%esi
45c7e9:	8b d8                	mov    %eax,%ebx
45c7eb:	8b c6                	mov    %esi,%eax
45c7ed:	8b 15 90 a1 45 00    	mov    0x45a190,%edx
45c7f3:	e8 b0 72 fa ff       	call   0x403aa8
45c7f8:	84 c0                	test   %al,%al
45c7fa:	74 2b                	je     0x45c827
45c7fc:	8b fe                	mov    %esi,%edi
45c7fe:	0f b6 57 1c          	movzbl 0x1c(%edi),%edx
45c802:	8b c3                	mov    %ebx,%eax
45c804:	e8 cf 08 00 00       	call   0x45d0d8
45c809:	8b 57 10             	mov    0x10(%edi),%edx
45c80c:	8b c3                	mov    %ebx,%eax
45c80e:	e8 a1 08 00 00       	call   0x45d0b4
45c813:	8b 57 0c             	mov    0xc(%edi),%edx
45c816:	8b c3                	mov    %ebx,%eax
45c818:	e8 47 07 00 00       	call   0x45cf64
45c81d:	0f b7 47 08          	movzwl 0x8(%edi),%eax
45c821:	66 89 43 08          	mov    %ax,0x8(%ebx)
45c825:	eb 09                	jmp    0x45c830
45c827:	8b d6                	mov    %esi,%edx
45c829:	8b c3                	mov    %ebx,%eax
45c82b:	e8 a8 bf fb ff       	call   0x4187d8
45c830:	5f                   	pop    %edi
45c831:	5e                   	pop    %esi
45c832:	5b                   	pop    %ebx
45c833:	c3                   	ret
45c834:	53                   	push   %ebx
45c835:	8b d8                	mov    %eax,%ebx
45c837:	80 7b 18 00          	cmpb   $0x0,0x18(%ebx)
45c83b:	75 2c                	jne    0x45c869
45c83d:	8b c3                	mov    %ebx,%eax
45c83f:	e8 b0 01 00 00       	call   0x45c9f4
45c844:	84 c0                	test   %al,%al
45c846:	74 21                	je     0x45c869
45c848:	8b 43 04             	mov    0x4(%ebx),%eax
45c84b:	e8 28 dd fe ff       	call   0x44a578
45c850:	84 c0                	test   %al,%al
45c852:	75 0b                	jne    0x45c85f
45c854:	33 d2                	xor    %edx,%edx
45c856:	8b c3                	mov    %ebx,%eax
45c858:	e8 07 07 00 00       	call   0x45cf64
45c85d:	eb 0a                	jmp    0x45c869
45c85f:	8b 53 10             	mov    0x10(%ebx),%edx
45c862:	8b c3                	mov    %ebx,%eax
45c864:	e8 fb 06 00 00       	call   0x45cf64
45c869:	5b                   	pop    %ebx
45c86a:	c3                   	ret
45c86b:	90                   	nop
45c86c:	55                   	push   %ebp
45c86d:	8b ec                	mov    %esp,%ebp
45c86f:	53                   	push   %ebx
45c870:	8b d8                	mov    %eax,%ebx
45c872:	80 7b 57 00          	cmpb   $0x0,0x57(%ebx)
45c876:	74 59                	je     0x45c8d1
45c878:	0f b6 43 5b          	movzbl 0x5b(%ebx),%eax
45c87c:	2c 01                	sub    $0x1,%al
45c87e:	72 0a                	jb     0x45c88a
45c880:	2c 02                	sub    $0x2,%al
45c882:	74 06                	je     0x45c88a
45c884:	fe c8                	dec    %al
45c886:	74 40                	je     0x45c8c8
45c888:	eb 47                	jmp    0x45c8d1
45c88a:	80 7b 5b 03          	cmpb   $0x3,0x5b(%ebx)
45c88e:	74 15                	je     0x45c8a5
45c890:	0f b6 05 d4 c8 45 00 	movzbl 0x45c8d4,%eax
45c897:	22 43 61             	and    0x61(%ebx),%al