458e87:	8b 5d 0c             	mov    0xc(%ebp),%ebx
458e8a:	56                   	push   %esi
458e8b:	57                   	push   %edi
458e8c:	8b f9                	mov    %ecx,%edi
458e8e:	8b 57 14             	mov    0x14(%edi),%edx
458e91:	8b c2                	mov    %edx,%eax
458e93:	8b 77 10             	mov    0x10(%edi),%esi
458e96:	2b c6                	sub    %esi,%eax
458e98:	89 75 f4             	mov    %esi,-0xc(%ebp)
458e9b:	89 55 fc             	mov    %edx,-0x4(%ebp)
458e9e:	3b d8                	cmp    %eax,%ebx
458ea0:	77 2d                	ja     0x458ecf
458ea2:	8d 04 1e             	lea    (%esi,%ebx,1),%eax
458ea5:	89 47 10             	mov    %eax,0x10(%edi)
458ea8:	8b c7                	mov    %edi,%eax
458eaa:	83 fa 10             	cmp    $0x10,%edx
458ead:	72 02                	jb     0x458eb1
458eaf:	8b 07                	mov    (%edi),%eax
458eb1:	53                   	push   %ebx
458eb2:	ff 75 08             	push   0x8(%ebp)
458eb5:	03 f0                	add    %eax,%esi
458eb7:	56                   	push   %esi
458eb8:	e8 13 9f 17 00       	call   0x5d2dd0
458ebd:	83 c4 0c             	add    $0xc,%esp
458ec0:	c6 04 1e 00          	movb   $0x0,(%esi,%ebx,1)
458ec4:	8b c7                	mov    %edi,%eax
458ec6:	5f                   	pop    %edi
458ec7:	5e                   	pop    %esi
458ec8:	5b                   	pop    %ebx
458ec9:	8b e5                	mov    %ebp,%esp
458ecb:	5d                   	pop    %ebp
458ecc:	c2 08 00             	ret    $0x8
458ecf:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
458ed4:	2b c6                	sub    %esi,%eax
458ed6:	3b c3                	cmp    %ebx,%eax
458ed8:	0f 82 ed 00 00 00    	jb     0x458fcb
458ede:	8d 0c 1e             	lea    (%esi,%ebx,1),%ecx
458ee1:	83 c9 0f             	or     $0xf,%ecx
458ee4:	81 f9 ff ff ff 7f    	cmp    $0x7fffffff,%ecx
458eea:	76 07                	jbe    0x458ef3
458eec:	b9 ff ff ff 7f       	mov    $0x7fffffff,%ecx
458ef1:	eb 24                	jmp    0x458f17
458ef3:	8b c2                	mov    %edx,%eax
458ef5:	d1 e8                	shr    $1,%eax
458ef7:	89 45 0c             	mov    %eax,0xc(%ebp)
458efa:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
458eff:	2b 45 0c             	sub    0xc(%ebp),%eax
458f02:	3b d0                	cmp    %eax,%edx
458f04:	76 07                	jbe    0x458f0d
458f06:	b9 ff ff ff 7f       	mov    $0x7fffffff,%ecx
458f0b:	eb 0a                	jmp    0x458f17
458f0d:	8b 45 0c             	mov    0xc(%ebp),%eax
458f10:	03 c2                	add    %edx,%eax
458f12:	3b c8                	cmp    %eax,%ecx
458f14:	0f 42 c8             	cmovb  %eax,%ecx
458f17:	8d 41 01             	lea    0x1(%ecx),%eax
458f1a:	89 4d 0c             	mov    %ecx,0xc(%ebp)
458f1d:	50                   	push   %eax
458f1e:	8b cf                	mov    %edi,%ecx
458f20:	e8 fb fe ff ff       	call   0x458e20
458f25:	8d 0c 1e             	lea    (%esi,%ebx,1),%ecx
458f28:	89 45 f0             	mov    %eax,-0x10(%ebp)
458f2b:	89 4f 10             	mov    %ecx,0x10(%edi)
458f2e:	8b 4d 0c             	mov    0xc(%ebp),%ecx
458f31:	89 4f 14             	mov    %ecx,0x14(%edi)
458f34:	8d 0c 30             	lea    (%eax,%esi,1),%ecx
458f37:	89 4d 0c             	mov    %ecx,0xc(%ebp)
458f3a:	03 cb                	add    %ebx,%ecx
458f3c:	83 7d fc 10          	cmpl   $0x10,-0x4(%ebp)
458f40:	89 4d f8             	mov    %ecx,-0x8(%ebp)
458f43:	72 59                	jb     0x458f9e
458f45:	ff 75 f4             	push   -0xc(%ebp)
458f48:	8b 37                	mov    (%edi),%esi
458f4a:	56                   	push   %esi
458f4b:	50                   	push   %eax
458f4c:	e8 7f 9e 17 00       	call   0x5d2dd0
458f51:	53                   	push   %ebx
458f52:	ff 75 08             	push   0x8(%ebp)
458f55:	ff 75 0c             	push   0xc(%ebp)
458f58:	e8 73 9e 17 00       	call   0x5d2dd0
458f5d:	8b 45 f8             	mov    -0x8(%ebp),%eax
458f60:	83 c4 18             	add    $0x18,%esp
458f63:	8b 4d fc             	mov    -0x4(%ebp),%ecx
458f66:	41                   	inc    %ecx
458f67:	c6 00 00             	movb   $0x0,(%eax)
458f6a:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
458f70:	72 12                	jb     0x458f84
458f72:	8b 56 fc             	mov    -0x4(%esi),%edx
458f75:	83 c1 23             	add    $0x23,%ecx
458f78:	2b f2                	sub    %edx,%esi
458f7a:	8d 46 fc             	lea    -0x4(%esi),%eax
458f7d:	83 f8 1f             	cmp    $0x1f,%eax
458f80:	77 4e                	ja     0x458fd0
458f82:	8b f2                	mov    %edx,%esi
458f84:	51                   	push   %ecx
458f85:	56                   	push   %esi
458f86:	e8 ca 82 17 00       	call   0x5d1255
458f8b:	8b 45 f0             	mov    -0x10(%ebp),%eax
458f8e:	83 c4 08             	add    $0x8,%esp
458f91:	89 07                	mov    %eax,(%edi)
458f93:	8b c7                	mov    %edi,%eax
458f95:	5f                   	pop    %edi
458f96:	5e                   	pop    %esi
458f97:	5b                   	pop    %ebx
458f98:	8b e5                	mov    %ebp,%esp
458f9a:	5d                   	pop    %ebp
458f9b:	c2 08 00             	ret    $0x8
458f9e:	56                   	push   %esi
458f9f:	57                   	push   %edi
458fa0:	50                   	push   %eax
458fa1:	e8 2a 9e 17 00       	call   0x5d2dd0
458fa6:	53                   	push   %ebx
458fa7:	ff 75 08             	push   0x8(%ebp)
458faa:	ff 75 0c             	push   0xc(%ebp)
458fad:	e8 1e 9e 17 00       	call   0x5d2dd0
458fb2:	8b 45 f8             	mov    -0x8(%ebp),%eax
458fb5:	83 c4 18             	add    $0x18,%esp
458fb8:	c6 00 00             	movb   $0x0,(%eax)
458fbb:	8b 45 f0             	mov    -0x10(%ebp),%eax
458fbe:	89 07                	mov    %eax,(%edi)
458fc0:	8b c7                	mov    %edi,%eax
458fc2:	5f                   	pop    %edi
458fc3:	5e                   	pop    %esi
458fc4:	5b                   	pop    %ebx
458fc5:	8b e5                	mov    %ebp,%esp
458fc7:	5d                   	pop    %ebp
458fc8:	c2 08 00             	ret    $0x8
458fcb:	e8 40 e6 fe ff       	call   0x447610
458fd0:	e8 1b d2 17 00       	call   0x5d61f0
458fd5:	cc                   	int3
458fd6:	cc                   	int3
458fd7:	cc                   	int3
458fd8:	cc                   	int3
458fd9:	cc                   	int3
458fda:	cc                   	int3
458fdb:	cc                   	int3
458fdc:	cc                   	int3
458fdd:	cc                   	int3
458fde:	cc                   	int3
458fdf:	cc                   	int3
458fe0:	e9 0b 00 00 00       	jmp    0x458ff0
458fe5:	cc                   	int3
458fe6:	cc                   	int3
458fe7:	cc                   	int3
458fe8:	cc                   	int3
458fe9:	cc                   	int3
458fea:	cc                   	int3
458feb:	cc                   	int3
458fec:	cc                   	int3
458fed:	cc                   	int3
458fee:	cc                   	int3
458fef:	cc                   	int3
458ff0:	55                   	push   %ebp
458ff1:	8b ec                	mov    %esp,%ebp
458ff3:	6a ff                	push   $0xffffffff
458ff5:	68 ea 87 5f 00       	push   $0x5f87ea
458ffa:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
459000:	50                   	push   %eax
459001:	83 ec 08             	sub    $0x8,%esp
459004:	56                   	push   %esi
459005:	57                   	push   %edi
459006:	a1 c0 14 69 00       	mov    0x6914c0,%eax
45900b:	33 c5                	xor    %ebp,%eax
45900d:	50                   	push   %eax
45900e:	8d 45 f4             	lea    -0xc(%ebp),%eax
459011:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
459017:	64 a1 2c 00 00 00    	mov    %fs:0x2c,%eax
45901d:	8b 0d 30 68 71 00    	mov    0x716830,%ecx
459023:	8b 0c 88             	mov    (%eax,%ecx,4),%ecx
459026:	a1 0c 3e 69 00       	mov    0x693e0c,%eax
45902b:	3b 81 80 04 00 00    	cmp    0x480(%ecx),%eax
459031:	7f 16                	jg     0x459049
459033:	a1 08 3e 69 00       	mov    0x693e08,%eax
459038:	8b 4d f4             	mov    -0xc(%ebp),%ecx
45903b:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
459042:	59                   	pop    %ecx
459043:	5f                   	pop    %edi
459044:	5e                   	pop    %esi
459045:	8b e5                	mov    %ebp,%esp
459047:	5d                   	pop    %ebp
459048:	c3                   	ret
459049:	68 0c 3e 69 00       	push   $0x693e0c
45904e:	e8 f4 86 17 00       	call   0x5d1747
459053:	83 c4 04             	add    $0x4,%esp
459056:	83 3d 0c 3e 69 00 ff 	cmpl   $0xffffffff,0x693e0c
45905d:	75 d4                	jne    0x459033
45905f:	6a 78                	push   $0x78
459061:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
459068:	e8 b8 81 17 00       	call   0x5d1225
45906d:	8b f8                	mov    %eax,%edi
45906f:	83 c4 04             	add    $0x4,%esp
459072:	89 7d f0             	mov    %edi,-0x10(%ebp)
459075:	85 ff                	test   %edi,%edi
459077:	0f 84 ee 00 00 00    	je     0x45916b
45907d:	8d 77 04             	lea    0x4(%edi),%esi
459080:	c7 07 00 61 60 00    	movl   $0x606100,(%edi)
459086:	89 75 ec             	mov    %esi,-0x14(%ebp)
459089:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
45908f:	6a 14                	push   $0x14
459091:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
459095:	c7 46 04 00 00 00 00 	movl   $0x0,0x4(%esi)
45909c:	c7 46 08 00 00 00 00 	movl   $0x0,0x8(%esi)
4590a3:	e8 7d 81 17 00       	call   0x5d1225
4590a8:	83 c4 04             	add    $0x4,%esp
4590ab:	89 00                	mov    %eax,(%eax)
4590ad:	89 40 04             	mov    %eax,0x4(%eax)
4590b0:	89 46 04             	mov    %eax,0x4(%esi)
4590b3:	8d 4e 0c             	lea    0xc(%esi),%ecx
4590b6:	c7 01 00 00 00 00    	movl   $0x0,(%ecx)
4590bc:	c7 41 04 00 00 00 00 	movl   $0x0,0x4(%ecx)
4590c3:	c7 41 08 00 00 00 00 	movl   $0x0,0x8(%ecx)
4590ca:	ff 76 04             	push   0x4(%esi)
4590cd:	c6 45 fc 04          	movb   $0x4,-0x4(%ebp)
4590d1:	6a 10                	push   $0x10
4590d3:	c7 46 18 07 00 00 00 	movl   $0x7,0x18(%esi)
4590da:	c7 46 1c 08 00 00 00 	movl   $0x8,0x1c(%esi)
4590e1:	c7 06 00 00 80 3f    	movl   $0x3f800000,(%esi)
4590e7:	e8 f4 f7 ff ff       	call   0x4588e0
4590ec:	6a 30                	push   $0x30
4590ee:	8d 47 28             	lea    0x28(%edi),%eax
4590f1:	c7 47 24 00 00 00 00 	movl   $0x0,0x24(%edi)
4590f8:	6a 00                	push   $0x0
4590fa:	50                   	push   %eax
4590fb:	e8 70 9b 17 00       	call   0x5d2c70
459100:	8d 77 58             	lea    0x58(%edi),%esi
459103:	c6 45 fc 06          	movb   $0x6,-0x4(%ebp)
459107:	89 75 ec             	mov    %esi,-0x14(%ebp)
45910a:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
459110:	6a 10                	push   $0x10
459112:	c7 46 04 00 00 00 00 	movl   $0x0,0x4(%esi)
459119:	c7 46 08 00 00 00 00 	movl   $0x0,0x8(%esi)
459120:	e8 00 81 17 00       	call   0x5d1225
459125:	83 c4 10             	add    $0x10,%esp
459128:	89 00                	mov    %eax,(%eax)
45912a:	89 40 04             	mov    %eax,0x4(%eax)
45912d:	89 46 04             	mov    %eax,0x4(%esi)
459130:	8d 4e 0c             	lea    0xc(%esi),%ecx
459133:	c7 01 00 00 00 00    	movl   $0x0,(%ecx)
459139:	c7 41 04 00 00 00 00 	movl   $0x0,0x4(%ecx)
459140:	c7 41 08 00 00 00 00 	movl   $0x0,0x8(%ecx)
459147:	ff 76 04             	push   0x4(%esi)
45914a:	c6 45 fc 08          	movb   $0x8,-0x4(%ebp)
45914e:	6a 10                	push   $0x10
459150:	c7 46 18 07 00 00 00 	movl   $0x7,0x18(%esi)
459157:	c7 46 1c 08 00 00 00 	movl   $0x8,0x1c(%esi)
45915e:	c7 06 00 00 80 3f    	movl   $0x3f800000,(%esi)
459164:	e8 77 f7 ff ff       	call   0x4588e0
459169:	eb 04                	jmp    0x45916f
45916b:	33 ff                	xor    %edi,%edi
45916d:	eb 00                	jmp    0x45916f
45916f:	57                   	push   %edi
459170:	68 20 5d 45 00       	push   $0x455d20
459175:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
459179:	e8 f2 32 00 00       	call   0x45c470
45917e:	68 0c 3e 69 00       	push   $0x693e0c
459183:	89 3d 08 3e 69 00    	mov    %edi,0x693e08
459189:	e8 68 85 17 00       	call   0x5d16f6
45918e:	83 c4 0c             	add    $0xc,%esp
459191:	e9 9d fe ff ff       	jmp    0x459033
459196:	cc                   	int3
459197:	cc                   	int3
459198:	cc                   	int3
459199:	cc                   	int3
45919a:	cc                   	int3
45919b:	cc                   	int3
45919c:	cc                   	int3
45919d:	cc                   	int3
45919e:	cc                   	int3
45919f:	cc                   	int3
4591a0:	55                   	push   %ebp
4591a1:	8b ec                	mov    %esp,%ebp
4591a3:	6a ff                	push   $0xffffffff
4591a5:	68 1d 88 5f 00       	push   $0x5f881d
4591aa:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
4591b0:	50                   	push   %eax
4591b1:	83 ec 0c             	sub    $0xc,%esp
4591b4:	56                   	push   %esi
4591b5:	57                   	push   %edi
4591b6:	a1 c0 14 69 00       	mov    0x6914c0,%eax
4591bb:	33 c5                	xor    %ebp,%eax
4591bd:	50                   	push   %eax
4591be:	8d 45 f4             	lea    -0xc(%ebp),%eax
4591c1:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
4591c7:	8b f9                	mov    %ecx,%edi
4591c9:	8b 77 18             	mov    0x18(%edi),%esi
4591cc:	85 f6                	test   %esi,%esi
4591ce:	74 42                	je     0x459212
4591d0:	6a 00                	push   $0x0
4591d2:	8d 45 f0             	lea    -0x10(%ebp),%eax
4591d5:	50                   	push   %eax
4591d6:	6a 00                	push   $0x0
4591d8:	56                   	push   %esi
4591d9:	ff 15 98 21 60 00    	call   *0x602198
4591df:	85 c0                	test   %eax,%eax
4591e1:	74 43                	je     0x459226
4591e3:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
4591e7:	74 29                	je     0x459212
4591e9:	89 75 e8             	mov    %esi,-0x18(%ebp)
4591ec:	c7 45 ec 04 00 00 00 	movl   $0x4,-0x14(%ebp)
4591f3:	57                   	push   %edi
4591f4:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
4591fb:	e8 40 06 04 00       	call   0x499840
459200:	83 c4 04             	add    $0x4,%esp
459203:	6a 00                	push   $0x0
459205:	6a 00                	push   $0x0
459207:	56                   	push   %esi
459208:	ff 15 94 21 60 00    	call   *0x602194
45920e:	85 c0                	test   %eax,%eax
459210:	74 14                	je     0x459226
459212:	8b 47 1c             	mov    0x1c(%edi),%eax
459215:	8b 4d f4             	mov    -0xc(%ebp),%ecx
459218:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
45921f:	59                   	pop    %ecx
459220:	5f                   	pop    %edi
459221:	5e                   	pop    %esi
459222:	8b e5                	mov    %ebp,%esp
459224:	5d                   	pop    %ebp
459225:	c3                   	ret
459226:	e8 be 6c 18 00       	call   0x5dfee9
45922b:	cc                   	int3
45922c:	cc                   	int3
45922d:	cc                   	int3
45922e:	cc                   	int3
45922f:	cc                   	int3
459230:	8b 49 04             	mov    0x4(%ecx),%ecx
459233:	b8 14 5e 60 00       	mov    $0x605e14,%eax
459238:	85 c9                	test   %ecx,%ecx
45923a:	0f 45 c1             	cmovne %ecx,%eax
45923d:	c3                   	ret
45923e:	cc                   	int3
45923f:	cc                   	int3
459240:	55                   	push   %ebp
459241:	8b ec                	mov    %esp,%ebp
459243:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
459247:	56                   	push   %esi
459248:	8b f1                	mov    %ecx,%esi
45924a:	c7 06 78 64 60 00    	movl   $0x606478,(%esi)
459250:	74 0b                	je     0x45925d
459252:	6a 04                	push   $0x4
459254:	56                   	push   %esi
459255:	e8 fb 7f 17 00       	call   0x5d1255
45925a:	83 c4 08             	add    $0x8,%esp
45925d:	8b c6                	mov    %esi,%eax
45925f:	5e                   	pop    %esi
459260:	5d                   	pop    %ebp
459261:	c2 04 00             	ret    $0x4
459264:	cc                   	int3
459265:	cc                   	int3
459266:	cc                   	int3
459267:	cc                   	int3