5065c1:	5d                   	pop    %ebp
5065c2:	c3                   	ret
5065c3:	8b 55 08             	mov    0x8(%ebp),%edx
5065c6:	8b c3                	mov    %ebx,%eax
5065c8:	8b ca                	mov    %edx,%ecx
5065ca:	0f a4 c1 02          	shld   $0x2,%eax,%ecx
5065ce:	c1 e0 02             	shl    $0x2,%eax
5065d1:	03 d8                	add    %eax,%ebx
5065d3:	13 d1                	adc    %ecx,%edx
5065d5:	0f a4 da 02          	shld   $0x2,%ebx,%edx
5065d9:	52                   	push   %edx
5065da:	c1 e3 02             	shl    $0x2,%ebx
5065dd:	53                   	push   %ebx
5065de:	ff 77 68             	push   0x68(%edi)
5065e1:	56                   	push   %esi
5065e2:	e8 79 af 01 00       	call   0x521560
5065e7:	8b f0                	mov    %eax,%esi
5065e9:	83 c4 10             	add    $0x10,%esp
5065ec:	85 f6                	test   %esi,%esi
5065ee:	74 50                	je     0x506640
5065f0:	8b 5d fc             	mov    -0x4(%ebp),%ebx
5065f3:	8b 03                	mov    (%ebx),%eax
5065f5:	85 c0                	test   %eax,%eax
5065f7:	74 28                	je     0x506621
5065f9:	3b b0 4c 01 00 00    	cmp    0x14c(%eax),%esi
5065ff:	73 20                	jae    0x506621
506601:	3b b0 44 01 00 00    	cmp    0x144(%eax),%esi
506607:	72 07                	jb     0x506610
506609:	b9 80 00 00 00       	mov    $0x80,%ecx
50660e:	eb 1d                	jmp    0x50662d
506610:	3b b0 48 01 00 00    	cmp    0x148(%eax),%esi
506616:	72 09                	jb     0x506621
506618:	0f b7 88 1e 01 00 00 	movzwl 0x11e(%eax),%ecx
50661f:	eb 0c                	jmp    0x50662d
506621:	56                   	push   %esi
506622:	ff 15 3c 18 72 00    	call   *0x72183c
506628:	83 c4 04             	add    $0x4,%esp
50662b:	8b c8                	mov    %eax,%ecx
50662d:	b8 cd cc cc cc       	mov    $0xcccccccd,%eax
506632:	89 4b 30             	mov    %ecx,0x30(%ebx)
506635:	f7 e1                	mul    %ecx
506637:	89 77 68             	mov    %esi,0x68(%edi)
50663a:	c1 ea 04             	shr    $0x4,%edx
50663d:	89 57 70             	mov    %edx,0x70(%edi)
506640:	33 c9                	xor    %ecx,%ecx
506642:	b8 07 00 00 00       	mov    $0x7,%eax
506647:	5f                   	pop    %edi
506648:	85 f6                	test   %esi,%esi
50664a:	5e                   	pop    %esi
50664b:	0f 45 c1             	cmovne %ecx,%eax
50664e:	5b                   	pop    %ebx
50664f:	8b e5                	mov    %ebp,%esp
506651:	5d                   	pop    %ebp
506652:	c3                   	ret
506653:	cc                   	int3
506654:	cc                   	int3
506655:	cc                   	int3
506656:	cc                   	int3
506657:	cc                   	int3
506658:	cc                   	int3
506659:	cc                   	int3
50665a:	cc                   	int3
50665b:	cc                   	int3
50665c:	cc                   	int3
50665d:	cc                   	int3
50665e:	cc                   	int3
50665f:	cc                   	int3
506660:	55                   	push   %ebp
506661:	8b ec                	mov    %esp,%ebp
506663:	53                   	push   %ebx
506664:	57                   	push   %edi
506665:	8b 7d 08             	mov    0x8(%ebp),%edi
506668:	bb 05 00 00 00       	mov    $0x5,%ebx
50666d:	8b 8f 64 01 00 00    	mov    0x164(%edi),%ecx
506673:	8b c1                	mov    %ecx,%eax
506675:	99                   	cltd
506676:	f7 fb                	idiv   %ebx
506678:	85 d2                	test   %edx,%edx
50667a:	75 53                	jne    0x5066cf
50667c:	8b c1                	mov    %ecx,%eax
50667e:	bb 04 00 00 00       	mov    $0x4,%ebx
506683:	f7 eb                	imul   %ebx
506685:	56                   	push   %esi
506686:	8b f0                	mov    %eax,%esi
506688:	8b ca                	mov    %edx,%ecx
50668a:	b8 05 00 00 00       	mov    $0x5,%eax
50668f:	f7 eb                	imul   %ebx
506691:	03 f0                	add    %eax,%esi
506693:	13 ca                	adc    %edx,%ecx
506695:	51                   	push   %ecx
506696:	56                   	push   %esi
506697:	ff b7 7c 01 00 00    	push   0x17c(%edi)
50669d:	57                   	push   %edi
50669e:	e8 bd ae 01 00       	call   0x521560
5066a3:	83 c4 10             	add    $0x10,%esp
5066a6:	8b c8                	mov    %eax,%ecx
5066a8:	5e                   	pop    %esi
5066a9:	85 c9                	test   %ecx,%ecx
5066ab:	75 07                	jne    0x5066b4
5066ad:	5f                   	pop    %edi
5066ae:	8d 43 03             	lea    0x3(%ebx),%eax
5066b1:	5b                   	pop    %ebx
5066b2:	5d                   	pop    %ebp
5066b3:	c3                   	ret
5066b4:	8b 87 64 01 00 00    	mov    0x164(%edi),%eax
5066ba:	0f 57 c0             	xorps  %xmm0,%xmm0
5066bd:	0f 11 04 81          	movups %xmm0,(%ecx,%eax,4)
5066c1:	c7 44 81 10 00 00 00 	movl   $0x0,0x10(%ecx,%eax,4)
5066c8:	00
5066c9:	89 8f 7c 01 00 00    	mov    %ecx,0x17c(%edi)
5066cf:	5f                   	pop    %edi
5066d0:	33 c0                	xor    %eax,%eax
5066d2:	5b                   	pop    %ebx
5066d3:	5d                   	pop    %ebp
5066d4:	c3                   	ret
5066d5:	cc                   	int3
5066d6:	cc                   	int3
5066d7:	cc                   	int3
5066d8:	cc                   	int3
5066d9:	cc                   	int3
5066da:	cc                   	int3
5066db:	cc                   	int3
5066dc:	cc                   	int3
5066dd:	cc                   	int3
5066de:	cc                   	int3
5066df:	cc                   	int3
5066e0:	55                   	push   %ebp
5066e1:	8b ec                	mov    %esp,%ebp
5066e3:	56                   	push   %esi
5066e4:	8b 75 08             	mov    0x8(%ebp),%esi
5066e7:	57                   	push   %edi
5066e8:	8b 7e 28             	mov    0x28(%esi),%edi
5066eb:	80 3f 03             	cmpb   $0x3,(%edi)
5066ee:	72 14                	jb     0x506704
5066f0:	57                   	push   %edi
5066f1:	e8 0a 13 ff ff       	call   0x4f7a00
5066f6:	83 c4 04             	add    $0x4,%esp
5066f9:	85 c0                	test   %eax,%eax
5066fb:	74 07                	je     0x506704
5066fd:	b9 01 00 00 00       	mov    $0x1,%ecx
506702:	eb 09                	jmp    0x50670d
506704:	33 c0                	xor    %eax,%eax
506706:	33 c9                	xor    %ecx,%ecx
506708:	38 07                	cmp    %al,(%edi)
50670a:	0f 95 c1             	setne  %cl
50670d:	c7 46 1c 00 00 00 00 	movl   $0x0,0x1c(%esi)
506714:	85 c9                	test   %ecx,%ecx
506716:	74 04                	je     0x50671c
506718:	c6 46 02 01          	movb   $0x1,0x2(%esi)
50671c:	5f                   	pop    %edi
50671d:	5e                   	pop    %esi
50671e:	5d                   	pop    %ebp
50671f:	c3                   	ret
506720:	55                   	push   %ebp
506721:	8b ec                	mov    %esp,%ebp
506723:	83 ec 1c             	sub    $0x1c,%esp
506726:	a1 d4 89 72 00       	mov    0x7289d4,%eax
50672b:	33 c5                	xor    %ebp,%eax
50672d:	89 45 fc             	mov    %eax,-0x4(%ebp)
506730:	8b 4d 0c             	mov    0xc(%ebp),%ecx
506733:	53                   	push   %ebx
506734:	56                   	push   %esi
506735:	8b 75 08             	mov    0x8(%ebp),%esi
506738:	c7 45 f0 01 00 00 00 	movl   $0x1,-0x10(%ebp)
50673f:	57                   	push   %edi
506740:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
506743:	8b 46 40             	mov    0x40(%esi),%eax
506746:	8b 1e                	mov    (%esi),%ebx
506748:	8b 00                	mov    (%eax),%eax
50674a:	89 45 e8             	mov    %eax,-0x18(%ebp)
50674d:	c7 01 00 00 00 00    	movl   $0x0,(%ecx)
506753:	85 c0                	test   %eax,%eax
506755:	75 28                	jne    0x50677f
506757:	8d 45 f0             	lea    -0x10(%ebp),%eax
50675a:	50                   	push   %eax
50675b:	8b 43 20             	mov    0x20(%ebx),%eax
50675e:	6a 00                	push   $0x0
506760:	ff b6 ac 00 00 00    	push   0xac(%esi)
506766:	53                   	push   %ebx
506767:	ff d0                	call   *%eax
506769:	8b f8                	mov    %eax,%edi
50676b:	83 c4 10             	add    $0x10,%esp
50676e:	85 ff                	test   %edi,%edi
506770:	0f 85 4e 01 00 00    	jne    0x5068c4
506776:	39 45 f0             	cmp    %eax,-0x10(%ebp)
506779:	0f 84 45 01 00 00    	je     0x5068c4
50677f:	8b 46 3c             	mov    0x3c(%esi),%eax
506782:	8d 55 ec             	lea    -0x14(%ebp),%edx
506785:	c7 45 ec 00 00 00 00 	movl   $0x0,-0x14(%ebp)
50678c:	52                   	push   %edx
50678d:	50                   	push   %eax
50678e:	8b 08                	mov    (%eax),%ecx
506790:	8b 41 24             	mov    0x24(%ecx),%eax
506793:	ff d0                	call   *%eax
506795:	8b f8                	mov    %eax,%edi
506797:	83 c4 08             	add    $0x8,%esp
50679a:	85 ff                	test   %edi,%edi
50679c:	0f 85 22 01 00 00    	jne    0x5068c4
5067a2:	39 45 ec             	cmp    %eax,-0x14(%ebp)
5067a5:	0f 85 19 01 00 00    	jne    0x5068c4
5067ab:	8d 45 f4             	lea    -0xc(%ebp),%eax
5067ae:	50                   	push   %eax
5067af:	56                   	push   %esi
5067b0:	e8 db 66 00 00       	call   0x50ce90
5067b5:	8b f8                	mov    %eax,%edi
5067b7:	83 c4 08             	add    $0x8,%esp
5067ba:	85 ff                	test   %edi,%edi
5067bc:	0f 85 02 01 00 00    	jne    0x5068c4
5067c2:	8b 45 e8             	mov    -0x18(%ebp),%eax
5067c5:	39 7d f4             	cmp    %edi,-0xc(%ebp)
5067c8:	75 65                	jne    0x50682f
5067ca:	85 c0                	test   %eax,%eax
5067cc:	0f 85 ac 00 00 00    	jne    0x50687e
5067d2:	a1 70 00 73 00       	mov    0x730070,%eax
5067d7:	85 c0                	test   %eax,%eax
5067d9:	74 02                	je     0x5067dd
5067db:	ff d0                	call   *%eax
5067dd:	6a 02                	push   $0x2
5067df:	56                   	push   %esi
5067e0:	e8 5b 64 00 00       	call   0x50cc40
5067e5:	83 c4 08             	add    $0x8,%esp
5067e8:	85 c0                	test   %eax,%eax
5067ea:	75 21                	jne    0x50680d
5067ec:	50                   	push   %eax
5067ed:	ff b6 ac 00 00 00    	push   0xac(%esi)
5067f3:	8b 43 1c             	mov    0x1c(%ebx),%eax
5067f6:	53                   	push   %ebx
5067f7:	ff d0                	call   *%eax
5067f9:	83 c4 0c             	add    $0xc,%esp
5067fc:	80 7e 04 00          	cmpb   $0x0,0x4(%esi)
506800:	75 0b                	jne    0x50680d
506802:	6a 01                	push   $0x1
506804:	56                   	push   %esi
506805:	e8 46 6c 00 00       	call   0x50d450
50680a:	83 c4 08             	add    $0x8,%esp
50680d:	a1 74 00 73 00       	mov    0x730074,%eax
506812:	85 c0                	test   %eax,%eax
506814:	0f 84 aa 00 00 00    	je     0x5068c4
50681a:	ff d0                	call   *%eax
50681c:	8b c7                	mov    %edi,%eax
50681e:	5f                   	pop    %edi
50681f:	5e                   	pop    %esi
506820:	5b                   	pop    %ebx
506821:	8b 4d fc             	mov    -0x4(%ebp),%ecx
506824:	33 cd                	xor    %ebp,%ecx
506826:	e8 af ac 0d 00       	call   0x5e14da
50682b:	8b e5                	mov    %ebp,%esp
50682d:	5d                   	pop    %ebp
50682e:	c3                   	ret
50682f:	85 c0                	test   %eax,%eax
506831:	75 4b                	jne    0x50687e
506833:	8d 45 f4             	lea    -0xc(%ebp),%eax
506836:	c7 45 f4 01 08 00 00 	movl   $0x801,-0xc(%ebp)
50683d:	50                   	push   %eax
50683e:	8b 43 18             	mov    0x18(%ebx),%eax
506841:	68 01 08 00 00       	push   $0x801
506846:	ff 76 40             	push   0x40(%esi)
506849:	ff b6 ac 00 00 00    	push   0xac(%esi)
50684f:	53                   	push   %ebx
506850:	ff d0                	call   *%eax
506852:	8b f8                	mov    %eax,%edi
506854:	83 c4 14             	add    $0x14,%esp
506857:	85 ff                	test   %edi,%edi
506859:	74 23                	je     0x50687e
50685b:	83 ff 0e             	cmp    $0xe,%edi
50685e:	75 64                	jne    0x5068c4
506860:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
506863:	33 ff                	xor    %edi,%edi
506865:	8b c7                	mov    %edi,%eax
506867:	5f                   	pop    %edi
506868:	5e                   	pop    %esi
506869:	c7 01 01 00 00 00    	movl   $0x1,(%ecx)
50686f:	5b                   	pop    %ebx
506870:	8b 4d fc             	mov    -0x4(%ebp),%ecx
506873:	33 cd                	xor    %ebp,%ecx
506875:	e8 60 ac 0d 00       	call   0x5e14da
50687a:	8b e5                	mov    %ebp,%esp
50687c:	5d                   	pop    %ebp
50687d:	c3                   	ret
50687e:	8b 46 40             	mov    0x40(%esi),%eax
506881:	8d 55 fb             	lea    -0x5(%ebp),%edx
506884:	6a 00                	push   $0x0
506886:	6a 00                	push   $0x0
506888:	c6 45 fb 00          	movb   $0x0,-0x5(%ebp)
50688c:	8b 08                	mov    (%eax),%ecx
50688e:	6a 01                	push   $0x1
506890:	52                   	push   %edx
506891:	50                   	push   %eax
506892:	8b 41 08             	mov    0x8(%ecx),%eax
506895:	ff d0                	call   *%eax
506897:	8b f8                	mov    %eax,%edi
506899:	83 c4 14             	add    $0x14,%esp
50689c:	33 c0                	xor    %eax,%eax
50689e:	81 ff 0a 02 00 00    	cmp    $0x20a,%edi
5068a4:	0f 44 f8             	cmove  %eax,%edi
5068a7:	39 45 e8             	cmp    %eax,-0x18(%ebp)
5068aa:	75 0b                	jne    0x5068b7
5068ac:	ff 76 40             	push   0x40(%esi)
5068af:	e8 6c b4 02 00       	call   0x531d20
5068b4:	83 c4 04             	add    $0x4,%esp
5068b7:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
5068ba:	33 c0                	xor    %eax,%eax
5068bc:	38 45 fb             	cmp    %al,-0x5(%ebp)
5068bf:	0f 95 c0             	setne  %al
5068c2:	89 01                	mov    %eax,(%ecx)
5068c4:	8b 4d fc             	mov    -0x4(%ebp),%ecx
5068c7:	8b c7                	mov    %edi,%eax
5068c9:	5f                   	pop    %edi
5068ca:	5e                   	pop    %esi
5068cb:	33 cd                	xor    %ebp,%ecx
5068cd:	5b                   	pop    %ebx
5068ce:	e8 07 ac 0d 00       	call   0x5e14da
5068d3:	8b e5                	mov    %ebp,%esp
5068d5:	5d                   	pop    %ebp
5068d6:	c3                   	ret
5068d7:	cc                   	int3
5068d8:	cc                   	int3
5068d9:	cc                   	int3
5068da:	cc                   	int3
5068db:	cc                   	int3
5068dc:	cc                   	int3
5068dd:	cc                   	int3
5068de:	cc                   	int3
5068df:	cc                   	int3
5068e0:	55                   	push   %ebp
5068e1:	8b ec                	mov    %esp,%ebp
5068e3:	83 ec 2c             	sub    $0x2c,%esp
5068e6:	a1 d4 89 72 00       	mov    0x7289d4,%eax
5068eb:	33 c5                	xor    %ebp,%eax
5068ed:	89 45 fc             	mov    %eax,-0x4(%ebp)
5068f0:	56                   	push   %esi
5068f1:	8b 75 0c             	mov    0xc(%ebp),%esi
5068f4:	57                   	push   %edi
5068f5:	8b 7d 08             	mov    0x8(%ebp),%edi
5068f8:	80 3e 2c             	cmpb   $0x2c,(%esi)
5068fb:	0f 84 01 01 00 00    	je     0x506a02
506901:	8b 47 18             	mov    0x18(%edi),%eax
506904:	b9 01 00 00 00       	mov    $0x1,%ecx
506909:	89 45 dc             	mov    %eax,-0x24(%ebp)
50690c:	56                   	push   %esi
50690d:	66 89 4d f4          	mov    %cx,-0xc(%ebp)
506911:	8b 40 28             	mov    0x28(%eax),%eax
506914:	89 45 f8             	mov    %eax,-0x8(%ebp)
506917:	8b 07                	mov    (%edi),%eax
506919:	89 45 e0             	mov    %eax,-0x20(%ebp)
50691c:	8d 45 e0             	lea    -0x20(%ebp),%eax
50691f:	50                   	push   %eax
506920:	c7 45 e4 10 14 50 00 	movl   $0x501410,-0x1c(%ebp)
506927:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
50692e:	e8 7d 96 05 00       	call   0x55ffb0