409424:	b8 0a 00 00 00       	mov    $0xa,%eax
409429:	68 00 00 f0 3f       	push   $0x3ff00000
40942e:	6a 00                	push   $0x0
409430:	89 45 8c             	mov    %eax,-0x74(%ebp)
409433:	89 45 9c             	mov    %eax,-0x64(%ebp)
409436:	ff 15 00 11 40 00    	call   *0x401100
40943c:	ff 15 a8 10 40 00    	call   *0x4010a8
409442:	dc 1d 28 12 40 00    	fcompl 0x401228
409448:	df e0                	fnstsw %ax
40944a:	f6 c4 40             	test   $0x40,%ah
40944d:	75 07                	jne    0x409456
40944f:	bb 01 00 00 00       	mov    $0x1,%ebx
409454:	eb 02                	jmp    0x409458
409456:	33 db                	xor    %ebx,%ebx
409458:	8d 45 8c             	lea    -0x74(%ebp),%eax
40945b:	50                   	push   %eax
40945c:	8d 4d 9c             	lea    -0x64(%ebp),%ecx
40945f:	51                   	push   %ecx
409460:	6a 02                	push   $0x2
409462:	ff 15 28 10 40 00    	call   *0x401028
409468:	f7 db                	neg    %ebx
40946a:	83 c4 0c             	add    $0xc,%esp
40946d:	66 85 db             	test   %bx,%bx
409470:	74 41                	je     0x4094b3
409472:	8d 95 7c ff ff ff    	lea    -0x84(%ebp),%edx
409478:	8d 4d 9c             	lea    -0x64(%ebp),%ecx
40947b:	c7 45 84 c0 66 40 00 	movl   $0x4066c0,-0x7c(%ebp)
409482:	c7 85 7c ff ff ff 08 	movl   $0x8,-0x84(%ebp)
409489:	00 00 00
40948c:	ff 15 98 11 40 00    	call   *0x401198
409492:	8d 55 9c             	lea    -0x64(%ebp),%edx
409495:	52                   	push   %edx
409496:	8d 45 8c             	lea    -0x74(%ebp),%eax
409499:	50                   	push   %eax
40949a:	ff 15 68 10 40 00    	call   *0x401068
4094a0:	8d 4d 8c             	lea    -0x74(%ebp),%ecx
4094a3:	51                   	push   %ecx
4094a4:	8d 55 9c             	lea    -0x64(%ebp),%edx
4094a7:	52                   	push   %edx
4094a8:	6a 02                	push   $0x2
4094aa:	ff 15 28 10 40 00    	call   *0x401028
4094b0:	83 c4 0c             	add    $0xc,%esp
4094b3:	68 6c 60 40 00       	push   $0x40606c
4094b8:	68 78 60 40 00       	push   $0x406078
4094bd:	ff 15 4c 10 40 00    	call   *0x40104c
4094c3:	8b 1d b0 11 40 00    	mov    0x4011b0,%ebx
4094c9:	8b d0                	mov    %eax,%edx
4094cb:	8d 4d cc             	lea    -0x34(%ebp),%ecx
4094ce:	ff d3                	call   *%ebx
4094d0:	8b 45 cc             	mov    -0x34(%ebp),%eax
4094d3:	6a 01                	push   $0x1
4094d5:	50                   	push   %eax
4094d6:	ff 15 b4 11 40 00    	call   *0x4011b4
4094dc:	8b d0                	mov    %eax,%edx
4094de:	8d 4d b4             	lea    -0x4c(%ebp),%ecx
4094e1:	ff d3                	call   *%ebx
4094e3:	50                   	push   %eax
4094e4:	68 78 60 40 00       	push   $0x406078
4094e9:	ff 15 d4 10 40 00    	call   *0x4010d4
4094ef:	8b d8                	mov    %eax,%ebx
4094f1:	f7 db                	neg    %ebx
4094f3:	1b db                	sbb    %ebx,%ebx
4094f5:	f7 db                	neg    %ebx
4094f7:	8d 4d b4             	lea    -0x4c(%ebp),%ecx
4094fa:	f7 db                	neg    %ebx
4094fc:	ff 15 cc 11 40 00    	call   *0x4011cc
409502:	66 85 db             	test   %bx,%bx
409505:	74 06                	je     0x40950d
409507:	ff 15 2c 10 40 00    	call   *0x40102c
40950d:	8b 1d 4c 10 40 00    	mov    0x40104c,%ebx
409513:	68 10 65 40 00       	push   $0x406510
409518:	68 e0 66 40 00       	push   $0x4066e0
40951d:	ff d3                	call   *%ebx
40951f:	8b d0                	mov    %eax,%edx
409521:	8d 4d b4             	lea    -0x4c(%ebp),%ecx
409524:	ff 15 b0 11 40 00    	call   *0x4011b0
40952a:	50                   	push   %eax
40952b:	68 f8 66 40 00       	push   $0x4066f8
409530:	ff d3                	call   *%ebx
409532:	89 45 a4             	mov    %eax,-0x5c(%ebp)
409535:	b8 08 00 00 00       	mov    $0x8,%eax
40953a:	8d 55 b0             	lea    -0x50(%ebp),%edx
40953d:	89 45 9c             	mov    %eax,-0x64(%ebp)
409540:	89 85 6c ff ff ff    	mov    %eax,-0x94(%ebp)
409546:	8b 45 08             	mov    0x8(%ebp),%eax
409549:	8b 08                	mov    (%eax),%ecx
40954b:	52                   	push   %edx
40954c:	50                   	push   %eax
40954d:	bb 04 67 40 00       	mov    $0x406704,%ebx
409552:	ff 91 18 02 00 00    	call   *0x218(%ecx)
409558:	db e2                	fnclex
40955a:	85 c0                	test   %eax,%eax
40955c:	7d 15                	jge    0x409573
40955e:	8b 4d 08             	mov    0x8(%ebp),%ecx
409561:	68 18 02 00 00       	push   $0x218
409566:	68 ec 5e 40 00       	push   $0x405eec
40956b:	51                   	push   %ecx
40956c:	50                   	push   %eax
40956d:	ff 15 58 10 40 00    	call   *0x401058
409573:	8b 45 9c             	mov    -0x64(%ebp),%eax
409576:	8b 4d a0             	mov    -0x60(%ebp),%ecx
409579:	83 ec 10             	sub    $0x10,%esp
40957c:	8b d4                	mov    %esp,%edx
40957e:	89 02                	mov    %eax,(%edx)
409580:	8b 45 a4             	mov    -0x5c(%ebp),%eax
409583:	89 4a 04             	mov    %ecx,0x4(%edx)
409586:	8b 4d a8             	mov    -0x58(%ebp),%ecx
409589:	89 42 08             	mov    %eax,0x8(%edx)
40958c:	8b 85 6c ff ff ff    	mov    -0x94(%ebp),%eax
409592:	89 4a 0c             	mov    %ecx,0xc(%edx)
409595:	8b 8d 70 ff ff ff    	mov    -0x90(%ebp),%ecx
40959b:	83 ec 10             	sub    $0x10,%esp
40959e:	8b d4                	mov    %esp,%edx
4095a0:	89 02                	mov    %eax,(%edx)
4095a2:	8b 85 78 ff ff ff    	mov    -0x88(%ebp),%eax
4095a8:	89 4a 04             	mov    %ecx,0x4(%edx)
4095ab:	8b 4d b0             	mov    -0x50(%ebp),%ecx
4095ae:	6a 02                	push   $0x2
4095b0:	89 5a 08             	mov    %ebx,0x8(%edx)
4095b3:	68 fc 65 40 00       	push   $0x4065fc
4095b8:	89 42 0c             	mov    %eax,0xc(%edx)
4095bb:	51                   	push   %ecx
4095bc:	8d 55 8c             	lea    -0x74(%ebp),%edx
4095bf:	52                   	push   %edx
4095c0:	ff d7                	call   *%edi
4095c2:	83 c4 30             	add    $0x30,%esp
4095c5:	50                   	push   %eax
4095c6:	ff 15 e4 10 40 00    	call   *0x4010e4
4095cc:	50                   	push   %eax
4095cd:	8d 45 b8             	lea    -0x48(%ebp),%eax
4095d0:	50                   	push   %eax
4095d1:	ff 15 90 10 40 00    	call   *0x401090
4095d7:	8d 4d b4             	lea    -0x4c(%ebp),%ecx
4095da:	ff 15 cc 11 40 00    	call   *0x4011cc
4095e0:	8d 4d b0             	lea    -0x50(%ebp),%ecx
4095e3:	ff 15 d0 11 40 00    	call   *0x4011d0
4095e9:	8d 4d 8c             	lea    -0x74(%ebp),%ecx
4095ec:	51                   	push   %ecx
4095ed:	8d 55 9c             	lea    -0x64(%ebp),%edx
4095f0:	52                   	push   %edx
4095f1:	6a 02                	push   $0x2
4095f3:	ff 15 28 10 40 00    	call   *0x401028
4095f9:	b9 02 00 00 00       	mov    $0x2,%ecx
4095fe:	51                   	push   %ecx
4095ff:	8b d4                	mov    %esp,%edx
409601:	89 0a                	mov    %ecx,(%edx)
409603:	89 8d 7c ff ff ff    	mov    %ecx,-0x84(%ebp)
409609:	8b 4d 80             	mov    -0x80(%ebp),%ecx
40960c:	89 4a 04             	mov    %ecx,0x4(%edx)
40960f:	8b 4d b8             	mov    -0x48(%ebp),%ecx
409612:	b8 d1 6e 00 00       	mov    $0x6ed1,%eax
409617:	89 42 08             	mov    %eax,0x8(%edx)
40961a:	89 45 84             	mov    %eax,-0x7c(%ebp)
40961d:	8b 45 88             	mov    -0x78(%ebp),%eax
409620:	68 38 66 40 00       	push   $0x406638
409625:	51                   	push   %ecx
409626:	89 42 0c             	mov    %eax,0xc(%edx)
409629:	ff d6                	call   *%esi
40962b:	83 ec 10             	sub    $0x10,%esp
40962e:	8b d4                	mov    %esp,%edx
409630:	b9 02 00 00 00       	mov    $0x2,%ecx
409635:	89 0a                	mov    %ecx,(%edx)
409637:	89 8d 7c ff ff ff    	mov    %ecx,-0x84(%ebp)
40963d:	8b 4d 80             	mov    -0x80(%ebp),%ecx
409640:	89 4a 04             	mov    %ecx,0x4(%edx)
409643:	8b 4d b8             	mov    -0x48(%ebp),%ecx
409646:	b8 f2 52 00 00       	mov    $0x52f2,%eax
40964b:	89 42 08             	mov    %eax,0x8(%edx)
40964e:	89 45 84             	mov    %eax,-0x7c(%ebp)
409651:	8b 45 88             	mov    -0x78(%ebp),%eax
409654:	68 44 66 40 00       	push   $0x406644
409659:	51                   	push   %ecx
40965a:	89 42 0c             	mov    %eax,0xc(%edx)
40965d:	ff d6                	call   *%esi
40965f:	83 c8 ff             	or     $0xffffffff,%eax
409662:	b9 0b 00 00 00       	mov    $0xb,%ecx
409667:	83 ec 10             	sub    $0x10,%esp
40966a:	89 45 84             	mov    %eax,-0x7c(%ebp)
40966d:	89 8d 7c ff ff ff    	mov    %ecx,-0x84(%ebp)
409673:	8b d4                	mov    %esp,%edx
409675:	89 0a                	mov    %ecx,(%edx)
409677:	8b 4d 80             	mov    -0x80(%ebp),%ecx
40967a:	89 4a 04             	mov    %ecx,0x4(%edx)
40967d:	8b 4d b8             	mov    -0x48(%ebp),%ecx
409680:	89 42 08             	mov    %eax,0x8(%edx)
409683:	8b 45 88             	mov    -0x78(%ebp),%eax
409686:	68 4c 66 40 00       	push   $0x40664c
40968b:	51                   	push   %ecx
40968c:	89 42 0c             	mov    %eax,0xc(%edx)
40968f:	ff d6                	call   *%esi
409691:	8b 55 b8             	mov    -0x48(%ebp),%edx
409694:	6a 00                	push   $0x0
409696:	68 1c 67 40 00       	push   $0x40671c
40969b:	52                   	push   %edx
40969c:	8d 45 9c             	lea    -0x64(%ebp),%eax
40969f:	50                   	push   %eax
4096a0:	c7 45 84 ff ff ff ff 	movl   $0xffffffff,-0x7c(%ebp)
4096a7:	c7 85 7c ff ff ff 0b 	movl   $0x800b,-0x84(%ebp)
4096ae:	80 00 00
4096b1:	ff d7                	call   *%edi
4096b3:	83 c4 10             	add    $0x10,%esp
4096b6:	50                   	push   %eax
4096b7:	8d 8d 7c ff ff ff    	lea    -0x84(%ebp),%ecx
4096bd:	51                   	push   %ecx
4096be:	ff 15 88 11 40 00    	call   *0x401188
4096c4:	8d 4d 9c             	lea    -0x64(%ebp),%ecx
4096c7:	66 8b f0             	mov    %ax,%si
4096ca:	ff 15 1c 10 40 00    	call   *0x40101c
4096d0:	66 85 f6             	test   %si,%si
4096d3:	0f 84 8d 00 00 00    	je     0x409766
4096d9:	a1 38 b3 40 00       	mov    0x40b338,%eax
4096de:	85 c0                	test   %eax,%eax
4096e0:	75 10                	jne    0x4096f2
4096e2:	68 38 b3 40 00       	push   $0x40b338
4096e7:	68 c4 60 40 00       	push   $0x4060c4
4096ec:	ff 15 4c 11 40 00    	call   *0x40114c
4096f2:	8b 35 38 b3 40 00    	mov    0x40b338,%esi
4096f8:	8d 7d b0             	lea    -0x50(%ebp),%edi
4096fb:	57                   	push   %edi
4096fc:	68 e8 58 00 00       	push   $0x58e8
409701:	83 ec 10             	sub    $0x10,%esp
409704:	b9 02 00 00 00       	mov    $0x2,%ecx
409709:	8b fc                	mov    %esp,%edi
40970b:	89 0f                	mov    %ecx,(%edi)
40970d:	89 8d 7c ff ff ff    	mov    %ecx,-0x84(%ebp)
409713:	8b 4d 80             	mov    -0x80(%ebp),%ecx
409716:	b8 99 00 00 00       	mov    $0x99,%eax
40971b:	89 4f 04             	mov    %ecx,0x4(%edi)
40971e:	89 45 84             	mov    %eax,-0x7c(%ebp)
409721:	8b 16                	mov    (%esi),%edx
409723:	89 47 08             	mov    %eax,0x8(%edi)
409726:	8b 45 88             	mov    -0x78(%ebp),%eax
409729:	56                   	push   %esi
40972a:	89 47 0c             	mov    %eax,0xc(%edi)
40972d:	ff 52 34             	call   *0x34(%edx)
409730:	db e2                	fnclex
409732:	85 c0                	test   %eax,%eax
409734:	7d 13                	jge    0x409749
409736:	8b 1d 58 10 40 00    	mov    0x401058,%ebx
40973c:	6a 34                	push   $0x34
40973e:	68 b4 60 40 00       	push   $0x4060b4
409743:	56                   	push   %esi
409744:	50                   	push   %eax
409745:	ff d3                	call   *%ebx
409747:	eb 06                	jmp    0x40974f
409749:	8b 1d 58 10 40 00    	mov    0x401058,%ebx
40974f:	8b 45 b0             	mov    -0x50(%ebp),%eax
409752:	50                   	push   %eax
409753:	8d 4d dc             	lea    -0x24(%ebp),%ecx
409756:	51                   	push   %ecx
409757:	c7 45 b0 00 00 00 00 	movl   $0x0,-0x50(%ebp)
40975e:	ff 15 70 11 40 00    	call   *0x401170
409764:	eb 06                	jmp    0x40976c
409766:	8b 1d 58 10 40 00    	mov    0x401058,%ebx
40976c:	a1 38 b3 40 00       	mov    0x40b338,%eax
409771:	85 c0                	test   %eax,%eax
409773:	75 10                	jne    0x409785
409775:	68 38 b3 40 00       	push   $0x40b338
40977a:	68 c4 60 40 00       	push   $0x4060c4
40977f:	ff 15 4c 11 40 00    	call   *0x40114c
409785:	8b 35 38 b3 40 00    	mov    0x40b338,%esi
40978b:	8b 16                	mov    (%esi),%edx
40978d:	8d 45 b0             	lea    -0x50(%ebp),%eax
409790:	50                   	push   %eax
409791:	56                   	push   %esi
409792:	ff 52 14             	call   *0x14(%edx)
409795:	db e2                	fnclex
409797:	85 c0                	test   %eax,%eax
409799:	7d 0b                	jge    0x4097a6
40979b:	6a 14                	push   $0x14
40979d:	68 b4 60 40 00       	push   $0x4060b4
4097a2:	56                   	push   %esi
4097a3:	50                   	push   %eax
4097a4:	ff d3                	call   *%ebx
4097a6:	8b 45 b0             	mov    -0x50(%ebp),%eax
4097a9:	8b 08                	mov    (%eax),%ecx
4097ab:	8d 95 48 ff ff ff    	lea    -0xb8(%ebp),%edx
4097b1:	52                   	push   %edx
4097b2:	50                   	push   %eax
4097b3:	8b f0                	mov    %eax,%esi
4097b5:	ff 91 08 01 00 00    	call   *0x108(%ecx)
4097bb:	db e2                	fnclex
4097bd:	85 c0                	test   %eax,%eax
4097bf:	7d 0e                	jge    0x4097cf
4097c1:	68 08 01 00 00       	push   $0x108
4097c6:	68 d4 60 40 00       	push   $0x4060d4
4097cb:	56                   	push   %esi
4097cc:	50                   	push   %eax
4097cd:	ff d3                	call   *%ebx
4097cf:	8d 4d b0             	lea    -0x50(%ebp),%ecx
4097d2:	ff 15 d0 11 40 00    	call   *0x4011d0
4097d8:	8b 7d 08             	mov    0x8(%ebp),%edi
4097db:	8b 07                	mov    (%edi),%eax
4097dd:	8d 4d b4             	lea    -0x4c(%ebp),%ecx
4097e0:	51                   	push   %ecx
4097e1:	57                   	push   %edi
4097e2:	ff 90 a8 00 00 00    	call   *0xa8(%eax)
4097e8:	db e2                	fnclex
4097ea:	85 c0                	test   %eax,%eax
4097ec:	7d 0e                	jge    0x4097fc
4097ee:	68 a8 00 00 00       	push   $0xa8
4097f3:	68 ec 5e 40 00       	push   $0x405eec
4097f8:	57                   	push   %edi
4097f9:	50                   	push   %eax
4097fa:	ff d3                	call   *%ebx
4097fc:	8b 55 b4             	mov    -0x4c(%ebp),%edx
4097ff:	52                   	push   %edx
409800:	6a 00                	push   $0x0
409802:	ff 15 d4 10 40 00    	call   *0x4010d4
409808:	8b f0                	mov    %eax,%esi
40980a:	f7 de                	neg    %esi
40980c:	1b f6                	sbb    %esi,%esi
40980e:	46                   	inc    %esi
40980f:	8d 4d b4             	lea    -0x4c(%ebp),%ecx
409812:	f7 de                	neg    %esi
409814:	ff 15 cc 11 40 00    	call   *0x4011cc
40981a:	66 85 f6             	test   %si,%si
40981d:	74 7b                	je     0x40989a
40981f:	8b 07                	mov    (%edi),%eax
409821:	8d 4d b0             	lea    -0x50(%ebp),%ecx
409824:	51                   	push   %ecx
409825:	57                   	push   %edi
409826:	ff 90 60 01 00 00    	call   *0x160(%eax)
40982c:	db e2                	fnclex
40982e:	85 c0                	test   %eax,%eax
409830:	7d 0e                	jge    0x409840
409832:	68 60 01 00 00       	push   $0x160
409837:	68 ec 5e 40 00       	push   $0x405eec
40983c:	57                   	push   %edi
40983d:	50                   	push   %eax
40983e:	ff d3                	call   *%ebx
409840:	a1 38 b3 40 00       	mov    0x40b338,%eax
409845:	85 c0                	test   %eax,%eax
409847:	75 10                	jne    0x409859
409849:	68 38 b3 40 00       	push   $0x40b338
40984e:	68 c4 60 40 00       	push   $0x4060c4
409853:	ff 15 4c 11 40 00    	call   *0x40114c
409859:	8b 45 b0             	mov    -0x50(%ebp),%eax
40985c:	8b 35 38 b3 40 00    	mov    0x40b338,%esi
409862:	68 30 67 40 00       	push   $0x406730
409867:	50                   	push   %eax
409868:	8d 55 ac             	lea    -0x54(%ebp),%edx
40986b:	c7 45 b0 00 00 00 00 	movl   $0x0,-0x50(%ebp)
409872:	8b 3e                	mov    (%esi),%edi
409874:	52                   	push   %edx
409875:	ff 15 84 10 40 00    	call   *0x401084
40987b:	50                   	push   %eax
40987c:	56                   	push   %esi
40987d:	ff 57 40             	call   *0x40(%edi)
409880:	db e2                	fnclex