45d50e:	8b 44 24 28          	mov    0x28(%esp),%eax
45d512:	0f 57 c0             	xorps  %xmm0,%xmm0
45d515:	51                   	push   %ecx
45d516:	6a 00                	push   $0x0
45d518:	89 44 24 14          	mov    %eax,0x14(%esp)
45d51c:	8d 44 24 08          	lea    0x8(%esp),%eax
45d520:	6a 01                	push   $0x1
45d522:	50                   	push   %eax
45d523:	c7 44 24 10 2c 61 4b 	movl   $0x4b612c,0x10(%esp)
45d52a:	00
45d52b:	c7 44 24 14 68 60 4b 	movl   $0x4b6068,0x14(%esp)
45d532:	00
45d533:	c7 44 24 20 01 00 00 	movl   $0x1,0x20(%esp)
45d53a:	00
45d53b:	66 0f 13 44 24 28    	movlpd %xmm0,0x28(%esp)
45d541:	e8 4a ea fd ff       	call   0x43bf90
45d546:	8b 4c 24 20          	mov    0x20(%esp),%ecx
45d54a:	33 cc                	xor    %esp,%ecx
45d54c:	e8 79 c4 00 00       	call   0x4699ca
45d551:	83 c4 24             	add    $0x24,%esp
45d554:	c2 04 00             	ret    $0x4
45d557:	cc                   	int3
45d558:	cc                   	int3
45d559:	cc                   	int3
45d55a:	cc                   	int3
45d55b:	cc                   	int3
45d55c:	cc                   	int3
45d55d:	cc                   	int3
45d55e:	cc                   	int3
45d55f:	cc                   	int3
45d560:	55                   	push   %ebp
45d561:	8b ec                	mov    %esp,%ebp
45d563:	83 e4 f8             	and    $0xfffffff8,%esp
45d566:	83 ec 14             	sub    $0x14,%esp
45d569:	8b 55 0c             	mov    0xc(%ebp),%edx
45d56c:	53                   	push   %ebx
45d56d:	56                   	push   %esi
45d56e:	8b f1                	mov    %ecx,%esi
45d570:	8b 0a                	mov    (%edx),%ecx
45d572:	8b 52 04             	mov    0x4(%edx),%edx
45d575:	8b da                	mov    %edx,%ebx
45d577:	57                   	push   %edi
45d578:	8b 46 10             	mov    0x10(%esi),%eax
45d57b:	8b f9                	mov    %ecx,%edi
45d57d:	89 4c 24 0c          	mov    %ecx,0xc(%esp)
45d581:	89 54 24 10          	mov    %edx,0x10(%esp)
45d585:	85 c0                	test   %eax,%eax
45d587:	0f 84 af 00 00 00    	je     0x45d63c
45d58d:	0f 1f 00             	nopl   (%eax)
45d590:	8b 78 10             	mov    0x10(%eax),%edi
45d593:	8b 58 14             	mov    0x14(%eax),%ebx
45d596:	2b df                	sub    %edi,%ebx
45d598:	89 7c 24 14          	mov    %edi,0x14(%esp)
45d59c:	33 ff                	xor    %edi,%edi
45d59e:	2b 5e 20             	sub    0x20(%esi),%ebx
45d5a1:	1b ff                	sbb    %edi,%edi
45d5a3:	3b fa                	cmp    %edx,%edi
45d5a5:	77 06                	ja     0x45d5ad
45d5a7:	72 06                	jb     0x45d5af
45d5a9:	3b d9                	cmp    %ecx,%ebx
45d5ab:	72 02                	jb     0x45d5af
45d5ad:	8b d9                	mov    %ecx,%ebx
45d5af:	ff 75 14             	push   0x14(%ebp)
45d5b2:	8b 7d 08             	mov    0x8(%ebp),%edi
45d5b5:	8b 40 0c             	mov    0xc(%eax),%eax
45d5b8:	03 44 24 18          	add    0x18(%esp),%eax
45d5bc:	03 46 20             	add    0x20(%esi),%eax
45d5bf:	8b 3f                	mov    (%edi),%edi
45d5c1:	6a 00                	push   $0x0
45d5c3:	53                   	push   %ebx
45d5c4:	50                   	push   %eax
45d5c5:	ff 75 10             	push   0x10(%ebp)
45d5c8:	8b bf 88 00 00 00    	mov    0x88(%edi),%edi
45d5ce:	8b cf                	mov    %edi,%ecx
45d5d0:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45d5d6:	8b 4d 08             	mov    0x8(%ebp),%ecx
45d5d9:	ff d7                	call   *%edi
45d5db:	89 44 24 14          	mov    %eax,0x14(%esp)
45d5df:	85 c0                	test   %eax,%eax
45d5e1:	75 3c                	jne    0x45d61f
45d5e3:	01 5e 18             	add    %ebx,0x18(%esi)
45d5e6:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
45d5ea:	11 46 1c             	adc    %eax,0x1c(%esi)
45d5ed:	2b cb                	sub    %ebx,%ecx
45d5ef:	8b 54 24 10          	mov    0x10(%esp),%edx
45d5f3:	1b d0                	sbb    %eax,%edx
45d5f5:	89 4c 24 0c          	mov    %ecx,0xc(%esp)
45d5f9:	8b c1                	mov    %ecx,%eax
45d5fb:	89 54 24 10          	mov    %edx,0x10(%esp)
45d5ff:	0b c2                	or     %edx,%eax
45d601:	74 19                	je     0x45d61c
45d603:	8b 46 10             	mov    0x10(%esi),%eax
45d606:	8b 00                	mov    (%eax),%eax
45d608:	89 46 10             	mov    %eax,0x10(%esi)
45d60b:	c7 46 20 00 00 00 00 	movl   $0x0,0x20(%esi)
45d612:	85 c0                	test   %eax,%eax
45d614:	0f 85 76 ff ff ff    	jne    0x45d590
45d61a:	eb 34                	jmp    0x45d650
45d61c:	01 5e 20             	add    %ebx,0x20(%esi)
45d61f:	8b 4c 24 10          	mov    0x10(%esp),%ecx
45d623:	8b 44 24 0c          	mov    0xc(%esp),%eax
45d627:	8b 55 0c             	mov    0xc(%ebp),%edx
45d62a:	29 02                	sub    %eax,(%edx)
45d62c:	8b 44 24 14          	mov    0x14(%esp),%eax
45d630:	19 4a 04             	sbb    %ecx,0x4(%edx)
45d633:	5f                   	pop    %edi
45d634:	5e                   	pop    %esi
45d635:	5b                   	pop    %ebx
45d636:	8b e5                	mov    %ebp,%esp
45d638:	5d                   	pop    %ebp
45d639:	c2 10 00             	ret    $0x10
45d63c:	0b fb                	or     %ebx,%edi
45d63e:	89 4c 24 0c          	mov    %ecx,0xc(%esp)
45d642:	89 54 24 10          	mov    %edx,0x10(%esp)
45d646:	c7 44 24 14 00 00 00 	movl   $0x0,0x14(%esp)
45d64d:	00
45d64e:	74 69                	je     0x45d6b9
45d650:	8b 5e 28             	mov    0x28(%esi),%ebx
45d653:	85 db                	test   %ebx,%ebx
45d655:	74 c8                	je     0x45d61f
45d657:	33 c0                	xor    %eax,%eax
45d659:	3b c2                	cmp    %edx,%eax
45d65b:	77 06                	ja     0x45d663
45d65d:	72 06                	jb     0x45d665
45d65f:	3b d9                	cmp    %ecx,%ebx
45d661:	72 02                	jb     0x45d665
45d663:	8b d9                	mov    %ecx,%ebx
45d665:	ff 75 14             	push   0x14(%ebp)
45d668:	8b 45 08             	mov    0x8(%ebp),%eax
45d66b:	6a 00                	push   $0x0
45d66d:	53                   	push   %ebx
45d66e:	ff 76 24             	push   0x24(%esi)
45d671:	8b 38                	mov    (%eax),%edi
45d673:	ff 75 10             	push   0x10(%ebp)
45d676:	8b bf 88 00 00 00    	mov    0x88(%edi),%edi
45d67c:	8b cf                	mov    %edi,%ecx
45d67e:	ff 15 d4 e2 49 00    	call   *0x49e2d4
45d684:	8b 4d 08             	mov    0x8(%ebp),%ecx
45d687:	ff d7                	call   *%edi
45d689:	89 44 24 14          	mov    %eax,0x14(%esp)
45d68d:	85 c0                	test   %eax,%eax
45d68f:	75 8e                	jne    0x45d61f
45d691:	01 5e 24             	add    %ebx,0x24(%esi)
45d694:	29 5e 28             	sub    %ebx,0x28(%esi)
45d697:	8b 44 24 0c          	mov    0xc(%esp),%eax
45d69b:	8b 55 0c             	mov    0xc(%ebp),%edx
45d69e:	2b c3                	sub    %ebx,%eax
45d6a0:	8b 4c 24 10          	mov    0x10(%esp),%ecx
45d6a4:	83 d9 00             	sbb    $0x0,%ecx
45d6a7:	29 02                	sub    %eax,(%edx)
45d6a9:	8b 44 24 14          	mov    0x14(%esp),%eax
45d6ad:	19 4a 04             	sbb    %ecx,0x4(%edx)
45d6b0:	5f                   	pop    %edi
45d6b1:	5e                   	pop    %esi
45d6b2:	5b                   	pop    %ebx
45d6b3:	8b e5                	mov    %ebp,%esp
45d6b5:	5d                   	pop    %ebp
45d6b6:	c2 10 00             	ret    $0x10
45d6b9:	8b c1                	mov    %ecx,%eax
45d6bb:	8b ca                	mov    %edx,%ecx
45d6bd:	8b 55 0c             	mov    0xc(%ebp),%edx
45d6c0:	5f                   	pop    %edi
45d6c1:	5e                   	pop    %esi
45d6c2:	5b                   	pop    %ebx
45d6c3:	29 02                	sub    %eax,(%edx)
45d6c5:	8b 44 24 08          	mov    0x8(%esp),%eax
45d6c9:	19 4a 04             	sbb    %ecx,0x4(%edx)
45d6cc:	8b e5                	mov    %ebp,%esp
45d6ce:	5d                   	pop    %ebp
45d6cf:	c2 10 00             	ret    $0x10
45d6d2:	cc                   	int3
45d6d3:	cc                   	int3
45d6d4:	cc                   	int3
45d6d5:	cc                   	int3
45d6d6:	cc                   	int3
45d6d7:	cc                   	int3
45d6d8:	cc                   	int3
45d6d9:	cc                   	int3
45d6da:	cc                   	int3
45d6db:	cc                   	int3
45d6dc:	cc                   	int3
45d6dd:	cc                   	int3
45d6de:	cc                   	int3
45d6df:	cc                   	int3
45d6e0:	83 ec 3c             	sub    $0x3c,%esp
45d6e3:	a1 14 40 4c 00       	mov    0x4c4014,%eax
45d6e8:	33 c4                	xor    %esp,%eax
45d6ea:	89 44 24 38          	mov    %eax,0x38(%esp)
45d6ee:	8b d1                	mov    %ecx,%edx
45d6f0:	c7 44 24 08 98 5e 4b 	movl   $0x4b5e98,0x8(%esp)
45d6f7:	00
45d6f8:	53                   	push   %ebx
45d6f9:	8b 5c 24 48          	mov    0x48(%esp),%ebx
45d6fd:	56                   	push   %esi
45d6fe:	8b 42 08             	mov    0x8(%edx),%eax
45d701:	8b 4a 1c             	mov    0x1c(%edx),%ecx
45d704:	8b 74 24 58          	mov    0x58(%esp),%esi
45d708:	89 44 24 18          	mov    %eax,0x18(%esp)
45d70c:	8b 42 0c             	mov    0xc(%edx),%eax
45d70f:	89 44 24 1c          	mov    %eax,0x1c(%esp)
45d713:	8b 42 10             	mov    0x10(%edx),%eax
45d716:	89 44 24 20          	mov    %eax,0x20(%esp)
45d71a:	8b 42 18             	mov    0x18(%edx),%eax
45d71d:	57                   	push   %edi
45d71e:	ff 73 04             	push   0x4(%ebx)
45d721:	8b 7c 24 50          	mov    0x50(%esp),%edi
45d725:	ff 33                	push   (%ebx)
45d727:	89 44 24 34          	mov    %eax,0x34(%esp)
45d72b:	8b 42 20             	mov    0x20(%edx),%eax
45d72e:	89 44 24 3c          	mov    %eax,0x3c(%esp)
45d732:	8b 42 24             	mov    0x24(%edx),%eax
45d735:	89 4c 24 38          	mov    %ecx,0x38(%esp)
45d739:	8d 4c 24 1c          	lea    0x1c(%esp),%ecx
45d73d:	89 44 24 40          	mov    %eax,0x40(%esp)
45d741:	8b 42 28             	mov    0x28(%edx),%eax
45d744:	c7 44 24 20 88 5e 4b 	movl   $0x4b5e88,0x20(%esp)
45d74b:	00
45d74c:	89 44 24 44          	mov    %eax,0x44(%esp)
45d750:	e8 fb 05 fe ff       	call   0x43dd50
45d755:	8b 4c 24 54          	mov    0x54(%esp),%ecx
45d759:	2b 0b                	sub    (%ebx),%ecx
45d75b:	ff 74 24 60          	push   0x60(%esp)
45d75f:	8b 44 24 5c          	mov    0x5c(%esp),%eax
45d763:	1b 43 04             	sbb    0x4(%ebx),%eax
45d766:	89 44 24 14          	mov    %eax,0x14(%esp)
45d76a:	8d 44 24 10          	lea    0x10(%esp),%eax
45d76e:	56                   	push   %esi
45d76f:	50                   	push   %eax
45d770:	89 4c 24 18          	mov    %ecx,0x18(%esp)
45d774:	8d 4c 24 20          	lea    0x20(%esp),%ecx
45d778:	57                   	push   %edi
45d779:	e8 e2 fd ff ff       	call   0x45d560
45d77e:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
45d782:	01 0b                	add    %ecx,(%ebx)
45d784:	8b 4c 24 10          	mov    0x10(%esp),%ecx
45d788:	11 4b 04             	adc    %ecx,0x4(%ebx)
45d78b:	8b 4c 24 44          	mov    0x44(%esp),%ecx
45d78f:	5f                   	pop    %edi
45d790:	5e                   	pop    %esi
45d791:	5b                   	pop    %ebx
45d792:	33 cc                	xor    %esp,%ecx
45d794:	e8 31 c2 00 00       	call   0x4699ca
45d799:	83 c4 3c             	add    $0x3c,%esp
45d79c:	c2 18 00             	ret    $0x18
45d79f:	cc                   	int3
45d7a0:	83 e9 04             	sub    $0x4,%ecx
45d7a3:	e9 f8 f2 ff ff       	jmp    0x45caa0
45d7a8:	cc                   	int3
45d7a9:	cc                   	int3
45d7aa:	cc                   	int3
45d7ab:	cc                   	int3
45d7ac:	cc                   	int3
45d7ad:	cc                   	int3
45d7ae:	cc                   	int3
45d7af:	cc                   	int3
45d7b0:	55                   	push   %ebp
45d7b1:	8b ec                	mov    %esp,%ebp
45d7b3:	6a ff                	push   $0xffffffff
45d7b5:	68 e5 c2 49 00       	push   $0x49c2e5
45d7ba:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
45d7c0:	50                   	push   %eax
45d7c1:	83 ec 28             	sub    $0x28,%esp
45d7c4:	a1 14 40 4c 00       	mov    0x4c4014,%eax
45d7c9:	33 c5                	xor    %ebp,%eax
45d7cb:	89 45 ec             	mov    %eax,-0x14(%ebp)
45d7ce:	56                   	push   %esi
45d7cf:	50                   	push   %eax
45d7d0:	8d 45 f4             	lea    -0xc(%ebp),%eax
45d7d3:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
45d7d9:	8b f1                	mov    %ecx,%esi
45d7db:	89 75 d0             	mov    %esi,-0x30(%ebp)
45d7de:	8b 4d 08             	mov    0x8(%ebp),%ecx
45d7e1:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
45d7e6:	89 75 cc             	mov    %esi,-0x34(%ebp)
45d7e9:	8b 51 10             	mov    0x10(%ecx),%edx
45d7ec:	2b c2                	sub    %edx,%eax
45d7ee:	83 f8 46             	cmp    $0x46,%eax
45d7f1:	0f 82 a3 00 00 00    	jb     0x45d89a
45d7f7:	83 79 14 10          	cmpl   $0x10,0x14(%ecx)
45d7fb:	72 02                	jb     0x45d7ff
45d7fd:	8b 09                	mov    (%ecx),%ecx
45d7ff:	52                   	push   %edx
45d800:	51                   	push   %ecx
45d801:	6a 46                	push   $0x46
45d803:	68 e0 70 4b 00       	push   $0x4b70e0
45d808:	51                   	push   %ecx
45d809:	ff 75 cc             	push   -0x34(%ebp)
45d80c:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
45d80f:	e8 2c 49 fb ff       	call   0x412140
45d814:	0f 57 c0             	xorps  %xmm0,%xmm0
45d817:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
45d81e:	66 0f d6 46 04       	movq   %xmm0,0x4(%esi)
45d823:	8d 45 d4             	lea    -0x2c(%ebp),%eax
45d826:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
45d82a:	50                   	push   %eax
45d82b:	8d 4e 10             	lea    0x10(%esi),%ecx
45d82e:	c7 06 b4 1b 4b 00    	movl   $0x4b1bb4,(%esi)
45d834:	c7 46 0c 04 00 00 00 	movl   $0x4,0xc(%esi)
45d83b:	e8 e0 5e fa ff       	call   0x403720
45d840:	8b 4d e8             	mov    -0x18(%ebp),%ecx
45d843:	c7 06 0c 1c 4b 00    	movl   $0x4b1c0c,(%esi)
45d849:	83 f9 10             	cmp    $0x10,%ecx
45d84c:	72 28                	jb     0x45d876
45d84e:	8b 55 d4             	mov    -0x2c(%ebp),%edx
45d851:	41                   	inc    %ecx
45d852:	8b c2                	mov    %edx,%eax
45d854:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
45d85a:	72 10                	jb     0x45d86c
45d85c:	8b 50 fc             	mov    -0x4(%eax),%edx
45d85f:	83 c1 23             	add    $0x23,%ecx
45d862:	2b c2                	sub    %edx,%eax
45d864:	83 c0 fc             	add    $0xfffffffc,%eax
45d867:	83 f8 1f             	cmp    $0x1f,%eax
45d86a:	77 33                	ja     0x45d89f
45d86c:	51                   	push   %ecx
45d86d:	52                   	push   %edx
45d86e:	e8 95 c1 00 00       	call   0x469a08
45d873:	83 c4 08             	add    $0x8,%esp
45d876:	c7 06 2c 71 4b 00    	movl   $0x4b712c,(%esi)
45d87c:	8b c6                	mov    %esi,%eax
45d87e:	8b 4d f4             	mov    -0xc(%ebp),%ecx
45d881:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
45d888:	59                   	pop    %ecx
45d889:	5e                   	pop    %esi
45d88a:	8b 4d ec             	mov    -0x14(%ebp),%ecx
45d88d:	33 cd                	xor    %ebp,%ecx
45d88f:	e8 36 c1 00 00       	call   0x4699ca
45d894:	8b e5                	mov    %ebp,%esp
45d896:	5d                   	pop    %ebp
45d897:	c2 04 00             	ret    $0x4
45d89a:	e8 41 3b fa ff       	call   0x4013e0
45d89f:	e8 8d bd 01 00       	call   0x479631
45d8a4:	cc                   	int3
45d8a5:	cc                   	int3
45d8a6:	cc                   	int3
45d8a7:	cc                   	int3
45d8a8:	cc                   	int3
45d8a9:	cc                   	int3
45d8aa:	cc                   	int3
45d8ab:	cc                   	int3
45d8ac:	cc                   	int3
45d8ad:	cc                   	int3
45d8ae:	cc                   	int3
45d8af:	cc                   	int3
45d8b0:	55                   	push   %ebp
45d8b1:	8b ec                	mov    %esp,%ebp
45d8b3:	6a ff                	push   $0xffffffff
45d8b5:	68 1d c3 49 00       	push   $0x49c31d
45d8ba:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
45d8c0:	50                   	push   %eax