4a4fd0:	55                   	push   %ebp
4a4fd1:	8b ec                	mov    %esp,%ebp
4a4fd3:	83 ec 08             	sub    $0x8,%esp
4a4fd6:	8b 45 20             	mov    0x20(%ebp),%eax
4a4fd9:	85 c0                	test   %eax,%eax
4a4fdb:	74 07                	je     0x4a4fe4
4a4fdd:	8b 45 18             	mov    0x18(%ebp),%eax
4a4fe0:	85 c0                	test   %eax,%eax
4a4fe2:	75 12                	jne    0x4a4ff6
4a4fe4:	8b 45 10             	mov    0x10(%ebp),%eax
4a4fe7:	8b 4d 0c             	mov    0xc(%ebp),%ecx
4a4fea:	50                   	push   %eax
4a4feb:	51                   	push   %ecx
4a4fec:	e8 bf ff ff ff       	call   0x4a4fb0
4a4ff1:	83 c4 08             	add    $0x8,%esp
4a4ff4:	eb 53                	jmp    0x4a5049
4a4ff6:	dd 05 40 35 4b 00    	fldl   0x4b3540
4a4ffc:	7e 21                	jle    0x4a501f
4a4ffe:	db 45 18             	fildl  0x18(%ebp)
4a5001:	e8 aa 32 00 00       	call   0x4a82b0
4a5006:	dd 55 f8             	fstl   -0x8(%ebp)
4a5009:	dc 4d 0c             	fmull  0xc(%ebp)
4a500c:	83 ec 08             	sub    $0x8,%esp
4a500f:	dd 1c 24             	fstpl  (%esp)
4a5012:	e8 99 ff ff ff       	call   0x4a4fb0
4a5017:	dc 75 f8             	fdivl  -0x8(%ebp)
4a501a:	83 c4 08             	add    $0x8,%esp
4a501d:	eb 2a                	jmp    0x4a5049
4a501f:	99                   	cltd
4a5020:	33 c2                	xor    %edx,%eax
4a5022:	2b c2                	sub    %edx,%eax
4a5024:	89 45 fc             	mov    %eax,-0x4(%ebp)
4a5027:	db 45 fc             	fildl  -0x4(%ebp)
4a502a:	e8 81 32 00 00       	call   0x4a82b0
4a502f:	dd 5d f8             	fstpl  -0x8(%ebp)
4a5032:	dd 45 0c             	fldl   0xc(%ebp)
4a5035:	dc 75 f8             	fdivl  -0x8(%ebp)
4a5038:	83 ec 08             	sub    $0x8,%esp
4a503b:	dd 1c 24             	fstpl  (%esp)
4a503e:	e8 6d ff ff ff       	call   0x4a4fb0
4a5043:	dc 4d f8             	fmull  -0x8(%ebp)
4a5046:	83 c4 08             	add    $0x8,%esp
4a5049:	dd 5d 0c             	fstpl  0xc(%ebp)
4a504c:	8b 45 0c             	mov    0xc(%ebp),%eax
4a504f:	8b 55 10             	mov    0x10(%ebp),%edx
4a5052:	8b e5                	mov    %ebp,%esp
4a5054:	5d                   	pop    %ebp
4a5055:	c3                   	ret
4a5056:	90                   	nop
4a5057:	90                   	nop
4a5058:	90                   	nop
4a5059:	90                   	nop
4a505a:	90                   	nop
4a505b:	90                   	nop
4a505c:	90                   	nop
4a505d:	90                   	nop
4a505e:	90                   	nop
4a505f:	90                   	nop
4a5060:	55                   	push   %ebp
4a5061:	8b ec                	mov    %esp,%ebp
4a5063:	8b 45 08             	mov    0x8(%ebp),%eax
4a5066:	83 f8 01             	cmp    $0x1,%eax
4a5069:	7e 1d                	jle    0x4a5088
4a506b:	56                   	push   %esi
4a506c:	57                   	push   %edi
4a506d:	8d 75 18             	lea    0x18(%ebp),%esi
4a5070:	8d 78 ff             	lea    -0x1(%eax),%edi
4a5073:	dd 45 0c             	fldl   0xc(%ebp)
4a5076:	dd 06                	fldl   (%esi)
4a5078:	e8 4d 3c 00 00       	call   0x4a8cca
4a507d:	dd 5d 0c             	fstpl  0xc(%ebp)
4a5080:	83 c6 0c             	add    $0xc,%esi
4a5083:	4f                   	dec    %edi
4a5084:	75 ed                	jne    0x4a5073
4a5086:	5f                   	pop    %edi
4a5087:	5e                   	pop    %esi
4a5088:	8b 45 0c             	mov    0xc(%ebp),%eax
4a508b:	8b 55 10             	mov    0x10(%ebp),%edx
4a508e:	5d                   	pop    %ebp
4a508f:	c3                   	ret
4a5090:	83 ec 64             	sub    $0x64,%esp
4a5093:	53                   	push   %ebx
4a5094:	55                   	push   %ebp
4a5095:	56                   	push   %esi
4a5096:	57                   	push   %edi
4a5097:	8b 7c 24 7c          	mov    0x7c(%esp),%edi
4a509b:	57                   	push   %edi
4a509c:	ff 15 40 a1 50 00    	call   *0x50a140
4a50a2:	8b d8                	mov    %eax,%ebx
4a50a4:	83 c4 04             	add    $0x4,%esp
4a50a7:	83 fb 08             	cmp    $0x8,%ebx
4a50aa:	89 5c 24 24          	mov    %ebx,0x24(%esp)
4a50ae:	0f 8c a0 03 00 00    	jl     0x4a5454
4a50b4:	8d 43 01             	lea    0x1(%ebx),%eax
4a50b7:	50                   	push   %eax
4a50b8:	e8 33 36 00 00       	call   0x4a86f0
4a50bd:	8b e8                	mov    %eax,%ebp
4a50bf:	83 c9 ff             	or     $0xffffffff,%ecx
4a50c2:	33 c0                	xor    %eax,%eax
4a50c4:	83 c4 04             	add    $0x4,%esp
4a50c7:	f2 ae                	repnz scas %es:(%edi),%al
4a50c9:	f7 d1                	not    %ecx
4a50cb:	2b f9                	sub    %ecx,%edi
4a50cd:	89 44 24 30          	mov    %eax,0x30(%esp)
4a50d1:	8b d1                	mov    %ecx,%edx
4a50d3:	8b f7                	mov    %edi,%esi
4a50d5:	8b fd                	mov    %ebp,%edi
4a50d7:	89 44 24 34          	mov    %eax,0x34(%esp)
4a50db:	c1 e9 02             	shr    $0x2,%ecx
4a50de:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
4a50e0:	8b ca                	mov    %edx,%ecx
4a50e2:	89 44 24 38          	mov    %eax,0x38(%esp)
4a50e6:	83 e1 03             	and    $0x3,%ecx
4a50e9:	89 44 24 3c          	mov    %eax,0x3c(%esp)
4a50ed:	f3 a4                	rep movsb %ds:(%esi),%es:(%edi)
4a50ef:	89 44 24 40          	mov    %eax,0x40(%esp)
4a50f3:	8d 04 2b             	lea    (%ebx,%ebp,1),%eax
4a50f6:	33 c9                	xor    %ecx,%ecx
4a50f8:	33 db                	xor    %ebx,%ebx
4a50fa:	3b e8                	cmp    %eax,%ebp
4a50fc:	89 6c 24 14          	mov    %ebp,0x14(%esp)
4a5100:	89 4c 24 2c          	mov    %ecx,0x2c(%esp)
4a5104:	8b f5                	mov    %ebp,%esi
4a5106:	89 44 24 20          	mov    %eax,0x20(%esp)
4a510a:	8b fd                	mov    %ebp,%edi
4a510c:	89 4c 24 18          	mov    %ecx,0x18(%esp)
4a5110:	89 4c 24 1c          	mov    %ecx,0x1c(%esp)
4a5114:	89 4c 24 10          	mov    %ecx,0x10(%esp)
4a5118:	0f 83 2d 03 00 00    	jae    0x4a544b
4a511e:	8a 06                	mov    (%esi),%al
4a5120:	84 c0                	test   %al,%al
4a5122:	0f 8d 44 01 00 00    	jge    0x4a526c
4a5128:	8b 44 24 1c          	mov    0x1c(%esp),%eax
4a512c:	85 c0                	test   %eax,%eax
4a512e:	0f 85 26 02 00 00    	jne    0x4a535a
4a5134:	3b f5                	cmp    %ebp,%esi
4a5136:	0f 86 1e 02 00 00    	jbe    0x4a535a
4a513c:	6a 02                	push   $0x2
4a513e:	68 44 9e 50 00       	push   $0x509e44
4a5143:	56                   	push   %esi
4a5144:	e8 b7 3b 00 00       	call   0x4a8d00
4a5149:	83 c4 0c             	add    $0xc,%esp
4a514c:	85 c0                	test   %eax,%eax
4a514e:	75 21                	jne    0x4a5171
4a5150:	85 db                	test   %ebx,%ebx
4a5152:	0f 85 02 02 00 00    	jne    0x4a535a
4a5158:	88 1e                	mov    %bl,(%esi)
4a515a:	83 c6 02             	add    $0x2,%esi
4a515d:	bb 01 00 00 00       	mov    $0x1,%ebx
4a5162:	89 7c 24 2c          	mov    %edi,0x2c(%esp)
4a5166:	8b fe                	mov    %esi,%edi
4a5168:	89 5c 24 18          	mov    %ebx,0x18(%esp)
4a516c:	e9 dd 01 00 00       	jmp    0x4a534e
4a5171:	6a 02                	push   $0x2
4a5173:	68 40 9e 50 00       	push   $0x509e40
4a5178:	56                   	push   %esi
4a5179:	e8 82 3b 00 00       	call   0x4a8d00
4a517e:	83 c4 0c             	add    $0xc,%esp
4a5181:	85 c0                	test   %eax,%eax
4a5183:	75 1e                	jne    0x4a51a3
4a5185:	83 fb 01             	cmp    $0x1,%ebx
4a5188:	0f 85 cc 01 00 00    	jne    0x4a535a
4a518e:	88 06                	mov    %al,(%esi)
4a5190:	83 c6 02             	add    $0x2,%esi
4a5193:	89 7c 24 30          	mov    %edi,0x30(%esp)
4a5197:	8b fe                	mov    %esi,%edi
4a5199:	bb 02 00 00 00       	mov    $0x2,%ebx
4a519e:	e9 ab 01 00 00       	jmp    0x4a534e
4a51a3:	6a 02                	push   $0x2
4a51a5:	68 3c 9e 50 00       	push   $0x509e3c
4a51aa:	56                   	push   %esi
4a51ab:	e8 50 3b 00 00       	call   0x4a8d00
4a51b0:	83 c4 0c             	add    $0xc,%esp
4a51b3:	85 c0                	test   %eax,%eax
4a51b5:	75 1d                	jne    0x4a51d4
4a51b7:	83 fb 02             	cmp    $0x2,%ebx
4a51ba:	0f 85 9a 01 00 00    	jne    0x4a535a
4a51c0:	88 06                	mov    %al,(%esi)
4a51c2:	03 f3                	add    %ebx,%esi
4a51c4:	89 7c 24 34          	mov    %edi,0x34(%esp)
4a51c8:	8b fe                	mov    %esi,%edi
4a51ca:	bb 03 00 00 00       	mov    $0x3,%ebx
4a51cf:	e9 7a 01 00 00       	jmp    0x4a534e
4a51d4:	6a 02                	push   $0x2
4a51d6:	68 38 9e 50 00       	push   $0x509e38
4a51db:	56                   	push   %esi
4a51dc:	e8 1f 3b 00 00       	call   0x4a8d00
4a51e1:	83 c4 0c             	add    $0xc,%esp
4a51e4:	85 c0                	test   %eax,%eax
4a51e6:	75 1e                	jne    0x4a5206
4a51e8:	83 fb 03             	cmp    $0x3,%ebx
4a51eb:	0f 85 69 01 00 00    	jne    0x4a535a
4a51f1:	88 06                	mov    %al,(%esi)
4a51f3:	83 c6 02             	add    $0x2,%esi
4a51f6:	89 7c 24 38          	mov    %edi,0x38(%esp)
4a51fa:	8b fe                	mov    %esi,%edi
4a51fc:	bb 04 00 00 00       	mov    $0x4,%ebx
4a5201:	e9 48 01 00 00       	jmp    0x4a534e
4a5206:	6a 02                	push   $0x2
4a5208:	68 34 9e 50 00       	push   $0x509e34
4a520d:	56                   	push   %esi
4a520e:	e8 ed 3a 00 00       	call   0x4a8d00
4a5213:	83 c4 0c             	add    $0xc,%esp
4a5216:	85 c0                	test   %eax,%eax
4a5218:	75 1e                	jne    0x4a5238
4a521a:	83 fb 04             	cmp    $0x4,%ebx
4a521d:	0f 85 37 01 00 00    	jne    0x4a535a
4a5223:	88 06                	mov    %al,(%esi)
4a5225:	83 c6 02             	add    $0x2,%esi
4a5228:	89 7c 24 3c          	mov    %edi,0x3c(%esp)
4a522c:	8b fe                	mov    %esi,%edi
4a522e:	bb 05 00 00 00       	mov    $0x5,%ebx
4a5233:	e9 16 01 00 00       	jmp    0x4a534e
4a5238:	6a 02                	push   $0x2
4a523a:	68 30 9e 50 00       	push   $0x509e30
4a523f:	56                   	push   %esi
4a5240:	e8 bb 3a 00 00       	call   0x4a8d00
4a5245:	83 c4 0c             	add    $0xc,%esp
4a5248:	85 c0                	test   %eax,%eax
4a524a:	0f 85 0a 01 00 00    	jne    0x4a535a
4a5250:	83 fb 05             	cmp    $0x5,%ebx
4a5253:	0f 85 01 01 00 00    	jne    0x4a535a
4a5259:	88 06                	mov    %al,(%esi)
4a525b:	83 c6 02             	add    $0x2,%esi
4a525e:	89 7c 24 40          	mov    %edi,0x40(%esp)
4a5262:	bb 06 00 00 00       	mov    $0x6,%ebx
4a5267:	e9 e2 00 00 00       	jmp    0x4a534e
4a526c:	3c 30                	cmp    $0x30,%al
4a526e:	7c 19                	jl     0x4a5289
4a5270:	3c 39                	cmp    $0x39,%al
4a5272:	7f 15                	jg     0x4a5289
4a5274:	8a 46 01             	mov    0x1(%esi),%al
4a5277:	46                   	inc    %esi
4a5278:	84 c0                	test   %al,%al
4a527a:	0f 85 ce 00 00 00    	jne    0x4a534e
4a5280:	89 7c 9c 2c          	mov    %edi,0x2c(%esp,%ebx,4)
4a5284:	e9 c4 00 00 00       	jmp    0x4a534d
4a5289:	85 db                	test   %ebx,%ebx
4a528b:	75 44                	jne    0x4a52d1
4a528d:	8b 4c 24 10          	mov    0x10(%esp),%ecx
4a5291:	85 c9                	test   %ecx,%ecx
4a5293:	0f 85 9f 00 00 00    	jne    0x4a5338
4a5299:	8b 4c 24 18          	mov    0x18(%esp),%ecx
4a529d:	85 c9                	test   %ecx,%ecx
4a529f:	0f 85 b5 00 00 00    	jne    0x4a535a
4a52a5:	3c 2f                	cmp    $0x2f,%al
4a52a7:	74 0c                	je     0x4a52b5
4a52a9:	3c 2d                	cmp    $0x2d,%al
4a52ab:	74 08                	je     0x4a52b5
4a52ad:	3c 2e                	cmp    $0x2e,%al
4a52af:	0f 85 a5 00 00 00    	jne    0x4a535a
4a52b5:	0f be c8             	movsbl %al,%ecx
4a52b8:	c6 06 00             	movb   $0x0,(%esi)
4a52bb:	bb 01 00 00 00       	mov    $0x1,%ebx
4a52c0:	46                   	inc    %esi
4a52c1:	89 7c 24 2c          	mov    %edi,0x2c(%esp)
4a52c5:	89 4c 24 10          	mov    %ecx,0x10(%esp)
4a52c9:	89 5c 24 1c          	mov    %ebx,0x1c(%esp)
4a52cd:	8b fe                	mov    %esi,%edi
4a52cf:	eb 7d                	jmp    0x4a534e
4a52d1:	83 fb 03             	cmp    $0x3,%ebx
4a52d4:	75 34                	jne    0x4a530a
4a52d6:	8b 4c 24 10          	mov    0x10(%esp),%ecx
4a52da:	85 c9                	test   %ecx,%ecx
4a52dc:	75 5a                	jne    0x4a5338
4a52de:	8b 4c 24 18          	mov    0x18(%esp),%ecx
4a52e2:	85 c9                	test   %ecx,%ecx
4a52e4:	75 74                	jne    0x4a535a
4a52e6:	3c 2f                	cmp    $0x2f,%al
4a52e8:	74 08                	je     0x4a52f2
4a52ea:	3c 2d                	cmp    $0x2d,%al
4a52ec:	74 04                	je     0x4a52f2
4a52ee:	3c 3a                	cmp    $0x3a,%al
4a52f0:	75 68                	jne    0x4a535a
4a52f2:	0f be d0             	movsbl %al,%edx
4a52f5:	c6 06 00             	movb   $0x0,(%esi)
4a52f8:	46                   	inc    %esi
4a52f9:	89 7c 24 38          	mov    %edi,0x38(%esp)
4a52fd:	89 54 24 10          	mov    %edx,0x10(%esp)
4a5301:	8b fe                	mov    %esi,%edi
4a5303:	bb 04 00 00 00       	mov    $0x4,%ebx
4a5308:	eb 44                	jmp    0x4a534e
4a530a:	83 fb 02             	cmp    $0x2,%ebx
4a530d:	75 29                	jne    0x4a5338
4a530f:	3c 20                	cmp    $0x20,%al
4a5311:	74 0c                	je     0x4a531f
4a5313:	3c 2f                	cmp    $0x2f,%al
4a5315:	74 08                	je     0x4a531f
4a5317:	3c 2d                	cmp    $0x2d,%al
4a5319:	74 04                	je     0x4a531f
4a531b:	84 c0                	test   %al,%al
4a531d:	75 19                	jne    0x4a5338
4a531f:	c6 06 00             	movb   $0x0,(%esi)
4a5322:	46                   	inc    %esi
4a5323:	89 7c 24 34          	mov    %edi,0x34(%esp)
4a5327:	8b fe                	mov    %esi,%edi
4a5329:	bb 03 00 00 00       	mov    $0x3,%ebx
4a532e:	c7 44 24 10 00 00 00 	movl   $0x0,0x10(%esp)
4a5335:	00
4a5336:	eb 16                	jmp    0x4a534e
4a5338:	8b 4c 24 10          	mov    0x10(%esp),%ecx
4a533c:	0f be c0             	movsbl %al,%eax
4a533f:	3b c8                	cmp    %eax,%ecx
4a5341:	75 17                	jne    0x4a535a
4a5343:	c6 06 00             	movb   $0x0,(%esi)
4a5346:	46                   	inc    %esi
4a5347:	89 7c 9c 2c          	mov    %edi,0x2c(%esp,%ebx,4)
4a534b:	8b fe                	mov    %esi,%edi
4a534d:	43                   	inc    %ebx
4a534e:	3b 74 24 20          	cmp    0x20(%esp),%esi
4a5352:	0f 82 c6 fd ff ff    	jb     0x4a511e
4a5358:	eb 0a                	jmp    0x4a5364
4a535a:	3b 74 24 20          	cmp    0x20(%esp),%esi
4a535e:	0f 82 e7 00 00 00    	jb     0x4a544b
4a5364:	83 fb 01             	cmp    $0x1,%ebx
4a5367:	0f 85 d5 00 00 00    	jne    0x4a5442
4a536d:	8b 4c 24 14          	mov    0x14(%esp),%ecx
4a5371:	51                   	push   %ecx
4a5372:	e8 87 33 00 00       	call   0x4a86fe
4a5377:	68 00 01 00 00       	push   $0x100
4a537c:	e8 6f 33 00 00       	call   0x4a86f0
4a5381:	8b c8                	mov    %eax,%ecx
4a5383:	33 d2                	xor    %edx,%edx
4a5385:	89 44 24 1c          	mov    %eax,0x1c(%esp)
4a5389:	8b f0                	mov    %eax,%esi
4a538b:	89 11                	mov    %edx,(%ecx)
4a538d:	8b 44 24 2c          	mov    0x2c(%esp),%eax
4a5391:	83 c4 08             	add    $0x8,%esp
4a5394:	33 ed                	xor    %ebp,%ebp
4a5396:	89 51 04             	mov    %edx,0x4(%ecx)
4a5399:	33 db                	xor    %ebx,%ebx
4a539b:	85 c0                	test   %eax,%eax
4a539d:	89 51 08             	mov    %edx,0x8(%ecx)
4a53a0:	89 51 0c             	mov    %edx,0xc(%ecx)
4a53a3:	89 51 10             	mov    %edx,0x10(%ecx)
4a53a6:	7e 4c                	jle    0x4a53f4
4a53a8:	8b 7c 24 7c          	mov    0x7c(%esp),%edi
4a53ac:	85 db                	test   %ebx,%ebx
4a53ae:	75 24                	jne    0x4a53d4
4a53b0:	8b 54 24 7c          	mov    0x7c(%esp),%edx
4a53b4:	6a 04                	push   $0x4
4a53b6:	52                   	push   %edx
4a53b7:	56                   	push   %esi
4a53b8:	e8 23 34 00 00       	call   0x4a87e0
4a53bd:	89 74 24 38          	mov    %esi,0x38(%esp)
4a53c1:	83 c4 0c             	add    $0xc,%esp
4a53c4:	83 c6 05             	add    $0x5,%esi
4a53c7:	83 c5 04             	add    $0x4,%ebp
4a53ca:	bb 01 00 00 00       	mov    $0x1,%ebx
4a53cf:	83 c7 04             	add    $0x4,%edi