468e81:	68 e4 70 60 00       	push   $0x6070e4
468e86:	57                   	push   %edi
468e87:	50                   	push   %eax
468e88:	e8 03 e0 ff ff       	call   0x466e90
468e8d:	83 c4 10             	add    $0x10,%esp
468e90:	83 7f 20 03          	cmpl   $0x3,0x20(%edi)
468e94:	75 15                	jne    0x468eab
468e96:	68 10 6e 60 00       	push   $0x606e10
468e9b:	68 e4 70 60 00       	push   $0x6070e4
468ea0:	57                   	push   %edi
468ea1:	ff 36                	push   (%esi)
468ea3:	e8 e8 df ff ff       	call   0x466e90
468ea8:	83 c4 10             	add    $0x10,%esp
468eab:	8b cf                	mov    %edi,%ecx
468ead:	e8 ee 02 ff ff       	call   0x4591a0
468eb2:	8b 04 85 98 7b 60 00 	mov    0x607b98(,%eax,4),%eax
468eb9:	83 f8 0a             	cmp    $0xa,%eax
468ebc:	74 12                	je     0x468ed0
468ebe:	6a 0a                	push   $0xa
468ec0:	68 e4 70 60 00       	push   $0x6070e4
468ec5:	57                   	push   %edi
468ec6:	ff 36                	push   (%esi)
468ec8:	e8 a3 e0 ff ff       	call   0x466f70
468ecd:	83 c4 10             	add    $0x10,%esp
468ed0:	80 7f 27 00          	cmpb   $0x0,0x27(%edi)
468ed4:	74 25                	je     0x468efb
468ed6:	8b 4d fc             	mov    -0x4(%ebp),%ecx
468ed9:	8b 76 18             	mov    0x18(%esi),%esi
468edc:	51                   	push   %ecx
468edd:	57                   	push   %edi
468ede:	8b cf                	mov    %edi,%ecx
468ee0:	03 f3                	add    %ebx,%esi
468ee2:	e8 b9 02 ff ff       	call   0x4591a0
468ee7:	50                   	push   %eax
468ee8:	ff 77 28             	push   0x28(%edi)
468eeb:	8b ce                	mov    %esi,%ecx
468eed:	e8 fe 1b 04 00       	call   0x4aaaf0
468ef2:	5f                   	pop    %edi
468ef3:	5e                   	pop    %esi
468ef4:	5b                   	pop    %ebx
468ef5:	8b e5                	mov    %ebp,%esp
468ef7:	5d                   	pop    %ebp
468ef8:	c2 0c 00             	ret    $0xc
468efb:	8b 4f 34             	mov    0x34(%edi),%ecx
468efe:	85 c9                	test   %ecx,%ecx
468f00:	74 62                	je     0x468f64
468f02:	83 79 0c 01          	cmpl   $0x1,0xc(%ecx)
468f06:	75 0b                	jne    0x468f13
468f08:	8b 41 10             	mov    0x10(%ecx),%eax
468f0b:	8b 00                	mov    (%eax),%eax
468f0d:	80 78 25 00          	cmpb   $0x0,0x25(%eax)
468f11:	75 51                	jne    0x468f64
468f13:	51                   	push   %ecx
468f14:	53                   	push   %ebx
468f15:	8b ce                	mov    %esi,%ecx
468f17:	e8 c4 b0 ff ff       	call   0x463fe0
468f1c:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
468f20:	0f 84 93 00 00 00    	je     0x468fb9
468f26:	57                   	push   %edi
468f27:	8d 4e 04             	lea    0x4(%esi),%ecx
468f2a:	e8 91 b8 ff ff       	call   0x4647c0
468f2f:	8b 4d fc             	mov    -0x4(%ebp),%ecx
468f32:	89 0c 18             	mov    %ecx,(%eax,%ebx,1)
468f35:	8b 4f 34             	mov    0x34(%edi),%ecx
468f38:	8b 41 08             	mov    0x8(%ecx),%eax
468f3b:	2b 48 18             	sub    0x18(%eax),%ecx
468f3e:	b8 ab aa aa 2a       	mov    $0x2aaaaaab,%eax
468f43:	f7 e9                	imul   %ecx
468f45:	8b 46 1c             	mov    0x1c(%esi),%eax
468f48:	c1 fa 02             	sar    $0x2,%edx
468f4b:	8b ca                	mov    %edx,%ecx
468f4d:	c1 e9 1f             	shr    $0x1f,%ecx
468f50:	03 ca                	add    %edx,%ecx
468f52:	8d 0c 88             	lea    (%eax,%ecx,4),%ecx
468f55:	8b 47 28             	mov    0x28(%edi),%eax
468f58:	5f                   	pop    %edi
468f59:	5e                   	pop    %esi
468f5a:	89 04 19             	mov    %eax,(%ecx,%ebx,1)
468f5d:	5b                   	pop    %ebx
468f5e:	8b e5                	mov    %ebp,%esp
468f60:	5d                   	pop    %ebp
468f61:	c2 0c 00             	ret    $0xc
468f64:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
468f68:	8b ce                	mov    %esi,%ecx
468f6a:	57                   	push   %edi
468f6b:	53                   	push   %ebx
468f6c:	75 07                	jne    0x468f75
468f6e:	e8 7d ac ff ff       	call   0x463bf0
468f73:	eb 05                	jmp    0x468f7a
468f75:	e8 56 e2 ff ff       	call   0x4671d0
468f7a:	57                   	push   %edi
468f7b:	8d 4e 04             	lea    0x4(%esi),%ecx
468f7e:	e8 3d b8 ff ff       	call   0x4647c0
468f83:	8b 4e 14             	mov    0x14(%esi),%ecx
468f86:	8b f8                	mov    %eax,%edi
468f88:	8b 0c 0b             	mov    (%ebx,%ecx,1),%ecx
468f8b:	f6 c1 03             	test   $0x3,%cl
468f8e:	75 05                	jne    0x468f95
468f90:	83 e1 fc             	and    $0xfffffffc,%ecx
468f93:	eb 0d                	jmp    0x468fa2
468f95:	8b c1                	mov    %ecx,%eax
468f97:	d1 e8                	shr    $1,%eax
468f99:	a8 01                	test   $0x1,%al
468f9b:	75 09                	jne    0x468fa6
468f9d:	83 e1 fc             	and    $0xfffffffc,%ecx
468fa0:	8b 09                	mov    (%ecx),%ecx
468fa2:	85 c9                	test   %ecx,%ecx
468fa4:	75 0d                	jne    0x468fb3
468fa6:	8b 0c 1f             	mov    (%edi,%ebx,1),%ecx
468fa9:	85 c9                	test   %ecx,%ecx
468fab:	74 06                	je     0x468fb3
468fad:	8b 01                	mov    (%ecx),%eax
468faf:	6a 01                	push   $0x1
468fb1:	ff 10                	call   *(%eax)
468fb3:	8b 45 fc             	mov    -0x4(%ebp),%eax
468fb6:	89 04 1f             	mov    %eax,(%edi,%ebx,1)
468fb9:	5f                   	pop    %edi
468fba:	5e                   	pop    %esi
468fbb:	5b                   	pop    %ebx
468fbc:	8b e5                	mov    %ebp,%esp
468fbe:	5d                   	pop    %ebp
468fbf:	c2 0c 00             	ret    $0xc
468fc2:	cc                   	int3
468fc3:	cc                   	int3
468fc4:	cc                   	int3
468fc5:	cc                   	int3
468fc6:	cc                   	int3
468fc7:	cc                   	int3
468fc8:	cc                   	int3
468fc9:	cc                   	int3
468fca:	cc                   	int3
468fcb:	cc                   	int3
468fcc:	cc                   	int3
468fcd:	cc                   	int3
468fce:	cc                   	int3
468fcf:	cc                   	int3
468fd0:	55                   	push   %ebp
468fd1:	8b ec                	mov    %esp,%ebp
468fd3:	56                   	push   %esi
468fd4:	8b f1                	mov    %ecx,%esi
468fd6:	8b 06                	mov    (%esi),%eax
468fd8:	85 c0                	test   %eax,%eax
468fda:	74 2c                	je     0x469008
468fdc:	8b 4e 08             	mov    0x8(%esi),%ecx
468fdf:	2b c8                	sub    %eax,%ecx
468fe1:	83 e1 fc             	and    $0xfffffffc,%ecx
468fe4:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
468fea:	72 12                	jb     0x468ffe
468fec:	8b 50 fc             	mov    -0x4(%eax),%edx
468fef:	83 c1 23             	add    $0x23,%ecx
468ff2:	2b c2                	sub    %edx,%eax
468ff4:	83 c0 fc             	add    $0xfffffffc,%eax
468ff7:	83 f8 1f             	cmp    $0x1f,%eax
468ffa:	77 28                	ja     0x469024
468ffc:	8b c2                	mov    %edx,%eax
468ffe:	51                   	push   %ecx
468fff:	50                   	push   %eax
469000:	e8 50 82 16 00       	call   0x5d1255
469005:	83 c4 08             	add    $0x8,%esp
469008:	8b 4d 08             	mov    0x8(%ebp),%ecx
46900b:	8b 45 0c             	mov    0xc(%ebp),%eax
46900e:	89 0e                	mov    %ecx,(%esi)
469010:	8d 04 81             	lea    (%ecx,%eax,4),%eax
469013:	89 46 04             	mov    %eax,0x4(%esi)
469016:	8b 45 10             	mov    0x10(%ebp),%eax
469019:	8d 04 81             	lea    (%ecx,%eax,4),%eax
46901c:	89 46 08             	mov    %eax,0x8(%esi)
46901f:	5e                   	pop    %esi
469020:	5d                   	pop    %ebp
469021:	c2 0c 00             	ret    $0xc
469024:	e8 c7 d1 16 00       	call   0x5d61f0
469029:	cc                   	int3
46902a:	cc                   	int3
46902b:	cc                   	int3
46902c:	cc                   	int3
46902d:	cc                   	int3
46902e:	cc                   	int3
46902f:	cc                   	int3
469030:	55                   	push   %ebp
469031:	8b ec                	mov    %esp,%ebp
469033:	83 ec 08             	sub    $0x8,%esp
469036:	8b 55 08             	mov    0x8(%ebp),%edx
469039:	8b c1                	mov    %ecx,%eax
46903b:	89 45 fc             	mov    %eax,-0x4(%ebp)
46903e:	8b 08                	mov    (%eax),%ecx
469040:	ff 40 04             	incl   0x4(%eax)
469043:	8b 45 10             	mov    0x10(%ebp),%eax
469046:	89 4d f8             	mov    %ecx,-0x8(%ebp)
469049:	89 50 04             	mov    %edx,0x4(%eax)
46904c:	3b d1                	cmp    %ecx,%edx
46904e:	75 12                	jne    0x469062
469050:	89 01                	mov    %eax,(%ecx)
469052:	89 41 04             	mov    %eax,0x4(%ecx)
469055:	89 41 08             	mov    %eax,0x8(%ecx)
469058:	c6 40 0c 01          	movb   $0x1,0xc(%eax)
46905c:	8b e5                	mov    %ebp,%esp
46905e:	5d                   	pop    %ebp
46905f:	c2 0c 00             	ret    $0xc
469062:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
469066:	75 0d                	jne    0x469075
469068:	89 42 08             	mov    %eax,0x8(%edx)
46906b:	3b 51 08             	cmp    0x8(%ecx),%edx
46906e:	75 0d                	jne    0x46907d
469070:	89 41 08             	mov    %eax,0x8(%ecx)
469073:	eb 08                	jmp    0x46907d
469075:	89 02                	mov    %eax,(%edx)
469077:	3b 11                	cmp    (%ecx),%edx
469079:	75 02                	jne    0x46907d
46907b:	89 01                	mov    %eax,(%ecx)
46907d:	8b d0                	mov    %eax,%edx
46907f:	8b 40 04             	mov    0x4(%eax),%eax
469082:	80 78 0c 00          	cmpb   $0x0,0xc(%eax)
469086:	0f 85 99 01 00 00    	jne    0x469225
46908c:	53                   	push   %ebx
46908d:	56                   	push   %esi
46908e:	57                   	push   %edi
46908f:	90                   	nop
469090:	8b 4a 04             	mov    0x4(%edx),%ecx
469093:	8d 7a 04             	lea    0x4(%edx),%edi
469096:	8b 71 04             	mov    0x4(%ecx),%esi
469099:	8d 59 04             	lea    0x4(%ecx),%ebx
46909c:	8b 06                	mov    (%esi),%eax
46909e:	3b c8                	cmp    %eax,%ecx
4690a0:	0f 85 ba 00 00 00    	jne    0x469160
4690a6:	8b 46 08             	mov    0x8(%esi),%eax
4690a9:	80 78 0c 00          	cmpb   $0x0,0xc(%eax)
4690ad:	0f 84 b3 00 00 00    	je     0x469166
4690b3:	8b 71 08             	mov    0x8(%ecx),%esi
4690b6:	3b d6                	cmp    %esi,%edx
4690b8:	75 47                	jne    0x469101
4690ba:	8b 06                	mov    (%esi),%eax
4690bc:	8b d1                	mov    %ecx,%edx
4690be:	89 42 08             	mov    %eax,0x8(%edx)
4690c1:	8b 06                	mov    (%esi),%eax
4690c3:	80 78 0d 00          	cmpb   $0x0,0xd(%eax)
4690c7:	75 03                	jne    0x4690cc
4690c9:	89 50 04             	mov    %edx,0x4(%eax)
4690cc:	8b 03                	mov    (%ebx),%eax
4690ce:	89 46 04             	mov    %eax,0x4(%esi)
4690d1:	8b 45 fc             	mov    -0x4(%ebp),%eax
4690d4:	8b 00                	mov    (%eax),%eax
4690d6:	3b 50 04             	cmp    0x4(%eax),%edx
4690d9:	75 0b                	jne    0x4690e6
4690db:	89 70 04             	mov    %esi,0x4(%eax)
4690de:	8b fb                	mov    %ebx,%edi
4690e0:	89 16                	mov    %edx,(%esi)
4690e2:	89 33                	mov    %esi,(%ebx)
4690e4:	eb 1d                	jmp    0x469103
4690e6:	8b 03                	mov    (%ebx),%eax
4690e8:	3b 10                	cmp    (%eax),%edx
4690ea:	75 0a                	jne    0x4690f6
4690ec:	89 30                	mov    %esi,(%eax)
4690ee:	8b fb                	mov    %ebx,%edi
4690f0:	89 16                	mov    %edx,(%esi)
4690f2:	89 33                	mov    %esi,(%ebx)
4690f4:	eb 0d                	jmp    0x469103
4690f6:	89 70 08             	mov    %esi,0x8(%eax)
4690f9:	8b fb                	mov    %ebx,%edi
4690fb:	89 16                	mov    %edx,(%esi)
4690fd:	89 33                	mov    %esi,(%ebx)
4690ff:	eb 02                	jmp    0x469103
469101:	8b f1                	mov    %ecx,%esi
469103:	c6 46 0c 01          	movb   $0x1,0xc(%esi)
469107:	8b 07                	mov    (%edi),%eax
469109:	8b 40 04             	mov    0x4(%eax),%eax
46910c:	c6 40 0c 00          	movb   $0x0,0xc(%eax)
469110:	8b 07                	mov    (%edi),%eax
469112:	8b 48 04             	mov    0x4(%eax),%ecx
469115:	8b 31                	mov    (%ecx),%esi
469117:	8b 46 08             	mov    0x8(%esi),%eax
46911a:	89 01                	mov    %eax,(%ecx)
46911c:	8b 46 08             	mov    0x8(%esi),%eax
46911f:	80 78 0d 00          	cmpb   $0x0,0xd(%eax)
469123:	75 03                	jne    0x469128
469125:	89 48 04             	mov    %ecx,0x4(%eax)
469128:	8b 41 04             	mov    0x4(%ecx),%eax
46912b:	89 46 04             	mov    %eax,0x4(%esi)
46912e:	8b 45 fc             	mov    -0x4(%ebp),%eax
469131:	8b 00                	mov    (%eax),%eax
469133:	3b 48 04             	cmp    0x4(%eax),%ecx
469136:	75 0b                	jne    0x469143
469138:	89 70 04             	mov    %esi,0x4(%eax)
46913b:	89 4e 08             	mov    %ecx,0x8(%esi)
46913e:	e9 cc 00 00 00       	jmp    0x46920f
469143:	8b 41 04             	mov    0x4(%ecx),%eax
469146:	3b 48 08             	cmp    0x8(%eax),%ecx
469149:	75 0b                	jne    0x469156
46914b:	89 70 08             	mov    %esi,0x8(%eax)
46914e:	89 4e 08             	mov    %ecx,0x8(%esi)
469151:	e9 b9 00 00 00       	jmp    0x46920f
469156:	89 30                	mov    %esi,(%eax)
469158:	89 4e 08             	mov    %ecx,0x8(%esi)
46915b:	e9 af 00 00 00       	jmp    0x46920f
469160:	80 78 0c 00          	cmpb   $0x0,0xc(%eax)
469164:	75 1b                	jne    0x469181
469166:	c6 41 0c 01          	movb   $0x1,0xc(%ecx)
46916a:	c6 40 0c 01          	movb   $0x1,0xc(%eax)
46916e:	8b 07                	mov    (%edi),%eax
469170:	8b 40 04             	mov    0x4(%eax),%eax
469173:	c6 40 0c 00          	movb   $0x0,0xc(%eax)
469177:	8b 07                	mov    (%edi),%eax
469179:	8b 50 04             	mov    0x4(%eax),%edx
46917c:	e9 91 00 00 00       	jmp    0x469212
469181:	8b 01                	mov    (%ecx),%eax
469183:	3b d0                	cmp    %eax,%edx
469185:	75 3e                	jne    0x4691c5
469187:	8b d1                	mov    %ecx,%edx
469189:	8b c8                	mov    %eax,%ecx
46918b:	8b 41 08             	mov    0x8(%ecx),%eax
46918e:	89 02                	mov    %eax,(%edx)
469190:	8b 41 08             	mov    0x8(%ecx),%eax
469193:	80 78 0d 00          	cmpb   $0x0,0xd(%eax)
469197:	75 03                	jne    0x46919c
469199:	89 50 04             	mov    %edx,0x4(%eax)
46919c:	8b 03                	mov    (%ebx),%eax
46919e:	89 41 04             	mov    %eax,0x4(%ecx)
4691a1:	8b 45 fc             	mov    -0x4(%ebp),%eax
4691a4:	8b 00                	mov    (%eax),%eax
4691a6:	3b 50 04             	cmp    0x4(%eax),%edx
4691a9:	75 05                	jne    0x4691b0
4691ab:	89 48 04             	mov    %ecx,0x4(%eax)
4691ae:	eb 0e                	jmp    0x4691be
4691b0:	8b 03                	mov    (%ebx),%eax
4691b2:	3b 50 08             	cmp    0x8(%eax),%edx
4691b5:	75 05                	jne    0x4691bc
4691b7:	89 48 08             	mov    %ecx,0x8(%eax)
4691ba:	eb 02                	jmp    0x4691be
4691bc:	89 08                	mov    %ecx,(%eax)
4691be:	89 51 08             	mov    %edx,0x8(%ecx)
4691c1:	8b fb                	mov    %ebx,%edi
4691c3:	89 0b                	mov    %ecx,(%ebx)
4691c5:	c6 41 0c 01          	movb   $0x1,0xc(%ecx)
4691c9:	8b 07                	mov    (%edi),%eax
4691cb:	8b 40 04             	mov    0x4(%eax),%eax
4691ce:	c6 40 0c 00          	movb   $0x0,0xc(%eax)
4691d2:	8b 07                	mov    (%edi),%eax
4691d4:	8b 48 04             	mov    0x4(%eax),%ecx
4691d7:	8b 71 08             	mov    0x8(%ecx),%esi
4691da:	8b 06                	mov    (%esi),%eax
4691dc:	89 41 08             	mov    %eax,0x8(%ecx)
4691df:	8b 06                	mov    (%esi),%eax
4691e1:	80 78 0d 00          	cmpb   $0x0,0xd(%eax)
4691e5:	75 03                	jne    0x4691ea
4691e7:	89 48 04             	mov    %ecx,0x4(%eax)
4691ea:	8b 41 04             	mov    0x4(%ecx),%eax
4691ed:	89 46 04             	mov    %eax,0x4(%esi)
4691f0:	8b 45 fc             	mov    -0x4(%ebp),%eax
4691f3:	8b 00                	mov    (%eax),%eax
4691f5:	3b 48 04             	cmp    0x4(%eax),%ecx
4691f8:	75 05                	jne    0x4691ff