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
4650e7:	89 4c 24 18          	mov    %ecx,0x18(%esp)
4650eb:	33 d2                	xor    %edx,%edx
4650ed:	85 f6                	test   %esi,%esi
4650ef:	79 1c                	jns    0x46510d
4650f1:	8b c6                	mov    %esi,%eax
4650f3:	f7 d8                	neg    %eax
4650f5:	3b d0                	cmp    %eax,%edx
4650f7:	73 14                	jae    0x46510d
4650f9:	8b d6                	mov    %esi,%edx
4650fb:	8b c2                	mov    %edx,%eax
4650fd:	f7 d0                	not    %eax
4650ff:	c1 e8 05             	shr    $0x5,%eax
465102:	8d 04 85 04 00 00 00 	lea    0x4(,%eax,4),%eax
465109:	2b c8                	sub    %eax,%ecx
46510b:	eb 0a                	jmp    0x465117
46510d:	03 d6                	add    %esi,%edx
46510f:	8b c2                	mov    %edx,%eax
465111:	c1 e8 05             	shr    $0x5,%eax
465114:	8d 0c 81             	lea    (%ecx,%eax,4),%ecx
465117:	53                   	push   %ebx
465118:	55                   	push   %ebp
465119:	83 e2 1f             	and    $0x1f,%edx
46511c:	8d 44 24 20          	lea    0x20(%esp),%eax
465120:	52                   	push   %edx
465121:	51                   	push   %ecx
465122:	50                   	push   %eax
465123:	8b cf                	mov    %edi,%ecx
465125:	e8 06 02 00 00       	call   0x465330
46512a:	5f                   	pop    %edi
46512b:	5e                   	pop    %esi
46512c:	5d                   	pop    %ebp
46512d:	5b                   	pop    %ebx
46512e:	83 c4 14             	add    $0x14,%esp
465131:	c2 08 00             	ret    $0x8
465134:	cc                   	int3
465135:	cc                   	int3
465136:	cc                   	int3
465137:	cc                   	int3
465138:	cc                   	int3
465139:	cc                   	int3
46513a:	cc                   	int3
46513b:	cc                   	int3
46513c:	cc                   	int3
46513d:	cc                   	int3
46513e:	cc                   	int3
46513f:	cc                   	int3
465140:	8b 09                	mov    (%ecx),%ecx
465142:	85 c9                	test   %ecx,%ecx
465144:	74 06                	je     0x46514c
465146:	51                   	push   %ecx
465147:	e8 04 00 00 00       	call   0x465150
46514c:	c3                   	ret
46514d:	cc                   	int3
46514e:	cc                   	int3
46514f:	cc                   	int3
465150:	56                   	push   %esi
465151:	8b f1                	mov    %ecx,%esi
465153:	8b 06                	mov    (%esi),%eax
465155:	85 c0                	test   %eax,%eax
465157:	74 40                	je     0x465199
465159:	8b 4e 08             	mov    0x8(%esi),%ecx
46515c:	2b c8                	sub    %eax,%ecx
46515e:	83 e1 fe             	and    $0xfffffffe,%ecx
465161:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
465167:	72 12                	jb     0x46517b
465169:	8b 50 fc             	mov    -0x4(%eax),%edx
46516c:	83 c1 23             	add    $0x23,%ecx
46516f:	2b c2                	sub    %edx,%eax
465171:	83 c0 fc             	add    $0xfffffffc,%eax
465174:	83 f8 1f             	cmp    $0x1f,%eax
465177:	77 31                	ja     0x4651aa
465179:	8b c2                	mov    %edx,%eax
46517b:	51                   	push   %ecx
46517c:	50                   	push   %eax
46517d:	e8 86 48 00 00       	call   0x469a08
465182:	c7 06 00 00 00 00    	movl   $0x0,(%esi)
465188:	83 c4 08             	add    $0x8,%esp
46518b:	c7 46 04 00 00 00 00 	movl   $0x0,0x4(%esi)
465192:	c7 46 08 00 00 00 00 	movl   $0x0,0x8(%esi)
465199:	6a 0c                	push   $0xc
46519b:	56                   	push   %esi
46519c:	e8 67 48 00 00       	call   0x469a08
4651a1:	83 c4 08             	add    $0x8,%esp
4651a4:	8b c6                	mov    %esi,%eax
4651a6:	5e                   	pop    %esi
4651a7:	c2 04 00             	ret    $0x4
4651aa:	e8 82 44 01 00       	call   0x479631
4651af:	cc                   	int3
4651b0:	8b 44 24 08          	mov    0x8(%esp),%eax
4651b4:	83 ec 18             	sub    $0x18,%esp
4651b7:	53                   	push   %ebx
4651b8:	55                   	push   %ebp
4651b9:	56                   	push   %esi
4651ba:	57                   	push   %edi
4651bb:	ff 74 24 3c          	push   0x3c(%esp)
4651bf:	8b 7c 24 30          	mov    0x30(%esp),%edi
4651c3:	8b f1                	mov    %ecx,%esi
4651c5:	ff 74 24 3c          	push   0x3c(%esp)
4651c9:	50                   	push   %eax
4651ca:	e8 11 04 00 00       	call   0x4655e0
4651cf:	8b 0e                	mov    (%esi),%ecx
4651d1:	8b d0                	mov    %eax,%edx
4651d3:	33 db                	xor    %ebx,%ebx
4651d5:	89 0f                	mov    %ecx,(%edi)
4651d7:	89 5f 04             	mov    %ebx,0x4(%edi)
4651da:	8b f1                	mov    %ecx,%esi
4651dc:	85 d2                	test   %edx,%edx
4651de:	79 1a                	jns    0x4651fa
4651e0:	f7 d8                	neg    %eax
4651e2:	3b d8                	cmp    %eax,%ebx
4651e4:	73 14                	jae    0x4651fa
4651e6:	03 d3                	add    %ebx,%edx
4651e8:	8b c2                	mov    %edx,%eax
4651ea:	f7 d0                	not    %eax
4651ec:	c1 e8 05             	shr    $0x5,%eax
4651ef:	8d 04 85 04 00 00 00 	lea    0x4(,%eax,4),%eax
4651f6:	2b c8                	sub    %eax,%ecx
4651f8:	eb 0a                	jmp    0x465204
4651fa:	03 d3                	add    %ebx,%edx
4651fc:	8b c2                	mov    %edx,%eax
4651fe:	c1 e8 05             	shr    $0x5,%eax
465201:	8d 0c 86             	lea    (%esi,%eax,4),%ecx
465204:	8b c7                	mov    %edi,%eax
465206:	bd 04 00 00 00       	mov    $0x4,%ebp
46520b:	8b df                	mov    %edi,%ebx
46520d:	83 e2 1f             	and    $0x1f,%edx
465210:	89 08                	mov    %ecx,(%eax)
465212:	8b 4c 24 30          	mov    0x30(%esp),%ecx
465216:	89 14 2b             	mov    %edx,(%ebx,%ebp,1)
465219:	8b 1f                	mov    (%edi),%ebx
46521b:	8b 6f 04             	mov    0x4(%edi),%ebp
46521e:	85 c9                	test   %ecx,%ecx
465220:	79 22                	jns    0x465244
465222:	8b c1                	mov    %ecx,%eax
465224:	f7 d8                	neg    %eax
465226:	3b e8                	cmp    %eax,%ebp
465228:	73 1a                	jae    0x465244
46522a:	8d 14 29             	lea    (%ecx,%ebp,1),%edx
46522d:	b8 fc ff ff ff       	mov    $0xfffffffc,%eax
465232:	8b ca                	mov    %edx,%ecx
465234:	8b f2                	mov    %edx,%esi
465236:	f7 d1                	not    %ecx
465238:	c1 e9 05             	shr    $0x5,%ecx
46523b:	c1 e1 02             	shl    $0x2,%ecx
46523e:	2b c1                	sub    %ecx,%eax
465240:	03 d8                	add    %eax,%ebx
465242:	eb 0d                	jmp    0x465251
465244:	8d 14 29             	lea    (%ecx,%ebp,1),%edx
465247:	8b f2                	mov    %edx,%esi
465249:	8b c6                	mov    %esi,%eax
46524b:	c1 e8 05             	shr    $0x5,%eax
46524e:	8d 1c 83             	lea    (%ebx,%eax,4),%ebx
465251:	b8 1f 00 00 00       	mov    $0x1f,%eax
465256:	23 f0                	and    %eax,%esi
465258:	23 c2                	and    %edx,%eax
46525a:	8b 17                	mov    (%edi),%edx
46525c:	89 44 24 20          	mov    %eax,0x20(%esp)
465260:	8b 44 24 34          	mov    0x34(%esp),%eax
465264:	8a 00                	mov    (%eax),%al
465266:	88 44 24 17          	mov    %al,0x17(%esp)
46526a:	3b d3                	cmp    %ebx,%edx
46526c:	75 08                	jne    0x465276
46526e:	3b ee                	cmp    %esi,%ebp
465270:	0f 84 a0 00 00 00    	je     0x465316
465276:	83 c8 ff             	or     $0xffffffff,%eax
465279:	8b cd                	mov    %ebp,%ecx
46527b:	8b 2a                	mov    (%edx),%ebp
46527d:	d3 e0                	shl    %cl,%eax
46527f:	89 44 24 18          	mov    %eax,0x18(%esp)
465283:	f7 d0                	not    %eax
465285:	89 44 24 1c          	mov    %eax,0x1c(%esp)
465289:	3b d3                	cmp    %ebx,%edx
46528b:	75 33                	jne    0x4652c0
46528d:	b9 20 00 00 00       	mov    $0x20,%ecx
465292:	83 ca ff             	or     $0xffffffff,%edx