4acc69:	85 c0                	test   %eax,%eax
4acc6b:	7c 05                	jl     0x4acc72
4acc6d:	d1 e0                	shl    $1,%eax
4acc6f:	43                   	inc    %ebx
4acc70:	eb f7                	jmp    0x4acc69
4acc72:	8b c3                	mov    %ebx,%eax
4acc74:	6a 3f                	push   $0x3f
4acc76:	69 c0 04 02 00 00    	imul   $0x204,%eax,%eax
4acc7c:	5a                   	pop    %edx
4acc7d:	8d 84 30 44 01 00 00 	lea    0x144(%eax,%esi,1),%eax
4acc84:	89 45 fc             	mov    %eax,-0x4(%ebp)
4acc87:	89 40 08             	mov    %eax,0x8(%eax)
4acc8a:	89 40 04             	mov    %eax,0x4(%eax)
4acc8d:	83 c0 08             	add    $0x8,%eax
4acc90:	4a                   	dec    %edx
4acc91:	75 f4                	jne    0x4acc87
4acc93:	8b fb                	mov    %ebx,%edi
4acc95:	6a 04                	push   $0x4
4acc97:	c1 e7 0f             	shl    $0xf,%edi
4acc9a:	03 79 0c             	add    0xc(%ecx),%edi
4acc9d:	68 00 10 00 00       	push   $0x1000
4acca2:	68 00 80 00 00       	push   $0x8000
4acca7:	57                   	push   %edi
4acca8:	ff 15 b4 31 4b 00    	call   *0x4b31b4
4accae:	85 c0                	test   %eax,%eax
4accb0:	75 08                	jne    0x4accba
4accb2:	83 c8 ff             	or     $0xffffffff,%eax
4accb5:	e9 93 00 00 00       	jmp    0x4acd4d
4accba:	8d 97 00 70 00 00    	lea    0x7000(%edi),%edx
4accc0:	3b fa                	cmp    %edx,%edi
4accc2:	77 3c                	ja     0x4acd00
4accc4:	8d 47 10             	lea    0x10(%edi),%eax
4accc7:	83 48 f8 ff          	orl    $0xffffffff,-0x8(%eax)
4acccb:	83 88 ec 0f 00 00 ff 	orl    $0xffffffff,0xfec(%eax)
4accd2:	8d 88 fc 0f 00 00    	lea    0xffc(%eax),%ecx
4accd8:	c7 40 fc f0 0f 00 00 	movl   $0xff0,-0x4(%eax)
4accdf:	89 08                	mov    %ecx,(%eax)
4acce1:	8d 88 fc ef ff ff    	lea    -0x1004(%eax),%ecx
4acce7:	89 48 04             	mov    %ecx,0x4(%eax)
4accea:	c7 80 e8 0f 00 00 f0 	movl   $0xff0,0xfe8(%eax)
4accf1:	0f 00 00
4accf4:	05 00 10 00 00       	add    $0x1000,%eax
4accf9:	8d 48 f0             	lea    -0x10(%eax),%ecx
4accfc:	3b ca                	cmp    %edx,%ecx
4accfe:	76 c7                	jbe    0x4accc7
4acd00:	8b 45 fc             	mov    -0x4(%ebp),%eax
4acd03:	8d 4f 0c             	lea    0xc(%edi),%ecx
4acd06:	05 f8 01 00 00       	add    $0x1f8,%eax
4acd0b:	6a 01                	push   $0x1
4acd0d:	5f                   	pop    %edi
4acd0e:	89 48 04             	mov    %ecx,0x4(%eax)
4acd11:	89 41 08             	mov    %eax,0x8(%ecx)
4acd14:	8d 4a 0c             	lea    0xc(%edx),%ecx
4acd17:	89 48 08             	mov    %ecx,0x8(%eax)
4acd1a:	89 41 04             	mov    %eax,0x4(%ecx)
4acd1d:	83 64 9e 44 00       	andl   $0x0,0x44(%esi,%ebx,4)
4acd22:	89 bc 9e c4 00 00 00 	mov    %edi,0xc4(%esi,%ebx,4)
4acd29:	8a 46 43             	mov    0x43(%esi),%al
4acd2c:	8a c8                	mov    %al,%cl
4acd2e:	fe c1                	inc    %cl
4acd30:	84 c0                	test   %al,%al
4acd32:	8b 45 08             	mov    0x8(%ebp),%eax
4acd35:	88 4e 43             	mov    %cl,0x43(%esi)
4acd38:	75 03                	jne    0x4acd3d
4acd3a:	09 78 04             	or     %edi,0x4(%eax)
4acd3d:	ba 00 00 00 80       	mov    $0x80000000,%edx
4acd42:	8b cb                	mov    %ebx,%ecx
4acd44:	d3 ea                	shr    %cl,%edx
4acd46:	f7 d2                	not    %edx
4acd48:	21 50 08             	and    %edx,0x8(%eax)
4acd4b:	8b c3                	mov    %ebx,%eax
4acd4d:	5f                   	pop    %edi
4acd4e:	5e                   	pop    %esi
4acd4f:	5b                   	pop    %ebx
4acd50:	c9                   	leave
4acd51:	c3                   	ret
4acd52:	55                   	push   %ebp
4acd53:	8b ec                	mov    %esp,%ebp
4acd55:	83 ec 0c             	sub    $0xc,%esp
4acd58:	8b 4d 08             	mov    0x8(%ebp),%ecx
4acd5b:	8b 45 10             	mov    0x10(%ebp),%eax
4acd5e:	53                   	push   %ebx
4acd5f:	56                   	push   %esi
4acd60:	57                   	push   %edi
4acd61:	8b 7d 0c             	mov    0xc(%ebp),%edi
4acd64:	8b d7                	mov    %edi,%edx
4acd66:	8d 70 17             	lea    0x17(%eax),%esi
4acd69:	2b 51 0c             	sub    0xc(%ecx),%edx
4acd6c:	8b 41 10             	mov    0x10(%ecx),%eax
4acd6f:	83 e6 f0             	and    $0xfffffff0,%esi
4acd72:	c1 ea 0f             	shr    $0xf,%edx
4acd75:	8b ca                	mov    %edx,%ecx
4acd77:	69 c9 04 02 00 00    	imul   $0x204,%ecx,%ecx
4acd7d:	8d 8c 01 44 01 00 00 	lea    0x144(%ecx,%eax,1),%ecx
4acd84:	89 4d f4             	mov    %ecx,-0xc(%ebp)
4acd87:	8b 4f fc             	mov    -0x4(%edi),%ecx
4acd8a:	49                   	dec    %ecx
4acd8b:	3b f1                	cmp    %ecx,%esi
4acd8d:	89 4d 10             	mov    %ecx,0x10(%ebp)
4acd90:	8b 5c 39 fc          	mov    -0x4(%ecx,%edi,1),%ebx
4acd94:	8d 7c 39 fc          	lea    -0x4(%ecx,%edi,1),%edi
4acd98:	89 5d fc             	mov    %ebx,-0x4(%ebp)
4acd9b:	0f 8e 5f 01 00 00    	jle    0x4acf00
4acda1:	f6 c3 01             	test   $0x1,%bl
4acda4:	0f 85 4f 01 00 00    	jne    0x4acef9
4acdaa:	03 d9                	add    %ecx,%ebx
4acdac:	3b f3                	cmp    %ebx,%esi
4acdae:	0f 8f 45 01 00 00    	jg     0x4acef9
4acdb4:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4acdb7:	c1 f9 04             	sar    $0x4,%ecx
4acdba:	49                   	dec    %ecx
4acdbb:	83 f9 3f             	cmp    $0x3f,%ecx
4acdbe:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4acdc1:	76 06                	jbe    0x4acdc9
4acdc3:	6a 3f                	push   $0x3f
4acdc5:	59                   	pop    %ecx
4acdc6:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4acdc9:	8b 5f 04             	mov    0x4(%edi),%ebx
4acdcc:	3b 5f 08             	cmp    0x8(%edi),%ebx
4acdcf:	75 48                	jne    0x4ace19
4acdd1:	83 f9 20             	cmp    $0x20,%ecx
4acdd4:	73 1f                	jae    0x4acdf5
4acdd6:	bb 00 00 00 80       	mov    $0x80000000,%ebx
4acddb:	d3 eb                	shr    %cl,%ebx
4acddd:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4acde0:	8d 4c 01 04          	lea    0x4(%ecx,%eax,1),%ecx
4acde4:	f7 d3                	not    %ebx
4acde6:	21 5c 90 44          	and    %ebx,0x44(%eax,%edx,4)
4acdea:	fe 09                	decb   (%ecx)
4acdec:	75 2b                	jne    0x4ace19
4acdee:	8b 4d 08             	mov    0x8(%ebp),%ecx
4acdf1:	21 19                	and    %ebx,(%ecx)
4acdf3:	eb 24                	jmp    0x4ace19
4acdf5:	83 c1 e0             	add    $0xffffffe0,%ecx
4acdf8:	bb 00 00 00 80       	mov    $0x80000000,%ebx
4acdfd:	d3 eb                	shr    %cl,%ebx
4acdff:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4ace02:	8d 4c 01 04          	lea    0x4(%ecx,%eax,1),%ecx
4ace06:	f7 d3                	not    %ebx
4ace08:	21 9c 90 c4 00 00 00 	and    %ebx,0xc4(%eax,%edx,4)
4ace0f:	fe 09                	decb   (%ecx)
4ace11:	75 06                	jne    0x4ace19
4ace13:	8b 4d 08             	mov    0x8(%ebp),%ecx
4ace16:	21 59 04             	and    %ebx,0x4(%ecx)
4ace19:	8b 4f 08             	mov    0x8(%edi),%ecx
4ace1c:	8b 5f 04             	mov    0x4(%edi),%ebx
4ace1f:	89 59 04             	mov    %ebx,0x4(%ecx)
4ace22:	8b 4f 04             	mov    0x4(%edi),%ecx
4ace25:	8b 7f 08             	mov    0x8(%edi),%edi
4ace28:	89 79 08             	mov    %edi,0x8(%ecx)
4ace2b:	8b 4d 10             	mov    0x10(%ebp),%ecx
4ace2e:	2b ce                	sub    %esi,%ecx
4ace30:	01 4d fc             	add    %ecx,-0x4(%ebp)
4ace33:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
4ace37:	0f 8e aa 00 00 00    	jle    0x4acee7
4ace3d:	8b 7d fc             	mov    -0x4(%ebp),%edi
4ace40:	8b 4d 0c             	mov    0xc(%ebp),%ecx
4ace43:	c1 ff 04             	sar    $0x4,%edi
4ace46:	4f                   	dec    %edi
4ace47:	8d 4c 31 fc          	lea    -0x4(%ecx,%esi,1),%ecx
4ace4b:	83 ff 3f             	cmp    $0x3f,%edi
4ace4e:	76 03                	jbe    0x4ace53
4ace50:	6a 3f                	push   $0x3f
4ace52:	5f                   	pop    %edi
4ace53:	8b 5d f4             	mov    -0xc(%ebp),%ebx
4ace56:	8d 1c fb             	lea    (%ebx,%edi,8),%ebx
4ace59:	89 5d 10             	mov    %ebx,0x10(%ebp)
4ace5c:	8b 5b 04             	mov    0x4(%ebx),%ebx
4ace5f:	89 59 04             	mov    %ebx,0x4(%ecx)
4ace62:	8b 5d 10             	mov    0x10(%ebp),%ebx
4ace65:	89 59 08             	mov    %ebx,0x8(%ecx)
4ace68:	89 4b 04             	mov    %ecx,0x4(%ebx)
4ace6b:	8b 59 04             	mov    0x4(%ecx),%ebx
4ace6e:	89 4b 08             	mov    %ecx,0x8(%ebx)
4ace71:	8b 59 04             	mov    0x4(%ecx),%ebx
4ace74:	3b 59 08             	cmp    0x8(%ecx),%ebx
4ace77:	75 5c                	jne    0x4aced5
4ace79:	8a 4c 07 04          	mov    0x4(%edi,%eax,1),%cl
4ace7d:	83 ff 20             	cmp    $0x20,%edi
4ace80:	88 4d 13             	mov    %cl,0x13(%ebp)
4ace83:	fe c1                	inc    %cl
4ace85:	88 4c 07 04          	mov    %cl,0x4(%edi,%eax,1)
4ace89:	73 21                	jae    0x4aceac
4ace8b:	80 7d 13 00          	cmpb   $0x0,0x13(%ebp)
4ace8f:	75 0e                	jne    0x4ace9f
4ace91:	bb 00 00 00 80       	mov    $0x80000000,%ebx
4ace96:	8b cf                	mov    %edi,%ecx
4ace98:	d3 eb                	shr    %cl,%ebx
4ace9a:	8b 4d 08             	mov    0x8(%ebp),%ecx
4ace9d:	09 19                	or     %ebx,(%ecx)
4ace9f:	8d 44 90 44          	lea    0x44(%eax,%edx,4),%eax
4acea3:	ba 00 00 00 80       	mov    $0x80000000,%edx
4acea8:	8b cf                	mov    %edi,%ecx
4aceaa:	eb 25                	jmp    0x4aced1
4aceac:	80 7d 13 00          	cmpb   $0x0,0x13(%ebp)
4aceb0:	75 10                	jne    0x4acec2
4aceb2:	8d 4f e0             	lea    -0x20(%edi),%ecx
4aceb5:	bb 00 00 00 80       	mov    $0x80000000,%ebx
4aceba:	d3 eb                	shr    %cl,%ebx
4acebc:	8b 4d 08             	mov    0x8(%ebp),%ecx
4acebf:	09 59 04             	or     %ebx,0x4(%ecx)
4acec2:	8d 84 90 c4 00 00 00 	lea    0xc4(%eax,%edx,4),%eax
4acec9:	8d 4f e0             	lea    -0x20(%edi),%ecx
4acecc:	ba 00 00 00 80       	mov    $0x80000000,%edx
4aced1:	d3 ea                	shr    %cl,%edx
4aced3:	09 10                	or     %edx,(%eax)
4aced5:	8b 55 0c             	mov    0xc(%ebp),%edx
4aced8:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4acedb:	8d 44 32 fc          	lea    -0x4(%edx,%esi,1),%eax
4acedf:	89 08                	mov    %ecx,(%eax)
4acee1:	89 4c 01 fc          	mov    %ecx,-0x4(%ecx,%eax,1)
4acee5:	eb 03                	jmp    0x4aceea
4acee7:	8b 55 0c             	mov    0xc(%ebp),%edx
4aceea:	8d 46 01             	lea    0x1(%esi),%eax
4aceed:	89 42 fc             	mov    %eax,-0x4(%edx)
4acef0:	89 44 32 f8          	mov    %eax,-0x8(%edx,%esi,1)
4acef4:	e9 47 01 00 00       	jmp    0x4ad040
4acef9:	33 c0                	xor    %eax,%eax
4acefb:	e9 43 01 00 00       	jmp    0x4ad043
4acf00:	0f 8d 3a 01 00 00    	jge    0x4ad040
4acf06:	8b 5d 0c             	mov    0xc(%ebp),%ebx
4acf09:	29 75 10             	sub    %esi,0x10(%ebp)
4acf0c:	8d 4e 01             	lea    0x1(%esi),%ecx
4acf0f:	89 4b fc             	mov    %ecx,-0x4(%ebx)
4acf12:	8d 5c 33 fc          	lea    -0x4(%ebx,%esi,1),%ebx
4acf16:	8b 75 10             	mov    0x10(%ebp),%esi
4acf19:	89 5d 0c             	mov    %ebx,0xc(%ebp)
4acf1c:	c1 fe 04             	sar    $0x4,%esi
4acf1f:	4e                   	dec    %esi
4acf20:	89 4b fc             	mov    %ecx,-0x4(%ebx)
4acf23:	83 fe 3f             	cmp    $0x3f,%esi
4acf26:	76 03                	jbe    0x4acf2b
4acf28:	6a 3f                	push   $0x3f
4acf2a:	5e                   	pop    %esi
4acf2b:	f6 45 fc 01          	testb  $0x1,-0x4(%ebp)
4acf2f:	0f 85 85 00 00 00    	jne    0x4acfba
4acf35:	8b 75 fc             	mov    -0x4(%ebp),%esi
4acf38:	c1 fe 04             	sar    $0x4,%esi
4acf3b:	4e                   	dec    %esi
4acf3c:	83 fe 3f             	cmp    $0x3f,%esi
4acf3f:	76 03                	jbe    0x4acf44
4acf41:	6a 3f                	push   $0x3f
4acf43:	5e                   	pop    %esi
4acf44:	8b 4f 04             	mov    0x4(%edi),%ecx
4acf47:	3b 4f 08             	cmp    0x8(%edi),%ecx
4acf4a:	75 47                	jne    0x4acf93
4acf4c:	83 fe 20             	cmp    $0x20,%esi
4acf4f:	73 1e                	jae    0x4acf6f
4acf51:	bb 00 00 00 80       	mov    $0x80000000,%ebx
4acf56:	8b ce                	mov    %esi,%ecx
4acf58:	d3 eb                	shr    %cl,%ebx
4acf5a:	8d 74 06 04          	lea    0x4(%esi,%eax,1),%esi
4acf5e:	f7 d3                	not    %ebx
4acf60:	21 5c 90 44          	and    %ebx,0x44(%eax,%edx,4)
4acf64:	fe 0e                	decb   (%esi)
4acf66:	75 28                	jne    0x4acf90
4acf68:	8b 4d 08             	mov    0x8(%ebp),%ecx
4acf6b:	21 19                	and    %ebx,(%ecx)
4acf6d:	eb 21                	jmp    0x4acf90
4acf6f:	8d 4e e0             	lea    -0x20(%esi),%ecx
4acf72:	bb 00 00 00 80       	mov    $0x80000000,%ebx
4acf77:	d3 eb                	shr    %cl,%ebx
4acf79:	8d 4c 06 04          	lea    0x4(%esi,%eax,1),%ecx
4acf7d:	f7 d3                	not    %ebx
4acf7f:	21 9c 90 c4 00 00 00 	and    %ebx,0xc4(%eax,%edx,4)
4acf86:	fe 09                	decb   (%ecx)
4acf88:	75 06                	jne    0x4acf90
4acf8a:	8b 4d 08             	mov    0x8(%ebp),%ecx
4acf8d:	21 59 04             	and    %ebx,0x4(%ecx)
4acf90:	8b 5d 0c             	mov    0xc(%ebp),%ebx
4acf93:	8b 4f 08             	mov    0x8(%edi),%ecx
4acf96:	8b 77 04             	mov    0x4(%edi),%esi
4acf99:	89 71 04             	mov    %esi,0x4(%ecx)
4acf9c:	8b 4f 04             	mov    0x4(%edi),%ecx
4acf9f:	8b 77 08             	mov    0x8(%edi),%esi
4acfa2:	89 71 08             	mov    %esi,0x8(%ecx)
4acfa5:	8b 75 10             	mov    0x10(%ebp),%esi
4acfa8:	03 75 fc             	add    -0x4(%ebp),%esi
4acfab:	89 75 10             	mov    %esi,0x10(%ebp)
4acfae:	c1 fe 04             	sar    $0x4,%esi
4acfb1:	4e                   	dec    %esi
4acfb2:	83 fe 3f             	cmp    $0x3f,%esi
4acfb5:	76 03                	jbe    0x4acfba
4acfb7:	6a 3f                	push   $0x3f
4acfb9:	5e                   	pop    %esi
4acfba:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4acfbd:	8b 7c f1 04          	mov    0x4(%ecx,%esi,8),%edi
4acfc1:	8d 0c f1             	lea    (%ecx,%esi,8),%ecx
4acfc4:	89 7b 04             	mov    %edi,0x4(%ebx)
4acfc7:	89 4b 08             	mov    %ecx,0x8(%ebx)
4acfca:	89 59 04             	mov    %ebx,0x4(%ecx)
4acfcd:	8b 4b 04             	mov    0x4(%ebx),%ecx
4acfd0:	89 59 08             	mov    %ebx,0x8(%ecx)
4acfd3:	8b 4b 04             	mov    0x4(%ebx),%ecx
4acfd6:	3b 4b 08             	cmp    0x8(%ebx),%ecx
4acfd9:	75 5c                	jne    0x4ad037
4acfdb:	8a 4c 06 04          	mov    0x4(%esi,%eax,1),%cl
4acfdf:	83 fe 20             	cmp    $0x20,%esi
4acfe2:	88 4d 0f             	mov    %cl,0xf(%ebp)
4acfe5:	fe c1                	inc    %cl
4acfe7:	88 4c 06 04          	mov    %cl,0x4(%esi,%eax,1)
4acfeb:	73 21                	jae    0x4ad00e
4acfed:	80 7d 0f 00          	cmpb   $0x0,0xf(%ebp)
4acff1:	75 0e                	jne    0x4ad001
4acff3:	bf 00 00 00 80       	mov    $0x80000000,%edi
4acff8:	8b ce                	mov    %esi,%ecx
4acffa:	d3 ef                	shr    %cl,%edi
4acffc:	8b 4d 08             	mov    0x8(%ebp),%ecx
4acfff:	09 39                	or     %edi,(%ecx)
4ad001:	8d 44 90 44          	lea    0x44(%eax,%edx,4),%eax
4ad005:	ba 00 00 00 80       	mov    $0x80000000,%edx
4ad00a:	8b ce                	mov    %esi,%ecx
4ad00c:	eb 25                	jmp    0x4ad033
4ad00e:	80 7d 0f 00          	cmpb   $0x0,0xf(%ebp)
4ad012:	75 10                	jne    0x4ad024
4ad014:	8d 4e e0             	lea    -0x20(%esi),%ecx
4ad017:	bf 00 00 00 80       	mov    $0x80000000,%edi
4ad01c:	d3 ef                	shr    %cl,%edi
4ad01e:	8b 4d 08             	mov    0x8(%ebp),%ecx
4ad021:	09 79 04             	or     %edi,0x4(%ecx)
4ad024:	8d 84 90 c4 00 00 00 	lea    0xc4(%eax,%edx,4),%eax
4ad02b:	8d 4e e0             	lea    -0x20(%esi),%ecx
4ad02e:	ba 00 00 00 80       	mov    $0x80000000,%edx
4ad033:	d3 ea                	shr    %cl,%edx
4ad035:	09 10                	or     %edx,(%eax)
4ad037:	8b 45 10             	mov    0x10(%ebp),%eax
4ad03a:	89 03                	mov    %eax,(%ebx)
4ad03c:	89 44 18 fc          	mov    %eax,-0x4(%eax,%ebx,1)
4ad040:	6a 01                	push   $0x1
4ad042:	58                   	pop    %eax
4ad043:	5f                   	pop    %edi
4ad044:	5e                   	pop    %esi
4ad045:	5b                   	pop    %ebx
4ad046:	c9                   	leave
4ad047:	c3                   	ret
4ad048:	83 3d a0 a7 50 00 ff 	cmpl   $0xffffffff,0x50a7a0
4ad04f:	53                   	push   %ebx
4ad050:	55                   	push   %ebp
4ad051:	56                   	push   %esi
4ad052:	57                   	push   %edi
4ad053:	75 07                	jne    0x4ad05c
4ad055:	be 90 a7 50 00       	mov    $0x50a790,%esi
4ad05a:	eb 1d                	jmp    0x4ad079
4ad05c:	68 20 20 00 00       	push   $0x2020
4ad061:	6a 00                	push   $0x0
4ad063:	ff 35 60 df 51 00    	push   0x51df60
4ad069:	ff 15 88 30 4b 00    	call   *0x4b3088
4ad06f:	8b f0                	mov    %eax,%esi
4ad071:	85 f6                	test   %esi,%esi
4ad073:	0f 84 0c 01 00 00    	je     0x4ad185