4b0574:	85 c0                	test   %eax,%eax
4b0576:	59                   	pop    %ecx
4b0577:	75 24                	jne    0x4b059d
4b0579:	80 fb 30             	cmp    $0x30,%bl
4b057c:	74 09                	je     0x4b0587
4b057e:	c7 45 10 0a 00 00 00 	movl   $0xa,0x10(%ebp)
4b0585:	eb 32                	jmp    0x4b05b9
4b0587:	8a 06                	mov    (%esi),%al
4b0589:	3c 78                	cmp    $0x78,%al
4b058b:	74 0d                	je     0x4b059a
4b058d:	3c 58                	cmp    $0x58,%al
4b058f:	74 09                	je     0x4b059a
4b0591:	c7 45 10 08 00 00 00 	movl   $0x8,0x10(%ebp)
4b0598:	eb 1f                	jmp    0x4b05b9
4b059a:	89 4d 10             	mov    %ecx,0x10(%ebp)
4b059d:	39 4d 10             	cmp    %ecx,0x10(%ebp)
4b05a0:	75 17                	jne    0x4b05b9
4b05a2:	80 fb 30             	cmp    $0x30,%bl
4b05a5:	75 12                	jne    0x4b05b9
4b05a7:	8a 06                	mov    (%esi),%al
4b05a9:	3c 78                	cmp    $0x78,%al
4b05ab:	74 04                	je     0x4b05b1
4b05ad:	3c 58                	cmp    $0x58,%al
4b05af:	75 08                	jne    0x4b05b9
4b05b1:	8a 5e 01             	mov    0x1(%esi),%bl
4b05b4:	46                   	inc    %esi
4b05b5:	46                   	inc    %esi
4b05b6:	89 75 fc             	mov    %esi,-0x4(%ebp)
4b05b9:	83 c8 ff             	or     $0xffffffff,%eax
4b05bc:	33 d2                	xor    %edx,%edx
4b05be:	f7 75 10             	divl   0x10(%ebp)
4b05c1:	bf 03 01 00 00       	mov    $0x103,%edi
4b05c6:	89 45 f4             	mov    %eax,-0xc(%ebp)
4b05c9:	83 3d ec a6 50 00 01 	cmpl   $0x1,0x50a6ec
4b05d0:	0f b6 f3             	movzbl %bl,%esi
4b05d3:	7e 0c                	jle    0x4b05e1
4b05d5:	6a 04                	push   $0x4
4b05d7:	56                   	push   %esi
4b05d8:	e8 00 b7 ff ff       	call   0x4abcdd
4b05dd:	59                   	pop    %ecx
4b05de:	59                   	pop    %ecx
4b05df:	eb 0b                	jmp    0x4b05ec
4b05e1:	a1 e0 a4 50 00       	mov    0x50a4e0,%eax
4b05e6:	8a 04 70             	mov    (%eax,%esi,2),%al
4b05e9:	83 e0 04             	and    $0x4,%eax
4b05ec:	85 c0                	test   %eax,%eax
4b05ee:	74 08                	je     0x4b05f8
4b05f0:	0f be cb             	movsbl %bl,%ecx
4b05f3:	83 e9 30             	sub    $0x30,%ecx
4b05f6:	eb 32                	jmp    0x4b062a
4b05f8:	83 3d ec a6 50 00 01 	cmpl   $0x1,0x50a6ec
4b05ff:	7e 0b                	jle    0x4b060c
4b0601:	57                   	push   %edi
4b0602:	56                   	push   %esi
4b0603:	e8 d5 b6 ff ff       	call   0x4abcdd
4b0608:	59                   	pop    %ecx
4b0609:	59                   	pop    %ecx
4b060a:	eb 0b                	jmp    0x4b0617
4b060c:	a1 e0 a4 50 00       	mov    0x50a4e0,%eax
4b0611:	66 8b 04 70          	mov    (%eax,%esi,2),%ax
4b0615:	23 c7                	and    %edi,%eax
4b0617:	85 c0                	test   %eax,%eax
4b0619:	74 4a                	je     0x4b0665
4b061b:	0f be c3             	movsbl %bl,%eax
4b061e:	50                   	push   %eax
4b061f:	e8 18 90 ff ff       	call   0x4a963c
4b0624:	59                   	pop    %ecx
4b0625:	8b c8                	mov    %eax,%ecx
4b0627:	83 e9 37             	sub    $0x37,%ecx
4b062a:	3b 4d 10             	cmp    0x10(%ebp),%ecx
4b062d:	73 36                	jae    0x4b0665
4b062f:	8b 75 f8             	mov    -0x8(%ebp),%esi
4b0632:	83 4d 14 08          	orl    $0x8,0x14(%ebp)
4b0636:	3b 75 f4             	cmp    -0xc(%ebp),%esi
4b0639:	72 14                	jb     0x4b064f
4b063b:	75 0c                	jne    0x4b0649
4b063d:	83 c8 ff             	or     $0xffffffff,%eax
4b0640:	33 d2                	xor    %edx,%edx
4b0642:	f7 75 10             	divl   0x10(%ebp)
4b0645:	3b ca                	cmp    %edx,%ecx
4b0647:	76 06                	jbe    0x4b064f
4b0649:	83 4d 14 04          	orl    $0x4,0x14(%ebp)
4b064d:	eb 09                	jmp    0x4b0658
4b064f:	0f af 75 10          	imul   0x10(%ebp),%esi
4b0653:	03 f1                	add    %ecx,%esi
4b0655:	89 75 f8             	mov    %esi,-0x8(%ebp)
4b0658:	8b 45 fc             	mov    -0x4(%ebp),%eax
4b065b:	ff 45 fc             	incl   -0x4(%ebp)
4b065e:	8a 18                	mov    (%eax),%bl
4b0660:	e9 64 ff ff ff       	jmp    0x4b05c9
4b0665:	8b 45 14             	mov    0x14(%ebp),%eax
4b0668:	ff 4d fc             	decl   -0x4(%ebp)
4b066b:	8b 5d 0c             	mov    0xc(%ebp),%ebx
4b066e:	a8 08                	test   $0x8,%al
4b0670:	75 10                	jne    0x4b0682
4b0672:	85 db                	test   %ebx,%ebx
4b0674:	74 06                	je     0x4b067c
4b0676:	8b 45 08             	mov    0x8(%ebp),%eax
4b0679:	89 45 fc             	mov    %eax,-0x4(%ebp)
4b067c:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
4b0680:	eb 4b                	jmp    0x4b06cd
4b0682:	a8 04                	test   $0x4,%al
4b0684:	be ff ff ff 7f       	mov    $0x7fffffff,%esi
4b0689:	75 1b                	jne    0x4b06a6
4b068b:	a8 01                	test   $0x1,%al
4b068d:	75 3e                	jne    0x4b06cd
4b068f:	83 e0 02             	and    $0x2,%eax
4b0692:	74 09                	je     0x4b069d
4b0694:	81 7d f8 00 00 00 80 	cmpl   $0x80000000,-0x8(%ebp)
4b069b:	77 09                	ja     0x4b06a6
4b069d:	85 c0                	test   %eax,%eax
4b069f:	75 2c                	jne    0x4b06cd
4b06a1:	39 75 f8             	cmp    %esi,-0x8(%ebp)
4b06a4:	76 27                	jbe    0x4b06cd
4b06a6:	e8 c3 ea ff ff       	call   0x4af16e
4b06ab:	f6 45 14 01          	testb  $0x1,0x14(%ebp)
4b06af:	c7 00 22 00 00 00    	movl   $0x22,(%eax)
4b06b5:	74 06                	je     0x4b06bd
4b06b7:	83 4d f8 ff          	orl    $0xffffffff,-0x8(%ebp)
4b06bb:	eb 10                	jmp    0x4b06cd
4b06bd:	8b 45 14             	mov    0x14(%ebp),%eax
4b06c0:	24 02                	and    $0x2,%al
4b06c2:	f6 d8                	neg    %al
4b06c4:	1b c0                	sbb    %eax,%eax
4b06c6:	f7 d8                	neg    %eax
4b06c8:	03 c6                	add    %esi,%eax
4b06ca:	89 45 f8             	mov    %eax,-0x8(%ebp)
4b06cd:	85 db                	test   %ebx,%ebx
4b06cf:	74 05                	je     0x4b06d6
4b06d1:	8b 45 fc             	mov    -0x4(%ebp),%eax
4b06d4:	89 03                	mov    %eax,(%ebx)
4b06d6:	f6 45 14 02          	testb  $0x2,0x14(%ebp)
4b06da:	74 08                	je     0x4b06e4
4b06dc:	8b 45 f8             	mov    -0x8(%ebp),%eax
4b06df:	f7 d8                	neg    %eax
4b06e1:	89 45 f8             	mov    %eax,-0x8(%ebp)
4b06e4:	8b 45 f8             	mov    -0x8(%ebp),%eax
4b06e7:	eb 0b                	jmp    0x4b06f4
4b06e9:	8b 45 0c             	mov    0xc(%ebp),%eax
4b06ec:	85 c0                	test   %eax,%eax
4b06ee:	74 02                	je     0x4b06f2
4b06f0:	89 38                	mov    %edi,(%eax)
4b06f2:	33 c0                	xor    %eax,%eax
4b06f4:	5f                   	pop    %edi
4b06f5:	5e                   	pop    %esi
4b06f6:	5b                   	pop    %ebx
4b06f7:	c9                   	leave
4b06f8:	c3                   	ret
4b06f9:	cc                   	int3
4b06fa:	cc                   	int3
4b06fb:	cc                   	int3
4b06fc:	cc                   	int3
4b06fd:	cc                   	int3
4b06fe:	cc                   	int3
4b06ff:	cc                   	int3
4b0700:	8b 4c 24 08          	mov    0x8(%esp),%ecx
4b0704:	57                   	push   %edi
4b0705:	53                   	push   %ebx
4b0706:	56                   	push   %esi
4b0707:	8a 11                	mov    (%ecx),%dl
4b0709:	8b 7c 24 10          	mov    0x10(%esp),%edi
4b070d:	84 d2                	test   %dl,%dl
4b070f:	74 69                	je     0x4b077a
4b0711:	8a 71 01             	mov    0x1(%ecx),%dh
4b0714:	84 f6                	test   %dh,%dh
4b0716:	74 4f                	je     0x4b0767
4b0718:	8b f7                	mov    %edi,%esi
4b071a:	8b 4c 24 14          	mov    0x14(%esp),%ecx
4b071e:	8a 07                	mov    (%edi),%al
4b0720:	46                   	inc    %esi
4b0721:	38 d0                	cmp    %dl,%al
4b0723:	74 15                	je     0x4b073a
4b0725:	84 c0                	test   %al,%al
4b0727:	74 0b                	je     0x4b0734
4b0729:	8a 06                	mov    (%esi),%al
4b072b:	46                   	inc    %esi
4b072c:	38 d0                	cmp    %dl,%al
4b072e:	74 0a                	je     0x4b073a
4b0730:	84 c0                	test   %al,%al
4b0732:	75 f5                	jne    0x4b0729
4b0734:	5e                   	pop    %esi
4b0735:	5b                   	pop    %ebx
4b0736:	5f                   	pop    %edi
4b0737:	33 c0                	xor    %eax,%eax
4b0739:	c3                   	ret
4b073a:	8a 06                	mov    (%esi),%al
4b073c:	46                   	inc    %esi
4b073d:	38 f0                	cmp    %dh,%al
4b073f:	75 eb                	jne    0x4b072c
4b0741:	8d 7e ff             	lea    -0x1(%esi),%edi
4b0744:	8a 61 02             	mov    0x2(%ecx),%ah
4b0747:	84 e4                	test   %ah,%ah
4b0749:	74 28                	je     0x4b0773
4b074b:	8a 06                	mov    (%esi),%al
4b074d:	83 c6 02             	add    $0x2,%esi
4b0750:	38 e0                	cmp    %ah,%al
4b0752:	75 c4                	jne    0x4b0718
4b0754:	8a 41 03             	mov    0x3(%ecx),%al
4b0757:	84 c0                	test   %al,%al
4b0759:	74 18                	je     0x4b0773
4b075b:	8a 66 ff             	mov    -0x1(%esi),%ah
4b075e:	83 c1 02             	add    $0x2,%ecx
4b0761:	38 e0                	cmp    %ah,%al
4b0763:	74 df                	je     0x4b0744
4b0765:	eb b1                	jmp    0x4b0718
4b0767:	33 c0                	xor    %eax,%eax
4b0769:	5e                   	pop    %esi
4b076a:	5b                   	pop    %ebx
4b076b:	5f                   	pop    %edi
4b076c:	8a c2                	mov    %dl,%al
4b076e:	e9 b3 7f ff ff       	jmp    0x4a8726
4b0773:	8d 47 ff             	lea    -0x1(%edi),%eax
4b0776:	5e                   	pop    %esi
4b0777:	5b                   	pop    %ebx
4b0778:	5f                   	pop    %edi
4b0779:	c3                   	ret
4b077a:	8b c7                	mov    %edi,%eax
4b077c:	5e                   	pop    %esi
4b077d:	5b                   	pop    %ebx
4b077e:	5f                   	pop    %edi
4b077f:	c3                   	ret
4b0780:	51                   	push   %ecx
4b0781:	3d 00 10 00 00       	cmp    $0x1000,%eax
4b0786:	8d 4c 24 08          	lea    0x8(%esp),%ecx
4b078a:	72 14                	jb     0x4b07a0
4b078c:	81 e9 00 10 00 00    	sub    $0x1000,%ecx
4b0792:	2d 00 10 00 00       	sub    $0x1000,%eax
4b0797:	85 01                	test   %eax,(%ecx)
4b0799:	3d 00 10 00 00       	cmp    $0x1000,%eax
4b079e:	73 ec                	jae    0x4b078c
4b07a0:	2b c8                	sub    %eax,%ecx
4b07a2:	8b c4                	mov    %esp,%eax
4b07a4:	85 01                	test   %eax,(%ecx)
4b07a6:	8b e1                	mov    %ecx,%esp
4b07a8:	8b 08                	mov    (%eax),%ecx
4b07aa:	8b 40 04             	mov    0x4(%eax),%eax
4b07ad:	50                   	push   %eax
4b07ae:	c3                   	ret
4b07af:	53                   	push   %ebx
4b07b0:	33 db                	xor    %ebx,%ebx
4b07b2:	39 1d 88 cb 51 00    	cmp    %ebx,0x51cb88
4b07b8:	56                   	push   %esi
4b07b9:	57                   	push   %edi
4b07ba:	75 42                	jne    0x4b07fe
4b07bc:	68 18 3c 4b 00       	push   $0x4b3c18
4b07c1:	ff 15 50 30 4b 00    	call   *0x4b3050
4b07c7:	8b f8                	mov    %eax,%edi
4b07c9:	3b fb                	cmp    %ebx,%edi
4b07cb:	74 67                	je     0x4b0834
4b07cd:	8b 35 ac 31 4b 00    	mov    0x4b31ac,%esi
4b07d3:	68 0c 3c 4b 00       	push   $0x4b3c0c
4b07d8:	57                   	push   %edi
4b07d9:	ff d6                	call   *%esi
4b07db:	85 c0                	test   %eax,%eax
4b07dd:	a3 88 cb 51 00       	mov    %eax,0x51cb88
4b07e2:	74 50                	je     0x4b0834
4b07e4:	68 fc 3b 4b 00       	push   $0x4b3bfc
4b07e9:	57                   	push   %edi
4b07ea:	ff d6                	call   *%esi
4b07ec:	68 e8 3b 4b 00       	push   $0x4b3be8
4b07f1:	57                   	push   %edi
4b07f2:	a3 8c cb 51 00       	mov    %eax,0x51cb8c
4b07f7:	ff d6                	call   *%esi
4b07f9:	a3 90 cb 51 00       	mov    %eax,0x51cb90
4b07fe:	a1 8c cb 51 00       	mov    0x51cb8c,%eax
4b0803:	85 c0                	test   %eax,%eax
4b0805:	74 16                	je     0x4b081d
4b0807:	ff d0                	call   *%eax
4b0809:	8b d8                	mov    %eax,%ebx
4b080b:	85 db                	test   %ebx,%ebx
4b080d:	74 0e                	je     0x4b081d
4b080f:	a1 90 cb 51 00       	mov    0x51cb90,%eax
4b0814:	85 c0                	test   %eax,%eax
4b0816:	74 05                	je     0x4b081d
4b0818:	53                   	push   %ebx
4b0819:	ff d0                	call   *%eax
4b081b:	8b d8                	mov    %eax,%ebx
4b081d:	ff 74 24 18          	push   0x18(%esp)
4b0821:	ff 74 24 18          	push   0x18(%esp)
4b0825:	ff 74 24 18          	push   0x18(%esp)
4b0829:	53                   	push   %ebx
4b082a:	ff 15 88 cb 51 00    	call   *0x51cb88
4b0830:	5f                   	pop    %edi
4b0831:	5e                   	pop    %esi
4b0832:	5b                   	pop    %ebx
4b0833:	c3                   	ret
4b0834:	33 c0                	xor    %eax,%eax
4b0836:	eb f8                	jmp    0x4b0830
4b0838:	33 c0                	xor    %eax,%eax
4b083a:	c3                   	ret
4b083b:	55                   	push   %ebp
4b083c:	8b ec                	mov    %esp,%ebp
4b083e:	51                   	push   %ecx
4b083f:	56                   	push   %esi
4b0840:	9b d9 7d fc          	fstcw  -0x4(%ebp)
4b0844:	ff 75 fc             	push   -0x4(%ebp)
4b0847:	e8 3a 00 00 00       	call   0x4b0886
4b084c:	8b f0                	mov    %eax,%esi
4b084e:	8b 45 0c             	mov    0xc(%ebp),%eax
4b0851:	f7 d0                	not    %eax
4b0853:	23 f0                	and    %eax,%esi
4b0855:	8b 45 08             	mov    0x8(%ebp),%eax
4b0858:	23 45 0c             	and    0xc(%ebp),%eax
4b085b:	0b f0                	or     %eax,%esi
4b085d:	56                   	push   %esi
4b085e:	e8 b5 00 00 00       	call   0x4b0918
4b0863:	59                   	pop    %ecx
4b0864:	89 45 0c             	mov    %eax,0xc(%ebp)
4b0867:	59                   	pop    %ecx
4b0868:	d9 6d 0c             	fldcw  0xc(%ebp)
4b086b:	8b c6                	mov    %esi,%eax
4b086d:	5e                   	pop    %esi
4b086e:	c9                   	leave
4b086f:	c3                   	ret
4b0870:	8b 44 24 08          	mov    0x8(%esp),%eax
4b0874:	25 ff ff f7 ff       	and    $0xfff7ffff,%eax
4b0879:	50                   	push   %eax
4b087a:	ff 74 24 08          	push   0x8(%esp)
4b087e:	e8 b8 ff ff ff       	call   0x4b083b
4b0883:	59                   	pop    %ecx
4b0884:	59                   	pop    %ecx
4b0885:	c3                   	ret
4b0886:	53                   	push   %ebx
4b0887:	8b 5c 24 08          	mov    0x8(%esp),%ebx
4b088b:	33 c0                	xor    %eax,%eax
4b088d:	55                   	push   %ebp
4b088e:	f6 c3 01             	test   $0x1,%bl
4b0891:	57                   	push   %edi
4b0892:	74 03                	je     0x4b0897
4b0894:	6a 10                	push   $0x10
4b0896:	58                   	pop    %eax
4b0897:	f6 c3 04             	test   $0x4,%bl
4b089a:	74 02                	je     0x4b089e
4b089c:	0c 08                	or     $0x8,%al
4b089e:	f6 c3 08             	test   $0x8,%bl
4b08a1:	74 02                	je     0x4b08a5
4b08a3:	0c 04                	or     $0x4,%al
4b08a5:	f6 c3 10             	test   $0x10,%bl
4b08a8:	74 02                	je     0x4b08ac
4b08aa:	0c 02                	or     $0x2,%al
4b08ac:	f6 c3 20             	test   $0x20,%bl
4b08af:	74 02                	je     0x4b08b3
4b08b1:	0c 01                	or     $0x1,%al
4b08b3:	f6 c3 02             	test   $0x2,%bl
4b08b6:	74 05                	je     0x4b08bd
4b08b8:	0d 00 00 08 00       	or     $0x80000,%eax
4b08bd:	0f b7 cb             	movzwl %bx,%ecx
4b08c0:	56                   	push   %esi
4b08c1:	8b d1                	mov    %ecx,%edx
4b08c3:	be 00 0c 00 00       	mov    $0xc00,%esi