ab9456:	8b ff                	mov    %edi,%edi
ab9458:	55                   	push   %ebp
ab9459:	8b ec                	mov    %esp,%ebp
ab945b:	83 ec 14             	sub    $0x14,%esp
ab945e:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
ab9462:	56                   	push   %esi
ab9463:	75 15                	jne    0xab947a
ab9465:	e8 05 54 98 ff       	call   0x43e86f
ab946a:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
ab9470:	e8 83 5e 96 ff       	call   0x41f2f8
ab9475:	33 c0                	xor    %eax,%eax
ab9477:	40                   	inc    %eax
ab9478:	eb 51                	jmp    0xab94cb
ab947a:	ff 75 10             	push   0x10(%ebp)
ab947d:	8d 4d ec             	lea    -0x14(%ebp),%ecx
ab9480:	e8 07 86 94 ff       	call   0x401a8c
ab9485:	ff 75 08             	push   0x8(%ebp)
ab9488:	33 f6                	xor    %esi,%esi
ab948a:	51                   	push   %ecx
ab948b:	51                   	push   %ecx
ab948c:	8b c4                	mov    %esp,%eax
ab948e:	56                   	push   %esi
ab948f:	ff 75 0c             	push   0xc(%ebp)
ab9492:	50                   	push   %eax
ab9493:	e8 c3 33 95 ff       	call   0x40c85b
ab9498:	83 c4 0c             	add    $0xc,%esp
ab949b:	8d 45 f0             	lea    -0x10(%ebp),%eax
ab949e:	50                   	push   %eax
ab949f:	e8 56 52 96 ff       	call   0x41e6fa
ab94a4:	83 c4 10             	add    $0x10,%esp
ab94a7:	48                   	dec    %eax
ab94a8:	83 e8 01             	sub    $0x1,%eax
ab94ab:	74 09                	je     0xab94b6
ab94ad:	83 e8 01             	sub    $0x1,%eax
ab94b0:	75 07                	jne    0xab94b9
ab94b2:	6a 03                	push   $0x3
ab94b4:	eb 02                	jmp    0xab94b8
ab94b6:	6a 04                	push   $0x4
ab94b8:	5e                   	pop    %esi
ab94b9:	80 7d f8 00          	cmpb   $0x0,-0x8(%ebp)
ab94bd:	74 0a                	je     0xab94c9
ab94bf:	8b 4d ec             	mov    -0x14(%ebp),%ecx
ab94c2:	83 a1 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%ecx)
ab94c9:	8b c6                	mov    %esi,%eax
ab94cb:	5e                   	pop    %esi
ab94cc:	8b e5                	mov    %ebp,%esp
ab94ce:	5d                   	pop    %ebp
ab94cf:	c3                   	ret
ab94d0:	cc                   	int3
ab94d1:	cc                   	int3
ab94d2:	cc                   	int3
ab94d3:	cc                   	int3
ab94d4:	cc                   	int3
ab94d5:	cc                   	int3
ab94d6:	cc                   	int3
ab94d7:	cc                   	int3
ab94d8:	cc                   	int3
ab94d9:	cc                   	int3
ab94da:	cc                   	int3
ab94db:	cc                   	int3
ab94dc:	cc                   	int3
ab94dd:	cc                   	int3
ab94de:	cc                   	int3
ab94df:	cc                   	int3
ab94e0:	cc                   	int3
ab94e1:	cc                   	int3
ab94e2:	cc                   	int3
ab94e3:	cc                   	int3
ab94e4:	cc                   	int3
ab94e5:	cc                   	int3
ab94e6:	cc                   	int3
ab94e7:	cc                   	int3
ab94e8:	cc                   	int3
ab94e9:	cc                   	int3
ab94ea:	cc                   	int3
ab94eb:	cc                   	int3
ab94ec:	cc                   	int3
ab94ed:	cc                   	int3
ab94ee:	8b ff                	mov    %edi,%edi
ab94f0:	55                   	push   %ebp
ab94f1:	8b ec                	mov    %esp,%ebp
ab94f3:	83 ec 1c             	sub    $0x1c,%esp
ab94f6:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
ab94fa:	75 14                	jne    0xab9510
ab94fc:	e8 6e 53 98 ff       	call   0x43e86f
ab9501:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
ab9507:	e8 ec 5d 96 ff       	call   0x41f2f8
ab950c:	d9 ee                	fldz
ab950e:	eb 45                	jmp    0xab9555
ab9510:	ff 75 0c             	push   0xc(%ebp)
ab9513:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
ab9516:	e8 71 85 94 ff       	call   0x401a8c
ab951b:	d9 ee                	fldz
ab951d:	8d 45 f4             	lea    -0xc(%ebp),%eax
ab9520:	50                   	push   %eax
ab9521:	51                   	push   %ecx
ab9522:	51                   	push   %ecx
ab9523:	8b c4                	mov    %esp,%eax
ab9525:	6a 00                	push   $0x0
ab9527:	ff 75 08             	push   0x8(%ebp)
ab952a:	dd 5d f4             	fstpl  -0xc(%ebp)
ab952d:	50                   	push   %eax
ab952e:	e8 28 33 95 ff       	call   0x40c85b
ab9533:	83 c4 0c             	add    $0xc,%esp
ab9536:	8d 45 e8             	lea    -0x18(%ebp),%eax
ab9539:	50                   	push   %eax
ab953a:	e8 bb 51 96 ff       	call   0x41e6fa
ab953f:	dd 45 f4             	fldl   -0xc(%ebp)
ab9542:	83 c4 10             	add    $0x10,%esp
ab9545:	80 7d f0 00          	cmpb   $0x0,-0x10(%ebp)
ab9549:	74 0a                	je     0xab9555
ab954b:	8b 45 e4             	mov    -0x1c(%ebp),%eax
ab954e:	83 a0 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%eax)
ab9555:	8b e5                	mov    %ebp,%esp
ab9557:	5d                   	pop    %ebp
ab9558:	c3                   	ret
ab9559:	cc                   	int3
ab955a:	cc                   	int3
ab955b:	cc                   	int3
ab955c:	cc                   	int3
ab955d:	cc                   	int3
ab955e:	cc                   	int3
ab955f:	cc                   	int3
ab9560:	cc                   	int3
ab9561:	cc                   	int3
ab9562:	cc                   	int3
ab9563:	cc                   	int3
ab9564:	cc                   	int3
ab9565:	cc                   	int3
ab9566:	cc                   	int3
ab9567:	cc                   	int3
ab9568:	cc                   	int3
ab9569:	cc                   	int3
ab956a:	cc                   	int3
ab956b:	cc                   	int3
ab956c:	cc                   	int3
ab956d:	cc                   	int3
ab956e:	cc                   	int3
ab956f:	cc                   	int3
ab9570:	cc                   	int3
ab9571:	cc                   	int3
ab9572:	cc                   	int3
ab9573:	8b ff                	mov    %edi,%edi
ab9575:	55                   	push   %ebp
ab9576:	8b ec                	mov    %esp,%ebp
ab9578:	83 ec 1c             	sub    $0x1c,%esp
ab957b:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
ab957f:	75 14                	jne    0xab9595
ab9581:	e8 e9 52 98 ff       	call   0x43e86f
ab9586:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
ab958c:	e8 67 5d 96 ff       	call   0x41f2f8
ab9591:	d9 ee                	fldz
ab9593:	eb 45                	jmp    0xab95da
ab9595:	ff 75 0c             	push   0xc(%ebp)
ab9598:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
ab959b:	e8 ec 84 94 ff       	call   0x401a8c
ab95a0:	d9 ee                	fldz
ab95a2:	8d 45 f4             	lea    -0xc(%ebp),%eax
ab95a5:	50                   	push   %eax
ab95a6:	51                   	push   %ecx
ab95a7:	51                   	push   %ecx
ab95a8:	8b c4                	mov    %esp,%eax
ab95aa:	6a 00                	push   $0x0
ab95ac:	ff 75 08             	push   0x8(%ebp)
ab95af:	dd 5d f4             	fstpl  -0xc(%ebp)
ab95b2:	50                   	push   %eax
ab95b3:	e8 f9 96 94 ff       	call   0x402cb1
ab95b8:	83 c4 0c             	add    $0xc,%esp
ab95bb:	8d 45 e8             	lea    -0x18(%ebp),%eax
ab95be:	50                   	push   %eax
ab95bf:	e8 ff 69 96 ff       	call   0x41ffc3
ab95c4:	dd 45 f4             	fldl   -0xc(%ebp)
ab95c7:	83 c4 10             	add    $0x10,%esp
ab95ca:	80 7d f0 00          	cmpb   $0x0,-0x10(%ebp)
ab95ce:	74 0a                	je     0xab95da
ab95d0:	8b 45 e4             	mov    -0x1c(%ebp),%eax
ab95d3:	83 a0 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%eax)
ab95da:	8b e5                	mov    %ebp,%esp
ab95dc:	5d                   	pop    %ebp
ab95dd:	c3                   	ret
ab95de:	cc                   	int3
ab95df:	cc                   	int3
ab95e0:	cc                   	int3
ab95e1:	cc                   	int3
ab95e2:	cc                   	int3
ab95e3:	cc                   	int3
ab95e4:	cc                   	int3
ab95e5:	cc                   	int3
ab95e6:	cc                   	int3
ab95e7:	cc                   	int3
ab95e8:	cc                   	int3
ab95e9:	cc                   	int3
ab95ea:	cc                   	int3
ab95eb:	cc                   	int3
ab95ec:	cc                   	int3
ab95ed:	cc                   	int3
ab95ee:	cc                   	int3
ab95ef:	cc                   	int3
ab95f0:	cc                   	int3
ab95f1:	cc                   	int3
ab95f2:	cc                   	int3
ab95f3:	cc                   	int3
ab95f4:	cc                   	int3
ab95f5:	cc                   	int3
ab95f6:	cc                   	int3
ab95f7:	cc                   	int3
ab95f8:	8b ff                	mov    %edi,%edi
ab95fa:	55                   	push   %ebp
ab95fb:	8b ec                	mov    %esp,%ebp
ab95fd:	81 ec 10 03 00 00    	sub    $0x310,%esp
ab9603:	a1 24 f6 d5 00       	mov    0xd5f624,%eax
ab9608:	33 c5                	xor    %ebp,%eax
ab960a:	89 45 fc             	mov    %eax,-0x4(%ebp)
ab960d:	8b 45 08             	mov    0x8(%ebp),%eax
ab9610:	56                   	push   %esi
ab9611:	8b 75 14             	mov    0x14(%ebp),%esi
ab9614:	85 f6                	test   %esi,%esi
ab9616:	74 04                	je     0xab961c
ab9618:	85 c0                	test   %eax,%eax
ab961a:	75 15                	jne    0xab9631
ab961c:	e8 4e 52 98 ff       	call   0x43e86f
ab9621:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
ab9627:	e8 cc 5c 96 ff       	call   0x41f2f8
ab962c:	33 c0                	xor    %eax,%eax
ab962e:	40                   	inc    %eax
ab962f:	eb 22                	jmp    0xab9653
ab9631:	8d 8d f0 fc ff ff    	lea    -0x310(%ebp),%ecx
ab9637:	51                   	push   %ecx
ab9638:	8d 4d 0c             	lea    0xc(%ebp),%ecx
ab963b:	51                   	push   %ecx
ab963c:	50                   	push   %eax
ab963d:	e8 b5 82 94 ff       	call   0x4018f7
ab9642:	56                   	push   %esi
ab9643:	8d 8d f0 fc ff ff    	lea    -0x310(%ebp),%ecx
ab9649:	51                   	push   %ecx
ab964a:	50                   	push   %eax
ab964b:	e8 1c fe 94 ff       	call   0x40946c
ab9650:	83 c4 18             	add    $0x18,%esp
ab9653:	8b 55 10             	mov    0x10(%ebp),%edx
ab9656:	5e                   	pop    %esi
ab9657:	85 d2                	test   %edx,%edx
ab9659:	74 05                	je     0xab9660
ab965b:	8b 4d 0c             	mov    0xc(%ebp),%ecx
ab965e:	89 0a                	mov    %ecx,(%edx)
ab9660:	8b 4d fc             	mov    -0x4(%ebp),%ecx
ab9663:	33 cd                	xor    %ebp,%ecx
ab9665:	e8 4c 21 96 ff       	call   0x41b7b6
ab966a:	8b e5                	mov    %ebp,%esp
ab966c:	5d                   	pop    %ebp
ab966d:	c3                   	ret
ab966e:	cc                   	int3
ab966f:	cc                   	int3
ab9670:	cc                   	int3
ab9671:	cc                   	int3
ab9672:	cc                   	int3
ab9673:	cc                   	int3
ab9674:	cc                   	int3
ab9675:	cc                   	int3
ab9676:	cc                   	int3
ab9677:	cc                   	int3
ab9678:	cc                   	int3
ab9679:	cc                   	int3
ab967a:	cc                   	int3
ab967b:	cc                   	int3
ab967c:	cc                   	int3
ab967d:	cc                   	int3
ab967e:	cc                   	int3
ab967f:	cc                   	int3
ab9680:	cc                   	int3
ab9681:	cc                   	int3
ab9682:	cc                   	int3
ab9683:	cc                   	int3
ab9684:	cc                   	int3
ab9685:	cc                   	int3
ab9686:	cc                   	int3
ab9687:	cc                   	int3
ab9688:	cc                   	int3
ab9689:	cc                   	int3
ab968a:	cc                   	int3
ab968b:	8b ff                	mov    %edi,%edi
ab968d:	55                   	push   %ebp
ab968e:	8b ec                	mov    %esp,%ebp
ab9690:	81 ec 10 03 00 00    	sub    $0x310,%esp
ab9696:	a1 24 f6 d5 00       	mov    0xd5f624,%eax
ab969b:	33 c5                	xor    %ebp,%eax
ab969d:	89 45 fc             	mov    %eax,-0x4(%ebp)
ab96a0:	8b 45 08             	mov    0x8(%ebp),%eax
ab96a3:	56                   	push   %esi
ab96a4:	8b 75 14             	mov    0x14(%ebp),%esi
ab96a7:	85 f6                	test   %esi,%esi
ab96a9:	74 04                	je     0xab96af
ab96ab:	85 c0                	test   %eax,%eax
ab96ad:	75 15                	jne    0xab96c4
ab96af:	e8 bb 51 98 ff       	call   0x43e86f
ab96b4:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
ab96ba:	e8 39 5c 96 ff       	call   0x41f2f8
ab96bf:	33 c0                	xor    %eax,%eax
ab96c1:	40                   	inc    %eax
ab96c2:	eb 22                	jmp    0xab96e6
ab96c4:	8d 8d f0 fc ff ff    	lea    -0x310(%ebp),%ecx
ab96ca:	51                   	push   %ecx
ab96cb:	8d 4d 0c             	lea    0xc(%ebp),%ecx
ab96ce:	51                   	push   %ecx
ab96cf:	50                   	push   %eax
ab96d0:	e8 22 82 94 ff       	call   0x4018f7
ab96d5:	56                   	push   %esi
ab96d6:	8d 8d f0 fc ff ff    	lea    -0x310(%ebp),%ecx
ab96dc:	51                   	push   %ecx
ab96dd:	50                   	push   %eax
ab96de:	e8 ea 7e 94 ff       	call   0x4015cd
ab96e3:	83 c4 18             	add    $0x18,%esp
ab96e6:	8b 55 10             	mov    0x10(%ebp),%edx
ab96e9:	5e                   	pop    %esi
ab96ea:	85 d2                	test   %edx,%edx
ab96ec:	74 05                	je     0xab96f3
ab96ee:	8b 4d 0c             	mov    0xc(%ebp),%ecx
ab96f1:	89 0a                	mov    %ecx,(%edx)
ab96f3:	8b 4d fc             	mov    -0x4(%ebp),%ecx
ab96f6:	33 cd                	xor    %ebp,%ecx
ab96f8:	e8 b9 20 96 ff       	call   0x41b7b6
ab96fd:	8b e5                	mov    %ebp,%esp
ab96ff:	5d                   	pop    %ebp
ab9700:	c3                   	ret
ab9701:	cc                   	int3
ab9702:	cc                   	int3
ab9703:	cc                   	int3
ab9704:	cc                   	int3
ab9705:	cc                   	int3
ab9706:	cc                   	int3
ab9707:	cc                   	int3
ab9708:	cc                   	int3
ab9709:	cc                   	int3
ab970a:	cc                   	int3
ab970b:	cc                   	int3
ab970c:	cc                   	int3
ab970d:	cc                   	int3
ab970e:	cc                   	int3
ab970f:	cc                   	int3
ab9710:	cc                   	int3
ab9711:	cc                   	int3
ab9712:	cc                   	int3
ab9713:	cc                   	int3
ab9714:	cc                   	int3
ab9715:	cc                   	int3
ab9716:	cc                   	int3
ab9717:	cc                   	int3
ab9718:	cc                   	int3
ab9719:	cc                   	int3
ab971a:	cc                   	int3
ab971b:	cc                   	int3