458fe7:	3b 4d 0c             	cmp    0xc(%ebp),%ecx
458fea:	7e b8                	jle    0x458fa4
458fec:	5f                   	pop    %edi
458fed:	5e                   	pop    %esi
458fee:	b0 01                	mov    $0x1,%al
458ff0:	5b                   	pop    %ebx
458ff1:	8b e5                	mov    %ebp,%esp
458ff3:	5d                   	pop    %ebp
458ff4:	c2 10 00             	ret    $0x10
458ff7:	55                   	push   %ebp
458ff8:	8b ec                	mov    %esp,%ebp
458ffa:	80 7d 08 00          	cmpb   $0x0,0x8(%ebp)
458ffe:	6a 00                	push   $0x0
459000:	74 17                	je     0x459019
459002:	6a 01                	push   $0x1
459004:	68 4f 01 00 00       	push   $0x14f
459009:	ff 31                	push   (%ecx)
45900b:	ff 15 88 f6 48 00    	call   *0x48f688
459011:	85 c0                	test   %eax,%eax
459013:	75 08                	jne    0x45901d
459015:	32 c0                	xor    %al,%al
459017:	eb 06                	jmp    0x45901f
459019:	6a 00                	push   $0x0
45901b:	eb e7                	jmp    0x459004
45901d:	b0 01                	mov    $0x1,%al
45901f:	5d                   	pop    %ebp
459020:	c2 04 00             	ret    $0x4
459023:	55                   	push   %ebp
459024:	8b ec                	mov    %esp,%ebp
459026:	83 ec 10             	sub    $0x10,%esp
459029:	53                   	push   %ebx
45902a:	8b 1d 88 f6 48 00    	mov    0x48f688,%ebx
459030:	8d 45 f0             	lea    -0x10(%ebp),%eax
459033:	56                   	push   %esi
459034:	57                   	push   %edi
459035:	50                   	push   %eax
459036:	8d 45 fc             	lea    -0x4(%ebp),%eax
459039:	8b f9                	mov    %ecx,%edi
45903b:	50                   	push   %eax
45903c:	68 b0 00 00 00       	push   $0xb0
459041:	ff 37                	push   (%edi)
459043:	ff d3                	call   *%ebx
459045:	8b 75 fc             	mov    -0x4(%ebp),%esi
459048:	6a 00                	push   $0x0
45904a:	56                   	push   %esi
45904b:	68 c9 00 00 00       	push   $0xc9
459050:	ff 37                	push   (%edi)
459052:	89 75 f4             	mov    %esi,-0xc(%ebp)
459055:	ff d3                	call   *%ebx
459057:	89 45 f8             	mov    %eax,-0x8(%ebp)
45905a:	83 f8 01             	cmp    $0x1,%eax
45905d:	7c 3a                	jl     0x459099
45905f:	6a 00                	push   $0x0
459061:	ff 75 fc             	push   -0x4(%ebp)
459064:	68 c9 00 00 00       	push   $0xc9
459069:	ff 37                	push   (%edi)
45906b:	ff d3                	call   *%ebx
45906d:	39 45 f8             	cmp    %eax,-0x8(%ebp)
459070:	75 1d                	jne    0x45908f
459072:	8b 75 f8             	mov    -0x8(%ebp),%esi
459075:	8b 45 fc             	mov    -0x4(%ebp),%eax
459078:	6a 00                	push   $0x0
45907a:	48                   	dec    %eax
45907b:	50                   	push   %eax
45907c:	68 c9 00 00 00       	push   $0xc9
459081:	ff 37                	push   (%edi)
459083:	89 45 fc             	mov    %eax,-0x4(%ebp)
459086:	ff d3                	call   *%ebx
459088:	3b f0                	cmp    %eax,%esi
45908a:	74 e9                	je     0x459075
45908c:	8b 75 f4             	mov    -0xc(%ebp),%esi
45908f:	8b 45 08             	mov    0x8(%ebp),%eax
459092:	2b 75 fc             	sub    -0x4(%ebp),%esi
459095:	89 30                	mov    %esi,(%eax)
459097:	eb 09                	jmp    0x4590a2
459099:	8b 4d 08             	mov    0x8(%ebp),%ecx
45909c:	8b 55 fc             	mov    -0x4(%ebp),%edx
45909f:	42                   	inc    %edx
4590a0:	89 11                	mov    %edx,(%ecx)
4590a2:	5f                   	pop    %edi
4590a3:	5e                   	pop    %esi
4590a4:	b0 01                	mov    $0x1,%al
4590a6:	5b                   	pop    %ebx
4590a7:	8b e5                	mov    %ebp,%esp
4590a9:	5d                   	pop    %ebp
4590aa:	c2 04 00             	ret    $0x4
4590ad:	55                   	push   %ebp
4590ae:	8b ec                	mov    %esp,%ebp
4590b0:	51                   	push   %ecx
4590b1:	51                   	push   %ecx
4590b2:	53                   	push   %ebx
4590b3:	56                   	push   %esi
4590b4:	57                   	push   %edi
4590b5:	68 00 00 01 00       	push   $0x10000
4590ba:	8b f1                	mov    %ecx,%esi
4590bc:	e8 35 7f fc ff       	call   0x420ff6
4590c1:	59                   	pop    %ecx
4590c2:	50                   	push   %eax
4590c3:	8d 4d f8             	lea    -0x8(%ebp),%ecx
4590c6:	e8 c3 c2 fa ff       	call   0x40538e
4590cb:	8b 7d f8             	mov    -0x8(%ebp),%edi
4590ce:	8b 45 08             	mov    0x8(%ebp),%eax
4590d1:	57                   	push   %edi
4590d2:	48                   	dec    %eax
4590d3:	50                   	push   %eax
4590d4:	68 c4 00 00 00       	push   $0xc4
4590d9:	c7 07 ff 7f 00 00    	movl   $0x7fff,(%edi)
4590df:	ff 36                	push   (%esi)
4590e1:	ff 15 88 f6 48 00    	call   *0x48f688
4590e7:	85 c0                	test   %eax,%eax
4590e9:	74 13                	je     0x4590fe
4590eb:	33 c9                	xor    %ecx,%ecx
4590ed:	66 89 0c 47          	mov    %cx,(%edi,%eax,2)
4590f1:	8b 4d 0c             	mov    0xc(%ebp),%ecx
4590f4:	57                   	push   %edi
4590f5:	e8 32 ec fa ff       	call   0x407d2c
4590fa:	b3 01                	mov    $0x1,%bl
4590fc:	eb 0f                	jmp    0x45910d
4590fe:	8b 4d 0c             	mov    0xc(%ebp),%ecx
459101:	68 10 f9 48 00       	push   $0x48f910
459106:	e8 21 ec fa ff       	call   0x407d2c
45910b:	32 db                	xor    %bl,%bl
45910d:	8b 4d fc             	mov    -0x4(%ebp),%ecx
459110:	ff 09                	decl   (%ecx)
459112:	75 0e                	jne    0x459122
459114:	51                   	push   %ecx
459115:	e8 52 7f fc ff       	call   0x42106c
45911a:	57                   	push   %edi
45911b:	e8 4c 7f fc ff       	call   0x42106c
459120:	59                   	pop    %ecx
459121:	59                   	pop    %ecx
459122:	5f                   	pop    %edi
459123:	5e                   	pop    %esi
459124:	8a c3                	mov    %bl,%al
459126:	5b                   	pop    %ebx
459127:	8b e5                	mov    %ebp,%esp
459129:	5d                   	pop    %ebp
45912a:	c2 08 00             	ret    $0x8
45912d:	55                   	push   %ebp
45912e:	8b ec                	mov    %esp,%ebp
459130:	83 ec 10             	sub    $0x10,%esp
459133:	56                   	push   %esi
459134:	57                   	push   %edi
459135:	8b 3d 88 f6 48 00    	mov    0x48f688,%edi
45913b:	8d 45 fc             	lea    -0x4(%ebp),%eax
45913e:	50                   	push   %eax
45913f:	8b f1                	mov    %ecx,%esi
459141:	8d 45 f8             	lea    -0x8(%ebp),%eax
459144:	50                   	push   %eax
459145:	68 b0 00 00 00       	push   $0xb0
45914a:	89 75 f0             	mov    %esi,-0x10(%ebp)
45914d:	ff 36                	push   (%esi)
45914f:	ff d7                	call   *%edi
459151:	8b 45 f8             	mov    -0x8(%ebp),%eax
459154:	3b 45 fc             	cmp    -0x4(%ebp),%eax
459157:	72 04                	jb     0x45915d
459159:	32 c0                	xor    %al,%al
45915b:	eb 7a                	jmp    0x4591d7
45915d:	53                   	push   %ebx
45915e:	33 db                	xor    %ebx,%ebx
459160:	53                   	push   %ebx
459161:	53                   	push   %ebx
459162:	6a 0e                	push   $0xe
459164:	ff 36                	push   (%esi)
459166:	ff d7                	call   *%edi
459168:	8b f8                	mov    %eax,%edi
45916a:	85 ff                	test   %edi,%edi
45916c:	74 66                	je     0x4591d4
45916e:	3b 7d f8             	cmp    -0x8(%ebp),%edi
459171:	72 61                	jb     0x4591d4
459173:	3b 7d fc             	cmp    -0x4(%ebp),%edi
459176:	72 5c                	jb     0x4591d4
459178:	33 c9                	xor    %ecx,%ecx
45917a:	8d 77 01             	lea    0x1(%edi),%esi
45917d:	6a 02                	push   $0x2
45917f:	5a                   	pop    %edx
459180:	8b c6                	mov    %esi,%eax
459182:	f7 e2                	mul    %edx
459184:	0f 90 c1             	seto   %cl
459187:	f7 d9                	neg    %ecx
459189:	0b c8                	or     %eax,%ecx
45918b:	51                   	push   %ecx
45918c:	e8 65 7e fc ff       	call   0x420ff6
459191:	59                   	pop    %ecx
459192:	50                   	push   %eax
459193:	89 45 f4             	mov    %eax,-0xc(%ebp)
459196:	8b 45 f0             	mov    -0x10(%ebp),%eax
459199:	56                   	push   %esi
45919a:	6a 0d                	push   $0xd
45919c:	ff 30                	push   (%eax)
45919e:	ff 15 88 f6 48 00    	call   *0x48f688
4591a4:	8b 75 f4             	mov    -0xc(%ebp),%esi
4591a7:	85 c0                	test   %eax,%eax
4591a9:	74 1e                	je     0x4591c9
4591ab:	8b 45 fc             	mov    -0x4(%ebp),%eax
4591ae:	3b c7                	cmp    %edi,%eax
4591b0:	74 06                	je     0x4591b8
4591b2:	33 c9                	xor    %ecx,%ecx
4591b4:	66 89 0c 46          	mov    %cx,(%esi,%eax,2)
4591b8:	8b 45 f8             	mov    -0x8(%ebp),%eax
4591bb:	8b 4d 08             	mov    0x8(%ebp),%ecx
4591be:	8d 04 46             	lea    (%esi,%eax,2),%eax
4591c1:	50                   	push   %eax
4591c2:	e8 65 eb fa ff       	call   0x407d2c
4591c7:	b3 01                	mov    $0x1,%bl
4591c9:	56                   	push   %esi
4591ca:	e8 9d 7e fc ff       	call   0x42106c
4591cf:	59                   	pop    %ecx
4591d0:	8a c3                	mov    %bl,%al
4591d2:	eb 02                	jmp    0x4591d6
4591d4:	32 c0                	xor    %al,%al
4591d6:	5b                   	pop    %ebx
4591d7:	5f                   	pop    %edi
4591d8:	5e                   	pop    %esi
4591d9:	8b e5                	mov    %ebp,%esp
4591db:	5d                   	pop    %ebp
4591dc:	c2 04 00             	ret    $0x4
4591df:	55                   	push   %ebp
4591e0:	8b ec                	mov    %esp,%ebp
4591e2:	83 ec 14             	sub    $0x14,%esp
4591e5:	53                   	push   %ebx
4591e6:	56                   	push   %esi
4591e7:	8b f1                	mov    %ecx,%esi
4591e9:	8d 4d ec             	lea    -0x14(%ebp),%ecx
4591ec:	68 64 95 4b 00       	push   $0x4b9564
4591f1:	e8 4b ed fa ff       	call   0x407f41
4591f6:	51                   	push   %ecx
4591f7:	8d 45 ec             	lea    -0x14(%ebp),%eax
4591fa:	8b ce                	mov    %esi,%ecx
4591fc:	50                   	push   %eax
4591fd:	e8 c2 1e 00 00       	call   0x45b0c4
459202:	8d 4d ec             	lea    -0x14(%ebp),%ecx
459205:	8a d8                	mov    %al,%bl
459207:	e8 58 c8 fa ff       	call   0x405a64
45920c:	84 db                	test   %bl,%bl
45920e:	74 07                	je     0x459217
459210:	b9 43 01 00 00       	mov    $0x143,%ecx
459215:	eb 2c                	jmp    0x459243
459217:	68 78 95 4b 00       	push   $0x4b9578
45921c:	8d 4d ec             	lea    -0x14(%ebp),%ecx
45921f:	e8 1d ed fa ff       	call   0x407f41
459224:	51                   	push   %ecx
459225:	8d 45 ec             	lea    -0x14(%ebp),%eax
459228:	8b ce                	mov    %esi,%ecx
45922a:	50                   	push   %eax
45922b:	e8 94 1e 00 00       	call   0x45b0c4
459230:	8d 4d ec             	lea    -0x14(%ebp),%ecx
459233:	8a d8                	mov    %al,%bl
459235:	e8 2a c8 fa ff       	call   0x405a64
45923a:	84 db                	test   %bl,%bl
45923c:	74 1c                	je     0x45925a
45923e:	b9 80 01 00 00       	mov    $0x180,%ecx
459243:	8b 45 08             	mov    0x8(%ebp),%eax
459246:	ff 30                	push   (%eax)
459248:	6a 00                	push   $0x0
45924a:	51                   	push   %ecx
45924b:	ff 36                	push   (%esi)
45924d:	ff 15 88 f6 48 00    	call   *0x48f688
459253:	85 c0                	test   %eax,%eax
459255:	0f 95 c0             	setne  %al
459258:	eb 02                	jmp    0x45925c
45925a:	32 c0                	xor    %al,%al
45925c:	5e                   	pop    %esi
45925d:	5b                   	pop    %ebx
45925e:	8b e5                	mov    %ebp,%esp
459260:	5d                   	pop    %ebp
459261:	c2 04 00             	ret    $0x4
459264:	55                   	push   %ebp
459265:	8b ec                	mov    %esp,%ebp
459267:	83 ec 14             	sub    $0x14,%esp
45926a:	53                   	push   %ebx
45926b:	56                   	push   %esi
45926c:	8b f1                	mov    %ecx,%esi
45926e:	8d 4d ec             	lea    -0x14(%ebp),%ecx
459271:	68 64 95 4b 00       	push   $0x4b9564
459276:	e8 c6 ec fa ff       	call   0x407f41
45927b:	51                   	push   %ecx
45927c:	8d 45 ec             	lea    -0x14(%ebp),%eax
45927f:	8b ce                	mov    %esi,%ecx
459281:	50                   	push   %eax
459282:	e8 3d 1e 00 00       	call   0x45b0c4
459287:	8d 4d ec             	lea    -0x14(%ebp),%ecx
45928a:	8a d8                	mov    %al,%bl
45928c:	e8 d3 c7 fa ff       	call   0x405a64
459291:	84 db                	test   %bl,%bl
459293:	74 07                	je     0x45929c
459295:	b8 44 01 00 00       	mov    $0x144,%eax
45929a:	eb 2c                	jmp    0x4592c8
45929c:	68 78 95 4b 00       	push   $0x4b9578
4592a1:	8d 4d ec             	lea    -0x14(%ebp),%ecx
4592a4:	e8 98 ec fa ff       	call   0x407f41
4592a9:	51                   	push   %ecx
4592aa:	8d 45 ec             	lea    -0x14(%ebp),%eax
4592ad:	8b ce                	mov    %esi,%ecx
4592af:	50                   	push   %eax
4592b0:	e8 0f 1e 00 00       	call   0x45b0c4
4592b5:	8d 4d ec             	lea    -0x14(%ebp),%ecx
4592b8:	8a d8                	mov    %al,%bl
4592ba:	e8 a5 c7 fa ff       	call   0x405a64
4592bf:	84 db                	test   %bl,%bl
4592c1:	74 1a                	je     0x4592dd
4592c3:	b8 82 01 00 00       	mov    $0x182,%eax
4592c8:	6a 00                	push   $0x0
4592ca:	ff 75 08             	push   0x8(%ebp)
4592cd:	50                   	push   %eax
4592ce:	ff 36                	push   (%esi)
4592d0:	ff 15 88 f6 48 00    	call   *0x48f688
4592d6:	85 c0                	test   %eax,%eax
4592d8:	0f 95 c0             	setne  %al
4592db:	eb 02                	jmp    0x4592df
4592dd:	32 c0                	xor    %al,%al
4592df:	5e                   	pop    %esi
4592e0:	5b                   	pop    %ebx
4592e1:	8b e5                	mov    %ebp,%esp
4592e3:	5d                   	pop    %ebp
4592e4:	c2 04 00             	ret    $0x4
4592e7:	55                   	push   %ebp
4592e8:	8b ec                	mov    %esp,%ebp
4592ea:	83 ec 10             	sub    $0x10,%esp
4592ed:	53                   	push   %ebx
4592ee:	56                   	push   %esi
4592ef:	8b f1                	mov    %ecx,%esi
4592f1:	8d 4d f0             	lea    -0x10(%ebp),%ecx
4592f4:	68 64 95 4b 00       	push   $0x4b9564
4592f9:	e8 43 ec fa ff       	call   0x407f41
4592fe:	51                   	push   %ecx
4592ff:	8d 45 f0             	lea    -0x10(%ebp),%eax
459302:	8b ce                	mov    %esi,%ecx
459304:	50                   	push   %eax
459305:	e8 ba 1d 00 00       	call   0x45b0c4
45930a:	8d 4d f0             	lea    -0x10(%ebp),%ecx
45930d:	8a d8                	mov    %al,%bl
45930f:	e8 50 c7 fa ff       	call   0x405a64
459314:	84 db                	test   %bl,%bl
459316:	74 07                	je     0x45931f
459318:	b9 58 01 00 00       	mov    $0x158,%ecx
45931d:	eb 2c                	jmp    0x45934b
45931f:	68 78 95 4b 00       	push   $0x4b9578
459324:	8d 4d f0             	lea    -0x10(%ebp),%ecx
459327:	e8 15 ec fa ff       	call   0x407f41
45932c:	51                   	push   %ecx
45932d:	8d 45 f0             	lea    -0x10(%ebp),%eax
459330:	8b ce                	mov    %esi,%ecx
459332:	50                   	push   %eax
459333:	e8 8c 1d 00 00       	call   0x45b0c4
459338:	8d 4d f0             	lea    -0x10(%ebp),%ecx
45933b:	8a d8                	mov    %al,%bl
45933d:	e8 22 c7 fa ff       	call   0x405a64
459342:	84 db                	test   %bl,%bl
459344:	74 22                	je     0x459368