4245c8:	74 0e                	je     0x4245d8
4245ca:	a9 00 00 00 ff       	test   $0xff000000,%eax
4245cf:	74 02                	je     0x4245d3
4245d1:	eb cd                	jmp    0x4245a0
4245d3:	8d 79 ff             	lea    -0x1(%ecx),%edi
4245d6:	eb 0d                	jmp    0x4245e5
4245d8:	8d 79 fe             	lea    -0x2(%ecx),%edi
4245db:	eb 08                	jmp    0x4245e5
4245dd:	8d 79 fd             	lea    -0x3(%ecx),%edi
4245e0:	eb 03                	jmp    0x4245e5
4245e2:	8d 79 fc             	lea    -0x4(%ecx),%edi
4245e5:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
4245e9:	f7 c1 03 00 00 00    	test   $0x3,%ecx
4245ef:	74 1d                	je     0x42460e
4245f1:	8a 11                	mov    (%ecx),%dl
4245f3:	83 c1 01             	add    $0x1,%ecx
4245f6:	84 d2                	test   %dl,%dl
4245f8:	74 66                	je     0x424660
4245fa:	88 17                	mov    %dl,(%edi)
4245fc:	83 c7 01             	add    $0x1,%edi
4245ff:	f7 c1 03 00 00 00    	test   $0x3,%ecx
424605:	75 ea                	jne    0x4245f1
424607:	eb 05                	jmp    0x42460e
424609:	89 17                	mov    %edx,(%edi)
42460b:	83 c7 04             	add    $0x4,%edi
42460e:	ba ff fe fe 7e       	mov    $0x7efefeff,%edx
424613:	8b 01                	mov    (%ecx),%eax
424615:	03 d0                	add    %eax,%edx
424617:	83 f0 ff             	xor    $0xffffffff,%eax
42461a:	33 c2                	xor    %edx,%eax
42461c:	8b 11                	mov    (%ecx),%edx
42461e:	83 c1 04             	add    $0x4,%ecx
424621:	a9 00 01 01 81       	test   $0x81010100,%eax
424626:	74 e1                	je     0x424609
424628:	84 d2                	test   %dl,%dl
42462a:	74 34                	je     0x424660
42462c:	84 f6                	test   %dh,%dh
42462e:	74 27                	je     0x424657
424630:	f7 c2 00 00 ff 00    	test   $0xff0000,%edx
424636:	74 12                	je     0x42464a
424638:	f7 c2 00 00 00 ff    	test   $0xff000000,%edx
42463e:	74 02                	je     0x424642
424640:	eb c7                	jmp    0x424609
424642:	89 17                	mov    %edx,(%edi)
424644:	8b 44 24 08          	mov    0x8(%esp),%eax
424648:	5f                   	pop    %edi
424649:	c3                   	ret
42464a:	66 89 17             	mov    %dx,(%edi)
42464d:	8b 44 24 08          	mov    0x8(%esp),%eax
424651:	c6 47 02 00          	movb   $0x0,0x2(%edi)
424655:	5f                   	pop    %edi
424656:	c3                   	ret
424657:	66 89 17             	mov    %dx,(%edi)
42465a:	8b 44 24 08          	mov    0x8(%esp),%eax
42465e:	5f                   	pop    %edi
42465f:	c3                   	ret
424660:	88 17                	mov    %dl,(%edi)
424662:	8b 44 24 08          	mov    0x8(%esp),%eax
424666:	5f                   	pop    %edi
424667:	c3                   	ret
424668:	55                   	push   %ebp
424669:	8b ec                	mov    %esp,%ebp
42466b:	51                   	push   %ecx
42466c:	e8 7b 55 00 00       	call   0x429bec
424671:	8b 4d 08             	mov    0x8(%ebp),%ecx
424674:	89 45 fc             	mov    %eax,-0x4(%ebp)
424677:	85 c9                	test   %ecx,%ecx
424679:	75 03                	jne    0x42467e
42467b:	8b 48 1c             	mov    0x1c(%eax),%ecx
42467e:	0f b7 11             	movzwl (%ecx),%edx
424681:	33 c0                	xor    %eax,%eax
424683:	53                   	push   %ebx
424684:	56                   	push   %esi
424685:	57                   	push   %edi
424686:	8b 7d 0c             	mov    0xc(%ebp),%edi
424689:	66 85 d2             	test   %dx,%dx
42468c:	74 30                	je     0x4246be
42468e:	0f b7 1f             	movzwl (%edi),%ebx
424691:	8b c7                	mov    %edi,%eax
424693:	66 85 db             	test   %bx,%bx
424696:	74 12                	je     0x4246aa
424698:	8b f3                	mov    %ebx,%esi
42469a:	66 3b f2             	cmp    %dx,%si
42469d:	74 0b                	je     0x4246aa
42469f:	83 c0 02             	add    $0x2,%eax
4246a2:	0f b7 30             	movzwl (%eax),%esi
4246a5:	66 85 f6             	test   %si,%si
4246a8:	75 f0                	jne    0x42469a
4246aa:	33 d2                	xor    %edx,%edx
4246ac:	66 39 10             	cmp    %dx,(%eax)
4246af:	74 0b                	je     0x4246bc
4246b1:	83 c1 02             	add    $0x2,%ecx
4246b4:	0f b7 11             	movzwl (%ecx),%edx
4246b7:	66 85 d2             	test   %dx,%dx
4246ba:	75 d5                	jne    0x424691
4246bc:	33 c0                	xor    %eax,%eax
4246be:	8b f1                	mov    %ecx,%esi
4246c0:	66 39 01             	cmp    %ax,(%ecx)
4246c3:	74 3e                	je     0x424703
4246c5:	0f b7 1f             	movzwl (%edi),%ebx
4246c8:	33 d2                	xor    %edx,%edx
4246ca:	8b c7                	mov    %edi,%eax
4246cc:	66 85 db             	test   %bx,%bx
4246cf:	74 1b                	je     0x4246ec
4246d1:	0f b7 11             	movzwl (%ecx),%edx
4246d4:	89 55 08             	mov    %edx,0x8(%ebp)
4246d7:	8b d3                	mov    %ebx,%edx
4246d9:	66 3b 55 08          	cmp    0x8(%ebp),%dx
4246dd:	74 0b                	je     0x4246ea
4246df:	83 c0 02             	add    $0x2,%eax
4246e2:	0f b7 10             	movzwl (%eax),%edx
4246e5:	66 85 d2             	test   %dx,%dx
4246e8:	75 ef                	jne    0x4246d9
4246ea:	33 d2                	xor    %edx,%edx
4246ec:	66 39 10             	cmp    %dx,(%eax)
4246ef:	75 0a                	jne    0x4246fb
4246f1:	83 c1 02             	add    $0x2,%ecx
4246f4:	66 39 11             	cmp    %dx,(%ecx)
4246f7:	75 d1                	jne    0x4246ca
4246f9:	eb 08                	jmp    0x424703
4246fb:	33 c0                	xor    %eax,%eax
4246fd:	66 89 01             	mov    %ax,(%ecx)
424700:	83 c1 02             	add    $0x2,%ecx
424703:	8b 45 fc             	mov    -0x4(%ebp),%eax
424706:	5f                   	pop    %edi
424707:	89 48 1c             	mov    %ecx,0x1c(%eax)
42470a:	8b c6                	mov    %esi,%eax
42470c:	2b c1                	sub    %ecx,%eax
42470e:	f7 d8                	neg    %eax
424710:	1b c0                	sbb    %eax,%eax
424712:	23 c6                	and    %esi,%eax
424714:	5e                   	pop    %esi
424715:	5b                   	pop    %ebx
424716:	8b e5                	mov    %ebp,%esp
424718:	5d                   	pop    %ebp
424719:	c3                   	ret
42471a:	55                   	push   %ebp
42471b:	8b ec                	mov    %esp,%ebp
42471d:	8b 4d 08             	mov    0x8(%ebp),%ecx
424720:	85 c9                	test   %ecx,%ecx
424722:	75 15                	jne    0x424739
424724:	e8 3f 46 00 00       	call   0x428d68
424729:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
42472f:	e8 c2 48 00 00       	call   0x428ff6
424734:	6a 16                	push   $0x16
424736:	58                   	pop    %eax
424737:	5d                   	pop    %ebp
424738:	c3                   	ret
424739:	a1 e0 4a 4c 00       	mov    0x4c4ae0,%eax
42473e:	89 01                	mov    %eax,(%ecx)
424740:	33 c0                	xor    %eax,%eax
424742:	5d                   	pop    %ebp
424743:	c3                   	ret
424744:	6a 10                	push   $0x10
424746:	68 d0 bb 4b 00       	push   $0x4bbbd0
42474b:	e8 f0 43 00 00       	call   0x428b40
424750:	83 65 e4 00          	andl   $0x0,-0x1c(%ebp)
424754:	8b 7d 0c             	mov    0xc(%ebp),%edi
424757:	81 ff 00 40 00 00    	cmp    $0x4000,%edi
42475d:	74 30                	je     0x42478f
42475f:	81 ff 00 80 00 00    	cmp    $0x8000,%edi
424765:	74 28                	je     0x42478f
424767:	81 ff 00 00 01 00    	cmp    $0x10000,%edi
42476d:	74 20                	je     0x42478f
42476f:	81 ff 00 00 04 00    	cmp    $0x40000,%edi
424775:	74 18                	je     0x42478f
424777:	81 ff 00 00 02 00    	cmp    $0x20000,%edi
42477d:	74 10                	je     0x42478f
42477f:	e8 e4 45 00 00       	call   0x428d68
424784:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
42478a:	e9 ac 00 00 00       	jmp    0x42483b
42478f:	8b 75 08             	mov    0x8(%ebp),%esi
424792:	83 fe fe             	cmp    $0xfffffffe,%esi
424795:	75 10                	jne    0x4247a7
424797:	e8 cc 45 00 00       	call   0x428d68
42479c:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
4247a2:	e9 99 00 00 00       	jmp    0x424840
4247a7:	85 f6                	test   %esi,%esi
4247a9:	0f 88 81 00 00 00    	js     0x424830
4247af:	3b 35 8c 51 4c 00    	cmp    0x4c518c,%esi
4247b5:	73 79                	jae    0x424830
4247b7:	8b c6                	mov    %esi,%eax
4247b9:	c1 f8 05             	sar    $0x5,%eax
4247bc:	89 45 0c             	mov    %eax,0xc(%ebp)
4247bf:	8b de                	mov    %esi,%ebx
4247c1:	83 e3 1f             	and    $0x1f,%ebx
4247c4:	c1 e3 06             	shl    $0x6,%ebx
4247c7:	8b 04 85 e0 49 4c 00 	mov    0x4c49e0(,%eax,4),%eax
4247ce:	0f be 44 18 04       	movsbl 0x4(%eax,%ebx,1),%eax
4247d3:	83 e0 01             	and    $0x1,%eax
4247d6:	74 58                	je     0x424830
4247d8:	56                   	push   %esi
4247d9:	e8 68 8c 00 00       	call   0x42d446
4247de:	59                   	pop    %ecx
4247df:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
4247e3:	8b 45 0c             	mov    0xc(%ebp),%eax
4247e6:	8b 04 85 e0 49 4c 00 	mov    0x4c49e0(,%eax,4),%eax
4247ed:	f6 44 18 04 01       	testb  $0x1,0x4(%eax,%ebx,1)
4247f2:	74 0d                	je     0x424801
4247f4:	57                   	push   %edi
4247f5:	56                   	push   %esi
4247f6:	e8 4e 00 00 00       	call   0x424849
4247fb:	59                   	pop    %ecx
4247fc:	59                   	pop    %ecx
4247fd:	8b f8                	mov    %eax,%edi
4247ff:	eb 0e                	jmp    0x42480f
424801:	e8 62 45 00 00       	call   0x428d68
424806:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
42480c:	83 cf ff             	or     $0xffffffff,%edi
42480f:	89 7d e4             	mov    %edi,-0x1c(%ebp)
424812:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
424819:	e8 0a 00 00 00       	call   0x424828
42481e:	8b c7                	mov    %edi,%eax
424820:	eb 21                	jmp    0x424843
424822:	8b 75 08             	mov    0x8(%ebp),%esi
424825:	8b 7d e4             	mov    -0x1c(%ebp),%edi
424828:	56                   	push   %esi
424829:	e8 be 8f 00 00       	call   0x42d7ec
42482e:	59                   	pop    %ecx
42482f:	c3                   	ret
424830:	e8 33 45 00 00       	call   0x428d68
424835:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
42483b:	e8 b6 47 00 00       	call   0x428ff6
424840:	83 c8 ff             	or     $0xffffffff,%eax
424843:	e8 3d 43 00 00       	call   0x428b85
424848:	c3                   	ret
424849:	55                   	push   %ebp
42484a:	8b ec                	mov    %esp,%ebp
42484c:	53                   	push   %ebx
42484d:	56                   	push   %esi
42484e:	8b 75 08             	mov    0x8(%ebp),%esi
424851:	8b de                	mov    %esi,%ebx
424853:	c1 fb 05             	sar    $0x5,%ebx
424856:	83 e6 1f             	and    $0x1f,%esi
424859:	c1 e6 06             	shl    $0x6,%esi
42485c:	57                   	push   %edi
42485d:	8b 3c 9d e0 49 4c 00 	mov    0x4c49e0(,%ebx,4),%edi
424864:	8a 4c 37 04          	mov    0x4(%edi,%esi,1),%cl
424868:	0f b6 c1             	movzbl %cl,%eax
42486b:	25 80 00 00 00       	and    $0x80,%eax
424870:	89 45 08             	mov    %eax,0x8(%ebp)
424873:	8a 44 37 24          	mov    0x24(%edi,%esi,1),%al
424877:	02 c0                	add    %al,%al
424879:	0f be d0             	movsbl %al,%edx
42487c:	8b 45 0c             	mov    0xc(%ebp),%eax
42487f:	d1 fa                	sar    $1,%edx
424881:	3d 00 40 00 00       	cmp    $0x4000,%eax
424886:	74 59                	je     0x4248e1
424888:	3d 00 80 00 00       	cmp    $0x8000,%eax
42488d:	74 49                	je     0x4248d8
42488f:	3d 00 00 01 00       	cmp    $0x10000,%eax
424894:	74 2a                	je     0x4248c0
424896:	3d 00 00 02 00       	cmp    $0x20000,%eax
42489b:	74 23                	je     0x4248c0
42489d:	3d 00 00 04 00       	cmp    $0x40000,%eax
4248a2:	75 50                	jne    0x4248f4
4248a4:	80 c9 80             	or     $0x80,%cl
4248a7:	88 4c 37 04          	mov    %cl,0x4(%edi,%esi,1)
4248ab:	8b 0c 9d e0 49 4c 00 	mov    0x4c49e0(,%ebx,4),%ecx
4248b2:	8a 44 31 24          	mov    0x24(%ecx,%esi,1),%al
4248b6:	24 81                	and    $0x81,%al
4248b8:	0c 01                	or     $0x1,%al
4248ba:	88 44 31 24          	mov    %al,0x24(%ecx,%esi,1)
4248be:	eb 34                	jmp    0x4248f4
4248c0:	80 c9 80             	or     $0x80,%cl
4248c3:	88 4c 37 04          	mov    %cl,0x4(%edi,%esi,1)
4248c7:	8b 0c 9d e0 49 4c 00 	mov    0x4c49e0(,%ebx,4),%ecx
4248ce:	8a 44 31 24          	mov    0x24(%ecx,%esi,1),%al
4248d2:	24 82                	and    $0x82,%al
4248d4:	0c 02                	or     $0x2,%al
4248d6:	eb e2                	jmp    0x4248ba
4248d8:	80 e1 7f             	and    $0x7f,%cl
4248db:	88 4c 37 04          	mov    %cl,0x4(%edi,%esi,1)
4248df:	eb 13                	jmp    0x4248f4
4248e1:	80 c9 80             	or     $0x80,%cl
4248e4:	88 4c 37 04          	mov    %cl,0x4(%edi,%esi,1)
4248e8:	8b 04 9d e0 49 4c 00 	mov    0x4c49e0(,%ebx,4),%eax
4248ef:	80 64 30 24 80       	andb   $0x80,0x24(%eax,%esi,1)
4248f4:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
4248f8:	5f                   	pop    %edi
4248f9:	5e                   	pop    %esi
4248fa:	5b                   	pop    %ebx
4248fb:	75 07                	jne    0x424904
4248fd:	b8 00 80 00 00       	mov    $0x8000,%eax
424902:	5d                   	pop    %ebp
424903:	c3                   	ret
424904:	f7 da                	neg    %edx
424906:	1b d2                	sbb    %edx,%edx
424908:	81 e2 00 c0 00 00    	and    $0xc000,%edx
42490e:	8d 82 00 40 00 00    	lea    0x4000(%edx),%eax
424914:	5d                   	pop    %ebp
424915:	c3                   	ret
424916:	55                   	push   %ebp
424917:	8b ec                	mov    %esp,%ebp
424919:	8b 45 08             	mov    0x8(%ebp),%eax
42491c:	85 c0                	test   %eax,%eax
42491e:	75 15                	jne    0x424935
424920:	e8 43 44 00 00       	call   0x428d68
424925:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
42492b:	e8 c6 46 00 00       	call   0x428ff6
424930:	83 c8 ff             	or     $0xffffffff,%eax
424933:	5d                   	pop    %ebp
424934:	c3                   	ret
424935:	8b 40 10             	mov    0x10(%eax),%eax
424938:	5d                   	pop    %ebp
424939:	c3                   	ret
42493a:	55                   	push   %ebp
42493b:	8b ec                	mov    %esp,%ebp
42493d:	51                   	push   %ecx
42493e:	51                   	push   %ecx
42493f:	8b 4d 0c             	mov    0xc(%ebp),%ecx
424942:	53                   	push   %ebx
424943:	56                   	push   %esi
424944:	57                   	push   %edi
424945:	85 c9                	test   %ecx,%ecx
424947:	74 1e                	je     0x424967
424949:	8b 5d 10             	mov    0x10(%ebp),%ebx
42494c:	85 db                	test   %ebx,%ebx
42494e:	74 17                	je     0x424967
424950:	8b 75 14             	mov    0x14(%ebp),%esi
424953:	85 f6                	test   %esi,%esi
424955:	75 19                	jne    0x424970
424957:	e8 0c 44 00 00       	call   0x428d68
42495c:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
424962:	e8 8f 46 00 00       	call   0x428ff6
424967:	33 c0                	xor    %eax,%eax
424969:	5f                   	pop    %edi
42496a:	5e                   	pop    %esi
42496b:	5b                   	pop    %ebx
42496c:	8b e5                	mov    %ebp,%esp
42496e:	5d                   	pop    %ebp
42496f:	c3                   	ret
424970:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
424974:	74 e1                	je     0x424957
424976:	83 c8 ff             	or     $0xffffffff,%eax
424979:	33 d2                	xor    %edx,%edx
42497b:	f7 f1                	div    %ecx
42497d:	3b d8                	cmp    %eax,%ebx
42497f:	77 d6                	ja     0x424957
424981:	8b f9                	mov    %ecx,%edi
424983:	0f af fb             	imul   %ebx,%edi
424986:	f7 46 0c 0c 01 00 00 	testl  $0x10c,0xc(%esi)
42498d:	8b df                	mov    %edi,%ebx
42498f:	74 05                	je     0x424996
424991:	8b 4e 18             	mov    0x18(%esi),%ecx
424994:	eb 05                	jmp    0x42499b
424996:	b9 00 10 00 00       	mov    $0x1000,%ecx
42499b:	89 4d fc             	mov    %ecx,-0x4(%ebp)
42499e:	85 ff                	test   %edi,%edi
4249a0:	0f 84 d3 00 00 00    	je     0x424a79