620538:	53                   	push   %ebx
620539:	56                   	push   %esi
62053a:	57                   	push   %edi
62053b:	8b f1                	mov    %ecx,%esi
62053d:	8b fa                	mov    %edx,%edi
62053f:	8b d8                	mov    %eax,%ebx
620541:	3b bb a0 03 00 00    	cmp    0x3a0(%ebx),%edi
620547:	75 60                	jne    0x6205a9
620549:	8b d7                	mov    %edi,%edx
62054b:	8b 83 3c 02 00 00    	mov    0x23c(%ebx),%eax
620551:	e8 fa 6c e8 ff       	call   0x4a7250
620556:	e8 1d 6b e8 ff       	call   0x4a7078
62055b:	8b 56 08             	mov    0x8(%esi),%edx
62055e:	2b 16                	sub    (%esi),%edx
620560:	03 d2                	add    %edx,%edx
620562:	3b c2                	cmp    %edx,%eax
620564:	7e 43                	jle    0x6205a9
620566:	80 bb a4 03 00 00 01 	cmpb   $0x1,0x3a4(%ebx)
62056d:	75 1e                	jne    0x62058d
62056f:	68 10 00 00 80       	push   $0x80000010
620574:	68 14 00 00 80       	push   $0x80000014
620579:	8b d6                	mov    %esi,%edx
62057b:	b9 0f 00 00 80       	mov    $0x8000000f,%ecx
620580:	8b 83 9c 03 00 00    	mov    0x39c(%ebx),%eax
620586:	e8 a9 ea ff ff       	call   0x61f034
62058b:	eb 1c                	jmp    0x6205a9
62058d:	68 10 00 00 80       	push   $0x80000010
620592:	68 14 00 00 80       	push   $0x80000014
620597:	8b d6                	mov    %esi,%edx
620599:	b9 0f 00 00 80       	mov    $0x8000000f,%ecx
62059e:	8b 83 9c 03 00 00    	mov    0x39c(%ebx),%eax
6205a4:	e8 37 e9 ff ff       	call   0x61eee0
6205a9:	5f                   	pop    %edi
6205aa:	5e                   	pop    %esi
6205ab:	5b                   	pop    %ebx
6205ac:	c3                   	ret
6205ad:	8d 40 00             	lea    0x0(%eax),%eax
6205b0:	55                   	push   %ebp
6205b1:	8b ec                	mov    %esp,%ebp
6205b3:	6a 00                	push   $0x0
6205b5:	53                   	push   %ebx
6205b6:	56                   	push   %esi
6205b7:	57                   	push   %edi
6205b8:	8b da                	mov    %edx,%ebx
6205ba:	8b f8                	mov    %eax,%edi
6205bc:	33 c0                	xor    %eax,%eax
6205be:	55                   	push   %ebp
6205bf:	68 81 06 62 00       	push   $0x620681
6205c4:	64 ff 30             	push   %fs:(%eax)
6205c7:	64 89 20             	mov    %esp,%fs:(%eax)
6205ca:	8b 45 08             	mov    0x8(%ebp),%eax
6205cd:	8b 50 f8             	mov    -0x8(%eax),%edx
6205d0:	8b 45 08             	mov    0x8(%ebp),%eax
6205d3:	8b 40 fc             	mov    -0x4(%eax),%eax
6205d6:	8b 80 3c 02 00 00    	mov    0x23c(%eax),%eax
6205dc:	e8 6f 6c e8 ff       	call   0x4a7250
6205e1:	8b 50 10             	mov    0x10(%eax),%edx
6205e4:	8d 45 fc             	lea    -0x4(%ebp),%eax
6205e7:	e8 14 43 de ff       	call   0x404900
6205ec:	8b 45 08             	mov    0x8(%ebp),%eax
6205ef:	8b 50 f8             	mov    -0x8(%eax),%edx
6205f2:	8b 45 08             	mov    0x8(%ebp),%eax
6205f5:	8b 40 fc             	mov    -0x4(%eax),%eax
6205f8:	8b 80 3c 02 00 00    	mov    0x23c(%eax),%eax
6205fe:	e8 4d 6c e8 ff       	call   0x4a7250
620603:	0f b6 40 0c          	movzbl 0xc(%eax),%eax
620607:	8b 04 85 d4 57 6a 00 	mov    0x6a57d4(,%eax,4),%eax
62060e:	0d 20 80 00 00       	or     $0x8020,%eax
620613:	50                   	push   %eax
620614:	57                   	push   %edi
620615:	8b 45 fc             	mov    -0x4(%ebp),%eax
620618:	e8 03 45 de ff       	call   0x404b20
62061d:	50                   	push   %eax
62061e:	8b 45 fc             	mov    -0x4(%ebp),%eax
620621:	e8 f2 46 de ff       	call   0x404d18
620626:	8b f0                	mov    %eax,%esi
620628:	56                   	push   %esi
620629:	8b 45 08             	mov    0x8(%ebp),%eax
62062c:	8b 40 fc             	mov    -0x4(%eax),%eax
62062f:	8b 80 9c 03 00 00    	mov    0x39c(%eax),%eax
620635:	e8 86 86 e0 ff       	call   0x428cc0
62063a:	50                   	push   %eax
62063b:	e8 f8 72 de ff       	call   0x407938
620640:	84 db                	test   %bl,%bl
620642:	74 27                	je     0x62066b
620644:	68 22 84 00 00       	push   $0x8422
620649:	57                   	push   %edi
62064a:	8b 45 fc             	mov    -0x4(%ebp),%eax
62064d:	e8 ce 44 de ff       	call   0x404b20
620652:	50                   	push   %eax
620653:	56                   	push   %esi
620654:	8b 45 08             	mov    0x8(%ebp),%eax
620657:	8b 40 fc             	mov    -0x4(%eax),%eax
62065a:	8b 80 9c 03 00 00    	mov    0x39c(%eax),%eax
620660:	e8 5b 86 e0 ff       	call   0x428cc0
620665:	50                   	push   %eax
620666:	e8 cd 72 de ff       	call   0x407938
62066b:	33 c0                	xor    %eax,%eax
62066d:	5a                   	pop    %edx
62066e:	59                   	pop    %ecx
62066f:	59                   	pop    %ecx
620670:	64 89 10             	mov    %edx,%fs:(%eax)
620673:	68 88 06 62 00       	push   $0x620688
620678:	8d 45 fc             	lea    -0x4(%ebp),%eax
62067b:	e8 e8 41 de ff       	call   0x404868
620680:	c3                   	ret
620681:	e9 86 3b de ff       	jmp    0x40420c
620686:	eb f0                	jmp    0x620678
620688:	5f                   	pop    %edi
620689:	5e                   	pop    %esi
62068a:	5b                   	pop    %ebx
62068b:	59                   	pop    %ecx
62068c:	5d                   	pop    %ebp
62068d:	c3                   	ret
62068e:	8b c0                	mov    %eax,%eax
620690:	55                   	push   %ebp
620691:	8b ec                	mov    %esp,%ebp
620693:	83 c4 f0             	add    $0xfffffff0,%esp
620696:	56                   	push   %esi
620697:	57                   	push   %edi
620698:	8b f0                	mov    %eax,%esi
62069a:	8d 7d f0             	lea    -0x10(%ebp),%edi
62069d:	a5                   	movsl  %ds:(%esi),%es:(%edi)
62069e:	a5                   	movsl  %ds:(%esi),%es:(%edi)
62069f:	a5                   	movsl  %ds:(%esi),%es:(%edi)
6206a0:	a5                   	movsl  %ds:(%esi),%es:(%edi)
6206a1:	8b 45 fc             	mov    -0x4(%ebp),%eax
6206a4:	03 45 f4             	add    -0xc(%ebp),%eax
6206a7:	d1 f8                	sar    $1,%eax
6206a9:	79 03                	jns    0x6206ae
6206ab:	83 d0 00             	adc    $0x0,%eax
6206ae:	48                   	dec    %eax
6206af:	8b 4d f0             	mov    -0x10(%ebp),%ecx
6206b2:	89 0a                	mov    %ecx,(%edx)
6206b4:	8b 4d f0             	mov    -0x10(%ebp),%ecx
6206b7:	03 c8                	add    %eax,%ecx
6206b9:	41                   	inc    %ecx
6206ba:	89 4a 08             	mov    %ecx,0x8(%edx)
6206bd:	8b 4d f4             	mov    -0xc(%ebp),%ecx
6206c0:	03 4d fc             	add    -0x4(%ebp),%ecx
6206c3:	2b c8                	sub    %eax,%ecx
6206c5:	d1 f9                	sar    $1,%ecx
6206c7:	79 03                	jns    0x6206cc
6206c9:	83 d1 00             	adc    $0x0,%ecx
6206cc:	49                   	dec    %ecx
6206cd:	89 4a 04             	mov    %ecx,0x4(%edx)
6206d0:	03 c1                	add    %ecx,%eax
6206d2:	89 42 0c             	mov    %eax,0xc(%edx)
6206d5:	5f                   	pop    %edi
6206d6:	5e                   	pop    %esi
6206d7:	8b e5                	mov    %ebp,%esp
6206d9:	5d                   	pop    %ebp
6206da:	c3                   	ret
6206db:	90                   	nop
6206dc:	55                   	push   %ebp
6206dd:	8b ec                	mov    %esp,%ebp
6206df:	83 c4 c8             	add    $0xffffffc8,%esp
6206e2:	53                   	push   %ebx
6206e3:	56                   	push   %esi
6206e4:	57                   	push   %edi
6206e5:	8b d9                	mov    %ecx,%ebx
6206e7:	89 55 f8             	mov    %edx,-0x8(%ebp)
6206ea:	89 45 fc             	mov    %eax,-0x4(%ebp)
6206ed:	8b f3                	mov    %ebx,%esi
6206ef:	8d 7d e8             	lea    -0x18(%ebp),%edi
6206f2:	a5                   	movsl  %ds:(%esi),%es:(%edi)
6206f3:	a5                   	movsl  %ds:(%esi),%es:(%edi)
6206f4:	a5                   	movsl  %ds:(%esi),%es:(%edi)
6206f5:	a5                   	movsl  %ds:(%esi),%es:(%edi)
6206f6:	83 45 e8 04          	addl   $0x4,-0x18(%ebp)
6206fa:	83 6d f0 04          	subl   $0x4,-0x10(%ebp)
6206fe:	8b 43 0c             	mov    0xc(%ebx),%eax
620701:	50                   	push   %eax
620702:	8b 43 08             	mov    0x8(%ebx),%eax
620705:	50                   	push   %eax
620706:	8b 43 04             	mov    0x4(%ebx),%eax
620709:	50                   	push   %eax
62070a:	8b 03                	mov    (%ebx),%eax
62070c:	50                   	push   %eax
62070d:	8b 45 fc             	mov    -0x4(%ebp),%eax
620710:	8b 80 9c 03 00 00    	mov    0x39c(%eax),%eax
620716:	e8 a5 85 e0 ff       	call   0x428cc0
62071b:	50                   	push   %eax
62071c:	e8 37 6f de ff       	call   0x407658
620721:	8b 45 fc             	mov    -0x4(%ebp),%eax
620724:	8a 80 a5 03 00 00    	mov    0x3a5(%eax),%al
62072a:	2c 01                	sub    $0x1,%al
62072c:	72 13                	jb     0x620741
62072e:	74 22                	je     0x620752
620730:	fe c8                	dec    %al
620732:	74 7a                	je     0x6207ae
620734:	fe c8                	dec    %al
620736:	0f 84 23 01 00 00    	je     0x62085f
62073c:	e9 77 01 00 00       	jmp    0x6208b8
620741:	55                   	push   %ebp
620742:	8d 45 e8             	lea    -0x18(%ebp),%eax
620745:	33 d2                	xor    %edx,%edx
620747:	e8 64 fe ff ff       	call   0x6205b0
62074c:	59                   	pop    %ecx
62074d:	e9 66 01 00 00       	jmp    0x6208b8
620752:	8b 45 fc             	mov    -0x4(%ebp),%eax
620755:	8b 80 a0 03 00 00    	mov    0x3a0(%eax),%eax
62075b:	3b 45 f8             	cmp    -0x8(%ebp),%eax
62075e:	75 3d                	jne    0x62079d
620760:	8b 45 fc             	mov    -0x4(%ebp),%eax
620763:	8b 80 3c 02 00 00    	mov    0x23c(%eax),%eax
620769:	8b 55 f8             	mov    -0x8(%ebp),%edx
62076c:	e8 df 6a e8 ff       	call   0x4a7250
620771:	e8 02 69 e8 ff       	call   0x4a7078
620776:	83 f8 0f             	cmp    $0xf,%eax
620779:	7e 22                	jle    0x62079d
62077b:	8d 55 d8             	lea    -0x28(%ebp),%edx
62077e:	8d 45 e8             	lea    -0x18(%ebp),%eax
620781:	e8 0a ff ff ff       	call   0x620690
620786:	8d 4d d8             	lea    -0x28(%ebp),%ecx
620789:	8b 55 f8             	mov    -0x8(%ebp),%edx
62078c:	8b 45 fc             	mov    -0x4(%ebp),%eax
62078f:	e8 a4 fd ff ff       	call   0x620538
620794:	8b 45 e0             	mov    -0x20(%ebp),%eax
620797:	83 c0 05             	add    $0x5,%eax
62079a:	89 45 e8             	mov    %eax,-0x18(%ebp)
62079d:	55                   	push   %ebp
62079e:	8d 45 e8             	lea    -0x18(%ebp),%eax
6207a1:	33 d2                	xor    %edx,%edx
6207a3:	e8 08 fe ff ff       	call   0x6205b0
6207a8:	59                   	pop    %ecx
6207a9:	e9 0a 01 00 00       	jmp    0x6208b8
6207ae:	8b 45 fc             	mov    -0x4(%ebp),%eax
6207b1:	8b 80 3c 02 00 00    	mov    0x23c(%eax),%eax
6207b7:	8b 55 f8             	mov    -0x8(%ebp),%edx
6207ba:	e8 91 6a e8 ff       	call   0x4a7250
6207bf:	80 78 0c 01          	cmpb   $0x1,0xc(%eax)
6207c3:	75 5e                	jne    0x620823
6207c5:	8b 45 fc             	mov    -0x4(%ebp),%eax
6207c8:	8b 80 a0 03 00 00    	mov    0x3a0(%eax),%eax
6207ce:	3b 45 f8             	cmp    -0x8(%ebp),%eax
6207d1:	75 3f                	jne    0x620812
6207d3:	8d 55 d8             	lea    -0x28(%ebp),%edx
6207d6:	8d 45 e8             	lea    -0x18(%ebp),%eax
6207d9:	e8 b2 fe ff ff       	call   0x620690
6207de:	6a 00                	push   $0x0
6207e0:	8b 45 f0             	mov    -0x10(%ebp),%eax
6207e3:	2b 45 e8             	sub    -0x18(%ebp),%eax
6207e6:	8b 55 e0             	mov    -0x20(%ebp),%edx
6207e9:	2b 55 d8             	sub    -0x28(%ebp),%edx
6207ec:	2b c2                	sub    %edx,%eax
6207ee:	83 e8 05             	sub    $0x5,%eax
6207f1:	50                   	push   %eax
6207f2:	8d 45 d8             	lea    -0x28(%ebp),%eax
6207f5:	50                   	push   %eax
6207f6:	e8 7d 74 de ff       	call   0x407c78
6207fb:	8d 4d d8             	lea    -0x28(%ebp),%ecx
6207fe:	8b 55 f8             	mov    -0x8(%ebp),%edx
620801:	8b 45 fc             	mov    -0x4(%ebp),%eax
620804:	e8 2f fd ff ff       	call   0x620538
620809:	8b 45 d8             	mov    -0x28(%ebp),%eax
62080c:	83 e8 04             	sub    $0x4,%eax
62080f:	89 45 f0             	mov    %eax,-0x10(%ebp)
620812:	55                   	push   %ebp
620813:	8d 45 e8             	lea    -0x18(%ebp),%eax
620816:	33 d2                	xor    %edx,%edx
620818:	e8 93 fd ff ff       	call   0x6205b0
62081d:	59                   	pop    %ecx
62081e:	e9 95 00 00 00       	jmp    0x6208b8
620823:	55                   	push   %ebp
620824:	8d 45 e8             	lea    -0x18(%ebp),%eax
620827:	b2 01                	mov    $0x1,%dl
620829:	e8 82 fd ff ff       	call   0x6205b0
62082e:	59                   	pop    %ecx
62082f:	6a 00                	push   $0x0
620831:	8b 45 f0             	mov    -0x10(%ebp),%eax
620834:	2b 45 e8             	sub    -0x18(%ebp),%eax
620837:	83 c0 05             	add    $0x5,%eax
62083a:	50                   	push   %eax
62083b:	8d 45 e8             	lea    -0x18(%ebp),%eax
62083e:	50                   	push   %eax
62083f:	e8 34 74 de ff       	call   0x407c78
620844:	8d 55 c8             	lea    -0x38(%ebp),%edx
620847:	8d 45 e8             	lea    -0x18(%ebp),%eax
62084a:	e8 41 fe ff ff       	call   0x620690
62084f:	8d 4d c8             	lea    -0x38(%ebp),%ecx
620852:	8b 55 f8             	mov    -0x8(%ebp),%edx
620855:	8b 45 fc             	mov    -0x4(%ebp),%eax
620858:	e8 db fc ff ff       	call   0x620538
62085d:	eb 59                	jmp    0x6208b8
62085f:	8d 55 d8             	lea    -0x28(%ebp),%edx
620862:	8d 45 e8             	lea    -0x18(%ebp),%eax
620865:	e8 26 fe ff ff       	call   0x620690
62086a:	6a 00                	push   $0x0
62086c:	8b 45 f0             	mov    -0x10(%ebp),%eax
62086f:	2b 45 e8             	sub    -0x18(%ebp),%eax
620872:	8b 55 e0             	mov    -0x20(%ebp),%edx
620875:	2b 55 d8             	sub    -0x28(%ebp),%edx
620878:	2b c2                	sub    %edx,%eax
62087a:	83 e8 05             	sub    $0x5,%eax
62087d:	50                   	push   %eax
62087e:	8d 45 d8             	lea    -0x28(%ebp),%eax
620881:	50                   	push   %eax
620882:	e8 f1 73 de ff       	call   0x407c78
620887:	8d 4d d8             	lea    -0x28(%ebp),%ecx
62088a:	8b 55 f8             	mov    -0x8(%ebp),%edx
62088d:	8b 45 fc             	mov    -0x4(%ebp),%eax
620890:	e8 a3 fc ff ff       	call   0x620538
620895:	8b 45 fc             	mov    -0x4(%ebp),%eax
620898:	8b 80 a0 03 00 00    	mov    0x3a0(%eax),%eax
62089e:	3b 45 f8             	cmp    -0x8(%ebp),%eax
6208a1:	75 09                	jne    0x6208ac
6208a3:	8b 45 d8             	mov    -0x28(%ebp),%eax
6208a6:	83 e8 04             	sub    $0x4,%eax
6208a9:	89 45 f0             	mov    %eax,-0x10(%ebp)
6208ac:	55                   	push   %ebp
6208ad:	8d 45 e8             	lea    -0x18(%ebp),%eax
6208b0:	33 d2                	xor    %edx,%edx
6208b2:	e8 f9 fc ff ff       	call   0x6205b0
6208b7:	59                   	pop    %ecx
6208b8:	5f                   	pop    %edi
6208b9:	5e                   	pop    %esi
6208ba:	5b                   	pop    %ebx
6208bb:	8b e5                	mov    %ebp,%esp
6208bd:	5d                   	pop    %ebp
6208be:	c3                   	ret
6208bf:	90                   	nop
6208c0:	55                   	push   %ebp
6208c1:	8b ec                	mov    %esp,%ebp
6208c3:	83 c4 d8             	add    $0xffffffd8,%esp
6208c6:	53                   	push   %ebx
6208c7:	56                   	push   %esi
6208c8:	57                   	push   %edi
6208c9:	89 45 fc             	mov    %eax,-0x4(%ebp)
6208cc:	8b 45 fc             	mov    -0x4(%ebp),%eax
6208cf:	e8 84 e9 e2 ff       	call   0x44f258
6208d4:	84 c0                	test   %al,%al
6208d6:	0f 84 34 01 00 00    	je     0x620a10
6208dc:	8b 45 fc             	mov    -0x4(%ebp),%eax
6208df:	80 b8 15 02 00 00 03 	cmpb   $0x3,0x215(%eax)
6208e6:	0f 85 24 01 00 00    	jne    0x620a10
6208ec:	8b 45 fc             	mov    -0x4(%ebp),%eax
6208ef:	83 b8 a8 03 00 00 00 	cmpl   $0x0,0x3a8(%eax)
6208f6:	0f 8f 14 01 00 00    	jg     0x620a10
6208fc:	8b 45 fc             	mov    -0x4(%ebp),%eax
6208ff:	ff 80 a8 03 00 00    	incl   0x3a8(%eax)
620905:	33 d2                	xor    %edx,%edx
620907:	55                   	push   %ebp
620908:	68 09 0a 62 00       	push   $0x620a09
62090d:	64 ff 32             	push   %fs:(%edx)
620910:	64 89 22             	mov    %esp,%fs:(%edx)
620913:	8b 45 fc             	mov    -0x4(%ebp),%eax
620916:	8a 80 a5 03 00 00    	mov    0x3a5(%eax),%al
62091c:	84 c0                	test   %al,%al
62091e:	0f 95 c3             	setne  %bl