417070:	74 3f                	je     0x4170b1
417072:	8d 55 80             	lea    -0x80(%ebp),%edx
417075:	8d 4d c0             	lea    -0x40(%ebp),%ecx
417078:	c7 45 88 38 50 41 00 	movl   $0x415038,-0x78(%ebp)
41707f:	c7 45 80 08 00 00 00 	movl   $0x8,-0x80(%ebp)
417086:	ff 15 58 11 40 00    	call   *0x401158
41708c:	8d 45 c0             	lea    -0x40(%ebp),%eax
41708f:	50                   	push   %eax
417090:	8d 4d b0             	lea    -0x50(%ebp),%ecx
417093:	51                   	push   %ecx
417094:	ff 15 54 10 40 00    	call   *0x401054
41709a:	8b 35 24 10 40 00    	mov    0x401024,%esi
4170a0:	8d 55 b0             	lea    -0x50(%ebp),%edx
4170a3:	52                   	push   %edx
4170a4:	8d 45 c0             	lea    -0x40(%ebp),%eax
4170a7:	50                   	push   %eax
4170a8:	6a 02                	push   $0x2
4170aa:	ff d6                	call   *%esi
4170ac:	83 c4 0c             	add    $0xc,%esp
4170af:	eb 06                	jmp    0x4170b7
4170b1:	8b 35 24 10 40 00    	mov    0x401024,%esi
4170b7:	6a 01                	push   $0x1
4170b9:	6a 01                	push   $0x1
4170bb:	8d 4d b0             	lea    -0x50(%ebp),%ecx
4170be:	51                   	push   %ecx
4170bf:	8d 55 c0             	lea    -0x40(%ebp),%edx
4170c2:	52                   	push   %edx
4170c3:	8d 45 a0             	lea    -0x60(%ebp),%eax
4170c6:	bb 0a 00 00 00       	mov    $0xa,%ebx
4170cb:	bf 0c 00 00 00       	mov    $0xc,%edi
4170d0:	50                   	push   %eax
4170d1:	c7 45 b8 04 00 02 80 	movl   $0x80020004,-0x48(%ebp)
4170d8:	89 5d b0             	mov    %ebx,-0x50(%ebp)
4170db:	89 7d c8             	mov    %edi,-0x38(%ebp)
4170de:	c7 45 c0 02 00 00 00 	movl   $0x2,-0x40(%ebp)
4170e5:	ff 15 3c 10 40 00    	call   *0x40103c
4170eb:	8d 4d a0             	lea    -0x60(%ebp),%ecx
4170ee:	51                   	push   %ecx
4170ef:	8d 95 60 ff ff ff    	lea    -0xa0(%ebp),%edx
4170f5:	52                   	push   %edx
4170f6:	89 bd 68 ff ff ff    	mov    %edi,-0x98(%ebp)
4170fc:	c7 85 60 ff ff ff 02 	movl   $0x8002,-0xa0(%ebp)
417103:	80 00 00
417106:	ff 15 4c 11 40 00    	call   *0x40114c
41710c:	66 8b f8             	mov    %ax,%di
41710f:	8d 45 a0             	lea    -0x60(%ebp),%eax
417112:	50                   	push   %eax
417113:	8d 4d b0             	lea    -0x50(%ebp),%ecx
417116:	51                   	push   %ecx
417117:	8d 55 c0             	lea    -0x40(%ebp),%edx
41711a:	52                   	push   %edx
41711b:	6a 03                	push   $0x3
41711d:	ff d6                	call   *%esi
41711f:	83 c4 10             	add    $0x10,%esp
417122:	66 85 ff             	test   %di,%di
417125:	74 60                	je     0x417187
417127:	b8 04 00 02 80       	mov    $0x80020004,%eax
41712c:	8d 55 80             	lea    -0x80(%ebp),%edx
41712f:	8d 4d c0             	lea    -0x40(%ebp),%ecx
417132:	89 45 98             	mov    %eax,-0x68(%ebp)
417135:	89 5d 90             	mov    %ebx,-0x70(%ebp)
417138:	89 45 a8             	mov    %eax,-0x58(%ebp)
41713b:	89 5d a0             	mov    %ebx,-0x60(%ebp)
41713e:	89 45 b8             	mov    %eax,-0x48(%ebp)
417141:	89 5d b0             	mov    %ebx,-0x50(%ebp)
417144:	c7 45 88 60 50 41 00 	movl   $0x415060,-0x78(%ebp)
41714b:	c7 45 80 08 00 00 00 	movl   $0x8,-0x80(%ebp)
417152:	ff 15 58 11 40 00    	call   *0x401158
417158:	8d 45 90             	lea    -0x70(%ebp),%eax
41715b:	50                   	push   %eax
41715c:	8d 4d a0             	lea    -0x60(%ebp),%ecx
41715f:	51                   	push   %ecx
417160:	8d 55 b0             	lea    -0x50(%ebp),%edx
417163:	52                   	push   %edx
417164:	6a 00                	push   $0x0
417166:	8d 45 c0             	lea    -0x40(%ebp),%eax
417169:	50                   	push   %eax
41716a:	ff 15 64 10 40 00    	call   *0x401064
417170:	8d 4d 90             	lea    -0x70(%ebp),%ecx
417173:	51                   	push   %ecx
417174:	8d 55 a0             	lea    -0x60(%ebp),%edx
417177:	52                   	push   %edx
417178:	8d 45 b0             	lea    -0x50(%ebp),%eax
41717b:	50                   	push   %eax
41717c:	8d 4d c0             	lea    -0x40(%ebp),%ecx
41717f:	51                   	push   %ecx
417180:	6a 04                	push   $0x4
417182:	ff d6                	call   *%esi
417184:	83 c4 14             	add    $0x14,%esp
417187:	68 e4 4a 41 00       	push   $0x414ae4
41718c:	ff 15 78 10 40 00    	call   *0x401078
417192:	dd 05 c8 11 40 00    	fldl   0x4011c8
417198:	52                   	push   %edx
417199:	50                   	push   %eax
41719a:	ff 15 e4 10 40 00    	call   *0x4010e4
4171a0:	85 c0                	test   %eax,%eax
4171a2:	74 22                	je     0x4171c6
4171a4:	8b 75 08             	mov    0x8(%ebp),%esi
4171a7:	8b 16                	mov    (%esi),%edx
4171a9:	56                   	push   %esi
4171aa:	ff 92 0c 07 00 00    	call   *0x70c(%edx)
4171b0:	85 c0                	test   %eax,%eax
4171b2:	7d 12                	jge    0x4171c6
4171b4:	68 0c 07 00 00       	push   $0x70c
4171b9:	68 c0 49 41 00       	push   $0x4149c0
4171be:	56                   	push   %esi
4171bf:	50                   	push   %eax
4171c0:	ff 15 44 10 40 00    	call   *0x401044
4171c6:	9b                   	fwait
4171c7:	68 0d 72 41 00       	push   $0x41720d
4171cc:	eb 35                	jmp    0x417203
4171ce:	8d 4d d8             	lea    -0x28(%ebp),%ecx
4171d1:	ff 15 90 11 40 00    	call   *0x401190
4171d7:	8d 45 d0             	lea    -0x30(%ebp),%eax
4171da:	50                   	push   %eax
4171db:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
4171de:	51                   	push   %ecx
4171df:	6a 02                	push   $0x2
4171e1:	ff 15 2c 10 40 00    	call   *0x40102c
4171e7:	8d 55 90             	lea    -0x70(%ebp),%edx
4171ea:	52                   	push   %edx
4171eb:	8d 45 a0             	lea    -0x60(%ebp),%eax
4171ee:	50                   	push   %eax
4171ef:	8d 4d b0             	lea    -0x50(%ebp),%ecx
4171f2:	51                   	push   %ecx
4171f3:	8d 55 c0             	lea    -0x40(%ebp),%edx
4171f6:	52                   	push   %edx
4171f7:	6a 04                	push   $0x4
4171f9:	ff 15 24 10 40 00    	call   *0x401024
4171ff:	83 c4 20             	add    $0x20,%esp
417202:	c3                   	ret
417203:	8d 4d e0             	lea    -0x20(%ebp),%ecx
417206:	ff 15 18 10 40 00    	call   *0x401018
41720c:	c3                   	ret
41720d:	8b 45 20             	mov    0x20(%ebp),%eax
417210:	66 8b 4d dc          	mov    -0x24(%ebp),%cx
417214:	66 89 08             	mov    %cx,(%eax)
417217:	8b 4d f0             	mov    -0x10(%ebp),%ecx
41721a:	5f                   	pop    %edi
41721b:	5e                   	pop    %esi
41721c:	33 c0                	xor    %eax,%eax
41721e:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
417225:	5b                   	pop    %ebx
417226:	8b e5                	mov    %ebp,%esp
417228:	5d                   	pop    %ebp
417229:	c2 1c 00             	ret    $0x1c
41722c:	90                   	nop
41722d:	90                   	nop
41722e:	90                   	nop
41722f:	90                   	nop
417230:	55                   	push   %ebp
417231:	8b ec                	mov    %esp,%ebp
417233:	83 ec 0c             	sub    $0xc,%esp
417236:	68 c6 12 40 00       	push   $0x4012c6
41723b:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
417241:	50                   	push   %eax
417242:	64 89 25 00 00 00 00 	mov    %esp,%fs:0x0
417249:	83 ec 7c             	sub    $0x7c,%esp
41724c:	53                   	push   %ebx
41724d:	56                   	push   %esi
41724e:	57                   	push   %edi
41724f:	89 65 f4             	mov    %esp,-0xc(%ebp)
417252:	c7 45 f8 50 12 40 00 	movl   $0x401250,-0x8(%ebp)
417259:	33 ff                	xor    %edi,%edi
41725b:	89 7d fc             	mov    %edi,-0x4(%ebp)
41725e:	8b 45 08             	mov    0x8(%ebp),%eax
417261:	8b 08                	mov    (%eax),%ecx
417263:	50                   	push   %eax
417264:	ff 51 04             	call   *0x4(%ecx)
417267:	89 7d 90             	mov    %edi,-0x70(%ebp)
41726a:	be 08 00 00 00       	mov    $0x8,%esi
41726f:	8d 55 90             	lea    -0x70(%ebp),%edx
417272:	8d 4d c0             	lea    -0x40(%ebp),%ecx
417275:	89 7d e8             	mov    %edi,-0x18(%ebp)
417278:	89 7d d8             	mov    %edi,-0x28(%ebp)
41727b:	89 7d d4             	mov    %edi,-0x2c(%ebp)
41727e:	89 7d d0             	mov    %edi,-0x30(%ebp)
417281:	89 7d c0             	mov    %edi,-0x40(%ebp)
417284:	89 7d b0             	mov    %edi,-0x50(%ebp)
417287:	89 7d a0             	mov    %edi,-0x60(%ebp)
41728a:	89 7d 80             	mov    %edi,-0x80(%ebp)
41728d:	c7 45 98 80 50 41 00 	movl   $0x415080,-0x68(%ebp)
417294:	89 75 90             	mov    %esi,-0x70(%ebp)
417297:	ff 15 58 11 40 00    	call   *0x401158
41729d:	8d 55 c0             	lea    -0x40(%ebp),%edx
4172a0:	52                   	push   %edx
4172a1:	8d 45 b0             	lea    -0x50(%ebp),%eax
4172a4:	50                   	push   %eax
4172a5:	ff 15 80 11 40 00    	call   *0x401180
4172ab:	8b 1d 4c 11 40 00    	mov    0x40114c,%ebx
4172b1:	8d 4d b0             	lea    -0x50(%ebp),%ecx
4172b4:	51                   	push   %ecx
4172b5:	8d 55 80             	lea    -0x80(%ebp),%edx
4172b8:	52                   	push   %edx
4172b9:	89 75 88             	mov    %esi,-0x78(%ebp)
4172bc:	c7 45 80 02 80 00 00 	movl   $0x8002,-0x80(%ebp)
4172c3:	ff d3                	call   *%ebx
4172c5:	8d 4d c0             	lea    -0x40(%ebp),%ecx
4172c8:	8b f0                	mov    %eax,%esi
4172ca:	8d 45 b0             	lea    -0x50(%ebp),%eax
4172cd:	50                   	push   %eax
4172ce:	51                   	push   %ecx
4172cf:	6a 02                	push   $0x2
4172d1:	ff 15 24 10 40 00    	call   *0x401024
4172d7:	83 c4 0c             	add    $0xc,%esp
4172da:	66 3b f7             	cmp    %di,%si
4172dd:	74 0b                	je     0x4172ea
4172df:	68 d0 00 00 00       	push   $0xd0
4172e4:	ff 15 cc 10 40 00    	call   *0x4010cc
4172ea:	8d 55 90             	lea    -0x70(%ebp),%edx
4172ed:	8d 4d c0             	lea    -0x40(%ebp),%ecx
4172f0:	c7 45 98 90 50 41 00 	movl   $0x415090,-0x68(%ebp)
4172f7:	c7 45 90 08 00 00 00 	movl   $0x8,-0x70(%ebp)
4172fe:	ff 15 58 11 40 00    	call   *0x401158
417304:	8d 55 c0             	lea    -0x40(%ebp),%edx
417307:	52                   	push   %edx
417308:	8d 45 b0             	lea    -0x50(%ebp),%eax
41730b:	50                   	push   %eax
41730c:	ff 15 7c 11 40 00    	call   *0x40117c
417312:	8d 4d b0             	lea    -0x50(%ebp),%ecx
417315:	51                   	push   %ecx
417316:	8d 55 80             	lea    -0x80(%ebp),%edx
417319:	52                   	push   %edx
41731a:	c7 45 88 12 00 00 00 	movl   $0x12,-0x78(%ebp)
417321:	c7 45 80 02 80 00 00 	movl   $0x8002,-0x80(%ebp)
417328:	ff d3                	call   *%ebx
41732a:	8d 4d c0             	lea    -0x40(%ebp),%ecx
41732d:	8b f0                	mov    %eax,%esi
41732f:	8d 45 b0             	lea    -0x50(%ebp),%eax
417332:	50                   	push   %eax
417333:	51                   	push   %ecx
417334:	6a 02                	push   $0x2
417336:	ff 15 24 10 40 00    	call   *0x401024
41733c:	83 c4 0c             	add    $0xc,%esp
41733f:	66 3b f7             	cmp    %di,%si
417342:	0f 84 87 00 00 00    	je     0x4173cf
417348:	57                   	push   %edi
417349:	68 a4 50 41 00       	push   $0x4150a4
41734e:	8d 55 d8             	lea    -0x28(%ebp),%edx
417351:	52                   	push   %edx
417352:	8d 45 c0             	lea    -0x40(%ebp),%eax
417355:	50                   	push   %eax
417356:	ff 15 5c 11 40 00    	call   *0x40115c
41735c:	a1 38 93 41 00       	mov    0x419338,%eax
417361:	83 c4 10             	add    $0x10,%esp
417364:	3b c7                	cmp    %edi,%eax
417366:	75 10                	jne    0x417378
417368:	68 38 93 41 00       	push   $0x419338
41736d:	68 98 4b 41 00       	push   $0x414b98
417372:	ff 15 14 11 40 00    	call   *0x401114
417378:	8b 35 38 93 41 00    	mov    0x419338,%esi
41737e:	8b 1e                	mov    (%esi),%ebx
417380:	68 d0 50 41 00       	push   $0x4150d0
417385:	68 a8 4b 41 00       	push   $0x414ba8
41738a:	8d 4d c0             	lea    -0x40(%ebp),%ecx
41738d:	51                   	push   %ecx
41738e:	ff 15 c0 10 40 00    	call   *0x4010c0
417394:	50                   	push   %eax
417395:	8d 55 d0             	lea    -0x30(%ebp),%edx
417398:	52                   	push   %edx
417399:	ff 15 68 10 40 00    	call   *0x401068
41739f:	50                   	push   %eax
4173a0:	56                   	push   %esi
4173a1:	ff 53 40             	call   *0x40(%ebx)
4173a4:	db e2                	fnclex
4173a6:	3b c7                	cmp    %edi,%eax
4173a8:	7d 0f                	jge    0x4173b9
4173aa:	6a 40                	push   $0x40
4173ac:	68 88 4b 41 00       	push   $0x414b88
4173b1:	56                   	push   %esi
4173b2:	50                   	push   %eax
4173b3:	ff 15 44 10 40 00    	call   *0x401044
4173b9:	8d 4d d0             	lea    -0x30(%ebp),%ecx
4173bc:	ff 15 94 11 40 00    	call   *0x401194
4173c2:	8b 1d 18 10 40 00    	mov    0x401018,%ebx
4173c8:	8d 4d c0             	lea    -0x40(%ebp),%ecx
4173cb:	ff d3                	call   *%ebx
4173cd:	eb 06                	jmp    0x4173d5
4173cf:	8b 1d 18 10 40 00    	mov    0x401018,%ebx
4173d5:	8d 45 c0             	lea    -0x40(%ebp),%eax
4173d8:	50                   	push   %eax
4173d9:	c7 45 c8 09 00 00 00 	movl   $0x9,-0x38(%ebp)
4173e0:	c7 45 c0 02 00 00 00 	movl   $0x2,-0x40(%ebp)
4173e7:	ff 15 34 11 40 00    	call   *0x401134
4173ed:	8b d0                	mov    %eax,%edx
4173ef:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
4173f2:	ff 15 6c 11 40 00    	call   *0x40116c
4173f8:	50                   	push   %eax
4173f9:	68 e8 50 41 00       	push   $0x4150e8
4173fe:	ff 15 a4 10 40 00    	call   *0x4010a4
417404:	8b f0                	mov    %eax,%esi
417406:	f7 de                	neg    %esi
417408:	1b f6                	sbb    %esi,%esi
41740a:	f7 de                	neg    %esi
41740c:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
41740f:	f7 de                	neg    %esi
417411:	ff 15 90 11 40 00    	call   *0x401190
417417:	8d 4d c0             	lea    -0x40(%ebp),%ecx
41741a:	ff d3                	call   *%ebx
41741c:	66 3b f7             	cmp    %di,%si
41741f:	74 29                	je     0x41744a
417421:	8d 55 90             	lea    -0x70(%ebp),%edx
417424:	8d 4d c0             	lea    -0x40(%ebp),%ecx
417427:	c7 45 98 f4 50 41 00 	movl   $0x4150f4,-0x68(%ebp)
41742e:	c7 45 90 08 00 00 00 	movl   $0x8,-0x70(%ebp)
417435:	ff 15 58 11 40 00    	call   *0x401158
41743b:	8d 4d c0             	lea    -0x40(%ebp),%ecx
41743e:	51                   	push   %ecx
41743f:	ff 15 a8 10 40 00    	call   *0x4010a8
417445:	8d 4d c0             	lea    -0x40(%ebp),%ecx
417448:	ff d3                	call   *%ebx
41744a:	68 28 51 41 00       	push   $0x415128
41744f:	8d 55 c0             	lea    -0x40(%ebp),%edx
417452:	52                   	push   %edx
417453:	ff 15 74 11 40 00    	call   *0x401174
417459:	8d 45 c0             	lea    -0x40(%ebp),%eax
41745c:	50                   	push   %eax
41745d:	ff 15 20 10 40 00    	call   *0x401020
417463:	8b d0                	mov    %eax,%edx
417465:	8d 4d e8             	lea    -0x18(%ebp),%ecx
417468:	ff 15 6c 11 40 00    	call   *0x40116c
41746e:	8d 4d c0             	lea    -0x40(%ebp),%ecx
417471:	ff d3                	call   *%ebx
417473:	68 b7 74 41 00       	push   $0x4174b7
417478:	eb 2a                	jmp    0x4174a4
41747a:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
41747d:	ff 15 90 11 40 00    	call   *0x401190
417483:	8d 4d d0             	lea    -0x30(%ebp),%ecx
417486:	ff 15 94 11 40 00    	call   *0x401194
41748c:	8d 4d a0             	lea    -0x60(%ebp),%ecx
41748f:	51                   	push   %ecx
417490:	8d 55 b0             	lea    -0x50(%ebp),%edx
417493:	52                   	push   %edx
417494:	8d 45 c0             	lea    -0x40(%ebp),%eax
417497:	50                   	push   %eax
417498:	6a 03                	push   $0x3
41749a:	ff 15 24 10 40 00    	call   *0x401024
4174a0:	83 c4 10             	add    $0x10,%esp
4174a3:	c3                   	ret
4174a4:	8d 4d e8             	lea    -0x18(%ebp),%ecx
4174a7:	ff 15 90 11 40 00    	call   *0x401190
4174ad:	8d 4d d8             	lea    -0x28(%ebp),%ecx
4174b0:	ff 15 18 10 40 00    	call   *0x401018
4174b6:	c3                   	ret
4174b7:	8b 45 08             	mov    0x8(%ebp),%eax
4174ba:	8b 08                	mov    (%eax),%ecx
4174bc:	50                   	push   %eax
4174bd:	ff 51 08             	call   *0x8(%ecx)
4174c0:	8b 45 fc             	mov    -0x4(%ebp),%eax
4174c3:	8b 4d ec             	mov    -0x14(%ebp),%ecx