464cda:	33 c0                	xor    %eax,%eax
464cdc:	f3 ab                	rep stos %eax,%es:(%edi)
464cde:	8b 7d d0             	mov    -0x30(%ebp),%edi
464ce1:	8b 4d f0             	mov    -0x10(%ebp),%ecx
464ce4:	52                   	push   %edx
464ce5:	ff 75 9c             	push   -0x64(%ebp)
464ce8:	8b 55 e8             	mov    -0x18(%ebp),%edx
464ceb:	ff b5 60 ff ff ff    	push   -0xa0(%ebp)
464cf1:	56                   	push   %esi
464cf2:	e8 a9 8a fe ff       	call   0x44d7a0
464cf7:	83 c4 10             	add    $0x10,%esp
464cfa:	8d 85 34 ff ff ff    	lea    -0xcc(%ebp),%eax
464d00:	8d 8d 48 ff ff ff    	lea    -0xb8(%ebp),%ecx
464d06:	50                   	push   %eax
464d07:	8d 85 68 ff ff ff    	lea    -0x98(%ebp),%eax
464d0d:	50                   	push   %eax
464d0e:	e8 1d d5 fe ff       	call   0x452230
464d13:	50                   	push   %eax
464d14:	8d 4d b4             	lea    -0x4c(%ebp),%ecx
464d17:	e8 14 99 fe ff       	call   0x44e630
464d1c:	8b 85 74 ff ff ff    	mov    -0x8c(%ebp),%eax
464d22:	8b 75 ac             	mov    -0x54(%ebp),%esi
464d25:	8b ce                	mov    %esi,%ecx
464d27:	89 45 ec             	mov    %eax,-0x14(%ebp)
464d2a:	8b 85 5c ff ff ff    	mov    -0xa4(%ebp),%eax
464d30:	89 45 f0             	mov    %eax,-0x10(%ebp)
464d33:	57                   	push   %edi
464d34:	ff 75 d4             	push   -0x2c(%ebp)
464d37:	8d 04 c6             	lea    (%esi,%eax,8),%eax
464d3a:	8b d0                	mov    %eax,%edx
464d3c:	89 45 e8             	mov    %eax,-0x18(%ebp)
464d3f:	e8 ec 80 fe ff       	call   0x44ce30
464d44:	8b 55 f0             	mov    -0x10(%ebp),%edx
464d47:	83 c4 08             	add    $0x8,%esp
464d4a:	8b ca                	mov    %edx,%ecx
464d4c:	2b cf                	sub    %edi,%ecx
464d4e:	8d 3c fe             	lea    (%esi,%edi,8),%edi
464d51:	03 c9                	add    %ecx,%ecx
464d53:	74 04                	je     0x464d59
464d55:	33 c0                	xor    %eax,%eax
464d57:	f3 ab                	rep stos %eax,%es:(%edi)
464d59:	8b 4d ec             	mov    -0x14(%ebp),%ecx
464d5c:	52                   	push   %edx
464d5d:	ff 75 9c             	push   -0x64(%ebp)
464d60:	8b 55 e8             	mov    -0x18(%ebp),%edx
464d63:	ff b5 60 ff ff ff    	push   -0xa0(%ebp)
464d69:	56                   	push   %esi
464d6a:	e8 31 8a fe ff       	call   0x44d7a0
464d6f:	83 c4 10             	add    $0x10,%esp
464d72:	8d 85 20 ff ff ff    	lea    -0xe0(%ebp),%eax
464d78:	8d 8d 48 ff ff ff    	lea    -0xb8(%ebp),%ecx
464d7e:	50                   	push   %eax
464d7f:	8d 85 68 ff ff ff    	lea    -0x98(%ebp),%eax
464d85:	50                   	push   %eax
464d86:	e8 a5 d4 fe ff       	call   0x452230
464d8b:	8d 4d c8             	lea    -0x38(%ebp),%ecx
464d8e:	e9 07 01 00 00       	jmp    0x464e9a
464d93:	8b 8d 74 ff ff ff    	mov    -0x8c(%ebp),%ecx
464d99:	8b 45 ac             	mov    -0x54(%ebp),%eax
464d9c:	8b 75 d0             	mov    -0x30(%ebp),%esi
464d9f:	8b 7d bc             	mov    -0x44(%ebp),%edi
464da2:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
464da5:	8b 8d 5c ff ff ff    	mov    -0xa4(%ebp),%ecx
464dab:	56                   	push   %esi
464dac:	ff 75 d4             	push   -0x2c(%ebp)
464daf:	89 4d f0             	mov    %ecx,-0x10(%ebp)
464db2:	8d 0c c8             	lea    (%eax,%ecx,8),%ecx
464db5:	89 45 e8             	mov    %eax,-0x18(%ebp)
464db8:	57                   	push   %edi
464db9:	ff 75 c0             	push   -0x40(%ebp)
464dbc:	89 4d ec             	mov    %ecx,-0x14(%ebp)
464dbf:	8b d1                	mov    %ecx,%edx
464dc1:	8b c8                	mov    %eax,%ecx
464dc3:	e8 68 85 fe ff       	call   0x44d330
464dc8:	8b 55 f0             	mov    -0x10(%ebp),%edx
464dcb:	8d 04 3e             	lea    (%esi,%edi,1),%eax
464dce:	83 c4 10             	add    $0x10,%esp
464dd1:	8d 0c 12             	lea    (%edx,%edx,1),%ecx
464dd4:	2b ce                	sub    %esi,%ecx
464dd6:	8b 75 e8             	mov    -0x18(%ebp),%esi
464dd9:	8d 04 86             	lea    (%esi,%eax,4),%eax
464ddc:	89 45 f0             	mov    %eax,-0x10(%ebp)
464ddf:	2b cf                	sub    %edi,%ecx
464de1:	74 0a                	je     0x464ded
464de3:	8b 7d f0             	mov    -0x10(%ebp),%edi
464de6:	33 c0                	xor    %eax,%eax
464de8:	f3 ab                	rep stos %eax,%es:(%edi)
464dea:	8b 7d bc             	mov    -0x44(%ebp),%edi
464ded:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
464df0:	52                   	push   %edx
464df1:	ff 75 9c             	push   -0x64(%ebp)
464df4:	8b 55 ec             	mov    -0x14(%ebp),%edx
464df7:	ff b5 60 ff ff ff    	push   -0xa0(%ebp)
464dfd:	56                   	push   %esi
464dfe:	e8 9d 89 fe ff       	call   0x44d7a0
464e03:	83 c4 10             	add    $0x10,%esp
464e06:	8d 85 34 ff ff ff    	lea    -0xcc(%ebp),%eax
464e0c:	8d 8d 48 ff ff ff    	lea    -0xb8(%ebp),%ecx
464e12:	50                   	push   %eax
464e13:	8d 85 68 ff ff ff    	lea    -0x98(%ebp),%eax
464e19:	50                   	push   %eax
464e1a:	e8 11 d4 fe ff       	call   0x452230
464e1f:	50                   	push   %eax
464e20:	8d 4d c8             	lea    -0x38(%ebp),%ecx
464e23:	e8 08 98 fe ff       	call   0x44e630
464e28:	8b 85 74 ff ff ff    	mov    -0x8c(%ebp),%eax
464e2e:	8b 75 ac             	mov    -0x54(%ebp),%esi
464e31:	8b ce                	mov    %esi,%ecx
464e33:	89 45 ec             	mov    %eax,-0x14(%ebp)
464e36:	8b 85 5c ff ff ff    	mov    -0xa4(%ebp),%eax
464e3c:	89 45 f0             	mov    %eax,-0x10(%ebp)
464e3f:	57                   	push   %edi
464e40:	ff 75 c0             	push   -0x40(%ebp)
464e43:	8d 04 c6             	lea    (%esi,%eax,8),%eax
464e46:	8b d0                	mov    %eax,%edx
464e48:	89 45 e8             	mov    %eax,-0x18(%ebp)
464e4b:	e8 e0 7f fe ff       	call   0x44ce30
464e50:	8b 55 f0             	mov    -0x10(%ebp),%edx
464e53:	83 c4 08             	add    $0x8,%esp
464e56:	8b ca                	mov    %edx,%ecx
464e58:	2b cf                	sub    %edi,%ecx
464e5a:	8d 3c fe             	lea    (%esi,%edi,8),%edi
464e5d:	03 c9                	add    %ecx,%ecx
464e5f:	74 04                	je     0x464e65
464e61:	33 c0                	xor    %eax,%eax
464e63:	f3 ab                	rep stos %eax,%es:(%edi)
464e65:	8b 4d ec             	mov    -0x14(%ebp),%ecx
464e68:	52                   	push   %edx
464e69:	ff 75 9c             	push   -0x64(%ebp)
464e6c:	8b 55 e8             	mov    -0x18(%ebp),%edx
464e6f:	ff b5 60 ff ff ff    	push   -0xa0(%ebp)
464e75:	56                   	push   %esi
464e76:	e8 25 89 fe ff       	call   0x44d7a0
464e7b:	83 c4 10             	add    $0x10,%esp
464e7e:	8d 85 20 ff ff ff    	lea    -0xe0(%ebp),%eax
464e84:	8d 8d 48 ff ff ff    	lea    -0xb8(%ebp),%ecx
464e8a:	50                   	push   %eax
464e8b:	8d 85 68 ff ff ff    	lea    -0x98(%ebp),%eax
464e91:	50                   	push   %eax
464e92:	e8 99 d3 fe ff       	call   0x452230
464e97:	8d 4d b4             	lea    -0x4c(%ebp),%ecx
464e9a:	50                   	push   %eax
464e9b:	e8 90 97 fe ff       	call   0x44e630
464ea0:	85 db                	test   %ebx,%ebx
464ea2:	0f 85 b8 fd ff ff    	jne    0x464c60
464ea8:	8b 5d ac             	mov    -0x54(%ebp),%ebx
464eab:	8b 75 c0             	mov    -0x40(%ebp),%esi
464eae:	8b 85 74 ff ff ff    	mov    -0x8c(%ebp),%eax
464eb4:	8b 95 5c ff ff ff    	mov    -0xa4(%ebp),%edx
464eba:	89 45 e8             	mov    %eax,-0x18(%ebp)
464ebd:	89 55 f0             	mov    %edx,-0x10(%ebp)
464ec0:	3b de                	cmp    %esi,%ebx
464ec2:	74 18                	je     0x464edc
464ec4:	8b 4d bc             	mov    -0x44(%ebp),%ecx
464ec7:	8d 04 8d 00 00 00 00 	lea    0x0(,%ecx,4),%eax
464ece:	50                   	push   %eax
464ecf:	56                   	push   %esi
464ed0:	53                   	push   %ebx
464ed1:	e8 4a 67 00 00       	call   0x46b620
464ed6:	8b 55 f0             	mov    -0x10(%ebp),%edx
464ed9:	83 c4 0c             	add    $0xc,%esp
464edc:	8b 45 bc             	mov    -0x44(%ebp),%eax
464edf:	8d 0c 12             	lea    (%edx,%edx,1),%ecx
464ee2:	2b c8                	sub    %eax,%ecx
464ee4:	8d 04 85 00 00 00 00 	lea    0x0(,%eax,4),%eax
464eeb:	89 45 f0             	mov    %eax,-0x10(%ebp)
464eee:	8d 3c 03             	lea    (%ebx,%eax,1),%edi
464ef1:	74 04                	je     0x464ef7
464ef3:	33 c0                	xor    %eax,%eax
464ef5:	f3 ab                	rep stos %eax,%es:(%edi)
464ef7:	8b 4d e8             	mov    -0x18(%ebp),%ecx
464efa:	52                   	push   %edx
464efb:	ff 75 9c             	push   -0x64(%ebp)
464efe:	8d 14 d3             	lea    (%ebx,%edx,8),%edx
464f01:	ff b5 60 ff ff ff    	push   -0xa0(%ebp)
464f07:	53                   	push   %ebx
464f08:	e8 93 88 fe ff       	call   0x44d7a0
464f0d:	8b 4d dc             	mov    -0x24(%ebp),%ecx
464f10:	8d 85 68 ff ff ff    	lea    -0x98(%ebp),%eax
464f16:	83 c4 10             	add    $0x10,%esp
464f19:	50                   	push   %eax
464f1a:	e8 21 95 fe ff       	call   0x44e440
464f1f:	8b 55 d0             	mov    -0x30(%ebp),%edx
464f22:	33 c0                	xor    %eax,%eax
464f24:	8b 5d d4             	mov    -0x2c(%ebp),%ebx
464f27:	8b ca                	mov    %edx,%ecx
464f29:	8b fb                	mov    %ebx,%edi
464f2b:	f3 ab                	rep stos %eax,%es:(%edi)
464f2d:	8d 04 95 00 00 00 00 	lea    0x0(,%edx,4),%eax
464f34:	53                   	push   %ebx
464f35:	83 f8 10             	cmp    $0x10,%eax
464f38:	72 07                	jb     0x464f41
464f3a:	e8 21 10 03 00       	call   0x495f60
464f3f:	eb 05                	jmp    0x464f46
464f41:	e8 3c 47 01 00       	call   0x479682
464f46:	8b 4d bc             	mov    -0x44(%ebp),%ecx
464f49:	83 c4 04             	add    $0x4,%esp
464f4c:	33 c0                	xor    %eax,%eax
464f4e:	8b fe                	mov    %esi,%edi
464f50:	83 7d f0 10          	cmpl   $0x10,-0x10(%ebp)
464f54:	f3 ab                	rep stos %eax,%es:(%edi)
464f56:	56                   	push   %esi
464f57:	72 07                	jb     0x464f60
464f59:	e8 02 10 03 00       	call   0x495f60
464f5e:	eb 05                	jmp    0x464f65
464f60:	e8 1d 47 01 00       	call   0x479682
464f65:	8b 95 28 ff ff ff    	mov    -0xd8(%ebp),%edx
464f6b:	33 c0                	xor    %eax,%eax
464f6d:	8b b5 2c ff ff ff    	mov    -0xd4(%ebp),%esi
464f73:	83 c4 04             	add    $0x4,%esp
464f76:	8b fe                	mov    %esi,%edi
464f78:	8b ca                	mov    %edx,%ecx
464f7a:	f3 ab                	rep stos %eax,%es:(%edi)
464f7c:	8d 04 95 00 00 00 00 	lea    0x0(,%edx,4),%eax
464f83:	56                   	push   %esi
464f84:	83 f8 10             	cmp    $0x10,%eax
464f87:	72 07                	jb     0x464f90
464f89:	e8 d2 0f 03 00       	call   0x495f60
464f8e:	eb 05                	jmp    0x464f95
464f90:	e8 ed 46 01 00       	call   0x479682
464f95:	8b 95 3c ff ff ff    	mov    -0xc4(%ebp),%edx
464f9b:	33 c0                	xor    %eax,%eax
464f9d:	8b b5 40 ff ff ff    	mov    -0xc0(%ebp),%esi
464fa3:	83 c4 04             	add    $0x4,%esp
464fa6:	8b fe                	mov    %esi,%edi
464fa8:	8b ca                	mov    %edx,%ecx
464faa:	f3 ab                	rep stos %eax,%es:(%edi)
464fac:	8d 04 95 00 00 00 00 	lea    0x0(,%edx,4),%eax
464fb3:	56                   	push   %esi
464fb4:	83 f8 10             	cmp    $0x10,%eax
464fb7:	72 07                	jb     0x464fc0
464fb9:	e8 a2 0f 03 00       	call   0x495f60
464fbe:	eb 05                	jmp    0x464fc5
464fc0:	e8 bd 46 01 00       	call   0x479682
464fc5:	8b 55 a8             	mov    -0x58(%ebp),%edx
464fc8:	33 c0                	xor    %eax,%eax
464fca:	8b 75 ac             	mov    -0x54(%ebp),%esi
464fcd:	83 c4 04             	add    $0x4,%esp
464fd0:	8b fe                	mov    %esi,%edi
464fd2:	8b ca                	mov    %edx,%ecx
464fd4:	f3 ab                	rep stos %eax,%es:(%edi)
464fd6:	8d 04 95 00 00 00 00 	lea    0x0(,%edx,4),%eax
464fdd:	56                   	push   %esi
464fde:	83 f8 10             	cmp    $0x10,%eax
464fe1:	72 07                	jb     0x464fea
464fe3:	e8 78 0f 03 00       	call   0x495f60
464fe8:	eb 05                	jmp    0x464fef
464fea:	e8 93 46 01 00       	call   0x479682
464fef:	8b 55 98             	mov    -0x68(%ebp),%edx
464ff2:	33 c0                	xor    %eax,%eax
464ff4:	8b 75 9c             	mov    -0x64(%ebp),%esi
464ff7:	83 c4 04             	add    $0x4,%esp
464ffa:	8b fe                	mov    %esi,%edi
464ffc:	8b ca                	mov    %edx,%ecx
464ffe:	f3 ab                	rep stos %eax,%es:(%edi)
465000:	8d 04 95 00 00 00 00 	lea    0x0(,%edx,4),%eax
465007:	56                   	push   %esi
465008:	83 f8 10             	cmp    $0x10,%eax
46500b:	72 07                	jb     0x465014
46500d:	e8 4e 0f 03 00       	call   0x495f60
465012:	eb 05                	jmp    0x465019
465014:	e8 69 46 01 00       	call   0x479682
465019:	83 c4 04             	add    $0x4,%esp
46501c:	8d 8d 48 ff ff ff    	lea    -0xb8(%ebp),%ecx
465022:	e8 b9 c9 fd ff       	call   0x4419e0
465027:	8b 45 dc             	mov    -0x24(%ebp),%eax
46502a:	8b 4d f4             	mov    -0xc(%ebp),%ecx
46502d:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
465034:	59                   	pop    %ecx
465035:	5f                   	pop    %edi
465036:	5e                   	pop    %esi
465037:	5b                   	pop    %ebx
465038:	8b e5                	mov    %ebp,%esp
46503a:	5d                   	pop    %ebp
46503b:	c3                   	ret
46503c:	cc                   	int3
46503d:	cc                   	int3
46503e:	cc                   	int3
46503f:	cc                   	int3
465040:	83 ec 14             	sub    $0x14,%esp
465043:	53                   	push   %ebx
465044:	55                   	push   %ebp
465045:	56                   	push   %esi
465046:	8b 74 24 24          	mov    0x24(%esp),%esi
46504a:	57                   	push   %edi
46504b:	8b f9                	mov    %ecx,%edi
46504d:	c6 44 24 14 00       	movb   $0x0,0x14(%esp)
465052:	8b 57 0c             	mov    0xc(%edi),%edx
465055:	3b d6                	cmp    %esi,%edx
465057:	73 55                	jae    0x4650ae
465059:	8b 1f                	mov    (%edi),%ebx
46505b:	33 c9                	xor    %ecx,%ecx
46505d:	89 5c 24 18          	mov    %ebx,0x18(%esp)
465061:	85 d2                	test   %edx,%edx
465063:	79 1c                	jns    0x465081
465065:	8b c2                	mov    %edx,%eax
465067:	f7 d8                	neg    %eax
465069:	3b c8                	cmp    %eax,%ecx
46506b:	73 14                	jae    0x465081
46506d:	8b ca                	mov    %edx,%ecx
46506f:	8b c1                	mov    %ecx,%eax
465071:	f7 d0                	not    %eax
465073:	c1 e8 05             	shr    $0x5,%eax
465076:	8d 04 85 04 00 00 00 	lea    0x4(,%eax,4),%eax
46507d:	2b d8                	sub    %eax,%ebx
46507f:	eb 0a                	jmp    0x46508b
465081:	03 ca                	add    %edx,%ecx
465083:	8b c1                	mov    %ecx,%eax
465085:	c1 e8 05             	shr    $0x5,%eax
465088:	8d 1c 83             	lea    (%ebx,%eax,4),%ebx
46508b:	83 e1 1f             	and    $0x1f,%ecx
46508e:	8d 44 24 14          	lea    0x14(%esp),%eax
465092:	51                   	push   %ecx
465093:	53                   	push   %ebx
465094:	50                   	push   %eax
465095:	2b f2                	sub    %edx,%esi
465097:	8d 44 24 24          	lea    0x24(%esp),%eax
46509b:	56                   	push   %esi
46509c:	50                   	push   %eax
46509d:	8b cf                	mov    %edi,%ecx
46509f:	e8 0c 01 00 00       	call   0x4651b0
4650a4:	5f                   	pop    %edi
4650a5:	5e                   	pop    %esi
4650a6:	5d                   	pop    %ebp
4650a7:	5b                   	pop    %ebx
4650a8:	83 c4 14             	add    $0x14,%esp
4650ab:	c2 08 00             	ret    $0x8
4650ae:	76 7a                	jbe    0x46512a
4650b0:	8b 0f                	mov    (%edi),%ecx
4650b2:	33 db                	xor    %ebx,%ebx
4650b4:	89 4c 24 18          	mov    %ecx,0x18(%esp)
4650b8:	85 d2                	test   %edx,%edx
4650ba:	79 1e                	jns    0x4650da
4650bc:	8b c2                	mov    %edx,%eax
4650be:	f7 d8                	neg    %eax
4650c0:	3b d8                	cmp    %eax,%ebx
4650c2:	73 16                	jae    0x4650da
4650c4:	8b da                	mov    %edx,%ebx
4650c6:	8b e9                	mov    %ecx,%ebp
4650c8:	8b c3                	mov    %ebx,%eax
4650ca:	f7 d0                	not    %eax
4650cc:	c1 e8 05             	shr    $0x5,%eax
4650cf:	8d 04 85 04 00 00 00 	lea    0x4(,%eax,4),%eax
4650d6:	2b e8                	sub    %eax,%ebp
4650d8:	eb 0a                	jmp    0x4650e4
4650da:	03 da                	add    %edx,%ebx
4650dc:	8b c3                	mov    %ebx,%eax
4650de:	c1 e8 05             	shr    $0x5,%eax
4650e1:	8d 2c 81             	lea    (%ecx,%eax,4),%ebp
4650e4:	83 e3 1f             	and    $0x1f,%ebx