4b9755:	83 e0 fe             	and    $0xfffffffe,%eax
4b9758:	c7 40 10 00 00 00 00 	movl   $0x0,0x10(%eax)
4b975f:	83 78 14 10          	cmpl   $0x10,0x14(%eax)
4b9763:	72 02                	jb     0x4b9767
4b9765:	8b 00                	mov    (%eax),%eax
4b9767:	c6 00 00             	movb   $0x0,(%eax)
4b976a:	f6 c1 02             	test   $0x2,%cl
4b976d:	74 08                	je     0x4b9777
4b976f:	8b 4f 14             	mov    0x14(%edi),%ecx
4b9772:	e8 c9 ee ff ff       	call   0x4b8640
4b9777:	8d 4f 04             	lea    0x4(%edi),%ecx
4b977a:	c7 47 08 00 00 00 00 	movl   $0x0,0x8(%edi)
4b9781:	f6 01 01             	testb  $0x1,(%ecx)
4b9784:	74 05                	je     0x4b978b
4b9786:	e8 25 6f f9 ff       	call   0x4506b0
4b978b:	85 db                	test   %ebx,%ebx
4b978d:	74 3f                	je     0x4b97ce
4b978f:	56                   	push   %esi
4b9790:	6a 00                	push   $0x0
4b9792:	68 50 d6 68 00       	push   $0x68d650
4b9797:	e8 e4 9b fa ff       	call   0x463380
4b979c:	a1 7c d6 68 00       	mov    0x68d67c,%eax
4b97a1:	83 c4 08             	add    $0x8,%esp
4b97a4:	8b 48 38             	mov    0x38(%eax),%ecx
4b97a7:	8b 70 3c             	mov    0x3c(%eax),%esi
4b97aa:	8b 03                	mov    (%ebx),%eax
4b97ac:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4b97af:	8d 4d f8             	lea    -0x8(%ebp),%ecx
4b97b2:	51                   	push   %ecx
4b97b3:	8b cb                	mov    %ebx,%ecx
4b97b5:	ff 50 48             	call   *0x48(%eax)
4b97b8:	3b 70 04             	cmp    0x4(%eax),%esi
4b97bb:	5e                   	pop    %esi
4b97bc:	75 10                	jne    0x4b97ce
4b97be:	53                   	push   %ebx
4b97bf:	8b cf                	mov    %edi,%ecx
4b97c1:	e8 aa 28 01 00       	call   0x4cc070
4b97c6:	5f                   	pop    %edi
4b97c7:	5b                   	pop    %ebx
4b97c8:	8b e5                	mov    %ebp,%esp
4b97ca:	5d                   	pop    %ebp
4b97cb:	c2 04 00             	ret    $0x4
4b97ce:	57                   	push   %edi
4b97cf:	53                   	push   %ebx
4b97d0:	e8 3b 0f fb ff       	call   0x46a710
4b97d5:	83 c4 08             	add    $0x8,%esp
4b97d8:	5f                   	pop    %edi
4b97d9:	5b                   	pop    %ebx
4b97da:	8b e5                	mov    %ebp,%esp
4b97dc:	5d                   	pop    %ebp
4b97dd:	c2 04 00             	ret    $0x4
4b97e0:	55                   	push   %ebp
4b97e1:	8b ec                	mov    %esp,%ebp
4b97e3:	83 ec 08             	sub    $0x8,%esp
4b97e6:	53                   	push   %ebx
4b97e7:	57                   	push   %edi
4b97e8:	8b 7d 08             	mov    0x8(%ebp),%edi
4b97eb:	8b d9                	mov    %ecx,%ebx
4b97ed:	85 ff                	test   %edi,%edi
4b97ef:	74 3f                	je     0x4b9830
4b97f1:	56                   	push   %esi
4b97f2:	6a 00                	push   $0x0
4b97f4:	68 50 d6 68 00       	push   $0x68d650
4b97f9:	e8 82 9b fa ff       	call   0x463380
4b97fe:	a1 7c d6 68 00       	mov    0x68d67c,%eax
4b9803:	83 c4 08             	add    $0x8,%esp
4b9806:	8b 48 38             	mov    0x38(%eax),%ecx
4b9809:	8b 70 3c             	mov    0x3c(%eax),%esi
4b980c:	8b 07                	mov    (%edi),%eax
4b980e:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4b9811:	8d 4d f8             	lea    -0x8(%ebp),%ecx
4b9814:	51                   	push   %ecx
4b9815:	8b cf                	mov    %edi,%ecx
4b9817:	ff 50 48             	call   *0x48(%eax)
4b981a:	3b 70 04             	cmp    0x4(%eax),%esi
4b981d:	5e                   	pop    %esi
4b981e:	75 10                	jne    0x4b9830
4b9820:	57                   	push   %edi
4b9821:	8b cb                	mov    %ebx,%ecx
4b9823:	e8 48 28 01 00       	call   0x4cc070
4b9828:	5f                   	pop    %edi
4b9829:	5b                   	pop    %ebx
4b982a:	8b e5                	mov    %ebp,%esp
4b982c:	5d                   	pop    %ebp
4b982d:	c2 04 00             	ret    $0x4
4b9830:	53                   	push   %ebx
4b9831:	57                   	push   %edi
4b9832:	e8 d9 0e fb ff       	call   0x46a710
4b9837:	83 c4 08             	add    $0x8,%esp
4b983a:	5f                   	pop    %edi
4b983b:	5b                   	pop    %ebx
4b983c:	8b e5                	mov    %ebp,%esp
4b983e:	5d                   	pop    %ebp
4b983f:	c2 04 00             	ret    $0x4
4b9842:	cc                   	int3
4b9843:	cc                   	int3
4b9844:	cc                   	int3
4b9845:	cc                   	int3
4b9846:	cc                   	int3
4b9847:	cc                   	int3
4b9848:	cc                   	int3
4b9849:	cc                   	int3
4b984a:	cc                   	int3
4b984b:	cc                   	int3
4b984c:	cc                   	int3
4b984d:	cc                   	int3
4b984e:	cc                   	int3
4b984f:	cc                   	int3
4b9850:	56                   	push   %esi
4b9851:	8b f1                	mov    %ecx,%esi
4b9853:	8b 4e 08             	mov    0x8(%esi),%ecx
4b9856:	f6 c1 03             	test   $0x3,%cl
4b9859:	74 2a                	je     0x4b9885
4b985b:	f6 c1 01             	test   $0x1,%cl
4b985e:	74 18                	je     0x4b9878
4b9860:	8b 46 10             	mov    0x10(%esi),%eax
4b9863:	83 e0 fe             	and    $0xfffffffe,%eax
4b9866:	c7 40 10 00 00 00 00 	movl   $0x0,0x10(%eax)
4b986d:	83 78 14 10          	cmpl   $0x10,0x14(%eax)
4b9871:	72 02                	jb     0x4b9875
4b9873:	8b 00                	mov    (%eax),%eax
4b9875:	c6 00 00             	movb   $0x0,(%eax)
4b9878:	f6 c1 02             	test   $0x2,%cl
4b987b:	74 08                	je     0x4b9885
4b987d:	8b 4e 14             	mov    0x14(%esi),%ecx
4b9880:	e8 bb ed ff ff       	call   0x4b8640
4b9885:	8d 4e 04             	lea    0x4(%esi),%ecx
4b9888:	c7 46 08 00 00 00 00 	movl   $0x0,0x8(%esi)
4b988f:	f6 01 01             	testb  $0x1,(%ecx)
4b9892:	5e                   	pop    %esi
4b9893:	0f 85 17 6e f9 ff    	jne    0x4506b0
4b9899:	c3                   	ret
4b989a:	cc                   	int3
4b989b:	cc                   	int3
4b989c:	cc                   	int3
4b989d:	cc                   	int3
4b989e:	cc                   	int3
4b989f:	cc                   	int3
4b98a0:	8b 41 08             	mov    0x8(%ecx),%eax
4b98a3:	d1 e8                	shr    $1,%eax
4b98a5:	56                   	push   %esi
4b98a6:	a8 01                	test   $0x1,%al
4b98a8:	74 23                	je     0x4b98cd
4b98aa:	8b 71 14             	mov    0x14(%ecx),%esi
4b98ad:	8d 4e 08             	lea    0x8(%esi),%ecx
4b98b0:	e8 5b 0a ff ff       	call   0x4aa310
4b98b5:	84 c0                	test   %al,%al
4b98b7:	74 10                	je     0x4b98c9
4b98b9:	8d 46 14             	lea    0x14(%esi),%eax
4b98bc:	50                   	push   %eax
4b98bd:	e8 ce d4 00 00       	call   0x4c6d90
4b98c2:	83 c4 04             	add    $0x4,%esp
4b98c5:	84 c0                	test   %al,%al
4b98c7:	75 04                	jne    0x4b98cd
4b98c9:	32 c0                	xor    %al,%al
4b98cb:	5e                   	pop    %esi
4b98cc:	c3                   	ret
4b98cd:	b0 01                	mov    $0x1,%al
4b98cf:	5e                   	pop    %esi
4b98d0:	c3                   	ret
4b98d1:	cc                   	int3
4b98d2:	cc                   	int3
4b98d3:	cc                   	int3
4b98d4:	cc                   	int3
4b98d5:	cc                   	int3
4b98d6:	cc                   	int3
4b98d7:	cc                   	int3
4b98d8:	cc                   	int3
4b98d9:	cc                   	int3
4b98da:	cc                   	int3
4b98db:	cc                   	int3
4b98dc:	cc                   	int3
4b98dd:	cc                   	int3
4b98de:	cc                   	int3
4b98df:	cc                   	int3
4b98e0:	55                   	push   %ebp
4b98e1:	8b ec                	mov    %esp,%ebp
4b98e3:	83 ec 14             	sub    $0x14,%esp
4b98e6:	53                   	push   %ebx
4b98e7:	8b d9                	mov    %ecx,%ebx
4b98e9:	33 c9                	xor    %ecx,%ecx
4b98eb:	89 5d f4             	mov    %ebx,-0xc(%ebp)
4b98ee:	89 4d fc             	mov    %ecx,-0x4(%ebp)
4b98f1:	8b 53 08             	mov    0x8(%ebx),%edx
4b98f4:	f6 c2 03             	test   $0x3,%dl
4b98f7:	0f 84 ca 00 00 00    	je     0x4b99c7
4b98fd:	f6 c2 01             	test   $0x1,%dl
4b9900:	74 23                	je     0x4b9925
4b9902:	8b 43 10             	mov    0x10(%ebx),%eax
4b9905:	83 e0 fe             	and    $0xfffffffe,%eax
4b9908:	8b 48 10             	mov    0x10(%eax),%ecx
4b990b:	8b c1                	mov    %ecx,%eax
4b990d:	83 c8 01             	or     $0x1,%eax
4b9910:	41                   	inc    %ecx
4b9911:	0f bd c0             	bsr    %eax,%eax
4b9914:	89 45 f0             	mov    %eax,-0x10(%ebp)
4b9917:	8d 04 c0             	lea    (%eax,%eax,8),%eax
4b991a:	83 c0 49             	add    $0x49,%eax
4b991d:	c1 e8 06             	shr    $0x6,%eax
4b9920:	03 c8                	add    %eax,%ecx
4b9922:	89 4d fc             	mov    %ecx,-0x4(%ebp)
4b9925:	f6 c2 02             	test   $0x2,%dl
4b9928:	0f 84 99 00 00 00    	je     0x4b99c7
4b992e:	56                   	push   %esi
4b992f:	8b 73 14             	mov    0x14(%ebx),%esi
4b9932:	57                   	push   %edi
4b9933:	89 75 f8             	mov    %esi,-0x8(%ebp)
4b9936:	8d 4e 08             	lea    0x8(%esi),%ecx
4b9939:	e8 72 dd fe ff       	call   0x4a76b0
4b993e:	8b 4e 18             	mov    0x18(%esi),%ecx
4b9941:	8d 1c 48             	lea    (%eax,%ecx,2),%ebx
4b9944:	8b 46 20             	mov    0x20(%esi),%eax
4b9947:	85 c0                	test   %eax,%eax
4b9949:	74 09                	je     0x4b9954
4b994b:	83 c0 04             	add    $0x4,%eax
4b994e:	8b d0                	mov    %eax,%edx
4b9950:	8b f0                	mov    %eax,%esi
4b9952:	eb 06                	jmp    0x4b995a
4b9954:	33 d2                	xor    %edx,%edx
4b9956:	33 f6                	xor    %esi,%esi
4b9958:	33 c0                	xor    %eax,%eax
4b995a:	8d 3c 88             	lea    (%eax,%ecx,4),%edi
4b995d:	3b d7                	cmp    %edi,%edx
4b995f:	74 26                	je     0x4b9987
4b9961:	8b 0e                	mov    (%esi),%ecx
4b9963:	e8 38 79 00 00       	call   0x4c12a0
4b9968:	8b c8                	mov    %eax,%ecx
4b996a:	83 c6 04             	add    $0x4,%esi
4b996d:	83 c9 01             	or     $0x1,%ecx
4b9970:	0f bd c9             	bsr    %ecx,%ecx
4b9973:	89 4d ec             	mov    %ecx,-0x14(%ebp)
4b9976:	8d 0c c9             	lea    (%ecx,%ecx,8),%ecx
4b9979:	83 c1 49             	add    $0x49,%ecx
4b997c:	c1 e9 06             	shr    $0x6,%ecx
4b997f:	03 c8                	add    %eax,%ecx
4b9981:	03 d9                	add    %ecx,%ebx
4b9983:	3b f7                	cmp    %edi,%esi
4b9985:	75 da                	jne    0x4b9961
4b9987:	8b 45 f8             	mov    -0x8(%ebp),%eax
4b998a:	8d 48 04             	lea    0x4(%eax),%ecx
4b998d:	83 c0 24             	add    $0x24,%eax
4b9990:	f6 01 01             	testb  $0x1,(%ecx)
4b9993:	5f                   	pop    %edi
4b9994:	5e                   	pop    %esi
4b9995:	74 0f                	je     0x4b99a6
4b9997:	50                   	push   %eax
4b9998:	53                   	push   %ebx
4b9999:	51                   	push   %ecx
4b999a:	e8 11 5b fb ff       	call   0x46f4b0
4b999f:	83 c4 0c             	add    $0xc,%esp
4b99a2:	8b d8                	mov    %eax,%ebx
4b99a4:	eb 02                	jmp    0x4b99a8
4b99a6:	89 18                	mov    %ebx,(%eax)
4b99a8:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4b99ab:	8b c3                	mov    %ebx,%eax
4b99ad:	83 c8 01             	or     $0x1,%eax
4b99b0:	41                   	inc    %ecx
4b99b1:	0f bd c0             	bsr    %eax,%eax
4b99b4:	89 45 f8             	mov    %eax,-0x8(%ebp)
4b99b7:	8d 04 c0             	lea    (%eax,%eax,8),%eax
4b99ba:	83 c0 49             	add    $0x49,%eax
4b99bd:	c1 e8 06             	shr    $0x6,%eax
4b99c0:	03 c3                	add    %ebx,%eax
4b99c2:	8b 5d f4             	mov    -0xc(%ebp),%ebx
4b99c5:	03 c8                	add    %eax,%ecx
4b99c7:	8d 43 04             	lea    0x4(%ebx),%eax
4b99ca:	83 c3 0c             	add    $0xc,%ebx
4b99cd:	f6 00 01             	testb  $0x1,(%eax)
4b99d0:	74 10                	je     0x4b99e2
4b99d2:	53                   	push   %ebx
4b99d3:	51                   	push   %ecx
4b99d4:	50                   	push   %eax
4b99d5:	e8 d6 5a fb ff       	call   0x46f4b0
4b99da:	83 c4 0c             	add    $0xc,%esp
4b99dd:	5b                   	pop    %ebx
4b99de:	8b e5                	mov    %ebp,%esp
4b99e0:	5d                   	pop    %ebp
4b99e1:	c3                   	ret
4b99e2:	89 0b                	mov    %ecx,(%ebx)
4b99e4:	8b c1                	mov    %ecx,%eax
4b99e6:	5b                   	pop    %ebx
4b99e7:	8b e5                	mov    %ebp,%esp
4b99e9:	5d                   	pop    %ebp
4b99ea:	c3                   	ret
4b99eb:	cc                   	int3
4b99ec:	cc                   	int3
4b99ed:	cc                   	int3
4b99ee:	cc                   	int3
4b99ef:	cc                   	int3
4b99f0:	55                   	push   %ebp
4b99f1:	8b ec                	mov    %esp,%ebp
4b99f3:	83 ec 2c             	sub    $0x2c,%esp
4b99f6:	53                   	push   %ebx
4b99f7:	56                   	push   %esi
4b99f8:	8b 75 08             	mov    0x8(%ebp),%esi
4b99fb:	57                   	push   %edi
4b99fc:	8b 7d 0c             	mov    0xc(%ebp),%edi
4b99ff:	89 4d fc             	mov    %ecx,-0x4(%ebp)
4b9a02:	3b 37                	cmp    (%edi),%esi
4b9a04:	72 2a                	jb     0x4b9a30
4b9a06:	8b c6                	mov    %esi,%eax
4b9a08:	2b 47 04             	sub    0x4(%edi),%eax
4b9a0b:	3b 47 10             	cmp    0x10(%edi),%eax
4b9a0e:	0f 84 e0 01 00 00    	je     0x4b9bf4
4b9a14:	ff 77 48             	push   0x48(%edi)
4b9a17:	8b cf                	mov    %edi,%ecx
4b9a19:	50                   	push   %eax
4b9a1a:	8d 45 e4             	lea    -0x1c(%ebp),%eax
4b9a1d:	50                   	push   %eax
4b9a1e:	e8 0d 55 fa ff       	call   0x45ef30
4b9a23:	80 7d e8 00          	cmpb   $0x0,-0x18(%ebp)
4b9a27:	8b 75 e4             	mov    -0x1c(%ebp),%esi
4b9a2a:	0f 85 7a 01 00 00    	jne    0x4b9baa
4b9a30:	0f b6 1e             	movzbl (%esi),%ebx
4b9a33:	81 fb 80 00 00 00    	cmp    $0x80,%ebx
4b9a39:	73 03                	jae    0x4b9a3e
4b9a3b:	46                   	inc    %esi
4b9a3c:	eb 2f                	jmp    0x4b9a6d
4b9a3e:	0f b6 4e 01          	movzbl 0x1(%esi),%ecx
4b9a42:	83 c3 80             	add    $0xffffff80,%ebx
4b9a45:	8b c1                	mov    %ecx,%eax
4b9a47:	c1 e0 07             	shl    $0x7,%eax
4b9a4a:	03 d8                	add    %eax,%ebx
4b9a4c:	81 f9 80 00 00 00    	cmp    $0x80,%ecx
4b9a52:	73 05                	jae    0x4b9a59
4b9a54:	83 c6 02             	add    $0x2,%esi
4b9a57:	eb 14                	jmp    0x4b9a6d
4b9a59:	53                   	push   %ebx
4b9a5a:	8d 45 dc             	lea    -0x24(%ebp),%eax
4b9a5d:	56                   	push   %esi
4b9a5e:	50                   	push   %eax
4b9a5f:	e8 7c 5f fa ff       	call   0x45f9e0
4b9a64:	8b 5d e0             	mov    -0x20(%ebp),%ebx
4b9a67:	83 c4 0c             	add    $0xc,%esp
4b9a6a:	8b 75 dc             	mov    -0x24(%ebp),%esi
4b9a6d:	85 f6                	test   %esi,%esi
4b9a6f:	0f 84 33 01 00 00    	je     0x4b9ba8
4b9a75:	8b c3                	mov    %ebx,%eax
4b9a77:	c1 e8 03             	shr    $0x3,%eax
4b9a7a:	83 e8 01             	sub    $0x1,%eax
4b9a7d:	0f 84 d6 00 00 00    	je     0x4b9b59
4b9a83:	83 e8 01             	sub    $0x1,%eax
4b9a86:	0f 85 29 01 00 00    	jne    0x4b9bb5
4b9a8c:	80 fb 12             	cmp    $0x12,%bl
4b9a8f:	0f 85 20 01 00 00    	jne    0x4b9bb5
4b9a95:	8b 5d fc             	mov    -0x4(%ebp),%ebx
4b9a98:	83 4b 08 02          	orl    $0x2,0x8(%ebx)
4b9a9c:	8b 4b 14             	mov    0x14(%ebx),%ecx
4b9a9f:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4b9aa2:	85 c9                	test   %ecx,%ecx