49059a:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
4905a1:	8d 45 f4             	lea    -0xc(%ebp),%eax
4905a4:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
4905aa:	c3                   	ret
4905ab:	ff 25 44 80 4a 00    	jmp    *0x4a8044
4905b1:	ff 25 40 80 4a 00    	jmp    *0x4a8040
4905b7:	ff 25 34 80 4a 00    	jmp    *0x4a8034
4905bd:	cc                   	int3
4905be:	cc                   	int3
4905bf:	cc                   	int3
4905c0:	8b ff                	mov    %edi,%edi
4905c2:	55                   	push   %ebp
4905c3:	8b ec                	mov    %esp,%ebp
4905c5:	8b 45 08             	mov    0x8(%ebp),%eax
4905c8:	8b 00                	mov    (%eax),%eax
4905ca:	81 38 63 73 6d e0    	cmpl   $0xe06d7363,(%eax)
4905d0:	75 2b                	jne    0x4905fd
4905d2:	83 78 10 03          	cmpl   $0x3,0x10(%eax)
4905d6:	75 25                	jne    0x4905fd
4905d8:	8b 40 14             	mov    0x14(%eax),%eax
4905db:	3d 20 05 93 19       	cmp    $0x19930520,%eax
4905e0:	74 15                	je     0x4905f7
4905e2:	3d 21 05 93 19       	cmp    $0x19930521,%eax
4905e7:	74 0e                	je     0x4905f7
4905e9:	3d 22 05 93 19       	cmp    $0x19930522,%eax
4905ee:	74 07                	je     0x4905f7
4905f0:	3d 00 40 99 01       	cmp    $0x1994000,%eax
4905f5:	75 06                	jne    0x4905fd
4905f7:	ff 15 f8 7f 4a 00    	call   *0x4a7ff8
4905fd:	33 c0                	xor    %eax,%eax
4905ff:	5d                   	pop    %ebp
490600:	c2 04 00             	ret    $0x4
490603:	cc                   	int3
490604:	cc                   	int3
490605:	cc                   	int3
490606:	cc                   	int3
490607:	cc                   	int3
490608:	cc                   	int3
490609:	cc                   	int3
49060a:	cc                   	int3
49060b:	cc                   	int3
49060c:	cc                   	int3
49060d:	cc                   	int3
49060e:	cc                   	int3
49060f:	cc                   	int3
490610:	68 c0 05 49 00       	push   $0x4905c0
490615:	ff 15 b4 7e 4a 00    	call   *0x4a7eb4
49061b:	33 c0                	xor    %eax,%eax
49061d:	c3                   	ret
49061e:	ff 25 24 80 4a 00    	jmp    *0x4a8024
490624:	6a 0c                	push   $0xc
490626:	68 78 e9 49 00       	push   $0x49e978
49062b:	e8 a8 02 00 00       	call   0x4908d8
490630:	33 c9                	xor    %ecx,%ecx
490632:	8b 45 08             	mov    0x8(%ebp),%eax
490635:	85 c0                	test   %eax,%eax
490637:	74 4b                	je     0x490684
490639:	83 f8 ff             	cmp    $0xffffffff,%eax
49063c:	74 46                	je     0x490684
49063e:	89 4d fc             	mov    %ecx,-0x4(%ebp)
490641:	ba 4d 5a 00 00       	mov    $0x5a4d,%edx
490646:	66 39 10             	cmp    %dx,(%eax)
490649:	75 32                	jne    0x49067d
49064b:	8b 50 3c             	mov    0x3c(%eax),%edx
49064e:	85 d2                	test   %edx,%edx
490650:	78 2b                	js     0x49067d
490652:	81 fa 00 00 00 10    	cmp    $0x10000000,%edx
490658:	73 23                	jae    0x49067d
49065a:	03 c2                	add    %edx,%eax
49065c:	89 45 e4             	mov    %eax,-0x1c(%ebp)
49065f:	8b 08                	mov    (%eax),%ecx
490661:	81 e9 50 45 00 00    	sub    $0x4550,%ecx
490667:	f7 d9                	neg    %ecx
490669:	1b c9                	sbb    %ecx,%ecx
49066b:	f7 d1                	not    %ecx
49066d:	23 c8                	and    %eax,%ecx
49066f:	eb 09                	jmp    0x49067a
490671:	33 c0                	xor    %eax,%eax
490673:	40                   	inc    %eax
490674:	c3                   	ret
490675:	8b 65 e8             	mov    -0x18(%ebp),%esp
490678:	33 c9                	xor    %ecx,%ecx
49067a:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
49067d:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
490684:	8b c1                	mov    %ecx,%eax
490686:	8b 4d f0             	mov    -0x10(%ebp),%ecx
490689:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
490690:	59                   	pop    %ecx
490691:	5f                   	pop    %edi
490692:	5e                   	pop    %esi
490693:	5b                   	pop    %ebx
490694:	c9                   	leave
490695:	c2 04 00             	ret    $0x4
490698:	8b ff                	mov    %edi,%edi
49069a:	55                   	push   %ebp
49069b:	8b ec                	mov    %esp,%ebp
49069d:	6a 00                	push   $0x0
49069f:	ff 15 70 72 4a 00    	call   *0x4a7270
4906a5:	85 c0                	test   %eax,%eax
4906a7:	74 20                	je     0x4906c9
4906a9:	50                   	push   %eax
4906aa:	e8 75 ff ff ff       	call   0x490624
4906af:	85 c0                	test   %eax,%eax
4906b1:	74 16                	je     0x4906c9
4906b3:	0f b7 48 5c          	movzwl 0x5c(%eax),%ecx
4906b7:	6a 02                	push   $0x2
4906b9:	58                   	pop    %eax
4906ba:	66 3b c8             	cmp    %ax,%cx
4906bd:	74 0d                	je     0x4906cc
4906bf:	83 f9 03             	cmp    $0x3,%ecx
4906c2:	75 05                	jne    0x4906c9
4906c4:	33 c0                	xor    %eax,%eax
4906c6:	40                   	inc    %eax
4906c7:	5d                   	pop    %ebp
4906c8:	c3                   	ret
4906c9:	8b 45 08             	mov    0x8(%ebp),%eax
4906cc:	5d                   	pop    %ebp
4906cd:	c3                   	ret
4906ce:	ff 25 1c 80 4a 00    	jmp    *0x4a801c
4906d4:	cc                   	int3
4906d5:	cc                   	int3
4906d6:	cc                   	int3
4906d7:	cc                   	int3
4906d8:	cc                   	int3
4906d9:	cc                   	int3
4906da:	cc                   	int3
4906db:	cc                   	int3
4906dc:	cc                   	int3
4906dd:	cc                   	int3
4906de:	cc                   	int3
4906df:	cc                   	int3
4906e0:	8b ff                	mov    %edi,%edi
4906e2:	55                   	push   %ebp
4906e3:	8b ec                	mov    %esp,%ebp
4906e5:	8b 45 08             	mov    0x8(%ebp),%eax
4906e8:	33 d2                	xor    %edx,%edx
4906ea:	53                   	push   %ebx
4906eb:	56                   	push   %esi
4906ec:	57                   	push   %edi
4906ed:	8b 48 3c             	mov    0x3c(%eax),%ecx
4906f0:	03 c8                	add    %eax,%ecx
4906f2:	0f b7 41 14          	movzwl 0x14(%ecx),%eax
4906f6:	0f b7 59 06          	movzwl 0x6(%ecx),%ebx
4906fa:	83 c0 18             	add    $0x18,%eax
4906fd:	03 c1                	add    %ecx,%eax
4906ff:	85 db                	test   %ebx,%ebx
490701:	74 1b                	je     0x49071e
490703:	8b 7d 0c             	mov    0xc(%ebp),%edi
490706:	8b 70 0c             	mov    0xc(%eax),%esi
490709:	3b fe                	cmp    %esi,%edi
49070b:	72 09                	jb     0x490716
49070d:	8b 48 08             	mov    0x8(%eax),%ecx
490710:	03 ce                	add    %esi,%ecx
490712:	3b f9                	cmp    %ecx,%edi
490714:	72 0a                	jb     0x490720
490716:	42                   	inc    %edx
490717:	83 c0 28             	add    $0x28,%eax
49071a:	3b d3                	cmp    %ebx,%edx
49071c:	72 e8                	jb     0x490706
49071e:	33 c0                	xor    %eax,%eax
490720:	5f                   	pop    %edi
490721:	5e                   	pop    %esi
490722:	5b                   	pop    %ebx
490723:	5d                   	pop    %ebp
490724:	c3                   	ret
490725:	cc                   	int3
490726:	cc                   	int3
490727:	cc                   	int3
490728:	cc                   	int3
490729:	cc                   	int3
49072a:	cc                   	int3
49072b:	cc                   	int3
49072c:	cc                   	int3
49072d:	cc                   	int3
49072e:	cc                   	int3
49072f:	cc                   	int3
490730:	8b ff                	mov    %edi,%edi
490732:	55                   	push   %ebp
490733:	8b ec                	mov    %esp,%ebp
490735:	6a fe                	push   $0xfffffffe
490737:	68 98 e9 49 00       	push   $0x49e998
49073c:	68 70 04 49 00       	push   $0x490470
490741:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
490747:	50                   	push   %eax
490748:	83 ec 08             	sub    $0x8,%esp
49074b:	53                   	push   %ebx
49074c:	56                   	push   %esi
49074d:	57                   	push   %edi
49074e:	a1 dc 38 4a 00       	mov    0x4a38dc,%eax
490753:	31 45 f8             	xor    %eax,-0x8(%ebp)
490756:	33 c5                	xor    %ebp,%eax
490758:	50                   	push   %eax
490759:	8d 45 f0             	lea    -0x10(%ebp),%eax
49075c:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
490762:	89 65 e8             	mov    %esp,-0x18(%ebp)
490765:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
49076c:	68 00 00 40 00       	push   $0x400000
490771:	e8 7a 00 00 00       	call   0x4907f0
490776:	83 c4 04             	add    $0x4,%esp
490779:	85 c0                	test   %eax,%eax
49077b:	74 54                	je     0x4907d1
49077d:	8b 45 08             	mov    0x8(%ebp),%eax
490780:	2d 00 00 40 00       	sub    $0x400000,%eax
490785:	50                   	push   %eax
490786:	68 00 00 40 00       	push   $0x400000
49078b:	e8 50 ff ff ff       	call   0x4906e0
490790:	83 c4 08             	add    $0x8,%esp
490793:	85 c0                	test   %eax,%eax
490795:	74 3a                	je     0x4907d1
490797:	8b 40 24             	mov    0x24(%eax),%eax
49079a:	c1 e8 1f             	shr    $0x1f,%eax
49079d:	f7 d0                	not    %eax
49079f:	83 e0 01             	and    $0x1,%eax
4907a2:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
4907a9:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4907ac:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4907b3:	59                   	pop    %ecx
4907b4:	5f                   	pop    %edi
4907b5:	5e                   	pop    %esi
4907b6:	5b                   	pop    %ebx
4907b7:	8b e5                	mov    %ebp,%esp
4907b9:	5d                   	pop    %ebp
4907ba:	c3                   	ret
4907bb:	8b 45 ec             	mov    -0x14(%ebp),%eax
4907be:	8b 00                	mov    (%eax),%eax
4907c0:	33 c9                	xor    %ecx,%ecx
4907c2:	81 38 05 00 00 c0    	cmpl   $0xc0000005,(%eax)
4907c8:	0f 94 c1             	sete   %cl
4907cb:	8b c1                	mov    %ecx,%eax
4907cd:	c3                   	ret
4907ce:	8b 65 e8             	mov    -0x18(%ebp),%esp
4907d1:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
4907d8:	33 c0                	xor    %eax,%eax
4907da:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4907dd:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4907e4:	59                   	pop    %ecx
4907e5:	5f                   	pop    %edi
4907e6:	5e                   	pop    %esi
4907e7:	5b                   	pop    %ebx
4907e8:	8b e5                	mov    %ebp,%esp
4907ea:	5d                   	pop    %ebp
4907eb:	c3                   	ret
4907ec:	cc                   	int3
4907ed:	cc                   	int3
4907ee:	cc                   	int3
4907ef:	cc                   	int3
4907f0:	8b ff                	mov    %edi,%edi
4907f2:	55                   	push   %ebp
4907f3:	8b ec                	mov    %esp,%ebp
4907f5:	8b 4d 08             	mov    0x8(%ebp),%ecx
4907f8:	b8 4d 5a 00 00       	mov    $0x5a4d,%eax
4907fd:	66 39 01             	cmp    %ax,(%ecx)
490800:	75 1f                	jne    0x490821
490802:	8b 41 3c             	mov    0x3c(%ecx),%eax
490805:	03 c1                	add    %ecx,%eax
490807:	81 38 50 45 00 00    	cmpl   $0x4550,(%eax)
49080d:	75 12                	jne    0x490821
49080f:	b9 0b 01 00 00       	mov    $0x10b,%ecx
490814:	66 39 48 18          	cmp    %cx,0x18(%eax)
490818:	75 07                	jne    0x490821
49081a:	b8 01 00 00 00       	mov    $0x1,%eax
49081f:	5d                   	pop    %ebp
490820:	c3                   	ret
490821:	33 c0                	xor    %eax,%eax
490823:	5d                   	pop    %ebp
490824:	c3                   	ret
490825:	8b ff                	mov    %edi,%edi
490827:	55                   	push   %ebp
490828:	8b ec                	mov    %esp,%ebp
49082a:	83 ec 14             	sub    $0x14,%esp
49082d:	83 65 f4 00          	andl   $0x0,-0xc(%ebp)
490831:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
490835:	a1 dc 38 4a 00       	mov    0x4a38dc,%eax
49083a:	56                   	push   %esi
49083b:	57                   	push   %edi
49083c:	bf 4e e6 40 bb       	mov    $0xbb40e64e,%edi
490841:	be 00 00 ff ff       	mov    $0xffff0000,%esi
490846:	3b c7                	cmp    %edi,%eax
490848:	74 04                	je     0x49084e
49084a:	85 c6                	test   %eax,%esi
49084c:	75 64                	jne    0x4908b2
49084e:	8d 45 f4             	lea    -0xc(%ebp),%eax
490851:	50                   	push   %eax
490852:	ff 15 60 7f 4a 00    	call   *0x4a7f60
490858:	8b 45 f8             	mov    -0x8(%ebp),%eax
49085b:	33 45 f4             	xor    -0xc(%ebp),%eax
49085e:	89 45 fc             	mov    %eax,-0x4(%ebp)
490861:	ff 15 78 72 4a 00    	call   *0x4a7278
490867:	31 45 fc             	xor    %eax,-0x4(%ebp)
49086a:	ff 15 ac 72 4a 00    	call   *0x4a72ac
490870:	31 45 fc             	xor    %eax,-0x4(%ebp)
490873:	ff 15 e0 71 4a 00    	call   *0x4a71e0
490879:	33 45 fc             	xor    -0x4(%ebp),%eax
49087c:	8d 4d fc             	lea    -0x4(%ebp),%ecx
49087f:	33 c1                	xor    %ecx,%eax
490881:	89 45 fc             	mov    %eax,-0x4(%ebp)
490884:	8d 45 ec             	lea    -0x14(%ebp),%eax
490887:	50                   	push   %eax
490888:	ff 15 00 7f 4a 00    	call   *0x4a7f00
49088e:	8b 45 f0             	mov    -0x10(%ebp),%eax
490891:	33 45 ec             	xor    -0x14(%ebp),%eax
490894:	33 45 fc             	xor    -0x4(%ebp),%eax
490897:	8b c8                	mov    %eax,%ecx
490899:	3b c7                	cmp    %edi,%eax
49089b:	74 08                	je     0x4908a5
49089d:	85 35 dc 38 4a 00    	test   %esi,0x4a38dc
4908a3:	75 07                	jne    0x4908ac
4908a5:	b8 4f e6 40 bb       	mov    $0xbb40e64f,%eax
4908aa:	8b c8                	mov    %eax,%ecx
4908ac:	89 0d dc 38 4a 00    	mov    %ecx,0x4a38dc
4908b2:	f7 d0                	not    %eax
4908b4:	5f                   	pop    %edi
4908b5:	a3 e0 38 4a 00       	mov    %eax,0x4a38e0
4908ba:	5e                   	pop    %esi
4908bb:	c9                   	leave
4908bc:	c3                   	ret
4908bd:	68 00 00 03 00       	push   $0x30000
4908c2:	68 00 00 01 00       	push   $0x10000
4908c7:	ff 15 d8 7f 4a 00    	call   *0x4a7fd8
4908cd:	59                   	pop    %ecx
4908ce:	59                   	pop    %ecx
4908cf:	c3                   	ret
4908d0:	ff 25 00 80 4a 00    	jmp    *0x4a8000
4908d6:	cc                   	int3
4908d7:	cc                   	int3
4908d8:	68 70 04 49 00       	push   $0x490470
4908dd:	64 ff 35 00 00 00 00 	push   %fs:0x0
4908e4:	8b 44 24 10          	mov    0x10(%esp),%eax
4908e8:	89 6c 24 10          	mov    %ebp,0x10(%esp)
4908ec:	8d 6c 24 10          	lea    0x10(%esp),%ebp
4908f0:	2b e0                	sub    %eax,%esp
4908f2:	53                   	push   %ebx
4908f3:	56                   	push   %esi
4908f4:	57                   	push   %edi
4908f5:	a1 dc 38 4a 00       	mov    0x4a38dc,%eax
4908fa:	31 45 fc             	xor    %eax,-0x4(%ebp)
4908fd:	33 c5                	xor    %ebp,%eax
4908ff:	50                   	push   %eax
490900:	89 65 e8             	mov    %esp,-0x18(%ebp)
490903:	ff 75 f8             	push   -0x8(%ebp)
490906:	8b 45 fc             	mov    -0x4(%ebp),%eax
490909:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
490910:	89 45 f8             	mov    %eax,-0x8(%ebp)
490913:	8d 45 f0             	lea    -0x10(%ebp),%eax
490916:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
49091c:	c3                   	ret
49091d:	8b 4d f0             	mov    -0x10(%ebp),%ecx
490920:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
490927:	59                   	pop    %ecx
490928:	5f                   	pop    %edi