41615b:	50                   	push   %eax
41615c:	8d 45 c4             	lea    -0x3c(%ebp),%eax
41615f:	50                   	push   %eax
416160:	ff 15 68 10 40 00    	call   *0x401068
416166:	8b f0                	mov    %eax,%esi
416168:	b8 0a 00 00 00       	mov    $0xa,%eax
41616d:	89 45 84             	mov    %eax,-0x7c(%ebp)
416170:	89 45 94             	mov    %eax,-0x6c(%ebp)
416173:	89 45 a4             	mov    %eax,-0x5c(%ebp)
416176:	89 45 b4             	mov    %eax,-0x4c(%ebp)
416179:	8d 55 84             	lea    -0x7c(%ebp),%edx
41617c:	52                   	push   %edx
41617d:	8d 45 94             	lea    -0x6c(%ebp),%eax
416180:	50                   	push   %eax
416181:	8d 55 a4             	lea    -0x5c(%ebp),%edx
416184:	52                   	push   %edx
416185:	b9 04 00 02 80       	mov    $0x80020004,%ecx
41618a:	8d 45 b4             	lea    -0x4c(%ebp),%eax
41618d:	50                   	push   %eax
41618e:	68 85 70 00 00       	push   $0x7085
416193:	89 4d 8c             	mov    %ecx,-0x74(%ebp)
416196:	89 4d 9c             	mov    %ecx,-0x64(%ebp)
416199:	89 4d ac             	mov    %ecx,-0x54(%ebp)
41619c:	89 4d bc             	mov    %ecx,-0x44(%ebp)
41619f:	8b 0e                	mov    (%esi),%ecx
4161a1:	56                   	push   %esi
4161a2:	ff 51 44             	call   *0x44(%ecx)
4161a5:	db e2                	fnclex
4161a7:	3b c7                	cmp    %edi,%eax
4161a9:	7d 0f                	jge    0x4161ba
4161ab:	6a 44                	push   $0x44
4161ad:	68 e0 4b 41 00       	push   $0x414be0
4161b2:	56                   	push   %esi
4161b3:	50                   	push   %eax
4161b4:	ff 15 44 10 40 00    	call   *0x401044
4161ba:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
4161bd:	ff 15 94 11 40 00    	call   *0x401194
4161c3:	8b 1d 24 10 40 00    	mov    0x401024,%ebx
4161c9:	8d 4d 84             	lea    -0x7c(%ebp),%ecx
4161cc:	51                   	push   %ecx
4161cd:	8d 55 94             	lea    -0x6c(%ebp),%edx
4161d0:	52                   	push   %edx
4161d1:	8d 45 a4             	lea    -0x5c(%ebp),%eax
4161d4:	50                   	push   %eax
4161d5:	8d 4d b4             	lea    -0x4c(%ebp),%ecx
4161d8:	51                   	push   %ecx
4161d9:	6a 04                	push   $0x4
4161db:	ff d3                	call   *%ebx
4161dd:	83 c4 14             	add    $0x14,%esp
4161e0:	eb 06                	jmp    0x4161e8
4161e2:	8b 1d 24 10 40 00    	mov    0x401024,%ebx
4161e8:	39 3d 38 93 41 00    	cmp    %edi,0x419338
4161ee:	75 10                	jne    0x416200
4161f0:	68 38 93 41 00       	push   $0x419338
4161f5:	68 98 4b 41 00       	push   $0x414b98
4161fa:	ff 15 14 11 40 00    	call   *0x401114
416200:	8b 35 38 93 41 00    	mov    0x419338,%esi
416206:	8b 16                	mov    (%esi),%edx
416208:	8d 45 c4             	lea    -0x3c(%ebp),%eax
41620b:	50                   	push   %eax
41620c:	56                   	push   %esi
41620d:	ff 52 14             	call   *0x14(%edx)
416210:	db e2                	fnclex
416212:	3b c7                	cmp    %edi,%eax
416214:	7d 0f                	jge    0x416225
416216:	6a 14                	push   $0x14
416218:	68 88 4b 41 00       	push   $0x414b88
41621d:	56                   	push   %esi
41621e:	50                   	push   %eax
41621f:	ff 15 44 10 40 00    	call   *0x401044
416225:	8b 45 c4             	mov    -0x3c(%ebp),%eax
416228:	8b 08                	mov    (%eax),%ecx
41622a:	8d 95 40 ff ff ff    	lea    -0xc0(%ebp),%edx
416230:	52                   	push   %edx
416231:	50                   	push   %eax
416232:	8b f0                	mov    %eax,%esi
416234:	ff 91 b8 00 00 00    	call   *0xb8(%ecx)
41623a:	db e2                	fnclex
41623c:	3b c7                	cmp    %edi,%eax
41623e:	7d 12                	jge    0x416252
416240:	68 b8 00 00 00       	push   $0xb8
416245:	68 d4 4d 41 00       	push   $0x414dd4
41624a:	56                   	push   %esi
41624b:	50                   	push   %eax
41624c:	ff 15 44 10 40 00    	call   *0x401044
416252:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
416255:	ff 15 94 11 40 00    	call   *0x401194
41625b:	8b 3d 58 11 40 00    	mov    0x401158,%edi
416261:	8d 95 74 ff ff ff    	lea    -0x8c(%ebp),%edx
416267:	8d 4d b4             	lea    -0x4c(%ebp),%ecx
41626a:	c7 45 ac 01 00 00 00 	movl   $0x1,-0x54(%ebp)
416271:	c7 45 a4 02 00 00 00 	movl   $0x2,-0x5c(%ebp)
416278:	c7 85 7c ff ff ff e8 	movl   $0x414de8,-0x84(%ebp)
41627f:	4d 41 00
416282:	c7 85 74 ff ff ff 08 	movl   $0x8,-0x8c(%ebp)
416289:	00 00 00
41628c:	ff d7                	call   *%edi
41628e:	8d 45 a4             	lea    -0x5c(%ebp),%eax
416291:	50                   	push   %eax
416292:	6a 02                	push   $0x2
416294:	8d 4d b4             	lea    -0x4c(%ebp),%ecx
416297:	51                   	push   %ecx
416298:	8d 55 94             	lea    -0x6c(%ebp),%edx
41629b:	52                   	push   %edx
41629c:	ff 15 88 10 40 00    	call   *0x401088
4162a2:	8d 45 94             	lea    -0x6c(%ebp),%eax
4162a5:	50                   	push   %eax
4162a6:	8d 8d 54 ff ff ff    	lea    -0xac(%ebp),%ecx
4162ac:	51                   	push   %ecx
4162ad:	c7 85 5c ff ff ff f4 	movl   $0x414df4,-0xa4(%ebp)
4162b4:	4d 41 00
4162b7:	c7 85 54 ff ff ff 08 	movl   $0x8008,-0xac(%ebp)
4162be:	80 00 00
4162c1:	ff 15 4c 11 40 00    	call   *0x40114c
4162c7:	8d 55 94             	lea    -0x6c(%ebp),%edx
4162ca:	52                   	push   %edx
4162cb:	8d 4d b4             	lea    -0x4c(%ebp),%ecx
4162ce:	8b f0                	mov    %eax,%esi
4162d0:	8d 45 a4             	lea    -0x5c(%ebp),%eax
4162d3:	50                   	push   %eax
4162d4:	51                   	push   %ecx
4162d5:	6a 03                	push   $0x3
4162d7:	ff d3                	call   *%ebx
4162d9:	83 c4 10             	add    $0x10,%esp
4162dc:	66 85 f6             	test   %si,%si
4162df:	74 5f                	je     0x416340
4162e1:	a1 38 93 41 00       	mov    0x419338,%eax
4162e6:	85 c0                	test   %eax,%eax
4162e8:	75 10                	jne    0x4162fa
4162ea:	68 38 93 41 00       	push   $0x419338
4162ef:	68 98 4b 41 00       	push   $0x414b98
4162f4:	ff 15 14 11 40 00    	call   *0x401114
4162fa:	8b 35 38 93 41 00    	mov    0x419338,%esi
416300:	8b 1e                	mov    (%esi),%ebx
416302:	8d 55 d4             	lea    -0x2c(%ebp),%edx
416305:	52                   	push   %edx
416306:	ff 15 b4 10 40 00    	call   *0x4010b4
41630c:	50                   	push   %eax
41630d:	8d 45 c4             	lea    -0x3c(%ebp),%eax
416310:	50                   	push   %eax
416311:	ff 15 70 10 40 00    	call   *0x401070
416317:	50                   	push   %eax
416318:	56                   	push   %esi
416319:	ff 53 10             	call   *0x10(%ebx)
41631c:	db e2                	fnclex
41631e:	85 c0                	test   %eax,%eax
416320:	7d 0f                	jge    0x416331
416322:	6a 10                	push   $0x10
416324:	68 88 4b 41 00       	push   $0x414b88
416329:	56                   	push   %esi
41632a:	50                   	push   %eax
41632b:	ff 15 44 10 40 00    	call   *0x401044
416331:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
416334:	ff 15 94 11 40 00    	call   *0x401194
41633a:	8b 1d 24 10 40 00    	mov    0x401024,%ebx
416340:	b8 02 00 00 00       	mov    $0x2,%eax
416345:	8d 95 74 ff ff ff    	lea    -0x8c(%ebp),%edx
41634b:	8d 4d b4             	lea    -0x4c(%ebp),%ecx
41634e:	89 45 ac             	mov    %eax,-0x54(%ebp)
416351:	89 45 a4             	mov    %eax,-0x5c(%ebp)
416354:	c7 85 7c ff ff ff fc 	movl   $0x414dfc,-0x84(%ebp)
41635b:	4d 41 00
41635e:	c7 85 74 ff ff ff 08 	movl   $0x8,-0x8c(%ebp)
416365:	00 00 00
416368:	ff d7                	call   *%edi
41636a:	8d 4d a4             	lea    -0x5c(%ebp),%ecx
41636d:	51                   	push   %ecx
41636e:	6a 01                	push   $0x1
416370:	8d 55 b4             	lea    -0x4c(%ebp),%edx
416373:	52                   	push   %edx
416374:	8d 45 94             	lea    -0x6c(%ebp),%eax
416377:	50                   	push   %eax
416378:	ff 15 38 10 40 00    	call   *0x401038
41637e:	8d 4d 94             	lea    -0x6c(%ebp),%ecx
416381:	51                   	push   %ecx
416382:	8d 95 54 ff ff ff    	lea    -0xac(%ebp),%edx
416388:	52                   	push   %edx
416389:	c7 85 5c ff ff ff 0c 	movl   $0x414e0c,-0xa4(%ebp)
416390:	4e 41 00
416393:	c7 85 54 ff ff ff 08 	movl   $0x8008,-0xac(%ebp)
41639a:	80 00 00
41639d:	ff 15 4c 11 40 00    	call   *0x40114c
4163a3:	8d 4d a4             	lea    -0x5c(%ebp),%ecx
4163a6:	8d 55 b4             	lea    -0x4c(%ebp),%edx
4163a9:	8b f0                	mov    %eax,%esi
4163ab:	8d 45 94             	lea    -0x6c(%ebp),%eax
4163ae:	50                   	push   %eax
4163af:	51                   	push   %ecx
4163b0:	52                   	push   %edx
4163b1:	6a 03                	push   $0x3
4163b3:	ff d3                	call   *%ebx
4163b5:	83 c4 10             	add    $0x10,%esp
4163b8:	66 85 f6             	test   %si,%si
4163bb:	74 3c                	je     0x4163f9
4163bd:	8d 95 74 ff ff ff    	lea    -0x8c(%ebp),%edx
4163c3:	8d 4d b4             	lea    -0x4c(%ebp),%ecx
4163c6:	c7 85 7c ff ff ff 14 	movl   $0x414e14,-0x84(%ebp)
4163cd:	4e 41 00
4163d0:	c7 85 74 ff ff ff 08 	movl   $0x8,-0x8c(%ebp)
4163d7:	00 00 00
4163da:	ff d7                	call   *%edi
4163dc:	8d 45 b4             	lea    -0x4c(%ebp),%eax
4163df:	50                   	push   %eax
4163e0:	8d 4d a4             	lea    -0x5c(%ebp),%ecx
4163e3:	51                   	push   %ecx
4163e4:	ff 15 54 10 40 00    	call   *0x401054
4163ea:	8d 55 a4             	lea    -0x5c(%ebp),%edx
4163ed:	52                   	push   %edx
4163ee:	8d 45 b4             	lea    -0x4c(%ebp),%eax
4163f1:	50                   	push   %eax
4163f2:	6a 02                	push   $0x2
4163f4:	ff d3                	call   *%ebx
4163f6:	83 c4 0c             	add    $0xc,%esp
4163f9:	9b                   	fwait
4163fa:	68 49 64 41 00       	push   $0x416449
4163ff:	eb 2e                	jmp    0x41642f
416401:	8d 4d c8             	lea    -0x38(%ebp),%ecx
416404:	ff 15 90 11 40 00    	call   *0x401190
41640a:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
41640d:	ff 15 94 11 40 00    	call   *0x401194
416413:	8d 4d 84             	lea    -0x7c(%ebp),%ecx
416416:	51                   	push   %ecx
416417:	8d 55 94             	lea    -0x6c(%ebp),%edx
41641a:	52                   	push   %edx
41641b:	8d 45 a4             	lea    -0x5c(%ebp),%eax
41641e:	50                   	push   %eax
41641f:	8d 4d b4             	lea    -0x4c(%ebp),%ecx
416422:	51                   	push   %ecx
416423:	6a 04                	push   $0x4
416425:	ff 15 24 10 40 00    	call   *0x401024
41642b:	83 c4 14             	add    $0x14,%esp
41642e:	c3                   	ret
41642f:	8b 35 90 11 40 00    	mov    0x401190,%esi
416435:	8d 4d ec             	lea    -0x14(%ebp),%ecx
416438:	ff d6                	call   *%esi
41643a:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
41643d:	ff d6                	call   *%esi
41643f:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
416442:	ff 15 18 10 40 00    	call   *0x401018
416448:	c3                   	ret
416449:	8b 45 28             	mov    0x28(%ebp),%eax
41644c:	8b 55 cc             	mov    -0x34(%ebp),%edx
41644f:	8b 4d d0             	mov    -0x30(%ebp),%ecx
416452:	89 10                	mov    %edx,(%eax)
416454:	89 48 04             	mov    %ecx,0x4(%eax)
416457:	8b 4d f0             	mov    -0x10(%ebp),%ecx
41645a:	5f                   	pop    %edi
41645b:	5e                   	pop    %esi
41645c:	33 c0                	xor    %eax,%eax
41645e:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
416465:	5b                   	pop    %ebx
416466:	8b e5                	mov    %ebp,%esp
416468:	5d                   	pop    %ebp
416469:	c2 24 00             	ret    $0x24
41646c:	90                   	nop
41646d:	90                   	nop
41646e:	90                   	nop
41646f:	90                   	nop
416470:	55                   	push   %ebp
416471:	8b ec                	mov    %esp,%ebp
416473:	83 ec 08             	sub    $0x8,%esp
416476:	68 c6 12 40 00       	push   $0x4012c6
41647b:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
416481:	50                   	push   %eax
416482:	64 89 25 00 00 00 00 	mov    %esp,%fs:0x0
416489:	81 ec 8c 00 00 00    	sub    $0x8c,%esp
41648f:	53                   	push   %ebx
416490:	56                   	push   %esi
416491:	57                   	push   %edi
416492:	89 65 f8             	mov    %esp,-0x8(%ebp)
416495:	c7 45 fc d0 11 40 00 	movl   $0x4011d0,-0x4(%ebp)
41649c:	8b 55 0c             	mov    0xc(%ebp),%edx
41649f:	8b 35 28 11 40 00    	mov    0x401128,%esi
4164a5:	33 ff                	xor    %edi,%edi
4164a7:	8d 4d e8             	lea    -0x18(%ebp),%ecx
4164aa:	89 7d ec             	mov    %edi,-0x14(%ebp)
4164ad:	89 7d e8             	mov    %edi,-0x18(%ebp)
4164b0:	89 7d e4             	mov    %edi,-0x1c(%ebp)
4164b3:	89 7d e0             	mov    %edi,-0x20(%ebp)
4164b6:	89 7d dc             	mov    %edi,-0x24(%ebp)
4164b9:	89 7d cc             	mov    %edi,-0x34(%ebp)
4164bc:	89 7d bc             	mov    %edi,-0x44(%ebp)
4164bf:	89 7d ac             	mov    %edi,-0x54(%ebp)
4164c2:	89 7d 9c             	mov    %edi,-0x64(%ebp)
4164c5:	89 bd 7c ff ff ff    	mov    %edi,-0x84(%ebp)
4164cb:	89 bd 6c ff ff ff    	mov    %edi,-0x94(%ebp)
4164d1:	ff d6                	call   *%esi
4164d3:	8b 55 20             	mov    0x20(%ebp),%edx
4164d6:	8d 4d ec             	lea    -0x14(%ebp),%ecx
4164d9:	ff d6                	call   *%esi
4164db:	68 e4 4a 41 00       	push   $0x414ae4
4164e0:	ff 15 78 10 40 00    	call   *0x401078
4164e6:	dd 05 c8 11 40 00    	fldl   0x4011c8
4164ec:	52                   	push   %edx
4164ed:	50                   	push   %eax
4164ee:	ff 15 e4 10 40 00    	call   *0x4010e4
4164f4:	85 c0                	test   %eax,%eax
4164f6:	74 22                	je     0x41651a
4164f8:	8b 75 08             	mov    0x8(%ebp),%esi
4164fb:	8b 06                	mov    (%esi),%eax
4164fd:	56                   	push   %esi
4164fe:	ff 90 0c 07 00 00    	call   *0x70c(%eax)
416504:	3b c7                	cmp    %edi,%eax
416506:	7d 12                	jge    0x41651a
416508:	68 0c 07 00 00       	push   $0x70c
41650d:	68 c0 49 41 00       	push   $0x4149c0
416512:	56                   	push   %esi
416513:	50                   	push   %eax
416514:	ff 15 44 10 40 00    	call   *0x401044
41651a:	8b 35 a4 10 40 00    	mov    0x4010a4,%esi
416520:	68 30 4e 41 00       	push   $0x414e30
416525:	68 30 4e 41 00       	push   $0x414e30
41652a:	ff d6                	call   *%esi
41652c:	85 c0                	test   %eax,%eax
41652e:	74 0b                	je     0x41653b
416530:	68 80 00 00 00       	push   $0x80
416535:	ff 15 cc 10 40 00    	call   *0x4010cc
41653b:	8d 4d cc             	lea    -0x34(%ebp),%ecx
41653e:	51                   	push   %ecx
41653f:	b8 02 00 00 00       	mov    $0x2,%eax
416544:	6a 01                	push   $0x1
416546:	68 fc 4d 41 00       	push   $0x414dfc
41654b:	89 45 d4             	mov    %eax,-0x2c(%ebp)
41654e:	89 45 cc             	mov    %eax,-0x34(%ebp)
416551:	ff 15 34 10 40 00    	call   *0x401034
416557:	8b 1d 6c 11 40 00    	mov    0x40116c,%ebx
41655d:	8b d0                	mov    %eax,%edx
41655f:	8d 4d dc             	lea    -0x24(%ebp),%ecx
416562:	ff d3                	call   *%ebx
416564:	50                   	push   %eax
416565:	68 0c 4e 41 00       	push   $0x414e0c
41656a:	ff d6                	call   *%esi
41656c:	8b f0                	mov    %eax,%esi
41656e:	f7 de                	neg    %esi
416570:	1b f6                	sbb    %esi,%esi
416572:	f7 de                	neg    %esi
416574:	8d 4d dc             	lea    -0x24(%ebp),%ecx
416577:	f7 de                	neg    %esi
416579:	ff 15 90 11 40 00    	call   *0x401190
41657f:	8d 4d cc             	lea    -0x34(%ebp),%ecx
416582:	ff 15 18 10 40 00    	call   *0x401018
416588:	66 3b f7             	cmp    %di,%si
41658b:	0f 84 81 00 00 00    	je     0x416612
416591:	8b 35 58 11 40 00    	mov    0x401158,%esi
416597:	8d 95 6c ff ff ff    	lea    -0x94(%ebp),%edx
41659d:	8d 4d ac             	lea    -0x54(%ebp),%ecx
4165a0:	c7 85 74 ff ff ff 5c 	movl   $0x414e5c,-0x8c(%ebp)
4165a7:	4e 41 00
4165aa:	c7 85 6c ff ff ff 08 	movl   $0x8,-0x94(%ebp)
4165b1:	00 00 00