49a667:	50                   	push   %eax
49a668:	ff 76 14             	push   0x14(%esi)
49a66b:	8d 45 14             	lea    0x14(%ebp),%eax
49a66e:	50                   	push   %eax
49a66f:	8d 45 0c             	lea    0xc(%ebp),%eax
49a672:	50                   	push   %eax
49a673:	8d 45 d0             	lea    -0x30(%ebp),%eax
49a676:	50                   	push   %eax
49a677:	57                   	push   %edi
49a678:	e8 13 e8 ff ff       	call   0x498e90
49a67d:	8b 4d c8             	mov    -0x38(%ebp),%ecx
49a680:	83 c4 18             	add    $0x18,%esp
49a683:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
49a68a:	8b f0                	mov    %eax,%esi
49a68c:	85 c9                	test   %ecx,%ecx
49a68e:	74 11                	je     0x49a6a1
49a690:	8b 01                	mov    (%ecx),%eax
49a692:	ff 50 08             	call   *0x8(%eax)
49a695:	8b c8                	mov    %eax,%ecx
49a697:	85 c9                	test   %ecx,%ecx
49a699:	74 06                	je     0x49a6a1
49a69b:	8b 01                	mov    (%ecx),%eax
49a69d:	6a 01                	push   $0x1
49a69f:	ff 10                	call   *(%eax)
49a6a1:	80 7d d0 00          	cmpb   $0x0,-0x30(%ebp)
49a6a5:	75 18                	jne    0x49a6bf
49a6a7:	8b 45 cc             	mov    -0x34(%ebp),%eax
49a6aa:	c7 03 02 00 00 00    	movl   $0x2,(%ebx)
49a6b0:	c7 00 00 00 00 00    	movl   $0x0,(%eax)
49a6b6:	c7 40 04 00 00 00 00 	movl   $0x0,0x4(%eax)
49a6bd:	eb 31                	jmp    0x49a6f0
49a6bf:	8d 45 c8             	lea    -0x38(%ebp),%eax
49a6c2:	50                   	push   %eax
49a6c3:	56                   	push   %esi
49a6c4:	8d 45 c0             	lea    -0x40(%ebp),%eax
49a6c7:	50                   	push   %eax
49a6c8:	8d 45 d0             	lea    -0x30(%ebp),%eax
49a6cb:	50                   	push   %eax
49a6cc:	e8 2c 4c 13 00       	call   0x5cf2fd
49a6d1:	8b 4d cc             	mov    -0x34(%ebp),%ecx
49a6d4:	83 c4 10             	add    $0x10,%esp
49a6d7:	89 01                	mov    %eax,(%ecx)
49a6d9:	8d 45 d0             	lea    -0x30(%ebp),%eax
49a6dc:	89 51 04             	mov    %edx,0x4(%ecx)
49a6df:	39 45 c0             	cmp    %eax,-0x40(%ebp)
49a6e2:	74 06                	je     0x49a6ea
49a6e4:	83 7d c8 00          	cmpl   $0x0,-0x38(%ebp)
49a6e8:	74 06                	je     0x49a6f0
49a6ea:	c7 03 02 00 00 00    	movl   $0x2,(%ebx)
49a6f0:	8d 45 14             	lea    0x14(%ebp),%eax
49a6f3:	50                   	push   %eax
49a6f4:	8d 45 0c             	lea    0xc(%ebp),%eax
49a6f7:	50                   	push   %eax
49a6f8:	e8 e3 8a ff ff       	call   0x4931e0
49a6fd:	83 c4 08             	add    $0x8,%esp
49a700:	84 c0                	test   %al,%al
49a702:	74 03                	je     0x49a707
49a704:	83 0b 01             	orl    $0x1,(%ebx)
49a707:	8b 45 bc             	mov    -0x44(%ebp),%eax
49a70a:	8b 4d 0c             	mov    0xc(%ebp),%ecx
49a70d:	89 08                	mov    %ecx,(%eax)
49a70f:	8b 4d 10             	mov    0x10(%ebp),%ecx
49a712:	89 48 04             	mov    %ecx,0x4(%eax)
49a715:	8b 4d f4             	mov    -0xc(%ebp),%ecx
49a718:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
49a71f:	59                   	pop    %ecx
49a720:	5f                   	pop    %edi
49a721:	5e                   	pop    %esi
49a722:	5b                   	pop    %ebx
49a723:	8b 4d f0             	mov    -0x10(%ebp),%ecx
49a726:	33 cd                	xor    %ebp,%ecx
49a728:	e8 ad 6d 14 00       	call   0x5e14da
49a72d:	8b e5                	mov    %ebp,%esp
49a72f:	5d                   	pop    %ebp
49a730:	c2 20 00             	ret    $0x20
49a733:	cc                   	int3
49a734:	cc                   	int3
49a735:	cc                   	int3
49a736:	cc                   	int3
49a737:	cc                   	int3
49a738:	cc                   	int3
49a739:	cc                   	int3
49a73a:	cc                   	int3
49a73b:	cc                   	int3
49a73c:	cc                   	int3
49a73d:	cc                   	int3
49a73e:	cc                   	int3
49a73f:	cc                   	int3
49a740:	55                   	push   %ebp
49a741:	8b ec                	mov    %esp,%ebp
49a743:	6a ff                	push   $0xffffffff
49a745:	68 28 80 65 00       	push   $0x658028
49a74a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
49a750:	50                   	push   %eax
49a751:	83 ec 38             	sub    $0x38,%esp
49a754:	a1 d4 89 72 00       	mov    0x7289d4,%eax
49a759:	33 c5                	xor    %ebp,%eax
49a75b:	89 45 f0             	mov    %eax,-0x10(%ebp)
49a75e:	53                   	push   %ebx
49a75f:	56                   	push   %esi
49a760:	57                   	push   %edi
49a761:	50                   	push   %eax
49a762:	8d 45 f4             	lea    -0xc(%ebp),%eax
49a765:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
49a76b:	8b f9                	mov    %ecx,%edi
49a76d:	8b 45 08             	mov    0x8(%ebp),%eax
49a770:	8b 75 1c             	mov    0x1c(%ebp),%esi
49a773:	8b 5d 20             	mov    0x20(%ebp),%ebx
49a776:	89 45 bc             	mov    %eax,-0x44(%ebp)
49a779:	8b 45 24             	mov    0x24(%ebp),%eax
49a77c:	89 45 cc             	mov    %eax,-0x34(%ebp)
49a77f:	8b 46 30             	mov    0x30(%esi),%eax
49a782:	8b 48 04             	mov    0x4(%eax),%ecx
49a785:	89 4d c8             	mov    %ecx,-0x38(%ebp)
49a788:	8b 01                	mov    (%ecx),%eax
49a78a:	ff 50 04             	call   *0x4(%eax)
49a78d:	8d 45 c4             	lea    -0x3c(%ebp),%eax
49a790:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
49a797:	50                   	push   %eax
49a798:	ff 76 14             	push   0x14(%esi)
49a79b:	8d 45 14             	lea    0x14(%ebp),%eax
49a79e:	50                   	push   %eax
49a79f:	8d 45 0c             	lea    0xc(%ebp),%eax
49a7a2:	50                   	push   %eax
49a7a3:	8d 45 d0             	lea    -0x30(%ebp),%eax
49a7a6:	50                   	push   %eax
49a7a7:	57                   	push   %edi
49a7a8:	e8 e3 e6 ff ff       	call   0x498e90
49a7ad:	8b 4d c8             	mov    -0x38(%ebp),%ecx
49a7b0:	83 c4 18             	add    $0x18,%esp
49a7b3:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
49a7ba:	8b f0                	mov    %eax,%esi
49a7bc:	85 c9                	test   %ecx,%ecx
49a7be:	74 11                	je     0x49a7d1
49a7c0:	8b 01                	mov    (%ecx),%eax
49a7c2:	ff 50 08             	call   *0x8(%eax)
49a7c5:	8b c8                	mov    %eax,%ecx
49a7c7:	85 c9                	test   %ecx,%ecx
49a7c9:	74 06                	je     0x49a7d1
49a7cb:	8b 01                	mov    (%ecx),%eax
49a7cd:	6a 01                	push   $0x1
49a7cf:	ff 10                	call   *(%eax)
49a7d1:	80 7d d0 00          	cmpb   $0x0,-0x30(%ebp)
49a7d5:	75 18                	jne    0x49a7ef
49a7d7:	8b 45 cc             	mov    -0x34(%ebp),%eax
49a7da:	c7 03 02 00 00 00    	movl   $0x2,(%ebx)
49a7e0:	c7 00 00 00 00 00    	movl   $0x0,(%eax)
49a7e6:	c7 40 04 00 00 00 00 	movl   $0x0,0x4(%eax)
49a7ed:	eb 31                	jmp    0x49a820
49a7ef:	8d 45 c8             	lea    -0x38(%ebp),%eax
49a7f2:	50                   	push   %eax
49a7f3:	56                   	push   %esi
49a7f4:	8d 45 c0             	lea    -0x40(%ebp),%eax
49a7f7:	50                   	push   %eax
49a7f8:	8d 45 d0             	lea    -0x30(%ebp),%eax
49a7fb:	50                   	push   %eax
49a7fc:	e8 ca 4b 13 00       	call   0x5cf3cb
49a801:	8b 4d cc             	mov    -0x34(%ebp),%ecx
49a804:	83 c4 10             	add    $0x10,%esp
49a807:	89 01                	mov    %eax,(%ecx)
49a809:	8d 45 d0             	lea    -0x30(%ebp),%eax
49a80c:	89 51 04             	mov    %edx,0x4(%ecx)
49a80f:	39 45 c0             	cmp    %eax,-0x40(%ebp)
49a812:	74 06                	je     0x49a81a
49a814:	83 7d c8 00          	cmpl   $0x0,-0x38(%ebp)
49a818:	74 06                	je     0x49a820
49a81a:	c7 03 02 00 00 00    	movl   $0x2,(%ebx)
49a820:	8d 45 14             	lea    0x14(%ebp),%eax
49a823:	50                   	push   %eax
49a824:	8d 45 0c             	lea    0xc(%ebp),%eax
49a827:	50                   	push   %eax
49a828:	e8 b3 89 ff ff       	call   0x4931e0
49a82d:	83 c4 08             	add    $0x8,%esp
49a830:	84 c0                	test   %al,%al
49a832:	74 03                	je     0x49a837
49a834:	83 0b 01             	orl    $0x1,(%ebx)
49a837:	8b 45 bc             	mov    -0x44(%ebp),%eax
49a83a:	8b 4d 0c             	mov    0xc(%ebp),%ecx
49a83d:	89 08                	mov    %ecx,(%eax)
49a83f:	8b 4d 10             	mov    0x10(%ebp),%ecx
49a842:	89 48 04             	mov    %ecx,0x4(%eax)
49a845:	8b 4d f4             	mov    -0xc(%ebp),%ecx
49a848:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
49a84f:	59                   	pop    %ecx
49a850:	5f                   	pop    %edi
49a851:	5e                   	pop    %esi
49a852:	5b                   	pop    %ebx
49a853:	8b 4d f0             	mov    -0x10(%ebp),%ecx
49a856:	33 cd                	xor    %ebp,%ecx
49a858:	e8 7d 6c 14 00       	call   0x5e14da
49a85d:	8b e5                	mov    %ebp,%esp
49a85f:	5d                   	pop    %ebp
49a860:	c2 20 00             	ret    $0x20
49a863:	cc                   	int3
49a864:	cc                   	int3
49a865:	cc                   	int3
49a866:	cc                   	int3
49a867:	cc                   	int3
49a868:	cc                   	int3
49a869:	cc                   	int3
49a86a:	cc                   	int3
49a86b:	cc                   	int3
49a86c:	cc                   	int3
49a86d:	cc                   	int3
49a86e:	cc                   	int3
49a86f:	cc                   	int3
49a870:	55                   	push   %ebp
49a871:	8b ec                	mov    %esp,%ebp
49a873:	6a ff                	push   $0xffffffff
49a875:	68 a8 80 65 00       	push   $0x6580a8
49a87a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
49a880:	50                   	push   %eax
49a881:	83 ec 74             	sub    $0x74,%esp
49a884:	a1 d4 89 72 00       	mov    0x7289d4,%eax
49a889:	33 c5                	xor    %ebp,%eax
49a88b:	89 45 f0             	mov    %eax,-0x10(%ebp)
49a88e:	53                   	push   %ebx
49a88f:	56                   	push   %esi
49a890:	57                   	push   %edi
49a891:	50                   	push   %eax
49a892:	8d 45 f4             	lea    -0xc(%ebp),%eax
49a895:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
49a89b:	89 4d 9c             	mov    %ecx,-0x64(%ebp)
49a89e:	8b 75 1c             	mov    0x1c(%ebp),%esi
49a8a1:	8b 45 08             	mov    0x8(%ebp),%eax
49a8a4:	8b 7d 24             	mov    0x24(%ebp),%edi
49a8a7:	8b 5d 20             	mov    0x20(%ebp),%ebx
49a8aa:	f7 46 14 00 40 00 00 	testl  $0x4000,0x14(%esi)
49a8b1:	8b 4e 30             	mov    0x30(%esi),%ecx
49a8b4:	89 45 80             	mov    %eax,-0x80(%ebp)
49a8b7:	89 7d 84             	mov    %edi,-0x7c(%ebp)
49a8ba:	8b 49 04             	mov    0x4(%ecx),%ecx
49a8bd:	89 4d 98             	mov    %ecx,-0x68(%ebp)
49a8c0:	8b 01                	mov    (%ecx),%eax
49a8c2:	0f 84 84 02 00 00    	je     0x49ab4c
49a8c8:	ff 50 04             	call   *0x4(%eax)
49a8cb:	8d 45 94             	lea    -0x6c(%ebp),%eax
49a8ce:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
49a8d5:	50                   	push   %eax
49a8d6:	e8 75 32 fb ff       	call   0x44db50
49a8db:	8b 4d 98             	mov    -0x68(%ebp),%ecx
49a8de:	83 c4 04             	add    $0x4,%esp
49a8e1:	8b f0                	mov    %eax,%esi
49a8e3:	89 75 9c             	mov    %esi,-0x64(%ebp)
49a8e6:	85 c9                	test   %ecx,%ecx
49a8e8:	74 11                	je     0x49a8fb
49a8ea:	8b 01                	mov    (%ecx),%eax
49a8ec:	ff 50 08             	call   *0x8(%eax)
49a8ef:	8b c8                	mov    %eax,%ecx
49a8f1:	85 c9                	test   %ecx,%ecx
49a8f3:	74 06                	je     0x49a8fb
49a8f5:	8b 01                	mov    (%ecx),%eax
49a8f7:	6a 01                	push   $0x1
49a8f9:	ff 10                	call   *(%eax)
49a8fb:	c6 45 b8 00          	movb   $0x0,-0x48(%ebp)
49a8ff:	c7 45 cc 0f 00 00 00 	movl   $0xf,-0x34(%ebp)
49a906:	c7 45 c8 01 00 00 00 	movl   $0x1,-0x38(%ebp)
49a90d:	66 c7 45 b8 00 00    	movw   $0x0,-0x48(%ebp)
49a913:	8b 06                	mov    (%esi),%eax
49a915:	8d 4d a0             	lea    -0x60(%ebp),%ecx
49a918:	51                   	push   %ecx
49a919:	8b ce                	mov    %esi,%ecx
49a91b:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
49a922:	ff 50 18             	call   *0x18(%eax)
49a925:	83 7d b4 10          	cmpl   $0x10,-0x4c(%ebp)
49a929:	8d 45 a0             	lea    -0x60(%ebp),%eax
49a92c:	ff 75 b0             	push   -0x50(%ebp)
49a92f:	0f 43 45 a0          	cmovae -0x60(%ebp),%eax
49a933:	8d 4d b8             	lea    -0x48(%ebp),%ecx
49a936:	50                   	push   %eax
49a937:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
49a93b:	e8 80 a7 fa ff       	call   0x4450c0
49a940:	8b 55 b4             	mov    -0x4c(%ebp),%edx
49a943:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
49a947:	83 fa 10             	cmp    $0x10,%edx
49a94a:	72 2c                	jb     0x49a978
49a94c:	8b 4d a0             	mov    -0x60(%ebp),%ecx
49a94f:	42                   	inc    %edx
49a950:	8b c1                	mov    %ecx,%eax
49a952:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
49a958:	72 14                	jb     0x49a96e
49a95a:	8b 49 fc             	mov    -0x4(%ecx),%ecx
49a95d:	83 c2 23             	add    $0x23,%edx
49a960:	2b c1                	sub    %ecx,%eax
49a962:	83 c0 fc             	add    $0xfffffffc,%eax
49a965:	83 f8 1f             	cmp    $0x1f,%eax
49a968:	0f 87 b5 02 00 00    	ja     0x49ac23
49a96e:	52                   	push   %edx
49a96f:	51                   	push   %ecx
49a970:	e8 fd 66 14 00       	call   0x5e1072
49a975:	83 c4 08             	add    $0x8,%esp
49a978:	8b 4d cc             	mov    -0x34(%ebp),%ecx
49a97b:	8b 75 c8             	mov    -0x38(%ebp),%esi
49a97e:	89 4d 98             	mov    %ecx,-0x68(%ebp)
49a981:	3b f1                	cmp    %ecx,%esi
49a983:	73 1b                	jae    0x49a9a0
49a985:	8d 46 01             	lea    0x1(%esi),%eax
49a988:	83 f9 10             	cmp    $0x10,%ecx
49a98b:	89 45 c8             	mov    %eax,-0x38(%ebp)
49a98e:	8d 45 b8             	lea    -0x48(%ebp),%eax
49a991:	0f 43 45 b8          	cmovae -0x48(%ebp),%eax
49a995:	66 c7 04 30 00 00    	movw   $0x0,(%eax,%esi,1)
49a99b:	e9 cd 00 00 00       	jmp    0x49aa6d
49a9a0:	ba ff ff ff 7f       	mov    $0x7fffffff,%edx
49a9a5:	8b c2                	mov    %edx,%eax
49a9a7:	2b c6                	sub    %esi,%eax
49a9a9:	83 f8 01             	cmp    $0x1,%eax
49a9ac:	0f 82 76 02 00 00    	jb     0x49ac28
49a9b2:	8d 7e 01             	lea    0x1(%esi),%edi
49a9b5:	83 cf 0f             	or     $0xf,%edi
49a9b8:	3b fa                	cmp    %edx,%edi
49a9ba:	76 04                	jbe    0x49a9c0
49a9bc:	8b fa                	mov    %edx,%edi
49a9be:	eb 18                	jmp    0x49a9d8
49a9c0:	8b c1                	mov    %ecx,%eax
49a9c2:	d1 e8                	shr    $1,%eax
49a9c4:	2b d0                	sub    %eax,%edx
49a9c6:	3b ca                	cmp    %edx,%ecx
49a9c8:	76 07                	jbe    0x49a9d1
49a9ca:	bf ff ff ff 7f       	mov    $0x7fffffff,%edi
49a9cf:	eb 07                	jmp    0x49a9d8
49a9d1:	03 c1                	add    %ecx,%eax
49a9d3:	3b f8                	cmp    %eax,%edi
49a9d5:	0f 42 f8             	cmovb  %eax,%edi
49a9d8:	8d 47 01             	lea    0x1(%edi),%eax
49a9db:	50                   	push   %eax
49a9dc:	8d 4d b8             	lea    -0x48(%ebp),%ecx
49a9df:	e8 6c ea f9 ff       	call   0x439450
49a9e4:	8d 4e 01             	lea    0x1(%esi),%ecx
49a9e7:	89 7d cc             	mov    %edi,-0x34(%ebp)
49a9ea:	8b 7d 98             	mov    -0x68(%ebp),%edi
49a9ed:	89 4d c8             	mov    %ecx,-0x38(%ebp)
49a9f0:	8d 0c 06             	lea    (%esi,%eax,1),%ecx
49a9f3:	89 45 88             	mov    %eax,-0x78(%ebp)
49a9f6:	89 4d 90             	mov    %ecx,-0x70(%ebp)
49a9f9:	8d 4e 01             	lea    0x1(%esi),%ecx
49a9fc:	03 c8                	add    %eax,%ecx
49a9fe:	89 4d 8c             	mov    %ecx,-0x74(%ebp)
49aa01:	56                   	push   %esi
49aa02:	83 ff 10             	cmp    $0x10,%edi
49aa05:	72 44                	jb     0x49aa4b
49aa07:	8b 75 b8             	mov    -0x48(%ebp),%esi
49aa0a:	56                   	push   %esi
49aa0b:	50                   	push   %eax
49aa0c:	e8 ef 84 14 00       	call   0x5e2f00
49aa11:	8b 45 90             	mov    -0x70(%ebp),%eax
49aa14:	47                   	inc    %edi
49aa15:	83 c4 0c             	add    $0xc,%esp
49aa18:	c6 00 00             	movb   $0x0,(%eax)
49aa1b:	8b 45 8c             	mov    -0x74(%ebp),%eax