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
454471:	85 c0                	test   %eax,%eax
454473:	75 10                	jne    0x454485
454475:	68 90 71 45 00       	push   $0x457190
45447a:	68 74 31 40 00       	push   $0x403174
45447f:	ff 15 88 11 40 00    	call   *0x401188
454485:	83 ec 10             	sub    $0x10,%esp
454488:	b9 0a 00 00 00       	mov    $0xa,%ecx
45448d:	8b fc                	mov    %esp,%edi
45448f:	89 4d a8             	mov    %ecx,-0x58(%ebp)
454492:	ba 04 00 02 80       	mov    $0x80020004,%edx
454497:	83 ec 10             	sub    $0x10,%esp
45449a:	89 0f                	mov    %ecx,(%edi)
45449c:	8b 8d 4c ff ff ff    	mov    -0xb4(%ebp),%ecx
4544a2:	8b c2                	mov    %edx,%eax
4544a4:	89 55 b0             	mov    %edx,-0x50(%ebp)
4544a7:	89 4f 04             	mov    %ecx,0x4(%edi)
4544aa:	8b cc                	mov    %esp,%ecx
4544ac:	83 ec 10             	sub    $0x10,%esp
4544af:	8b 35 90 71 45 00    	mov    0x457190,%esi
4544b5:	89 47 08             	mov    %eax,0x8(%edi)
4544b8:	8b 85 54 ff ff ff    	mov    -0xac(%ebp),%eax
4544be:	8b 1e                	mov    (%esi),%ebx
4544c0:	89 47 0c             	mov    %eax,0xc(%edi)
4544c3:	b8 0a 00 00 00       	mov    $0xa,%eax
4544c8:	89 01                	mov    %eax,(%ecx)
4544ca:	8b 85 5c ff ff ff    	mov    -0xa4(%ebp),%eax
4544d0:	89 41 04             	mov    %eax,0x4(%ecx)
4544d3:	b8 0a 00 00 00       	mov    $0xa,%eax
4544d8:	89 51 08             	mov    %edx,0x8(%ecx)
4544db:	8b 95 64 ff ff ff    	mov    -0x9c(%ebp),%edx
4544e1:	89 51 0c             	mov    %edx,0xc(%ecx)
4544e4:	8b 95 6c ff ff ff    	mov    -0x94(%ebp),%edx
4544ea:	8b cc                	mov    %esp,%ecx
4544ec:	83 ec 10             	sub    $0x10,%esp
4544ef:	89 01                	mov    %eax,(%ecx)
4544f1:	b8 04 00 02 80       	mov    $0x80020004,%eax
4544f6:	89 51 04             	mov    %edx,0x4(%ecx)
4544f9:	8b 95 7c ff ff ff    	mov    -0x84(%ebp),%edx
4544ff:	89 41 08             	mov    %eax,0x8(%ecx)
454502:	8b 85 74 ff ff ff    	mov    -0x8c(%ebp),%eax
454508:	89 41 0c             	mov    %eax,0xc(%ecx)
45450b:	8b cc                	mov    %esp,%ecx
45450d:	b8 0a 00 00 00       	mov    $0xa,%eax
454512:	83 ec 10             	sub    $0x10,%esp
454515:	89 01                	mov    %eax,(%ecx)
454517:	b8 04 00 02 80       	mov    $0x80020004,%eax
45451c:	89 51 04             	mov    %edx,0x4(%ecx)
45451f:	8b 55 8c             	mov    -0x74(%ebp),%edx
454522:	89 41 08             	mov    %eax,0x8(%ecx)
454525:	8b 45 84             	mov    -0x7c(%ebp),%eax
454528:	89 41 0c             	mov    %eax,0xc(%ecx)
45452b:	8b cc                	mov    %esp,%ecx
45452d:	b8 0a 00 00 00       	mov    $0xa,%eax
454532:	83 ec 10             	sub    $0x10,%esp
454535:	89 01                	mov    %eax,(%ecx)
454537:	b8 04 00 02 80       	mov    $0x80020004,%eax
45453c:	89 51 04             	mov    %edx,0x4(%ecx)
45453f:	8b 55 9c             	mov    -0x64(%ebp),%edx
454542:	89 41 08             	mov    %eax,0x8(%ecx)
454545:	8b 45 94             	mov    -0x6c(%ebp),%eax
454548:	89 41 0c             	mov    %eax,0xc(%ecx)
45454b:	8b cc                	mov    %esp,%ecx
45454d:	b8 0a 00 00 00       	mov    $0xa,%eax
454552:	83 ec 10             	sub    $0x10,%esp
454555:	89 01                	mov    %eax,(%ecx)
454557:	b8 04 00 02 80       	mov    $0x80020004,%eax
45455c:	89 51 04             	mov    %edx,0x4(%ecx)
45455f:	8b 55 a8             	mov    -0x58(%ebp),%edx
454562:	89 41 08             	mov    %eax,0x8(%ecx)
454565:	8b 45 a4             	mov    -0x5c(%ebp),%eax
454568:	89 41 0c             	mov    %eax,0xc(%ecx)
45456b:	8b 45 ac             	mov    -0x54(%ebp),%eax
45456e:	8b cc                	mov    %esp,%ecx
454570:	89 11                	mov    %edx,(%ecx)
454572:	8b 55 b0             	mov    -0x50(%ebp),%edx
454575:	89 41 04             	mov    %eax,0x4(%ecx)
454578:	8b 45 b4             	mov    -0x4c(%ebp),%eax
45457b:	89 51 08             	mov    %edx,0x8(%ecx)
45457e:	89 41 0c             	mov    %eax,0xc(%ecx)
454581:	8b 4d 10             	mov    0x10(%ebp),%ecx
454584:	0f bf 11             	movswl (%ecx),%edx
454587:	89 95 20 ff ff ff    	mov    %edx,-0xe0(%ebp)
45458d:	db 85 20 ff ff ff    	fildl  -0xe0(%ebp)
454593:	d9 9d 1c ff ff ff    	fstps  -0xe4(%ebp)
454599:	8b 85 1c ff ff ff    	mov    -0xe4(%ebp),%eax
45459f:	50                   	push   %eax
4545a0:	8b 4d 0c             	mov    0xc(%ebp),%ecx
4545a3:	0f bf 11             	movswl (%ecx),%edx
4545a6:	89 95 18 ff ff ff    	mov    %edx,-0xe8(%ebp)
4545ac:	8b 4d cc             	mov    -0x34(%ebp),%ecx
4545af:	db 85 18 ff ff ff    	fildl  -0xe8(%ebp)
4545b5:	d9 9d 14 ff ff ff    	fstps  -0xec(%ebp)
4545bb:	8b 85 14 ff ff ff    	mov    -0xec(%ebp),%eax
4545c1:	50                   	push   %eax
4545c2:	68 6c 8c 40 00       	push   $0x408c6c
4545c7:	51                   	push   %ecx
4545c8:	ff 15 d4 11 40 00    	call   *0x4011d4
4545ce:	8b 3d d0 10 40 00    	mov    0x4010d0,%edi
4545d4:	8d 55 c8             	lea    -0x38(%ebp),%edx
4545d7:	50                   	push   %eax
4545d8:	52                   	push   %edx
4545d9:	ff d7                	call   *%edi
4545db:	50                   	push   %eax
4545dc:	56                   	push   %esi
4545dd:	ff 93 cc 02 00 00    	call   *0x2cc(%ebx)
4545e3:	85 c0                	test   %eax,%eax
4545e5:	db e2                	fnclex
4545e7:	7d 12                	jge    0x4545fb
4545e9:	68 cc 02 00 00       	push   $0x2cc
4545ee:	68 f0 7f 40 00       	push   $0x407ff0
4545f3:	56                   	push   %esi
4545f4:	50                   	push   %eax
4545f5:	ff 15 bc 10 40 00    	call   *0x4010bc
4545fb:	8d 45 c8             	lea    -0x38(%ebp),%eax
4545fe:	8d 4d cc             	lea    -0x34(%ebp),%ecx
454601:	50                   	push   %eax
454602:	8d 55 d0             	lea    -0x30(%ebp),%edx
454605:	51                   	push   %ecx
454606:	52                   	push   %edx
454607:	6a 03                	push   $0x3
454609:	ff 15 ac 10 40 00    	call   *0x4010ac
45460f:	83 c4 10             	add    $0x10,%esp
454612:	8d 85 44 ff ff ff    	lea    -0xbc(%ebp),%eax
454618:	c7 85 44 ff ff ff cd 	movl   $0x3dcccccd,-0xbc(%ebp)
45461f:	cc cc 3d
454622:	50                   	push   %eax
454623:	e8 f8 23 ff ff       	call   0x446a20
454628:	8b 75 08             	mov    0x8(%ebp),%esi
45462b:	b8 01 00 00 00       	mov    $0x1,%eax
454630:	66 03 45 e8          	add    -0x18(%ebp),%ax
454634:	0f 80 9a 00 00 00    	jo     0x4546d4
45463a:	89 45 e8             	mov    %eax,-0x18(%ebp)
45463d:	e9 94 fd ff ff       	jmp    0x4543d6
454642:	66 8b 4d d4          	mov    -0x2c(%ebp),%cx
454646:	8d 55 a8             	lea    -0x58(%ebp),%edx
454649:	66 89 4d b0          	mov    %cx,-0x50(%ebp)
45464d:	8d 4d d8             	lea    -0x28(%ebp),%ecx
454650:	c7 45 a8 02 00 00 00 	movl   $0x2,-0x58(%ebp)
454657:	ff 15 90 10 40 00    	call   *0x401090
45465d:	9b                   	fwait
45465e:	68 96 46 45 00       	push   $0x454696
454663:	eb 30                	jmp    0x454695
454665:	f6 45 fc 04          	testb  $0x4,-0x4(%ebp)
454669:	74 09                	je     0x454674
45466b:	8d 4d d8             	lea    -0x28(%ebp),%ecx
45466e:	ff 15 98 10 40 00    	call   *0x401098
454674:	8d 55 c8             	lea    -0x38(%ebp),%edx
454677:	8d 45 cc             	lea    -0x34(%ebp),%eax
45467a:	52                   	push   %edx
45467b:	8d 4d d0             	lea    -0x30(%ebp),%ecx
45467e:	50                   	push   %eax
45467f:	51                   	push   %ecx
454680:	6a 03                	push   $0x3
454682:	ff 15 ac 10 40 00    	call   *0x4010ac
454688:	83 c4 10             	add    $0x10,%esp
45468b:	8d 4d b8             	lea    -0x48(%ebp),%ecx
45468e:	ff 15 98 10 40 00    	call   *0x401098
454694:	c3                   	ret
454695:	c3                   	ret
454696:	8b 45 08             	mov    0x8(%ebp),%eax
454699:	50                   	push   %eax
45469a:	8b 10                	mov    (%eax),%edx
45469c:	ff 52 08             	call   *0x8(%edx)
45469f:	8b 45 14             	mov    0x14(%ebp),%eax
4546a2:	8b 4d d8             	mov    -0x28(%ebp),%ecx
4546a5:	8b 55 dc             	mov    -0x24(%ebp),%edx
4546a8:	89 08                	mov    %ecx,(%eax)
4546aa:	8b 4d e0             	mov    -0x20(%ebp),%ecx
4546ad:	89 50 04             	mov    %edx,0x4(%eax)
4546b0:	8b 55 e4             	mov    -0x1c(%ebp),%edx
4546b3:	89 48 08             	mov    %ecx,0x8(%eax)
4546b6:	89 50 0c             	mov    %edx,0xc(%eax)
4546b9:	8b 45 fc             	mov    -0x4(%ebp),%eax
4546bc:	8b 4d ec             	mov    -0x14(%ebp),%ecx
4546bf:	5f                   	pop    %edi