45407d:	89 0b                	mov    %ecx,(%ebx)
45407f:	8b 4d d0             	mov    -0x30(%ebp),%ecx
454082:	8b d0                	mov    %eax,%edx
454084:	8b 35 68 71 45 00    	mov    0x457168,%esi
45408a:	89 4b 04             	mov    %ecx,0x4(%ebx)
45408d:	8b cc                	mov    %esp,%ecx
45408f:	8b 3e                	mov    (%esi),%edi
454091:	56                   	push   %esi
454092:	89 43 08             	mov    %eax,0x8(%ebx)
454095:	8b 45 d8             	mov    -0x28(%ebp),%eax
454098:	89 43 0c             	mov    %eax,0xc(%ebx)
45409b:	8b 45 dc             	mov    -0x24(%ebp),%eax
45409e:	89 01                	mov    %eax,(%ecx)
4540a0:	8b 45 e0             	mov    -0x20(%ebp),%eax
4540a3:	89 41 04             	mov    %eax,0x4(%ecx)
4540a6:	89 51 08             	mov    %edx,0x8(%ecx)
4540a9:	8b 55 e8             	mov    -0x18(%ebp),%edx
4540ac:	89 51 0c             	mov    %edx,0xc(%ecx)
4540af:	ff 97 b0 02 00 00    	call   *0x2b0(%edi)
4540b5:	85 c0                	test   %eax,%eax
4540b7:	db e2                	fnclex
4540b9:	7d 12                	jge    0x4540cd
4540bb:	68 b0 02 00 00       	push   $0x2b0
4540c0:	68 48 7e 40 00       	push   $0x407e48
4540c5:	56                   	push   %esi
4540c6:	50                   	push   %eax
4540c7:	ff 15 bc 10 40 00    	call   *0x4010bc
4540cd:	68 df 40 45 00       	push   $0x4540df
4540d2:	eb 0a                	jmp    0x4540de
4540d4:	8d 4d ec             	lea    -0x14(%ebp),%ecx
4540d7:	ff 15 fc 11 40 00    	call   *0x4011fc
4540dd:	c3                   	ret
4540de:	c3                   	ret
4540df:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4540e2:	5f                   	pop    %edi
4540e3:	5e                   	pop    %esi
4540e4:	33 c0                	xor    %eax,%eax
4540e6:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4540ed:	5b                   	pop    %ebx
4540ee:	8b e5                	mov    %ebp,%esp
4540f0:	5d                   	pop    %ebp
4540f1:	c2 04 00             	ret    $0x4
4540f4:	90                   	nop
4540f5:	90                   	nop
4540f6:	90                   	nop
4540f7:	90                   	nop
4540f8:	90                   	nop
4540f9:	90                   	nop
4540fa:	90                   	nop
4540fb:	90                   	nop
4540fc:	90                   	nop
4540fd:	90                   	nop
4540fe:	90                   	nop
4540ff:	90                   	nop
454100:	55                   	push   %ebp
454101:	8b ec                	mov    %esp,%ebp
454103:	83 ec 0c             	sub    $0xc,%esp
454106:	68 d6 15 40 00       	push   $0x4015d6
45410b:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
454111:	50                   	push   %eax
454112:	64 89 25 00 00 00 00 	mov    %esp,%fs:0x0
454119:	83 ec 24             	sub    $0x24,%esp
45411c:	53                   	push   %ebx
45411d:	56                   	push   %esi
45411e:	57                   	push   %edi
45411f:	89 65 f4             	mov    %esp,-0xc(%ebp)
454122:	c7 45 f8 48 15 40 00 	movl   $0x401548,-0x8(%ebp)
454129:	8b 75 08             	mov    0x8(%ebp),%esi
45412c:	8b c6                	mov    %esi,%eax
45412e:	83 e0 01             	and    $0x1,%eax
454131:	89 45 fc             	mov    %eax,-0x4(%ebp)
454134:	83 e6 fe             	and    $0xfffffffe,%esi
454137:	56                   	push   %esi
454138:	89 75 08             	mov    %esi,0x8(%ebp)
45413b:	8b 0e                	mov    (%esi),%ecx
45413d:	ff 51 04             	call   *0x4(%ecx)
454140:	a1 90 71 45 00       	mov    0x457190,%eax
454145:	33 db                	xor    %ebx,%ebx
454147:	3b c3                	cmp    %ebx,%eax
454149:	89 5d e8             	mov    %ebx,-0x18(%ebp)
45414c:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
45414f:	89 5d e0             	mov    %ebx,-0x20(%ebp)
454152:	89 5d dc             	mov    %ebx,-0x24(%ebp)
454155:	75 10                	jne    0x454167
454157:	68 90 71 45 00       	push   $0x457190
45415c:	68 74 31 40 00       	push   $0x403174
454161:	ff 15 88 11 40 00    	call   *0x401188
454167:	8b 16                	mov    (%esi),%edx
454169:	8b 3d 90 71 45 00    	mov    0x457190,%edi
45416f:	8d 45 dc             	lea    -0x24(%ebp),%eax
454172:	50                   	push   %eax
454173:	56                   	push   %esi
454174:	ff 52 70             	call   *0x70(%edx)
454177:	3b c3                	cmp    %ebx,%eax
454179:	db e2                	fnclex
45417b:	7d 13                	jge    0x454190
45417d:	8b 1d bc 10 40 00    	mov    0x4010bc,%ebx
454183:	6a 70                	push   $0x70
454185:	68 f0 7f 40 00       	push   $0x407ff0
45418a:	56                   	push   %esi
45418b:	50                   	push   %eax
45418c:	ff d3                	call   *%ebx
45418e:	eb 06                	jmp    0x454196
454190:	8b 1d bc 10 40 00    	mov    0x4010bc,%ebx
454196:	8b 55 dc             	mov    -0x24(%ebp),%edx
454199:	8b 0f                	mov    (%edi),%ecx
45419b:	52                   	push   %edx
45419c:	57                   	push   %edi
45419d:	ff 51 74             	call   *0x74(%ecx)
4541a0:	85 c0                	test   %eax,%eax
4541a2:	db e2                	fnclex
4541a4:	7d 0b                	jge    0x4541b1
4541a6:	6a 74                	push   $0x74
4541a8:	68 f0 7f 40 00       	push   $0x407ff0
4541ad:	57                   	push   %edi
4541ae:	50                   	push   %eax
4541af:	ff d3                	call   *%ebx
4541b1:	a1 90 71 45 00       	mov    0x457190,%eax
4541b6:	85 c0                	test   %eax,%eax
4541b8:	75 10                	jne    0x4541ca
4541ba:	68 90 71 45 00       	push   $0x457190
4541bf:	68 74 31 40 00       	push   $0x403174
4541c4:	ff 15 88 11 40 00    	call   *0x401188
4541ca:	8b 06                	mov    (%esi),%eax
4541cc:	8b 3d 90 71 45 00    	mov    0x457190,%edi
4541d2:	8d 4d dc             	lea    -0x24(%ebp),%ecx
4541d5:	51                   	push   %ecx
4541d6:	56                   	push   %esi
4541d7:	ff 50 78             	call   *0x78(%eax)
4541da:	85 c0                	test   %eax,%eax
4541dc:	db e2                	fnclex
4541de:	7d 0b                	jge    0x4541eb
4541e0:	6a 78                	push   $0x78
4541e2:	68 f0 7f 40 00       	push   $0x407ff0
4541e7:	56                   	push   %esi
4541e8:	50                   	push   %eax
4541e9:	ff d3                	call   *%ebx
4541eb:	8b 45 dc             	mov    -0x24(%ebp),%eax
4541ee:	8b 17                	mov    (%edi),%edx
4541f0:	50                   	push   %eax
4541f1:	57                   	push   %edi
4541f2:	ff 52 7c             	call   *0x7c(%edx)
4541f5:	85 c0                	test   %eax,%eax
4541f7:	db e2                	fnclex
4541f9:	7d 0b                	jge    0x454206
4541fb:	6a 7c                	push   $0x7c
4541fd:	68 f0 7f 40 00       	push   $0x407ff0
454202:	57                   	push   %edi
454203:	50                   	push   %eax
454204:	ff d3                	call   *%ebx
454206:	83 c8 ff             	or     $0xffffffff,%eax
454209:	56                   	push   %esi
45420a:	66 a3 36 70 45 00    	mov    %ax,0x457036
454210:	66 a3 32 70 45 00    	mov    %ax,0x457032
454216:	8b 0e                	mov    (%esi),%ecx
454218:	ff 91 fc 02 00 00    	call   *0x2fc(%ecx)
45421e:	8b 1d d0 10 40 00    	mov    0x4010d0,%ebx
454224:	8d 55 e0             	lea    -0x20(%ebp),%edx
454227:	50                   	push   %eax
454228:	52                   	push   %edx
454229:	ff d3                	call   *%ebx
45422b:	8b f8                	mov    %eax,%edi
45422d:	6a 00                	push   $0x0
45422f:	57                   	push   %edi
454230:	8b 07                	mov    (%edi),%eax
454232:	ff 50 5c             	call   *0x5c(%eax)
454235:	85 c0                	test   %eax,%eax
454237:	db e2                	fnclex
454239:	7d 0f                	jge    0x45424a
45423b:	6a 5c                	push   $0x5c
45423d:	68 98 8d 40 00       	push   $0x408d98
454242:	57                   	push   %edi
454243:	50                   	push   %eax
454244:	ff 15 bc 10 40 00    	call   *0x4010bc
45424a:	8d 4d e0             	lea    -0x20(%ebp),%ecx
45424d:	ff 15 fc 11 40 00    	call   *0x4011fc
454253:	66 c7 46 38 ee 02    	movw   $0x2ee,0x38(%esi)
454259:	66 8b 0d 1c 70 45 00 	mov    0x45701c,%cx
454260:	51                   	push   %ecx
454261:	ff 15 84 10 40 00    	call   *0x401084
454267:	8b d0                	mov    %eax,%edx
454269:	8d 4d e8             	lea    -0x18(%ebp),%ecx
45426c:	ff 15 d8 11 40 00    	call   *0x4011d8
454272:	8b 16                	mov    (%esi),%edx
454274:	56                   	push   %esi
454275:	ff 92 30 03 00 00    	call   *0x330(%edx)
45427b:	50                   	push   %eax
45427c:	8d 45 e0             	lea    -0x20(%ebp),%eax
45427f:	50                   	push   %eax
454280:	ff d3                	call   *%ebx
454282:	8b 55 e8             	mov    -0x18(%ebp),%edx
454285:	8b f8                	mov    %eax,%edi
454287:	52                   	push   %edx
454288:	57                   	push   %edi
454289:	8b 0f                	mov    (%edi),%ecx
45428b:	ff 51 54             	call   *0x54(%ecx)
45428e:	85 c0                	test   %eax,%eax
454290:	db e2                	fnclex
454292:	7d 0f                	jge    0x4542a3
454294:	6a 54                	push   $0x54
454296:	68 88 7b 40 00       	push   $0x407b88
45429b:	57                   	push   %edi
45429c:	50                   	push   %eax
45429d:	ff 15 bc 10 40 00    	call   *0x4010bc
4542a3:	8d 4d e0             	lea    -0x20(%ebp),%ecx
4542a6:	ff 15 fc 11 40 00    	call   *0x4011fc
4542ac:	8b 06                	mov    (%esi),%eax
4542ae:	56                   	push   %esi
4542af:	ff 90 34 03 00 00    	call   *0x334(%eax)
4542b5:	8d 4d e0             	lea    -0x20(%ebp),%ecx
4542b8:	50                   	push   %eax
4542b9:	51                   	push   %ecx
4542ba:	ff d3                	call   *%ebx
4542bc:	66 8b 56 38          	mov    0x38(%esi),%dx
4542c0:	8b f8                	mov    %eax,%edi
4542c2:	52                   	push   %edx
4542c3:	8b 1f                	mov    (%edi),%ebx
4542c5:	ff 15 84 10 40 00    	call   *0x401084
4542cb:	8b d0                	mov    %eax,%edx
4542cd:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
4542d0:	ff 15 d8 11 40 00    	call   *0x4011d8
4542d6:	50                   	push   %eax
4542d7:	57                   	push   %edi
4542d8:	ff 53 54             	call   *0x54(%ebx)
4542db:	85 c0                	test   %eax,%eax
4542dd:	db e2                	fnclex
4542df:	7d 0f                	jge    0x4542f0
4542e1:	6a 54                	push   $0x54
4542e3:	68 88 7b 40 00       	push   $0x407b88
4542e8:	57                   	push   %edi
4542e9:	50                   	push   %eax
4542ea:	ff 15 bc 10 40 00    	call   *0x4010bc
4542f0:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
4542f3:	ff 15 00 12 40 00    	call   *0x401200
4542f9:	8d 4d e0             	lea    -0x20(%ebp),%ecx
4542fc:	ff 15 fc 11 40 00    	call   *0x4011fc
454302:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
454309:	9b                   	fwait
45430a:	68 2e 43 45 00       	push   $0x45432e
45430f:	eb 13                	jmp    0x454324
454311:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
454314:	ff 15 00 12 40 00    	call   *0x401200
45431a:	8d 4d e0             	lea    -0x20(%ebp),%ecx
45431d:	ff 15 fc 11 40 00    	call   *0x4011fc
454323:	c3                   	ret
454324:	8d 4d e8             	lea    -0x18(%ebp),%ecx
454327:	ff 15 00 12 40 00    	call   *0x401200
45432d:	c3                   	ret
45432e:	8b 45 08             	mov    0x8(%ebp),%eax
454331:	50                   	push   %eax
454332:	8b 08                	mov    (%eax),%ecx
454334:	ff 51 08             	call   *0x8(%ecx)
454337:	8b 45 fc             	mov    -0x4(%ebp),%eax
45433a:	8b 4d ec             	mov    -0x14(%ebp),%ecx
45433d:	5f                   	pop    %edi
45433e:	5e                   	pop    %esi
45433f:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
454346:	5b                   	pop    %ebx
454347:	8b e5                	mov    %ebp,%esp
454349:	5d                   	pop    %ebp
45434a:	c2 04 00             	ret    $0x4
45434d:	90                   	nop
45434e:	90                   	nop
45434f:	90                   	nop
454350:	55                   	push   %ebp
454351:	8b ec                	mov    %esp,%ebp
454353:	83 ec 0c             	sub    $0xc,%esp
454356:	68 d6 15 40 00       	push   $0x4015d6
45435b:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
454361:	50                   	push   %eax
454362:	64 89 25 00 00 00 00 	mov    %esp,%fs:0x0
454369:	81 ec d8 00 00 00    	sub    $0xd8,%esp
45436f:	53                   	push   %ebx
454370:	56                   	push   %esi
454371:	57                   	push   %edi
454372:	89 65 f4             	mov    %esp,-0xc(%ebp)
454375:	c7 45 f8 58 15 40 00 	movl   $0x401558,-0x8(%ebp)
45437c:	33 ff                	xor    %edi,%edi
45437e:	89 7d fc             	mov    %edi,-0x4(%ebp)
454381:	8b 75 08             	mov    0x8(%ebp),%esi
454384:	56                   	push   %esi
454385:	8b 06                	mov    (%esi),%eax
454387:	ff 50 04             	call   *0x4(%eax)
45438a:	8b 4d 14             	mov    0x14(%ebp),%ecx
45438d:	b8 01 00 00 00       	mov    $0x1,%eax
454392:	89 7d d8             	mov    %edi,-0x28(%ebp)
454395:	89 7d d4             	mov    %edi,-0x2c(%ebp)
454398:	89 7d d0             	mov    %edi,-0x30(%ebp)
45439b:	89 7d cc             	mov    %edi,-0x34(%ebp)
45439e:	89 7d c8             	mov    %edi,-0x38(%ebp)
4543a1:	89 7d b8             	mov    %edi,-0x48(%ebp)
4543a4:	89 7d a8             	mov    %edi,-0x58(%ebp)
4543a7:	89 7d 98             	mov    %edi,-0x68(%ebp)
4543aa:	89 7d 88             	mov    %edi,-0x78(%ebp)
4543ad:	89 bd 78 ff ff ff    	mov    %edi,-0x88(%ebp)
4543b3:	89 bd 68 ff ff ff    	mov    %edi,-0x98(%ebp)
4543b9:	89 bd 58 ff ff ff    	mov    %edi,-0xa8(%ebp)
4543bf:	89 bd 48 ff ff ff    	mov    %edi,-0xb8(%ebp)
4543c5:	89 bd 44 ff ff ff    	mov    %edi,-0xbc(%ebp)
4543cb:	89 39                	mov    %edi,(%ecx)
4543cd:	8b 3d d0 10 40 00    	mov    0x4010d0,%edi
4543d3:	89 45 e8             	mov    %eax,-0x18(%ebp)
4543d6:	b9 0a 00 00 00       	mov    $0xa,%ecx
4543db:	66 3b c1             	cmp    %cx,%ax
4543de:	0f 8f 5e 02 00 00    	jg     0x454642
4543e4:	8d 55 b8             	lea    -0x48(%ebp),%edx
4543e7:	bb 04 00 02 80       	mov    $0x80020004,%ebx
4543ec:	52                   	push   %edx
4543ed:	89 5d c0             	mov    %ebx,-0x40(%ebp)
4543f0:	89 4d b8             	mov    %ecx,-0x48(%ebp)
4543f3:	ff 15 cc 10 40 00    	call   *0x4010cc
4543f9:	8d 4d b8             	lea    -0x48(%ebp),%ecx
4543fc:	ff 15 98 10 40 00    	call   *0x401098
454402:	8d 45 b8             	lea    -0x48(%ebp),%eax
454405:	89 5d c0             	mov    %ebx,-0x40(%ebp)
454408:	50                   	push   %eax
454409:	c7 45 b8 0a 00 00 00 	movl   $0xa,-0x48(%ebp)
454410:	ff 15 c8 10 40 00    	call   *0x4010c8
454416:	d8 0d e0 14 40 00    	fmuls  0x4014e0
45441c:	df e0                	fnstsw %ax
45441e:	a8 0d                	test   $0xd,%al
454420:	0f 85 a9 02 00 00    	jne    0x4546cf
454426:	ff 15 cc 11 40 00    	call   *0x4011cc
45442c:	8b d8                	mov    %eax,%ebx
45442e:	8d 4d b8             	lea    -0x48(%ebp),%ecx
454431:	89 5d d4             	mov    %ebx,-0x2c(%ebp)
454434:	ff 15 98 10 40 00    	call   *0x401098
45443a:	8b 0e                	mov    (%esi),%ecx
45443c:	56                   	push   %esi
45443d:	ff 91 1c 03 00 00    	call   *0x31c(%ecx)
454443:	8d 55 d0             	lea    -0x30(%ebp),%edx
454446:	50                   	push   %eax
454447:	52                   	push   %edx
454448:	ff d7                	call   *%edi
45444a:	8b f0                	mov    %eax,%esi
45444c:	8d 4d cc             	lea    -0x34(%ebp),%ecx
45444f:	51                   	push   %ecx
454450:	53                   	push   %ebx
454451:	8b 06                	mov    (%esi),%eax
454453:	56                   	push   %esi
454454:	ff 50 40             	call   *0x40(%eax)
454457:	85 c0                	test   %eax,%eax
454459:	db e2                	fnclex
45445b:	7d 0f                	jge    0x45446c
45445d:	6a 40                	push   $0x40
45445f:	68 7c 8c 40 00       	push   $0x408c7c
454464:	56                   	push   %esi
454465:	50                   	push   %eax
454466:	ff 15 bc 10 40 00    	call   *0x4010bc
45446c:	a1 90 71 45 00       	mov    0x457190,%eax