64939b:	83 c4 08             	add    $0x8,%esp
64939e:	52                   	push   %edx
64939f:	50                   	push   %eax
6493a0:	8b 44 24 3c          	mov    0x3c(%esp),%eax
6493a4:	c1 e8 09             	shr    $0x9,%eax
6493a7:	33 d2                	xor    %edx,%edx
6493a9:	52                   	push   %edx
6493aa:	50                   	push   %eax
6493ab:	8b 44 24 40          	mov    0x40(%esp),%eax
6493af:	8b 54 24 44          	mov    0x44(%esp),%edx
6493b3:	0f a4 c2 17          	shld   $0x17,%eax,%edx
6493b7:	c1 e0 17             	shl    $0x17,%eax
6493ba:	0b 04 24             	or     (%esp),%eax
6493bd:	0b 54 24 04          	or     0x4(%esp),%edx
6493c1:	83 c4 08             	add    $0x8,%esp
6493c4:	33 04 24             	xor    (%esp),%eax
6493c7:	33 54 24 04          	xor    0x4(%esp),%edx
6493cb:	83 c4 08             	add    $0x8,%esp
6493ce:	03 44 24 08          	add    0x8(%esp),%eax
6493d2:	13 54 24 0c          	adc    0xc(%esp),%edx
6493d6:	52                   	push   %edx
6493d7:	50                   	push   %eax
6493d8:	8b 44 24 38          	mov    0x38(%esp),%eax
6493dc:	8b 54 24 3c          	mov    0x3c(%esp),%edx
6493e0:	23 44 24 40          	and    0x40(%esp),%eax
6493e4:	23 54 24 44          	and    0x44(%esp),%edx
6493e8:	52                   	push   %edx
6493e9:	50                   	push   %eax
6493ea:	8b 44 24 40          	mov    0x40(%esp),%eax
6493ee:	8b 54 24 44          	mov    0x44(%esp),%edx
6493f2:	f7 d0                	not    %eax
6493f4:	f7 d2                	not    %edx
6493f6:	23 44 24 10          	and    0x10(%esp),%eax
6493fa:	23 54 24 14          	and    0x14(%esp),%edx
6493fe:	33 04 24             	xor    (%esp),%eax
649401:	33 54 24 04          	xor    0x4(%esp),%edx
649405:	83 c4 08             	add    $0x8,%esp
649408:	03 04 24             	add    (%esp),%eax
64940b:	13 54 24 04          	adc    0x4(%esp),%edx
64940f:	83 c4 08             	add    $0x8,%esp
649412:	05 ec fa d6 3a       	add    $0x3ad6faec,%eax
649417:	81 d2 ab 6f cb 5f    	adc    $0x5fcb6fab,%edx
64941d:	03 84 24 c0 02 00 00 	add    0x2c0(%esp),%eax
649424:	13 94 24 c4 02 00 00 	adc    0x2c4(%esp),%edx
64942b:	89 44 24 40          	mov    %eax,0x40(%esp)
64942f:	89 54 24 44          	mov    %edx,0x44(%esp)
649433:	8b 44 24 10          	mov    0x10(%esp),%eax
649437:	8b 54 24 14          	mov    0x14(%esp),%edx
64943b:	0f ac d0 1c          	shrd   $0x1c,%edx,%eax
64943f:	c1 ea 1c             	shr    $0x1c,%edx
649442:	52                   	push   %edx
649443:	50                   	push   %eax
649444:	8b 54 24 18          	mov    0x18(%esp),%edx
649448:	c1 e2 04             	shl    $0x4,%edx
64944b:	33 c0                	xor    %eax,%eax
64944d:	0b 04 24             	or     (%esp),%eax
649450:	0b 54 24 04          	or     0x4(%esp),%edx
649454:	83 c4 08             	add    $0x8,%esp
649457:	52                   	push   %edx
649458:	50                   	push   %eax
649459:	8b 44 24 1c          	mov    0x1c(%esp),%eax
64945d:	c1 e8 02             	shr    $0x2,%eax
649460:	33 d2                	xor    %edx,%edx
649462:	52                   	push   %edx
649463:	50                   	push   %eax
649464:	8b 44 24 20          	mov    0x20(%esp),%eax
649468:	8b 54 24 24          	mov    0x24(%esp),%edx
64946c:	0f a4 c2 1e          	shld   $0x1e,%eax,%edx
649470:	c1 e0 1e             	shl    $0x1e,%eax
649473:	0b 04 24             	or     (%esp),%eax
649476:	0b 54 24 04          	or     0x4(%esp),%edx
64947a:	83 c4 08             	add    $0x8,%esp
64947d:	33 04 24             	xor    (%esp),%eax
649480:	33 54 24 04          	xor    0x4(%esp),%edx
649484:	83 c4 08             	add    $0x8,%esp
649487:	52                   	push   %edx
649488:	50                   	push   %eax
649489:	8b 44 24 1c          	mov    0x1c(%esp),%eax
64948d:	c1 e8 07             	shr    $0x7,%eax
649490:	33 d2                	xor    %edx,%edx
649492:	52                   	push   %edx
649493:	50                   	push   %eax
649494:	8b 44 24 20          	mov    0x20(%esp),%eax
649498:	8b 54 24 24          	mov    0x24(%esp),%edx
64949c:	0f a4 c2 19          	shld   $0x19,%eax,%edx
6494a0:	c1 e0 19             	shl    $0x19,%eax
6494a3:	0b 04 24             	or     (%esp),%eax
6494a6:	0b 54 24 04          	or     0x4(%esp),%edx
6494aa:	83 c4 08             	add    $0x8,%esp
6494ad:	33 04 24             	xor    (%esp),%eax
6494b0:	33 54 24 04          	xor    0x4(%esp),%edx
6494b4:	83 c4 08             	add    $0x8,%esp
6494b7:	52                   	push   %edx
6494b8:	50                   	push   %eax
6494b9:	8b 44 24 18          	mov    0x18(%esp),%eax
6494bd:	8b 54 24 1c          	mov    0x1c(%esp),%edx
6494c1:	23 44 24 20          	and    0x20(%esp),%eax
6494c5:	23 54 24 24          	and    0x24(%esp),%edx
6494c9:	52                   	push   %edx
6494ca:	50                   	push   %eax
6494cb:	8b 44 24 20          	mov    0x20(%esp),%eax
6494cf:	8b 54 24 24          	mov    0x24(%esp),%edx
6494d3:	23 44 24 30          	and    0x30(%esp),%eax
6494d7:	23 54 24 34          	and    0x34(%esp),%edx
6494db:	33 04 24             	xor    (%esp),%eax
6494de:	33 54 24 04          	xor    0x4(%esp),%edx
6494e2:	83 c4 08             	add    $0x8,%esp
6494e5:	52                   	push   %edx
6494e6:	50                   	push   %eax
6494e7:	8b 44 24 28          	mov    0x28(%esp),%eax
6494eb:	8b 54 24 2c          	mov    0x2c(%esp),%edx
6494ef:	23 44 24 30          	and    0x30(%esp),%eax
6494f3:	23 54 24 34          	and    0x34(%esp),%edx
6494f7:	33 04 24             	xor    (%esp),%eax
6494fa:	33 54 24 04          	xor    0x4(%esp),%edx
6494fe:	83 c4 08             	add    $0x8,%esp
649501:	03 04 24             	add    (%esp),%eax
649504:	13 54 24 04          	adc    0x4(%esp),%edx
649508:	83 c4 08             	add    $0x8,%esp
64950b:	89 44 24 48          	mov    %eax,0x48(%esp)
64950f:	89 54 24 4c          	mov    %edx,0x4c(%esp)
649513:	8b 44 24 28          	mov    0x28(%esp),%eax
649517:	8b 54 24 2c          	mov    0x2c(%esp),%edx
64951b:	03 44 24 40          	add    0x40(%esp),%eax
64951f:	13 54 24 44          	adc    0x44(%esp),%edx
649523:	89 44 24 28          	mov    %eax,0x28(%esp)
649527:	89 54 24 2c          	mov    %edx,0x2c(%esp)
64952b:	8b 44 24 40          	mov    0x40(%esp),%eax
64952f:	8b 54 24 44          	mov    0x44(%esp),%edx
649533:	03 44 24 48          	add    0x48(%esp),%eax
649537:	13 54 24 4c          	adc    0x4c(%esp),%edx
64953b:	89 44 24 08          	mov    %eax,0x8(%esp)
64953f:	89 54 24 0c          	mov    %edx,0xc(%esp)
649543:	8b 44 24 28          	mov    0x28(%esp),%eax
649547:	8b 54 24 2c          	mov    0x2c(%esp),%edx
64954b:	0f ac d0 0e          	shrd   $0xe,%edx,%eax
64954f:	c1 ea 0e             	shr    $0xe,%edx
649552:	52                   	push   %edx
649553:	50                   	push   %eax
649554:	8b 54 24 30          	mov    0x30(%esp),%edx
649558:	c1 e2 12             	shl    $0x12,%edx
64955b:	33 c0                	xor    %eax,%eax
64955d:	0b 04 24             	or     (%esp),%eax
649560:	0b 54 24 04          	or     0x4(%esp),%edx
649564:	83 c4 08             	add    $0x8,%esp
649567:	52                   	push   %edx
649568:	50                   	push   %eax
649569:	8b 44 24 30          	mov    0x30(%esp),%eax
64956d:	8b 54 24 34          	mov    0x34(%esp),%edx
649571:	0f ac d0 12          	shrd   $0x12,%edx,%eax
649575:	c1 ea 12             	shr    $0x12,%edx
649578:	52                   	push   %edx
649579:	50                   	push   %eax
64957a:	8b 54 24 38          	mov    0x38(%esp),%edx
64957e:	c1 e2 0e             	shl    $0xe,%edx
649581:	33 c0                	xor    %eax,%eax
649583:	0b 04 24             	or     (%esp),%eax
649586:	0b 54 24 04          	or     0x4(%esp),%edx
64958a:	83 c4 08             	add    $0x8,%esp
64958d:	33 04 24             	xor    (%esp),%eax
649590:	33 54 24 04          	xor    0x4(%esp),%edx
649594:	83 c4 08             	add    $0x8,%esp
649597:	52                   	push   %edx
649598:	50                   	push   %eax
649599:	8b 44 24 34          	mov    0x34(%esp),%eax
64959d:	c1 e8 09             	shr    $0x9,%eax
6495a0:	33 d2                	xor    %edx,%edx
6495a2:	52                   	push   %edx
6495a3:	50                   	push   %eax
6495a4:	8b 44 24 38          	mov    0x38(%esp),%eax
6495a8:	8b 54 24 3c          	mov    0x3c(%esp),%edx
6495ac:	0f a4 c2 17          	shld   $0x17,%eax,%edx
6495b0:	c1 e0 17             	shl    $0x17,%eax
6495b3:	0b 04 24             	or     (%esp),%eax
6495b6:	0b 54 24 04          	or     0x4(%esp),%edx
6495ba:	83 c4 08             	add    $0x8,%esp
6495bd:	33 04 24             	xor    (%esp),%eax
6495c0:	33 54 24 04          	xor    0x4(%esp),%edx
6495c4:	83 c4 08             	add    $0x8,%esp
6495c7:	03 04 24             	add    (%esp),%eax
6495ca:	13 54 24 04          	adc    0x4(%esp),%edx
6495ce:	52                   	push   %edx
6495cf:	50                   	push   %eax
6495d0:	8b 44 24 30          	mov    0x30(%esp),%eax
6495d4:	8b 54 24 34          	mov    0x34(%esp),%edx
6495d8:	23 44 24 38          	and    0x38(%esp),%eax
6495dc:	23 54 24 3c          	and    0x3c(%esp),%edx
6495e0:	52                   	push   %edx
6495e1:	50                   	push   %eax
6495e2:	8b 44 24 38          	mov    0x38(%esp),%eax
6495e6:	8b 54 24 3c          	mov    0x3c(%esp),%edx
6495ea:	f7 d0                	not    %eax
6495ec:	f7 d2                	not    %edx
6495ee:	23 44 24 48          	and    0x48(%esp),%eax
6495f2:	23 54 24 4c          	and    0x4c(%esp),%edx
6495f6:	33 04 24             	xor    (%esp),%eax
6495f9:	33 54 24 04          	xor    0x4(%esp),%edx
6495fd:	83 c4 08             	add    $0x8,%esp
649600:	03 04 24             	add    (%esp),%eax
649603:	13 54 24 04          	adc    0x4(%esp),%edx
649607:	83 c4 08             	add    $0x8,%esp
64960a:	05 17 58 47 4a       	add    $0x4a475817,%eax
64960f:	81 d2 8c 19 44 6c    	adc    $0x6c44198c,%edx
649615:	03 84 24 c8 02 00 00 	add    0x2c8(%esp),%eax
64961c:	13 94 24 cc 02 00 00 	adc    0x2cc(%esp),%edx
649623:	89 44 24 40          	mov    %eax,0x40(%esp)
649627:	89 54 24 44          	mov    %edx,0x44(%esp)
64962b:	8b 44 24 08          	mov    0x8(%esp),%eax
64962f:	8b 54 24 0c          	mov    0xc(%esp),%edx
649633:	0f ac d0 1c          	shrd   $0x1c,%edx,%eax
649637:	c1 ea 1c             	shr    $0x1c,%edx
64963a:	52                   	push   %edx
64963b:	50                   	push   %eax
64963c:	8b 54 24 10          	mov    0x10(%esp),%edx
649640:	c1 e2 04             	shl    $0x4,%edx
649643:	33 c0                	xor    %eax,%eax
649645:	0b 04 24             	or     (%esp),%eax
649648:	0b 54 24 04          	or     0x4(%esp),%edx
64964c:	83 c4 08             	add    $0x8,%esp
64964f:	52                   	push   %edx
649650:	50                   	push   %eax
649651:	8b 44 24 14          	mov    0x14(%esp),%eax
649655:	c1 e8 02             	shr    $0x2,%eax
649658:	33 d2                	xor    %edx,%edx
64965a:	52                   	push   %edx
64965b:	50                   	push   %eax
64965c:	8b 44 24 18          	mov    0x18(%esp),%eax
649660:	8b 54 24 1c          	mov    0x1c(%esp),%edx
649664:	0f a4 c2 1e          	shld   $0x1e,%eax,%edx
649668:	c1 e0 1e             	shl    $0x1e,%eax
64966b:	0b 04 24             	or     (%esp),%eax
64966e:	0b 54 24 04          	or     0x4(%esp),%edx
649672:	83 c4 08             	add    $0x8,%esp
649675:	33 04 24             	xor    (%esp),%eax
649678:	33 54 24 04          	xor    0x4(%esp),%edx
64967c:	83 c4 08             	add    $0x8,%esp
64967f:	52                   	push   %edx
649680:	50                   	push   %eax
649681:	8b 44 24 14          	mov    0x14(%esp),%eax
649685:	c1 e8 07             	shr    $0x7,%eax
649688:	33 d2                	xor    %edx,%edx
64968a:	52                   	push   %edx
64968b:	50                   	push   %eax
64968c:	8b 44 24 18          	mov    0x18(%esp),%eax
649690:	8b 54 24 1c          	mov    0x1c(%esp),%edx
649694:	0f a4 c2 19          	shld   $0x19,%eax,%edx
649698:	c1 e0 19             	shl    $0x19,%eax
64969b:	0b 04 24             	or     (%esp),%eax
64969e:	0b 54 24 04          	or     0x4(%esp),%edx
6496a2:	83 c4 08             	add    $0x8,%esp
6496a5:	33 04 24             	xor    (%esp),%eax
6496a8:	33 54 24 04          	xor    0x4(%esp),%edx
6496ac:	83 c4 08             	add    $0x8,%esp
6496af:	52                   	push   %edx
6496b0:	50                   	push   %eax
6496b1:	8b 44 24 10          	mov    0x10(%esp),%eax
6496b5:	8b 54 24 14          	mov    0x14(%esp),%edx
6496b9:	23 44 24 18          	and    0x18(%esp),%eax
6496bd:	23 54 24 1c          	and    0x1c(%esp),%edx
6496c1:	52                   	push   %edx
6496c2:	50                   	push   %eax
6496c3:	8b 44 24 18          	mov    0x18(%esp),%eax
6496c7:	8b 54 24 1c          	mov    0x1c(%esp),%edx
6496cb:	23 44 24 28          	and    0x28(%esp),%eax
6496cf:	23 54 24 2c          	and    0x2c(%esp),%edx
6496d3:	33 04 24             	xor    (%esp),%eax
6496d6:	33 54 24 04          	xor    0x4(%esp),%edx
6496da:	83 c4 08             	add    $0x8,%esp
6496dd:	52                   	push   %edx
6496de:	50                   	push   %eax
6496df:	8b 44 24 20          	mov    0x20(%esp),%eax
6496e3:	8b 54 24 24          	mov    0x24(%esp),%edx
6496e7:	23 44 24 28          	and    0x28(%esp),%eax
6496eb:	23 54 24 2c          	and    0x2c(%esp),%edx
6496ef:	33 04 24             	xor    (%esp),%eax
6496f2:	33 54 24 04          	xor    0x4(%esp),%edx
6496f6:	83 c4 08             	add    $0x8,%esp
6496f9:	03 04 24             	add    (%esp),%eax
6496fc:	13 54 24 04          	adc    0x4(%esp),%edx
649700:	83 c4 08             	add    $0x8,%esp
649703:	89 44 24 48          	mov    %eax,0x48(%esp)
649707:	89 54 24 4c          	mov    %edx,0x4c(%esp)
64970b:	8b 44 24 20          	mov    0x20(%esp),%eax
64970f:	8b 54 24 24          	mov    0x24(%esp),%edx
649713:	03 44 24 40          	add    0x40(%esp),%eax
649717:	13 54 24 44          	adc    0x44(%esp),%edx
64971b:	89 44 24 20          	mov    %eax,0x20(%esp)
64971f:	89 54 24 24          	mov    %edx,0x24(%esp)
649723:	8b 44 24 40          	mov    0x40(%esp),%eax
649727:	8b 54 24 44          	mov    0x44(%esp),%edx
64972b:	03 44 24 48          	add    0x48(%esp),%eax
64972f:	13 54 24 4c          	adc    0x4c(%esp),%edx
649733:	89 04 24             	mov    %eax,(%esp)
649736:	89 54 24 04          	mov    %edx,0x4(%esp)
64973a:	8b 46 50             	mov    0x50(%esi),%eax
64973d:	8b 56 54             	mov    0x54(%esi),%edx
649740:	03 04 24             	add    (%esp),%eax
649743:	13 54 24 04          	adc    0x4(%esp),%edx
649747:	89 46 50             	mov    %eax,0x50(%esi)
64974a:	89 56 54             	mov    %edx,0x54(%esi)
64974d:	8b 46 58             	mov    0x58(%esi),%eax
649750:	8b 56 5c             	mov    0x5c(%esi),%edx
649753:	03 44 24 08          	add    0x8(%esp),%eax
649757:	13 54 24 0c          	adc    0xc(%esp),%edx
64975b:	89 46 58             	mov    %eax,0x58(%esi)
64975e:	89 56 5c             	mov    %edx,0x5c(%esi)
649761:	8b 46 60             	mov    0x60(%esi),%eax
649764:	8b 56 64             	mov    0x64(%esi),%edx
649767:	03 44 24 10          	add    0x10(%esp),%eax
64976b:	13 54 24 14          	adc    0x14(%esp),%edx
64976f:	89 46 60             	mov    %eax,0x60(%esi)
649772:	89 56 64             	mov    %edx,0x64(%esi)
649775:	8b 46 68             	mov    0x68(%esi),%eax
649778:	8b 56 6c             	mov    0x6c(%esi),%edx
64977b:	03 44 24 18          	add    0x18(%esp),%eax
64977f:	13 54 24 1c          	adc    0x1c(%esp),%edx
649783:	89 46 68             	mov    %eax,0x68(%esi)
649786:	89 56 6c             	mov    %edx,0x6c(%esi)
649789:	8b 46 70             	mov    0x70(%esi),%eax
64978c:	8b 56 74             	mov    0x74(%esi),%edx
64978f:	03 44 24 20          	add    0x20(%esp),%eax
649793:	13 54 24 24          	adc    0x24(%esp),%edx
649797:	89 46 70             	mov    %eax,0x70(%esi)
64979a:	89 56 74             	mov    %edx,0x74(%esi)
64979d:	8b 46 78             	mov    0x78(%esi),%eax
6497a0:	8b 56 7c             	mov    0x7c(%esi),%edx
6497a3:	03 44 24 28          	add    0x28(%esp),%eax
6497a7:	13 54 24 2c          	adc    0x2c(%esp),%edx
6497ab:	89 46 78             	mov    %eax,0x78(%esi)
6497ae:	89 56 7c             	mov    %edx,0x7c(%esi)
6497b1:	8b 86 80 00 00 00    	mov    0x80(%esi),%eax
6497b7:	8b 96 84 00 00 00    	mov    0x84(%esi),%edx
6497bd:	03 44 24 30          	add    0x30(%esp),%eax
6497c1:	13 54 24 34          	adc    0x34(%esp),%edx
6497c5:	89 86 80 00 00 00    	mov    %eax,0x80(%esi)
6497cb:	89 96 84 00 00 00    	mov    %edx,0x84(%esi)
6497d1:	8b 86 88 00 00 00    	mov    0x88(%esi),%eax
6497d7:	8b 96 8c 00 00 00    	mov    0x8c(%esi),%edx
6497dd:	03 44 24 38          	add    0x38(%esp),%eax
6497e1:	13 54 24 3c          	adc    0x3c(%esp),%edx
6497e5:	89 86 88 00 00 00    	mov    %eax,0x88(%esi)
6497eb:	89 96 8c 00 00 00    	mov    %edx,0x8c(%esi)
6497f1:	8d 44 24 50          	lea    0x50(%esp),%eax
6497f5:	33 c9                	xor    %ecx,%ecx
6497f7:	ba 80 02 00 00       	mov    $0x280,%edx
6497fc:	e8 3f 9a db ff       	call   0x403240
649801:	8d 86 90 00 00 00    	lea    0x90(%esi),%eax
649807:	33 c9                	xor    %ecx,%ecx
649809:	ba 80 00 00 00       	mov    $0x80,%edx
64980e:	e8 2d 9a db ff       	call   0x403240