47d551:	c3                   	ret
47d552:	8b ff                	mov    %edi,%edi
47d554:	55                   	push   %ebp
47d555:	8b ec                	mov    %esp,%ebp
47d557:	ff 75 08             	push   0x8(%ebp)
47d55a:	ff 15 44 40 49 00    	call   *0x494044
47d560:	f7 d8                	neg    %eax
47d562:	1b c0                	sbb    %eax,%eax
47d564:	f7 d8                	neg    %eax
47d566:	5d                   	pop    %ebp
47d567:	c3                   	ret
47d568:	8b 41 04             	mov    0x4(%ecx),%eax
47d56b:	c3                   	ret
47d56c:	8b 41 04             	mov    0x4(%ecx),%eax
47d56f:	c3                   	ret
47d570:	8b ff                	mov    %edi,%edi
47d572:	56                   	push   %esi
47d573:	8b f1                	mov    %ecx,%esi
47d575:	57                   	push   %edi
47d576:	8b 7e 08             	mov    0x8(%esi),%edi
47d579:	39 7e 04             	cmp    %edi,0x4(%esi)
47d57c:	74 04                	je     0x47d582
47d57e:	33 c0                	xor    %eax,%eax
47d580:	eb 72                	jmp    0x47d5f4
47d582:	83 3e 00             	cmpl   $0x0,(%esi)
47d585:	75 2b                	jne    0x47d5b2
47d587:	6a 04                	push   $0x4
47d589:	6a 04                	push   $0x4
47d58b:	e8 c3 4c ff ff       	call   0x472253
47d590:	6a 00                	push   $0x0
47d592:	89 06                	mov    %eax,(%esi)
47d594:	e8 a0 4d ff ff       	call   0x472339
47d599:	8b 06                	mov    (%esi),%eax
47d59b:	83 c4 0c             	add    $0xc,%esp
47d59e:	85 c0                	test   %eax,%eax
47d5a0:	75 05                	jne    0x47d5a7
47d5a2:	6a 0c                	push   $0xc
47d5a4:	58                   	pop    %eax
47d5a5:	eb 4d                	jmp    0x47d5f4
47d5a7:	89 46 04             	mov    %eax,0x4(%esi)
47d5aa:	83 c0 10             	add    $0x10,%eax
47d5ad:	89 46 08             	mov    %eax,0x8(%esi)
47d5b0:	eb cc                	jmp    0x47d57e
47d5b2:	2b 3e                	sub    (%esi),%edi
47d5b4:	c1 ff 02             	sar    $0x2,%edi
47d5b7:	81 ff ff ff ff 7f    	cmp    $0x7fffffff,%edi
47d5bd:	77 e3                	ja     0x47d5a2
47d5bf:	53                   	push   %ebx
47d5c0:	6a 04                	push   $0x4
47d5c2:	8d 1c 3f             	lea    (%edi,%edi,1),%ebx
47d5c5:	53                   	push   %ebx
47d5c6:	ff 36                	push   (%esi)
47d5c8:	e8 a2 2b ff ff       	call   0x47016f
47d5cd:	83 c4 0c             	add    $0xc,%esp
47d5d0:	85 c0                	test   %eax,%eax
47d5d2:	75 05                	jne    0x47d5d9
47d5d4:	6a 0c                	push   $0xc
47d5d6:	5e                   	pop    %esi
47d5d7:	eb 10                	jmp    0x47d5e9
47d5d9:	89 06                	mov    %eax,(%esi)
47d5db:	8d 0c b8             	lea    (%eax,%edi,4),%ecx
47d5de:	8d 04 98             	lea    (%eax,%ebx,4),%eax
47d5e1:	89 4e 04             	mov    %ecx,0x4(%esi)
47d5e4:	89 46 08             	mov    %eax,0x8(%esi)
47d5e7:	33 f6                	xor    %esi,%esi
47d5e9:	6a 00                	push   $0x0
47d5eb:	e8 49 4d ff ff       	call   0x472339
47d5f0:	59                   	pop    %ecx
47d5f1:	8b c6                	mov    %esi,%eax
47d5f3:	5b                   	pop    %ebx
47d5f4:	5f                   	pop    %edi
47d5f5:	5e                   	pop    %esi
47d5f6:	c3                   	ret
47d5f7:	8b ff                	mov    %edi,%edi
47d5f9:	56                   	push   %esi
47d5fa:	8b f1                	mov    %ecx,%esi
47d5fc:	57                   	push   %edi
47d5fd:	8b 7e 08             	mov    0x8(%esi),%edi
47d600:	39 7e 04             	cmp    %edi,0x4(%esi)
47d603:	74 04                	je     0x47d609
47d605:	33 c0                	xor    %eax,%eax
47d607:	eb 72                	jmp    0x47d67b
47d609:	83 3e 00             	cmpl   $0x0,(%esi)
47d60c:	75 2b                	jne    0x47d639
47d60e:	6a 04                	push   $0x4
47d610:	6a 04                	push   $0x4
47d612:	e8 3c 4c ff ff       	call   0x472253
47d617:	6a 00                	push   $0x0
47d619:	89 06                	mov    %eax,(%esi)
47d61b:	e8 19 4d ff ff       	call   0x472339
47d620:	8b 06                	mov    (%esi),%eax
47d622:	83 c4 0c             	add    $0xc,%esp
47d625:	85 c0                	test   %eax,%eax
47d627:	75 05                	jne    0x47d62e
47d629:	6a 0c                	push   $0xc
47d62b:	58                   	pop    %eax
47d62c:	eb 4d                	jmp    0x47d67b
47d62e:	89 46 04             	mov    %eax,0x4(%esi)
47d631:	83 c0 10             	add    $0x10,%eax
47d634:	89 46 08             	mov    %eax,0x8(%esi)
47d637:	eb cc                	jmp    0x47d605
47d639:	2b 3e                	sub    (%esi),%edi
47d63b:	c1 ff 02             	sar    $0x2,%edi
47d63e:	81 ff ff ff ff 7f    	cmp    $0x7fffffff,%edi
47d644:	77 e3                	ja     0x47d629
47d646:	53                   	push   %ebx
47d647:	6a 04                	push   $0x4
47d649:	8d 1c 3f             	lea    (%edi,%edi,1),%ebx
47d64c:	53                   	push   %ebx
47d64d:	ff 36                	push   (%esi)
47d64f:	e8 1b 2b ff ff       	call   0x47016f
47d654:	83 c4 0c             	add    $0xc,%esp
47d657:	85 c0                	test   %eax,%eax
47d659:	75 05                	jne    0x47d660
47d65b:	6a 0c                	push   $0xc
47d65d:	5e                   	pop    %esi
47d65e:	eb 10                	jmp    0x47d670
47d660:	89 06                	mov    %eax,(%esi)
47d662:	8d 0c b8             	lea    (%eax,%edi,4),%ecx
47d665:	8d 04 98             	lea    (%eax,%ebx,4),%eax
47d668:	89 4e 04             	mov    %ecx,0x4(%esi)
47d66b:	89 46 08             	mov    %eax,0x8(%esi)
47d66e:	33 f6                	xor    %esi,%esi
47d670:	6a 00                	push   $0x0
47d672:	e8 c2 4c ff ff       	call   0x472339
47d677:	59                   	pop    %ecx
47d678:	8b c6                	mov    %esi,%eax
47d67a:	5b                   	pop    %ebx
47d67b:	5f                   	pop    %edi
47d67c:	5e                   	pop    %esi
47d67d:	c3                   	ret
47d67e:	8b 01                	mov    (%ecx),%eax
47d680:	c3                   	ret
47d681:	83 c8 ff             	or     $0xffffffff,%eax
47d684:	c3                   	ret
47d685:	8b ff                	mov    %edi,%edi
47d687:	55                   	push   %ebp
47d688:	8b ec                	mov    %esp,%ebp
47d68a:	5d                   	pop    %ebp
47d68b:	e9 20 a3 00 00       	jmp    0x4879b0
47d690:	8b ff                	mov    %edi,%edi
47d692:	55                   	push   %ebp
47d693:	8b ec                	mov    %esp,%ebp
47d695:	8b 45 0c             	mov    0xc(%ebp),%eax
47d698:	83 c0 fe             	add    $0xfffffffe,%eax
47d69b:	5d                   	pop    %ebp
47d69c:	c3                   	ret
47d69d:	8b 41 04             	mov    0x4(%ecx),%eax
47d6a0:	2b 01                	sub    (%ecx),%eax
47d6a2:	c1 f8 02             	sar    $0x2,%eax
47d6a5:	c3                   	ret
47d6a6:	8b 41 04             	mov    0x4(%ecx),%eax
47d6a9:	2b 01                	sub    (%ecx),%eax
47d6ab:	c1 f8 02             	sar    $0x2,%eax
47d6ae:	c3                   	ret
47d6af:	8b ff                	mov    %edi,%edi
47d6b1:	55                   	push   %ebp
47d6b2:	8b ec                	mov    %esp,%ebp
47d6b4:	5d                   	pop    %ebp
47d6b5:	e9 b6 a2 00 00       	jmp    0x487970
47d6ba:	8b ff                	mov    %edi,%edi
47d6bc:	55                   	push   %ebp
47d6bd:	8b ec                	mov    %esp,%ebp
47d6bf:	5d                   	pop    %ebp
47d6c0:	e9 18 2e 00 00       	jmp    0x4804dd
47d6c5:	8b ff                	mov    %edi,%edi
47d6c7:	55                   	push   %ebp
47d6c8:	8b ec                	mov    %esp,%ebp
47d6ca:	5d                   	pop    %ebp
47d6cb:	e9 bd f2 ff ff       	jmp    0x47c98d
47d6d0:	8b ff                	mov    %edi,%edi
47d6d2:	55                   	push   %ebp
47d6d3:	8b ec                	mov    %esp,%ebp
47d6d5:	5d                   	pop    %ebp
47d6d6:	e9 92 f4 ff ff       	jmp    0x47cb6d
47d6db:	6a 08                	push   $0x8
47d6dd:	68 40 50 4b 00       	push   $0x4b5040
47d6e2:	e8 79 32 fc ff       	call   0x440960
47d6e7:	8b 45 08             	mov    0x8(%ebp),%eax
47d6ea:	ff 30                	push   (%eax)
47d6ec:	e8 1b a8 fe ff       	call   0x467f0c
47d6f1:	59                   	pop    %ecx
47d6f2:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
47d6f6:	8b 4d 0c             	mov    0xc(%ebp),%ecx
47d6f9:	e8 a0 00 00 00       	call   0x47d79e
47d6fe:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
47d705:	e8 08 00 00 00       	call   0x47d712
47d70a:	e8 97 32 fc ff       	call   0x4409a6
47d70f:	c2 0c 00             	ret    $0xc
47d712:	8b 45 10             	mov    0x10(%ebp),%eax
47d715:	ff 30                	push   (%eax)
47d717:	e8 38 a8 fe ff       	call   0x467f54
47d71c:	59                   	pop    %ecx
47d71d:	c3                   	ret
47d71e:	8b ff                	mov    %edi,%edi
47d720:	55                   	push   %ebp
47d721:	8b ec                	mov    %esp,%ebp
47d723:	83 ec 0c             	sub    $0xc,%esp
47d726:	8b 45 08             	mov    0x8(%ebp),%eax
47d729:	8d 4d ff             	lea    -0x1(%ebp),%ecx
47d72c:	89 45 f8             	mov    %eax,-0x8(%ebp)
47d72f:	89 45 f4             	mov    %eax,-0xc(%ebp)
47d732:	8d 45 f8             	lea    -0x8(%ebp),%eax
47d735:	50                   	push   %eax
47d736:	ff 75 0c             	push   0xc(%ebp)
47d739:	8d 45 f4             	lea    -0xc(%ebp),%eax
47d73c:	50                   	push   %eax
47d73d:	e8 99 ff ff ff       	call   0x47d6db
47d742:	8b e5                	mov    %ebp,%esp
47d744:	5d                   	pop    %ebp
47d745:	c3                   	ret
47d746:	8b ff                	mov    %edi,%edi
47d748:	55                   	push   %ebp
47d749:	8b ec                	mov    %esp,%ebp
47d74b:	8b 4d 08             	mov    0x8(%ebp),%ecx
47d74e:	8b 45 0c             	mov    0xc(%ebp),%eax
47d751:	89 01                	mov    %eax,(%ecx)
47d753:	5d                   	pop    %ebp
47d754:	c3                   	ret
47d755:	8b ff                	mov    %edi,%edi
47d757:	55                   	push   %ebp
47d758:	8b ec                	mov    %esp,%ebp
47d75a:	8b 4d 08             	mov    0x8(%ebp),%ecx
47d75d:	8b 45 0c             	mov    0xc(%ebp),%eax
47d760:	89 01                	mov    %eax,(%ecx)
47d762:	5d                   	pop    %ebp
47d763:	c3                   	ret
47d764:	8b ff                	mov    %edi,%edi
47d766:	55                   	push   %ebp
47d767:	8b ec                	mov    %esp,%ebp
47d769:	8b 45 08             	mov    0x8(%ebp),%eax
47d76c:	89 01                	mov    %eax,(%ecx)
47d76e:	8b 45 0c             	mov    0xc(%ebp),%eax
47d771:	89 41 04             	mov    %eax,0x4(%ecx)
47d774:	8b c1                	mov    %ecx,%eax
47d776:	5d                   	pop    %ebp
47d777:	c2 08 00             	ret    $0x8
47d77a:	8b ff                	mov    %edi,%edi
47d77c:	55                   	push   %ebp
47d77d:	8b ec                	mov    %esp,%ebp
47d77f:	8b 45 08             	mov    0x8(%ebp),%eax
47d782:	8b 00                	mov    (%eax),%eax
47d784:	89 01                	mov    %eax,(%ecx)
47d786:	8b c1                	mov    %ecx,%eax
47d788:	5d                   	pop    %ebp
47d789:	c2 04 00             	ret    $0x4
47d78c:	8b ff                	mov    %edi,%edi
47d78e:	55                   	push   %ebp
47d78f:	8b ec                	mov    %esp,%ebp
47d791:	8b 45 08             	mov    0x8(%ebp),%eax
47d794:	8b 00                	mov    (%eax),%eax
47d796:	89 01                	mov    %eax,(%ecx)
47d798:	8b c1                	mov    %ecx,%eax
47d79a:	5d                   	pop    %ebp
47d79b:	c2 04 00             	ret    $0x4
47d79e:	8b ff                	mov    %edi,%edi
47d7a0:	56                   	push   %esi
47d7a1:	8b f1                	mov    %ecx,%esi
47d7a3:	b9 01 01 00 00       	mov    $0x101,%ecx
47d7a8:	51                   	push   %ecx
47d7a9:	8b 06                	mov    (%esi),%eax
47d7ab:	8b 00                	mov    (%eax),%eax
47d7ad:	8b 40 48             	mov    0x48(%eax),%eax
47d7b0:	83 c0 18             	add    $0x18,%eax
47d7b3:	50                   	push   %eax
47d7b4:	51                   	push   %ecx
47d7b5:	ff 35 fc c2 4b 00    	push   0x4bc2fc
47d7bb:	e8 aa 07 00 00       	call   0x47df6a
47d7c0:	8b 06                	mov    (%esi),%eax
47d7c2:	b9 00 01 00 00       	mov    $0x100,%ecx
47d7c7:	51                   	push   %ecx
47d7c8:	8b 00                	mov    (%eax),%eax
47d7ca:	8b 40 48             	mov    0x48(%eax),%eax
47d7cd:	05 19 01 00 00       	add    $0x119,%eax
47d7d2:	50                   	push   %eax
47d7d3:	51                   	push   %ecx
47d7d4:	ff 35 00 c3 4b 00    	push   0x4bc300
47d7da:	e8 8b 07 00 00       	call   0x47df6a
47d7df:	8b 46 04             	mov    0x4(%esi),%eax
47d7e2:	83 c4 20             	add    $0x20,%esp
47d7e5:	83 c9 ff             	or     $0xffffffff,%ecx
47d7e8:	8b 00                	mov    (%eax),%eax
47d7ea:	8b 00                	mov    (%eax),%eax
47d7ec:	f0 0f c1 08          	lock xadd %ecx,(%eax)
47d7f0:	75 15                	jne    0x47d807
47d7f2:	8b 46 04             	mov    0x4(%esi),%eax
47d7f5:	8b 00                	mov    (%eax),%eax
47d7f7:	81 38 e0 87 4b 00    	cmpl   $0x4b87e0,(%eax)
47d7fd:	74 08                	je     0x47d807
47d7ff:	ff 30                	push   (%eax)
47d801:	e8 33 4b ff ff       	call   0x472339
47d806:	59                   	pop    %ecx
47d807:	8b 06                	mov    (%esi),%eax
47d809:	8b 10                	mov    (%eax),%edx
47d80b:	8b 46 04             	mov    0x4(%esi),%eax
47d80e:	8b 08                	mov    (%eax),%ecx
47d810:	8b 42 48             	mov    0x48(%edx),%eax
47d813:	89 01                	mov    %eax,(%ecx)
47d815:	8b 06                	mov    (%esi),%eax
47d817:	8b 00                	mov    (%eax),%eax
47d819:	8b 40 48             	mov    0x48(%eax),%eax
47d81c:	f0 ff 00             	lock incl (%eax)
47d81f:	5e                   	pop    %esi
47d820:	c3                   	ret
47d821:	ff 31                	push   (%ecx)
47d823:	e8 2c a7 fe ff       	call   0x467f54
47d828:	59                   	pop    %ecx
47d829:	c3                   	ret
47d82a:	ff 31                	push   (%ecx)
47d82c:	e8 db a6 fe ff       	call   0x467f0c
47d831:	59                   	pop    %ecx
47d832:	c3                   	ret
47d833:	8b ff                	mov    %edi,%edi
47d835:	55                   	push   %ebp
47d836:	8b ec                	mov    %esp,%ebp
47d838:	8b 45 08             	mov    0x8(%ebp),%eax
47d83b:	2d a4 03 00 00       	sub    $0x3a4,%eax
47d840:	74 28                	je     0x47d86a
47d842:	83 e8 04             	sub    $0x4,%eax
47d845:	74 1c                	je     0x47d863
47d847:	83 e8 0d             	sub    $0xd,%eax
47d84a:	74 10                	je     0x47d85c
47d84c:	83 e8 01             	sub    $0x1,%eax
47d84f:	74 04                	je     0x47d855
47d851:	33 c0                	xor    %eax,%eax
47d853:	5d                   	pop    %ebp
47d854:	c3                   	ret
47d855:	a1 84 ee 49 00       	mov    0x49ee84,%eax
47d85a:	5d                   	pop    %ebp
47d85b:	c3                   	ret
47d85c:	a1 80 ee 49 00       	mov    0x49ee80,%eax
47d861:	5d                   	pop    %ebp
47d862:	c3                   	ret
47d863:	a1 7c ee 49 00       	mov    0x49ee7c,%eax
47d868:	5d                   	pop    %ebp
47d869:	c3                   	ret
47d86a:	a1 78 ee 49 00       	mov    0x49ee78,%eax
47d86f:	5d                   	pop    %ebp
47d870:	c3                   	ret
47d871:	8b c1                	mov    %ecx,%eax
47d873:	c3                   	ret
47d874:	8b c1                	mov    %ecx,%eax
47d876:	c3                   	ret
47d877:	8b ff                	mov    %edi,%edi
47d879:	55                   	push   %ebp
47d87a:	8b ec                	mov    %esp,%ebp
47d87c:	83 ec 10             	sub    $0x10,%esp
47d87f:	8d 4d f0             	lea    -0x10(%ebp),%ecx
47d882:	6a 00                	push   $0x0
47d884:	e8 7f 17 fd ff       	call   0x44f008