49a499:	8b b5 e0 fc ff ff    	mov    -0x320(%ebp),%esi
49a49f:	8d 85 b0 fc ff ff    	lea    -0x350(%ebp),%eax
49a4a5:	50                   	push   %eax
49a4a6:	8d 85 c8 fc ff ff    	lea    -0x338(%ebp),%eax
49a4ac:	50                   	push   %eax
49a4ad:	e8 2e 8d ff ff       	call   0x4931e0
49a4b2:	83 c4 08             	add    $0x8,%esp
49a4b5:	84 c0                	test   %al,%al
49a4b7:	74 03                	je     0x49a4bc
49a4b9:	83 0b 01             	orl    $0x1,(%ebx)
49a4bc:	f2 0f 10 85 d4 fc ff 	movsd  -0x32c(%ebp),%xmm0
49a4c3:	ff
49a4c4:	8b c6                	mov    %esi,%eax
49a4c6:	8b 8d c8 fc ff ff    	mov    -0x338(%ebp),%ecx
49a4cc:	f2 0f 11 07          	movsd  %xmm0,(%edi)
49a4d0:	89 0e                	mov    %ecx,(%esi)
49a4d2:	8b 8d cc fc ff ff    	mov    -0x334(%ebp),%ecx
49a4d8:	89 4e 04             	mov    %ecx,0x4(%esi)
49a4db:	8b 4d fc             	mov    -0x4(%ebp),%ecx
49a4de:	5f                   	pop    %edi
49a4df:	5e                   	pop    %esi
49a4e0:	33 cd                	xor    %ebp,%ecx
49a4e2:	5b                   	pop    %ebx
49a4e3:	e8 f2 6f 14 00       	call   0x5e14da
49a4e8:	8b e5                	mov    %ebp,%esp
49a4ea:	5d                   	pop    %ebp
49a4eb:	c2 20 00             	ret    $0x20
49a4ee:	cc                   	int3
49a4ef:	cc                   	int3
49a4f0:	55                   	push   %ebp
49a4f1:	8b ec                	mov    %esp,%ebp
49a4f3:	6a ff                	push   $0xffffffff
49a4f5:	68 58 80 65 00       	push   $0x658058
49a4fa:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
49a500:	50                   	push   %eax
49a501:	83 ec 34             	sub    $0x34,%esp
49a504:	a1 d4 89 72 00       	mov    0x7289d4,%eax
49a509:	33 c5                	xor    %ebp,%eax
49a50b:	89 45 f0             	mov    %eax,-0x10(%ebp)
49a50e:	53                   	push   %ebx
49a50f:	56                   	push   %esi
49a510:	57                   	push   %edi
49a511:	50                   	push   %eax
49a512:	8d 45 f4             	lea    -0xc(%ebp),%eax
49a515:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
49a51b:	8b f1                	mov    %ecx,%esi
49a51d:	8b 45 24             	mov    0x24(%ebp),%eax
49a520:	8b 5d 08             	mov    0x8(%ebp),%ebx
49a523:	8b 7d 20             	mov    0x20(%ebp),%edi
49a526:	89 45 cc             	mov    %eax,-0x34(%ebp)
49a529:	8b 45 1c             	mov    0x1c(%ebp),%eax
49a52c:	8b 40 30             	mov    0x30(%eax),%eax
49a52f:	8b 48 04             	mov    0x4(%eax),%ecx
49a532:	89 4d c8             	mov    %ecx,-0x38(%ebp)
49a535:	8b 01                	mov    (%ecx),%eax
49a537:	ff 50 04             	call   *0x4(%eax)
49a53a:	8d 45 c4             	lea    -0x3c(%ebp),%eax
49a53d:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
49a544:	50                   	push   %eax
49a545:	68 00 08 00 00       	push   $0x800
49a54a:	8d 45 14             	lea    0x14(%ebp),%eax
49a54d:	50                   	push   %eax
49a54e:	8d 45 0c             	lea    0xc(%ebp),%eax
49a551:	50                   	push   %eax
49a552:	8d 45 d0             	lea    -0x30(%ebp),%eax
49a555:	50                   	push   %eax
49a556:	56                   	push   %esi
49a557:	e8 34 e9 ff ff       	call   0x498e90
49a55c:	8b 4d c8             	mov    -0x38(%ebp),%ecx
49a55f:	83 c4 18             	add    $0x18,%esp
49a562:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
49a569:	8b f0                	mov    %eax,%esi
49a56b:	85 c9                	test   %ecx,%ecx
49a56d:	74 11                	je     0x49a580
49a56f:	8b 01                	mov    (%ecx),%eax
49a571:	ff 50 08             	call   *0x8(%eax)
49a574:	8b c8                	mov    %eax,%ecx
49a576:	85 c9                	test   %ecx,%ecx
49a578:	74 06                	je     0x49a580
49a57a:	8b 01                	mov    (%ecx),%eax
49a57c:	6a 01                	push   $0x1
49a57e:	ff 10                	call   *(%eax)
49a580:	80 7d d0 00          	cmpb   $0x0,-0x30(%ebp)
49a584:	74 2a                	je     0x49a5b0
49a586:	8d 45 c8             	lea    -0x38(%ebp),%eax
49a589:	50                   	push   %eax
49a58a:	56                   	push   %esi
49a58b:	8d 45 c0             	lea    -0x40(%ebp),%eax
49a58e:	50                   	push   %eax
49a58f:	8d 45 d0             	lea    -0x30(%ebp),%eax
49a592:	50                   	push   %eax
49a593:	e8 f1 4b 13 00       	call   0x5cf189
49a598:	8b 4d cc             	mov    -0x34(%ebp),%ecx
49a59b:	83 c4 10             	add    $0x10,%esp
49a59e:	89 01                	mov    %eax,(%ecx)
49a5a0:	8d 45 d0             	lea    -0x30(%ebp),%eax
49a5a3:	39 45 c0             	cmp    %eax,-0x40(%ebp)
49a5a6:	74 0b                	je     0x49a5b3
49a5a8:	83 7d c8 00          	cmpl   $0x0,-0x38(%ebp)
49a5ac:	74 11                	je     0x49a5bf
49a5ae:	eb 03                	jmp    0x49a5b3
49a5b0:	8b 4d cc             	mov    -0x34(%ebp),%ecx
49a5b3:	c7 07 02 00 00 00    	movl   $0x2,(%edi)
49a5b9:	c7 01 00 00 00 00    	movl   $0x0,(%ecx)
49a5bf:	8d 45 14             	lea    0x14(%ebp),%eax
49a5c2:	50                   	push   %eax
49a5c3:	8d 45 0c             	lea    0xc(%ebp),%eax
49a5c6:	50                   	push   %eax
49a5c7:	e8 14 8c ff ff       	call   0x4931e0
49a5cc:	83 c4 08             	add    $0x8,%esp
49a5cf:	84 c0                	test   %al,%al
49a5d1:	74 03                	je     0x49a5d6
49a5d3:	83 0f 01             	orl    $0x1,(%edi)
49a5d6:	8b 4d 0c             	mov    0xc(%ebp),%ecx
49a5d9:	8b c3                	mov    %ebx,%eax
49a5db:	89 0b                	mov    %ecx,(%ebx)
49a5dd:	8b 4d 10             	mov    0x10(%ebp),%ecx
49a5e0:	89 4b 04             	mov    %ecx,0x4(%ebx)
49a5e3:	8b 4d f4             	mov    -0xc(%ebp),%ecx
49a5e6:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
49a5ed:	59                   	pop    %ecx
49a5ee:	5f                   	pop    %edi
49a5ef:	5e                   	pop    %esi
49a5f0:	5b                   	pop    %ebx
49a5f1:	8b 4d f0             	mov    -0x10(%ebp),%ecx
49a5f4:	33 cd                	xor    %ebp,%ecx
49a5f6:	e8 df 6e 14 00       	call   0x5e14da
49a5fb:	8b e5                	mov    %ebp,%esp
49a5fd:	5d                   	pop    %ebp
49a5fe:	c2 20 00             	ret    $0x20
49a601:	cc                   	int3
49a602:	cc                   	int3
49a603:	cc                   	int3
49a604:	cc                   	int3
49a605:	cc                   	int3
49a606:	cc                   	int3
49a607:	cc                   	int3
49a608:	cc                   	int3
49a609:	cc                   	int3
49a60a:	cc                   	int3
49a60b:	cc                   	int3
49a60c:	cc                   	int3
49a60d:	cc                   	int3
49a60e:	cc                   	int3
49a60f:	cc                   	int3
49a610:	55                   	push   %ebp
49a611:	8b ec                	mov    %esp,%ebp
49a613:	6a ff                	push   $0xffffffff
49a615:	68 28 80 65 00       	push   $0x658028
49a61a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
49a620:	50                   	push   %eax
49a621:	83 ec 38             	sub    $0x38,%esp
49a624:	a1 d4 89 72 00       	mov    0x7289d4,%eax
49a629:	33 c5                	xor    %ebp,%eax
49a62b:	89 45 f0             	mov    %eax,-0x10(%ebp)
49a62e:	53                   	push   %ebx
49a62f:	56                   	push   %esi
49a630:	57                   	push   %edi
49a631:	50                   	push   %eax
49a632:	8d 45 f4             	lea    -0xc(%ebp),%eax
49a635:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
49a63b:	8b f9                	mov    %ecx,%edi
49a63d:	8b 45 08             	mov    0x8(%ebp),%eax
49a640:	8b 75 1c             	mov    0x1c(%ebp),%esi
49a643:	8b 5d 20             	mov    0x20(%ebp),%ebx
49a646:	89 45 bc             	mov    %eax,-0x44(%ebp)
49a649:	8b 45 24             	mov    0x24(%ebp),%eax
49a64c:	89 45 cc             	mov    %eax,-0x34(%ebp)
49a64f:	8b 46 30             	mov    0x30(%esi),%eax
49a652:	8b 48 04             	mov    0x4(%eax),%ecx
49a655:	89 4d c8             	mov    %ecx,-0x38(%ebp)
49a658:	8b 01                	mov    (%ecx),%eax
49a65a:	ff 50 04             	call   *0x4(%eax)
49a65d:	8d 45 c4             	lea    -0x3c(%ebp),%eax
49a660:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
49a667:	50                   	push   %eax
49a668:	ff 76 14             	push   0x14(%esi)
49a66b:	8d 45 14             	lea    0x14(%ebp),%eax
49a66e:	50                   	push   %eax
49a66f:	8d 45 0c             	lea    0xc(%ebp),%eax
49a672:	50                   	push   %eax
49a673:	8d 45 d0             	lea    -0x30(%ebp),%eax
49a676:	50                   	push   %eax
49a677:	57                   	push   %edi
49a678:	e8 13 e8 ff ff       	call   0x498e90
49a67d:	8b 4d c8             	mov    -0x38(%ebp),%ecx
49a680:	83 c4 18             	add    $0x18,%esp
49a683:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
49a68a:	8b f0                	mov    %eax,%esi
49a68c:	85 c9                	test   %ecx,%ecx
49a68e:	74 11                	je     0x49a6a1
49a690:	8b 01                	mov    (%ecx),%eax
49a692:	ff 50 08             	call   *0x8(%eax)
49a695:	8b c8                	mov    %eax,%ecx
49a697:	85 c9                	test   %ecx,%ecx
49a699:	74 06                	je     0x49a6a1
49a69b:	8b 01                	mov    (%ecx),%eax
49a69d:	6a 01                	push   $0x1
49a69f:	ff 10                	call   *(%eax)
49a6a1:	80 7d d0 00          	cmpb   $0x0,-0x30(%ebp)
49a6a5:	75 18                	jne    0x49a6bf
49a6a7:	8b 45 cc             	mov    -0x34(%ebp),%eax
49a6aa:	c7 03 02 00 00 00    	movl   $0x2,(%ebx)
49a6b0:	c7 00 00 00 00 00    	movl   $0x0,(%eax)
49a6b6:	c7 40 04 00 00 00 00 	movl   $0x0,0x4(%eax)
49a6bd:	eb 31                	jmp    0x49a6f0
49a6bf:	8d 45 c8             	lea    -0x38(%ebp),%eax
49a6c2:	50                   	push   %eax
49a6c3:	56                   	push   %esi
49a6c4:	8d 45 c0             	lea    -0x40(%ebp),%eax
49a6c7:	50                   	push   %eax
49a6c8:	8d 45 d0             	lea    -0x30(%ebp),%eax
49a6cb:	50                   	push   %eax
49a6cc:	e8 2c 4c 13 00       	call   0x5cf2fd
49a6d1:	8b 4d cc             	mov    -0x34(%ebp),%ecx
49a6d4:	83 c4 10             	add    $0x10,%esp
49a6d7:	89 01                	mov    %eax,(%ecx)
49a6d9:	8d 45 d0             	lea    -0x30(%ebp),%eax
49a6dc:	89 51 04             	mov    %edx,0x4(%ecx)
49a6df:	39 45 c0             	cmp    %eax,-0x40(%ebp)
49a6e2:	74 06                	je     0x49a6ea
49a6e4:	83 7d c8 00          	cmpl   $0x0,-0x38(%ebp)
49a6e8:	74 06                	je     0x49a6f0
49a6ea:	c7 03 02 00 00 00    	movl   $0x2,(%ebx)
49a6f0:	8d 45 14             	lea    0x14(%ebp),%eax
49a6f3:	50                   	push   %eax
49a6f4:	8d 45 0c             	lea    0xc(%ebp),%eax
49a6f7:	50                   	push   %eax
49a6f8:	e8 e3 8a ff ff       	call   0x4931e0
49a6fd:	83 c4 08             	add    $0x8,%esp
49a700:	84 c0                	test   %al,%al
49a702:	74 03                	je     0x49a707
49a704:	83 0b 01             	orl    $0x1,(%ebx)
49a707:	8b 45 bc             	mov    -0x44(%ebp),%eax
49a70a:	8b 4d 0c             	mov    0xc(%ebp),%ecx
49a70d:	89 08                	mov    %ecx,(%eax)
49a70f:	8b 4d 10             	mov    0x10(%ebp),%ecx
49a712:	89 48 04             	mov    %ecx,0x4(%eax)
49a715:	8b 4d f4             	mov    -0xc(%ebp),%ecx
49a718:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
49a71f:	59                   	pop    %ecx
49a720:	5f                   	pop    %edi
49a721:	5e                   	pop    %esi
49a722:	5b                   	pop    %ebx
49a723:	8b 4d f0             	mov    -0x10(%ebp),%ecx
49a726:	33 cd                	xor    %ebp,%ecx
49a728:	e8 ad 6d 14 00       	call   0x5e14da
49a72d:	8b e5                	mov    %ebp,%esp
49a72f:	5d                   	pop    %ebp
49a730:	c2 20 00             	ret    $0x20
49a733:	cc                   	int3
49a734:	cc                   	int3
49a735:	cc                   	int3
49a736:	cc                   	int3
49a737:	cc                   	int3
49a738:	cc                   	int3
49a739:	cc                   	int3
49a73a:	cc                   	int3
49a73b:	cc                   	int3
49a73c:	cc                   	int3
49a73d:	cc                   	int3
49a73e:	cc                   	int3
49a73f:	cc                   	int3
49a740:	55                   	push   %ebp
49a741:	8b ec                	mov    %esp,%ebp
49a743:	6a ff                	push   $0xffffffff
49a745:	68 28 80 65 00       	push   $0x658028
49a74a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
49a750:	50                   	push   %eax
49a751:	83 ec 38             	sub    $0x38,%esp
49a754:	a1 d4 89 72 00       	mov    0x7289d4,%eax
49a759:	33 c5                	xor    %ebp,%eax
49a75b:	89 45 f0             	mov    %eax,-0x10(%ebp)
49a75e:	53                   	push   %ebx
49a75f:	56                   	push   %esi
49a760:	57                   	push   %edi
49a761:	50                   	push   %eax
49a762:	8d 45 f4             	lea    -0xc(%ebp),%eax
49a765:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
49a76b:	8b f9                	mov    %ecx,%edi
49a76d:	8b 45 08             	mov    0x8(%ebp),%eax
49a770:	8b 75 1c             	mov    0x1c(%ebp),%esi
49a773:	8b 5d 20             	mov    0x20(%ebp),%ebx
49a776:	89 45 bc             	mov    %eax,-0x44(%ebp)
49a779:	8b 45 24             	mov    0x24(%ebp),%eax
49a77c:	89 45 cc             	mov    %eax,-0x34(%ebp)
49a77f:	8b 46 30             	mov    0x30(%esi),%eax
49a782:	8b 48 04             	mov    0x4(%eax),%ecx
49a785:	89 4d c8             	mov    %ecx,-0x38(%ebp)
49a788:	8b 01                	mov    (%ecx),%eax
49a78a:	ff 50 04             	call   *0x4(%eax)
49a78d:	8d 45 c4             	lea    -0x3c(%ebp),%eax
49a790:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
49a797:	50                   	push   %eax
49a798:	ff 76 14             	push   0x14(%esi)
49a79b:	8d 45 14             	lea    0x14(%ebp),%eax
49a79e:	50                   	push   %eax
49a79f:	8d 45 0c             	lea    0xc(%ebp),%eax
49a7a2:	50                   	push   %eax
49a7a3:	8d 45 d0             	lea    -0x30(%ebp),%eax
49a7a6:	50                   	push   %eax
49a7a7:	57                   	push   %edi
49a7a8:	e8 e3 e6 ff ff       	call   0x498e90
49a7ad:	8b 4d c8             	mov    -0x38(%ebp),%ecx
49a7b0:	83 c4 18             	add    $0x18,%esp
49a7b3:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
49a7ba:	8b f0                	mov    %eax,%esi
49a7bc:	85 c9                	test   %ecx,%ecx
49a7be:	74 11                	je     0x49a7d1
49a7c0:	8b 01                	mov    (%ecx),%eax
49a7c2:	ff 50 08             	call   *0x8(%eax)
49a7c5:	8b c8                	mov    %eax,%ecx
49a7c7:	85 c9                	test   %ecx,%ecx
49a7c9:	74 06                	je     0x49a7d1
49a7cb:	8b 01                	mov    (%ecx),%eax
49a7cd:	6a 01                	push   $0x1
49a7cf:	ff 10                	call   *(%eax)
49a7d1:	80 7d d0 00          	cmpb   $0x0,-0x30(%ebp)
49a7d5:	75 18                	jne    0x49a7ef
49a7d7:	8b 45 cc             	mov    -0x34(%ebp),%eax
49a7da:	c7 03 02 00 00 00    	movl   $0x2,(%ebx)
49a7e0:	c7 00 00 00 00 00    	movl   $0x0,(%eax)
49a7e6:	c7 40 04 00 00 00 00 	movl   $0x0,0x4(%eax)
49a7ed:	eb 31                	jmp    0x49a820
49a7ef:	8d 45 c8             	lea    -0x38(%ebp),%eax
49a7f2:	50                   	push   %eax
49a7f3:	56                   	push   %esi
49a7f4:	8d 45 c0             	lea    -0x40(%ebp),%eax
49a7f7:	50                   	push   %eax
49a7f8:	8d 45 d0             	lea    -0x30(%ebp),%eax
49a7fb:	50                   	push   %eax
49a7fc:	e8 ca 4b 13 00       	call   0x5cf3cb
49a801:	8b 4d cc             	mov    -0x34(%ebp),%ecx
49a804:	83 c4 10             	add    $0x10,%esp
49a807:	89 01                	mov    %eax,(%ecx)
49a809:	8d 45 d0             	lea    -0x30(%ebp),%eax
49a80c:	89 51 04             	mov    %edx,0x4(%ecx)
49a80f:	39 45 c0             	cmp    %eax,-0x40(%ebp)
49a812:	74 06                	je     0x49a81a
49a814:	83 7d c8 00          	cmpl   $0x0,-0x38(%ebp)
49a818:	74 06                	je     0x49a820
49a81a:	c7 03 02 00 00 00    	movl   $0x2,(%ebx)
49a820:	8d 45 14             	lea    0x14(%ebp),%eax
49a823:	50                   	push   %eax
49a824:	8d 45 0c             	lea    0xc(%ebp),%eax
49a827:	50                   	push   %eax
49a828:	e8 b3 89 ff ff       	call   0x4931e0
49a82d:	83 c4 08             	add    $0x8,%esp
49a830:	84 c0                	test   %al,%al
49a832:	74 03                	je     0x49a837