47d3a1:	ff 15 2c 81 4a 00    	call   *0x4a812c
47d3a7:	8b cf                	mov    %edi,%ecx
47d3a9:	ff d6                	call   *%esi
47d3ab:	6a 64                	push   $0x64
47d3ad:	89 45 ec             	mov    %eax,-0x14(%ebp)
47d3b0:	ff 15 14 74 4a 00    	call   *0x4a7414
47d3b6:	59                   	pop    %ecx
47d3b7:	89 45 e8             	mov    %eax,-0x18(%ebp)
47d3ba:	89 5d fc             	mov    %ebx,-0x4(%ebp)
47d3bd:	85 c0                	test   %eax,%eax
47d3bf:	74 34                	je     0x47d3f5
47d3c1:	8b 7f 14             	mov    0x14(%edi),%edi
47d3c4:	8b 4d f0             	mov    -0x10(%ebp),%ecx
47d3c7:	8b 17                	mov    (%edi),%edx
47d3c9:	ff 71 28             	push   0x28(%ecx)
47d3cc:	8b 72 30             	mov    0x30(%edx),%esi
47d3cf:	8b ce                	mov    %esi,%ecx
47d3d1:	ff 15 2c 81 4a 00    	call   *0x4a812c
47d3d7:	8b cf                	mov    %edi,%ecx
47d3d9:	ff d6                	call   *%esi
47d3db:	8b 75 ec             	mov    -0x14(%ebp),%esi
47d3de:	8b 4d e8             	mov    -0x18(%ebp),%ecx
47d3e1:	50                   	push   %eax
47d3e2:	ff 75 e4             	push   -0x1c(%ebp)
47d3e5:	ff 75 e0             	push   -0x20(%ebp)
47d3e8:	ff 75 0c             	push   0xc(%ebp)
47d3eb:	56                   	push   %esi
47d3ec:	e8 f6 db 00 00       	call   0x48afe7
47d3f1:	8b d8                	mov    %eax,%ebx
47d3f3:	eb 03                	jmp    0x47d3f8
47d3f5:	8b 75 ec             	mov    -0x14(%ebp),%esi
47d3f8:	8b ce                	mov    %esi,%ecx
47d3fa:	e8 76 3c 00 00       	call   0x481075
47d3ff:	8b c3                	mov    %ebx,%eax
47d401:	e8 9b 30 01 00       	call   0x4904a1
47d406:	c2 08 00             	ret    $0x8
47d409:	cc                   	int3
47d40a:	cc                   	int3
47d40b:	cc                   	int3
47d40c:	cc                   	int3
47d40d:	cc                   	int3
47d40e:	cc                   	int3
47d40f:	cc                   	int3
47d410:	8b ff                	mov    %edi,%edi
47d412:	55                   	push   %ebp
47d413:	8b ec                	mov    %esp,%ebp
47d415:	8b 55 0c             	mov    0xc(%ebp),%edx
47d418:	ff 72 04             	push   0x4(%edx)
47d41b:	e8 65 fe ff ff       	call   0x47d285
47d420:	85 c0                	test   %eax,%eax
47d422:	74 1c                	je     0x47d440
47d424:	56                   	push   %esi
47d425:	57                   	push   %edi
47d426:	8b 78 0c             	mov    0xc(%eax),%edi
47d429:	52                   	push   %edx
47d42a:	ff 75 08             	push   0x8(%ebp)
47d42d:	8b 07                	mov    (%edi),%eax
47d42f:	8b 70 3c             	mov    0x3c(%eax),%esi
47d432:	8b ce                	mov    %esi,%ecx
47d434:	ff 15 2c 81 4a 00    	call   *0x4a812c
47d43a:	8b cf                	mov    %edi,%ecx
47d43c:	ff d6                	call   *%esi
47d43e:	5f                   	pop    %edi
47d43f:	5e                   	pop    %esi
47d440:	5d                   	pop    %ebp
47d441:	c2 08 00             	ret    $0x8
47d444:	cc                   	int3
47d445:	cc                   	int3
47d446:	cc                   	int3
47d447:	cc                   	int3
47d448:	cc                   	int3
47d449:	cc                   	int3
47d44a:	cc                   	int3
47d44b:	cc                   	int3
47d44c:	cc                   	int3
47d44d:	cc                   	int3
47d44e:	cc                   	int3
47d44f:	cc                   	int3
47d450:	8b ff                	mov    %edi,%edi
47d452:	55                   	push   %ebp
47d453:	8b ec                	mov    %esp,%ebp
47d455:	8b 55 0c             	mov    0xc(%ebp),%edx
47d458:	53                   	push   %ebx
47d459:	8b d9                	mov    %ecx,%ebx
47d45b:	ff 72 04             	push   0x4(%edx)
47d45e:	e8 22 fe ff ff       	call   0x47d285
47d463:	85 c0                	test   %eax,%eax
47d465:	74 1c                	je     0x47d483
47d467:	56                   	push   %esi
47d468:	57                   	push   %edi
47d469:	8b 78 0c             	mov    0xc(%eax),%edi
47d46c:	52                   	push   %edx
47d46d:	ff 75 08             	push   0x8(%ebp)
47d470:	8b 07                	mov    (%edi),%eax
47d472:	8b 70 40             	mov    0x40(%eax),%esi
47d475:	8b ce                	mov    %esi,%ecx
47d477:	ff 15 2c 81 4a 00    	call   *0x4a812c
47d47d:	8b cf                	mov    %edi,%ecx
47d47f:	ff d6                	call   *%esi
47d481:	5f                   	pop    %edi
47d482:	5e                   	pop    %esi
47d483:	83 7b 44 00          	cmpl   $0x0,0x44(%ebx)
47d487:	75 07                	jne    0x47d490
47d489:	c7 43 20 01 00 00 00 	movl   $0x1,0x20(%ebx)
47d490:	5b                   	pop    %ebx
47d491:	5d                   	pop    %ebp
47d492:	c2 08 00             	ret    $0x8
47d495:	cc                   	int3
47d496:	cc                   	int3
47d497:	cc                   	int3
47d498:	cc                   	int3
47d499:	cc                   	int3
47d49a:	cc                   	int3
47d49b:	cc                   	int3
47d49c:	cc                   	int3
47d49d:	cc                   	int3
47d49e:	cc                   	int3
47d49f:	cc                   	int3
47d4a0:	6a 54                	push   $0x54
47d4a2:	b8 16 65 49 00       	mov    $0x496516,%eax
47d4a7:	e8 5a 30 01 00       	call   0x490506
47d4ac:	8b d9                	mov    %ecx,%ebx
47d4ae:	8b 45 08             	mov    0x8(%ebp),%eax
47d4b1:	8b 75 0c             	mov    0xc(%ebp),%esi
47d4b4:	8b 4b 1c             	mov    0x1c(%ebx),%ecx
47d4b7:	89 45 ac             	mov    %eax,-0x54(%ebp)
47d4ba:	89 75 b0             	mov    %esi,-0x50(%ebp)
47d4bd:	e8 84 9c ff ff       	call   0x477146
47d4c2:	33 d2                	xor    %edx,%edx
47d4c4:	8b cb                	mov    %ebx,%ecx
47d4c6:	89 53 20             	mov    %edx,0x20(%ebx)
47d4c9:	8b 7e 04             	mov    0x4(%esi),%edi
47d4cc:	57                   	push   %edi
47d4cd:	e8 b3 fd ff ff       	call   0x47d285
47d4d2:	85 c0                	test   %eax,%eax
47d4d4:	0f 85 b3 00 00 00    	jne    0x47d58d
47d4da:	83 7b 44 0a          	cmpl   $0xa,0x44(%ebx)
47d4de:	0f 83 c1 00 00 00    	jae    0x47d5a5
47d4e4:	d9 ee                	fldz
47d4e6:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
47d4eb:	89 45 e0             	mov    %eax,-0x20(%ebp)
47d4ee:	8b f7                	mov    %edi,%esi
47d4f0:	89 45 e4             	mov    %eax,-0x1c(%ebp)
47d4f3:	8d 7d b8             	lea    -0x48(%ebp),%edi
47d4f6:	83 c0 02             	add    $0x2,%eax
47d4f9:	89 55 d8             	mov    %edx,-0x28(%ebp)
47d4fc:	89 55 dc             	mov    %edx,-0x24(%ebp)
47d4ff:	8b cb                	mov    %ebx,%ecx
47d501:	89 45 e8             	mov    %eax,-0x18(%ebp)
47d504:	89 45 ec             	mov    %eax,-0x14(%ebp)
47d507:	d9 5d d4             	fstps  -0x2c(%ebp)
47d50a:	a5                   	movsl  %ds:(%esi),%es:(%edi)
47d50b:	a5                   	movsl  %ds:(%esi),%es:(%edi)
47d50c:	a5                   	movsl  %ds:(%esi),%es:(%edi)
47d50d:	8b 75 b0             	mov    -0x50(%ebp),%esi
47d510:	ff 76 0c             	push   0xc(%esi)
47d513:	ff 76 08             	push   0x8(%esi)
47d516:	e8 3e fe ff ff       	call   0x47d359
47d51b:	8b 4b 04             	mov    0x4(%ebx),%ecx
47d51e:	8b f8                	mov    %eax,%edi
47d520:	89 4d c4             	mov    %ecx,-0x3c(%ebp)
47d523:	8b 4b 4c             	mov    0x4c(%ebx),%ecx
47d526:	89 7d c8             	mov    %edi,-0x38(%ebp)
47d529:	85 c9                	test   %ecx,%ecx
47d52b:	74 51                	je     0x47d57e
47d52d:	33 c0                	xor    %eax,%eax
47d52f:	c7 45 a4 02 00 00 00 	movl   $0x2,-0x5c(%ebp)
47d536:	c7 45 a0 58 35 40 00 	movl   $0x403558,-0x60(%ebp)
47d53d:	89 45 a8             	mov    %eax,-0x58(%ebp)
47d540:	89 45 fc             	mov    %eax,-0x4(%ebp)
47d543:	8d 45 a0             	lea    -0x60(%ebp),%eax
47d546:	50                   	push   %eax
47d547:	e8 62 95 ff ff       	call   0x476aae
47d54c:	83 7d a8 00          	cmpl   $0x0,-0x58(%ebp)
47d550:	74 04                	je     0x47d556
47d552:	b0 01                	mov    $0x1,%al
47d554:	eb 02                	jmp    0x47d558
47d556:	33 c0                	xor    %eax,%eax
47d558:	88 45 b7             	mov    %al,-0x49(%ebp)
47d55b:	8d 4d b7             	lea    -0x49(%ebp),%ecx
47d55e:	8b 07                	mov    (%edi),%eax
47d560:	51                   	push   %ecx
47d561:	8b 70 20             	mov    0x20(%eax),%esi
47d564:	8b ce                	mov    %esi,%ecx
47d566:	ff 15 2c 81 4a 00    	call   *0x4a812c
47d56c:	8b cf                	mov    %edi,%ecx
47d56e:	ff d6                	call   *%esi
47d570:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
47d574:	8b 75 b0             	mov    -0x50(%ebp),%esi
47d577:	c7 45 a0 18 15 40 00 	movl   $0x401518,-0x60(%ebp)
47d57e:	8d 45 b8             	lea    -0x48(%ebp),%eax
47d581:	50                   	push   %eax
47d582:	8d 4b 3c             	lea    0x3c(%ebx),%ecx
47d585:	e8 ef 08 00 00       	call   0x47de79
47d58a:	8d 45 b8             	lea    -0x48(%ebp),%eax
47d58d:	8b 78 0c             	mov    0xc(%eax),%edi
47d590:	56                   	push   %esi
47d591:	ff 75 ac             	push   -0x54(%ebp)
47d594:	8b 07                	mov    (%edi),%eax
47d596:	8b 70 44             	mov    0x44(%eax),%esi
47d599:	8b ce                	mov    %esi,%ecx
47d59b:	ff 15 2c 81 4a 00    	call   *0x4a812c
47d5a1:	8b cf                	mov    %edi,%ecx
47d5a3:	ff d6                	call   *%esi
47d5a5:	e8 0b 2f 01 00       	call   0x4904b5
47d5aa:	c2 08 00             	ret    $0x8
47d5ad:	cc                   	int3
47d5ae:	cc                   	int3
47d5af:	cc                   	int3
47d5b0:	8b ff                	mov    %edi,%edi
47d5b2:	55                   	push   %ebp
47d5b3:	8b ec                	mov    %esp,%ebp
47d5b5:	8b 55 08             	mov    0x8(%ebp),%edx
47d5b8:	ff 72 04             	push   0x4(%edx)
47d5bb:	e8 c5 fc ff ff       	call   0x47d285
47d5c0:	85 c0                	test   %eax,%eax
47d5c2:	74 19                	je     0x47d5dd
47d5c4:	56                   	push   %esi
47d5c5:	57                   	push   %edi
47d5c6:	8b 78 0c             	mov    0xc(%eax),%edi
47d5c9:	52                   	push   %edx
47d5ca:	8b 07                	mov    (%edi),%eax
47d5cc:	8b 70 48             	mov    0x48(%eax),%esi
47d5cf:	8b ce                	mov    %esi,%ecx
47d5d1:	ff 15 2c 81 4a 00    	call   *0x4a812c
47d5d7:	8b cf                	mov    %edi,%ecx
47d5d9:	ff d6                	call   *%esi
47d5db:	5f                   	pop    %edi
47d5dc:	5e                   	pop    %esi
47d5dd:	5d                   	pop    %ebp
47d5de:	c2 04 00             	ret    $0x4
47d5e1:	cc                   	int3
47d5e2:	cc                   	int3
47d5e3:	cc                   	int3
47d5e4:	cc                   	int3
47d5e5:	cc                   	int3
47d5e6:	cc                   	int3
47d5e7:	cc                   	int3
47d5e8:	cc                   	int3
47d5e9:	cc                   	int3
47d5ea:	cc                   	int3
47d5eb:	cc                   	int3
47d5ec:	cc                   	int3
47d5ed:	cc                   	int3
47d5ee:	cc                   	int3
47d5ef:	cc                   	int3
47d5f0:	8b ff                	mov    %edi,%edi
47d5f2:	55                   	push   %ebp
47d5f3:	8b ec                	mov    %esp,%ebp
47d5f5:	8b 55 08             	mov    0x8(%ebp),%edx
47d5f8:	ff 72 04             	push   0x4(%edx)
47d5fb:	e8 85 fc ff ff       	call   0x47d285
47d600:	85 c0                	test   %eax,%eax
47d602:	74 19                	je     0x47d61d
47d604:	56                   	push   %esi
47d605:	57                   	push   %edi
47d606:	8b 78 0c             	mov    0xc(%eax),%edi
47d609:	52                   	push   %edx
47d60a:	8b 07                	mov    (%edi),%eax
47d60c:	8b 70 4c             	mov    0x4c(%eax),%esi
47d60f:	8b ce                	mov    %esi,%ecx
47d611:	ff 15 2c 81 4a 00    	call   *0x4a812c
47d617:	8b cf                	mov    %edi,%ecx
47d619:	ff d6                	call   *%esi
47d61b:	5f                   	pop    %edi
47d61c:	5e                   	pop    %esi
47d61d:	5d                   	pop    %ebp
47d61e:	c2 04 00             	ret    $0x4
47d621:	cc                   	int3
47d622:	cc                   	int3
47d623:	cc                   	int3
47d624:	cc                   	int3
47d625:	cc                   	int3
47d626:	cc                   	int3
47d627:	cc                   	int3
47d628:	cc                   	int3
47d629:	cc                   	int3
47d62a:	cc                   	int3
47d62b:	cc                   	int3
47d62c:	cc                   	int3
47d62d:	cc                   	int3
47d62e:	cc                   	int3
47d62f:	cc                   	int3
47d630:	8b ff                	mov    %edi,%edi
47d632:	55                   	push   %ebp
47d633:	8b ec                	mov    %esp,%ebp
47d635:	8b 55 0c             	mov    0xc(%ebp),%edx
47d638:	ff 72 04             	push   0x4(%edx)
47d63b:	e8 45 fc ff ff       	call   0x47d285
47d640:	85 c0                	test   %eax,%eax
47d642:	74 1c                	je     0x47d660
47d644:	56                   	push   %esi
47d645:	57                   	push   %edi
47d646:	8b 78 0c             	mov    0xc(%eax),%edi
47d649:	52                   	push   %edx
47d64a:	ff 75 08             	push   0x8(%ebp)
47d64d:	8b 07                	mov    (%edi),%eax
47d64f:	8b 70 50             	mov    0x50(%eax),%esi
47d652:	8b ce                	mov    %esi,%ecx
47d654:	ff 15 2c 81 4a 00    	call   *0x4a812c
47d65a:	8b cf                	mov    %edi,%ecx
47d65c:	ff d6                	call   *%esi
47d65e:	5f                   	pop    %edi
47d65f:	5e                   	pop    %esi
47d660:	5d                   	pop    %ebp
47d661:	c2 08 00             	ret    $0x8
47d664:	cc                   	int3
47d665:	cc                   	int3
47d666:	cc                   	int3
47d667:	cc                   	int3
47d668:	cc                   	int3
47d669:	cc                   	int3
47d66a:	cc                   	int3
47d66b:	cc                   	int3
47d66c:	cc                   	int3
47d66d:	cc                   	int3
47d66e:	cc                   	int3
47d66f:	cc                   	int3
47d670:	8b ff                	mov    %edi,%edi
47d672:	55                   	push   %ebp
47d673:	8b ec                	mov    %esp,%ebp
47d675:	8b 55 0c             	mov    0xc(%ebp),%edx
47d678:	ff 72 04             	push   0x4(%edx)
47d67b:	e8 05 fc ff ff       	call   0x47d285
47d680:	85 c0                	test   %eax,%eax
47d682:	74 22                	je     0x47d6a6
47d684:	56                   	push   %esi
47d685:	57                   	push   %edi
47d686:	8b 78 0c             	mov    0xc(%eax),%edi
47d689:	ff 75 14             	push   0x14(%ebp)
47d68c:	ff 75 10             	push   0x10(%ebp)
47d68f:	8b 07                	mov    (%edi),%eax
47d691:	52                   	push   %edx
47d692:	ff 75 08             	push   0x8(%ebp)
47d695:	8b 70 54             	mov    0x54(%eax),%esi
47d698:	8b ce                	mov    %esi,%ecx
47d69a:	ff 15 2c 81 4a 00    	call   *0x4a812c
47d6a0:	8b cf                	mov    %edi,%ecx
47d6a2:	ff d6                	call   *%esi
47d6a4:	5f                   	pop    %edi
47d6a5:	5e                   	pop    %esi
47d6a6:	5d                   	pop    %ebp
47d6a7:	c2 10 00             	ret    $0x10
47d6aa:	cc                   	int3
47d6ab:	cc                   	int3
47d6ac:	cc                   	int3
47d6ad:	cc                   	int3
47d6ae:	cc                   	int3
47d6af:	cc                   	int3
47d6b0:	8b ff                	mov    %edi,%edi