4025e6:	cc                   	int3
4025e7:	cc                   	int3
4025e8:	cc                   	int3
4025e9:	cc                   	int3
4025ea:	cc                   	int3
4025eb:	cc                   	int3
4025ec:	cc                   	int3
4025ed:	cc                   	int3
4025ee:	cc                   	int3
4025ef:	cc                   	int3
4025f0:	a1 40 30 40 00       	mov    0x403040,%eax
4025f5:	68 34 30 40 00       	push   $0x403034
4025fa:	ff 35 3c 30 40 00    	push   0x40303c
402600:	a3 34 30 40 00       	mov    %eax,0x403034
402605:	68 28 30 40 00       	push   $0x403028
40260a:	68 24 30 40 00       	push   $0x403024
40260f:	68 20 30 40 00       	push   $0x403020
402614:	ff 15 04 41 40 00    	call   *0x404104
40261a:	83 c4 14             	add    $0x14,%esp
40261d:	a3 2c 30 40 00       	mov    %eax,0x40302c
402622:	c3                   	ret
402623:	6a 58                	push   $0x58
402625:	68 e8 2d 40 00       	push   $0x402de8
40262a:	e8 b9 05 00 00       	call   0x402be8
40262f:	33 db                	xor    %ebx,%ebx
402631:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
402634:	8d 45 98             	lea    -0x68(%ebp),%eax
402637:	50                   	push   %eax
402638:	ff 15 84 40 40 00    	call   *0x404084
40263e:	89 5d fc             	mov    %ebx,-0x4(%ebp)
402641:	64 a1 18 00 00 00    	mov    %fs:0x18,%eax
402647:	8b 70 04             	mov    0x4(%eax),%esi
40264a:	8b fb                	mov    %ebx,%edi
40264c:	ba ac 33 40 00       	mov    $0x4033ac,%edx
402651:	8b ce                	mov    %esi,%ecx
402653:	33 c0                	xor    %eax,%eax
402655:	f0 0f b1 0a          	lock cmpxchg %ecx,(%edx)
402659:	85 c0                	test   %eax,%eax
40265b:	74 18                	je     0x402675
40265d:	3b c6                	cmp    %esi,%eax
40265f:	75 07                	jne    0x402668
402661:	33 f6                	xor    %esi,%esi
402663:	46                   	inc    %esi
402664:	8b fe                	mov    %esi,%edi
402666:	eb 10                	jmp    0x402678
402668:	68 e8 03 00 00       	push   $0x3e8
40266d:	ff 15 88 40 40 00    	call   *0x404088
402673:	eb d7                	jmp    0x40264c
402675:	33 f6                	xor    %esi,%esi
402677:	46                   	inc    %esi
402678:	39 35 b0 33 40 00    	cmp    %esi,0x4033b0
40267e:	75 0a                	jne    0x40268a
402680:	6a 1f                	push   $0x1f
402682:	e8 47 03 00 00       	call   0x4029ce
402687:	59                   	pop    %ecx
402688:	eb 3a                	jmp    0x4026c4
40268a:	39 1d b0 33 40 00    	cmp    %ebx,0x4033b0
402690:	75 2c                	jne    0x4026be
402692:	89 35 b0 33 40 00    	mov    %esi,0x4033b0
402698:	68 e8 10 40 00       	push   $0x4010e8
40269d:	68 dc 10 40 00       	push   $0x4010dc
4026a2:	e8 57 01 00 00       	call   0x4027fe
4026a7:	59                   	pop    %ecx
4026a8:	59                   	pop    %ecx
4026a9:	85 c0                	test   %eax,%eax
4026ab:	74 17                	je     0x4026c4
4026ad:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
4026b4:	b8 ff 00 00 00       	mov    $0xff,%eax
4026b9:	e9 30 01 00 00       	jmp    0x4027ee
4026be:	89 35 1c 30 40 00    	mov    %esi,0x40301c
4026c4:	39 35 b0 33 40 00    	cmp    %esi,0x4033b0
4026ca:	75 1b                	jne    0x4026e7
4026cc:	68 d8 10 40 00       	push   $0x4010d8
4026d1:	68 cc 10 40 00       	push   $0x4010cc
4026d6:	e8 05 05 00 00       	call   0x402be0
4026db:	59                   	pop    %ecx
4026dc:	59                   	pop    %ecx
4026dd:	c7 05 b0 33 40 00 02 	movl   $0x2,0x4033b0
4026e4:	00 00 00
4026e7:	85 ff                	test   %edi,%edi
4026e9:	75 09                	jne    0x4026f4
4026eb:	33 c0                	xor    %eax,%eax
4026ed:	b9 ac 33 40 00       	mov    $0x4033ac,%ecx
4026f2:	87 01                	xchg   %eax,(%ecx)
4026f4:	83 3d b4 33 40 00 00 	cmpl   $0x0,0x4033b4
4026fb:	74 23                	je     0x402720
4026fd:	68 b4 33 40 00       	push   $0x4033b4
402702:	e8 39 03 00 00       	call   0x402a40
402707:	59                   	pop    %ecx
402708:	85 c0                	test   %eax,%eax
40270a:	74 14                	je     0x402720
40270c:	53                   	push   %ebx
40270d:	6a 02                	push   $0x2
40270f:	53                   	push   %ebx
402710:	8b 35 b4 33 40 00    	mov    0x4033b4,%esi
402716:	8b ce                	mov    %esi,%ecx
402718:	ff 15 48 41 40 00    	call   *0x404148
40271e:	ff d6                	call   *%esi
402720:	a1 e4 40 40 00       	mov    0x4040e4,%eax
402725:	8b 08                	mov    (%eax),%ecx
402727:	85 c9                	test   %ecx,%ecx
402729:	74 82                	je     0x4026ad
40272b:	89 4d e0             	mov    %ecx,-0x20(%ebp)
40272e:	6a 20                	push   $0x20
402730:	5e                   	pop    %esi
402731:	8b 55 e4             	mov    -0x1c(%ebp),%edx
402734:	0f b7 01             	movzwl (%ecx),%eax
402737:	66 3b c6             	cmp    %si,%ax
40273a:	77 4f                	ja     0x40278b
40273c:	66 85 c0             	test   %ax,%ax
40273f:	74 19                	je     0x40275a
402741:	85 d2                	test   %edx,%edx
402743:	75 46                	jne    0x40278b
402745:	66 85 c0             	test   %ax,%ax
402748:	74 10                	je     0x40275a
40274a:	66 3b c6             	cmp    %si,%ax
40274d:	77 0b                	ja     0x40275a
40274f:	83 c1 02             	add    $0x2,%ecx
402752:	89 4d e0             	mov    %ecx,-0x20(%ebp)
402755:	0f b7 01             	movzwl (%ecx),%eax
402758:	eb eb                	jmp    0x402745
40275a:	f6 45 c4 01          	testb  $0x1,-0x3c(%ebp)
40275e:	74 06                	je     0x402766
402760:	0f b7 45 c8          	movzwl -0x38(%ebp),%eax
402764:	eb 03                	jmp    0x402769
402766:	6a 0a                	push   $0xa
402768:	58                   	pop    %eax
402769:	50                   	push   %eax
40276a:	51                   	push   %ecx
40276b:	53                   	push   %ebx
40276c:	68 00 00 40 00       	push   $0x400000
402771:	e8 0e f5 ff ff       	call   0x401c84
402776:	a3 18 30 40 00       	mov    %eax,0x403018
40277b:	83 3d 30 30 40 00 00 	cmpl   $0x0,0x403030
402782:	75 4f                	jne    0x4027d3
402784:	50                   	push   %eax
402785:	ff 15 fc 40 40 00    	call   *0x4040fc
40278b:	83 f8 22             	cmp    $0x22,%eax
40278e:	75 0c                	jne    0x40279c
402790:	33 c0                	xor    %eax,%eax
402792:	85 d2                	test   %edx,%edx
402794:	0f 94 c0             	sete   %al
402797:	8b d0                	mov    %eax,%edx
402799:	89 55 e4             	mov    %edx,-0x1c(%ebp)
40279c:	83 c1 02             	add    $0x2,%ecx
40279f:	89 4d e0             	mov    %ecx,-0x20(%ebp)
4027a2:	eb 90                	jmp    0x402734
4027a4:	8b 4d ec             	mov    -0x14(%ebp),%ecx
4027a7:	8b 01                	mov    (%ecx),%eax
4027a9:	8b 00                	mov    (%eax),%eax
4027ab:	89 45 dc             	mov    %eax,-0x24(%ebp)
4027ae:	51                   	push   %ecx
4027af:	50                   	push   %eax
4027b0:	e8 69 01 00 00       	call   0x40291e
4027b5:	59                   	pop    %ecx
4027b6:	59                   	pop    %ecx
4027b7:	c3                   	ret
4027b8:	8b 65 e8             	mov    -0x18(%ebp),%esp
4027bb:	8b 45 dc             	mov    -0x24(%ebp),%eax
4027be:	a3 18 30 40 00       	mov    %eax,0x403018
4027c3:	83 3d 30 30 40 00 00 	cmpl   $0x0,0x403030
4027ca:	75 07                	jne    0x4027d3
4027cc:	50                   	push   %eax
4027cd:	ff 15 f8 40 40 00    	call   *0x4040f8
4027d3:	83 3d 1c 30 40 00 00 	cmpl   $0x0,0x40301c
4027da:	75 0b                	jne    0x4027e7
4027dc:	ff 15 f4 40 40 00    	call   *0x4040f4
4027e2:	a1 18 30 40 00       	mov    0x403018,%eax
4027e7:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
4027ee:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4027f1:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4027f8:	59                   	pop    %ecx
4027f9:	5f                   	pop    %edi
4027fa:	5e                   	pop    %esi
4027fb:	5b                   	pop    %ebx
4027fc:	c9                   	leave
4027fd:	c3                   	ret
4027fe:	8b ff                	mov    %edi,%edi
402800:	55                   	push   %ebp
402801:	8b ec                	mov    %esp,%ebp
402803:	56                   	push   %esi
402804:	8b 75 08             	mov    0x8(%ebp),%esi
402807:	33 c0                	xor    %eax,%eax
402809:	3b 75 0c             	cmp    0xc(%ebp),%esi
40280c:	73 1e                	jae    0x40282c
40280e:	57                   	push   %edi
40280f:	85 c0                	test   %eax,%eax
402811:	75 18                	jne    0x40282b
402813:	8b 3e                	mov    (%esi),%edi
402815:	85 ff                	test   %edi,%edi
402817:	74 0a                	je     0x402823
402819:	8b cf                	mov    %edi,%ecx
40281b:	ff 15 48 41 40 00    	call   *0x404148
402821:	ff d7                	call   *%edi
402823:	83 c6 04             	add    $0x4,%esi
402826:	3b 75 0c             	cmp    0xc(%ebp),%esi
402829:	72 e4                	jb     0x40280f
40282b:	5f                   	pop    %edi
40282c:	5e                   	pop    %esi
40282d:	5d                   	pop    %ebp
40282e:	c3                   	ret
40282f:	b8 4d 5a 00 00       	mov    $0x5a4d,%eax
402834:	66 39 05 00 00 40 00 	cmp    %ax,0x400000
40283b:	75 55                	jne    0x402892
40283d:	8b 0d 3c 00 40 00    	mov    0x40003c,%ecx
402843:	81 b9 00 00 40 00 50 	cmpl   $0x4550,0x400000(%ecx)
40284a:	45 00 00
40284d:	75 43                	jne    0x402892
40284f:	0f b7 81 18 00 40 00 	movzwl 0x400018(%ecx),%eax
402856:	ba 0b 01 00 00       	mov    $0x10b,%edx
40285b:	66 3b c2             	cmp    %dx,%ax
40285e:	74 1f                	je     0x40287f
402860:	ba 0b 02 00 00       	mov    $0x20b,%edx
402865:	66 3b c2             	cmp    %dx,%ax
402868:	75 28                	jne    0x402892
40286a:	83 b9 84 00 40 00 0e 	cmpl   $0xe,0x400084(%ecx)
402871:	76 1f                	jbe    0x402892
402873:	33 c0                	xor    %eax,%eax
402875:	39 81 f8 00 40 00    	cmp    %eax,0x4000f8(%ecx)
40287b:	0f 95 c0             	setne  %al
40287e:	c3                   	ret
40287f:	83 b9 74 00 40 00 0e 	cmpl   $0xe,0x400074(%ecx)
402886:	76 0a                	jbe    0x402892
402888:	33 c0                	xor    %eax,%eax
40288a:	39 81 e8 00 40 00    	cmp    %eax,0x4000e8(%ecx)
402890:	eb e9                	jmp    0x40287b
402892:	33 c0                	xor    %eax,%eax
402894:	c3                   	ret
402895:	cc                   	int3
402896:	cc                   	int3
402897:	cc                   	int3
402898:	cc                   	int3
402899:	cc                   	int3
40289a:	cc                   	int3
40289b:	cc                   	int3
40289c:	cc                   	int3
40289d:	cc                   	int3
40289e:	cc                   	int3
40289f:	cc                   	int3
4028a0:	e8 90 02 00 00       	call   0x402b35
4028a5:	e9 79 fd ff ff       	jmp    0x402623
4028aa:	cc                   	int3
4028ab:	cc                   	int3
4028ac:	cc                   	int3
4028ad:	cc                   	int3
4028ae:	cc                   	int3
4028af:	cc                   	int3
4028b0:	3b 0d 04 30 40 00    	cmp    0x403004,%ecx
4028b6:	75 03                	jne    0x4028bb
4028b8:	c2 00 00             	ret    $0x0
4028bb:	e9 ed 03 00 00       	jmp    0x402cad
4028c0:	8b ff                	mov    %edi,%edi
4028c2:	55                   	push   %ebp
4028c3:	8b ec                	mov    %esp,%ebp
4028c5:	8b 45 08             	mov    0x8(%ebp),%eax
4028c8:	8b 00                	mov    (%eax),%eax
4028ca:	81 38 63 73 6d e0    	cmpl   $0xe06d7363,(%eax)
4028d0:	75 2b                	jne    0x4028fd
4028d2:	83 78 10 03          	cmpl   $0x3,0x10(%eax)
4028d6:	75 25                	jne    0x4028fd
4028d8:	8b 40 14             	mov    0x14(%eax),%eax
4028db:	3d 20 05 93 19       	cmp    $0x19930520,%eax
4028e0:	74 15                	je     0x4028f7
4028e2:	3d 21 05 93 19       	cmp    $0x19930521,%eax
4028e7:	74 0e                	je     0x4028f7
4028e9:	3d 22 05 93 19       	cmp    $0x19930522,%eax
4028ee:	74 07                	je     0x4028f7
4028f0:	3d 00 40 99 01       	cmp    $0x1994000,%eax
4028f5:	75 06                	jne    0x4028fd
4028f7:	ff 15 e0 40 40 00    	call   *0x4040e0
4028fd:	33 c0                	xor    %eax,%eax
4028ff:	5d                   	pop    %ebp
402900:	c2 04 00             	ret    $0x4
402903:	cc                   	int3
402904:	cc                   	int3
402905:	cc                   	int3
402906:	cc                   	int3
402907:	cc                   	int3
402908:	cc                   	int3
402909:	cc                   	int3
40290a:	cc                   	int3
40290b:	cc                   	int3
40290c:	cc                   	int3
40290d:	cc                   	int3
40290e:	cc                   	int3
40290f:	cc                   	int3
402910:	68 c0 28 40 00       	push   $0x4028c0
402915:	ff 15 80 40 40 00    	call   *0x404080
40291b:	33 c0                	xor    %eax,%eax
40291d:	c3                   	ret
40291e:	ff 25 10 41 40 00    	jmp    *0x404110
402924:	6a 0c                	push   $0xc
402926:	68 08 2e 40 00       	push   $0x402e08
40292b:	e8 b8 02 00 00       	call   0x402be8
402930:	33 c9                	xor    %ecx,%ecx
402932:	8b 45 08             	mov    0x8(%ebp),%eax
402935:	85 c0                	test   %eax,%eax
402937:	74 4b                	je     0x402984
402939:	83 f8 ff             	cmp    $0xffffffff,%eax
40293c:	74 46                	je     0x402984
40293e:	89 4d fc             	mov    %ecx,-0x4(%ebp)
402941:	ba 4d 5a 00 00       	mov    $0x5a4d,%edx
402946:	66 39 10             	cmp    %dx,(%eax)
402949:	75 32                	jne    0x40297d
40294b:	8b 50 3c             	mov    0x3c(%eax),%edx
40294e:	85 d2                	test   %edx,%edx
402950:	78 2b                	js     0x40297d
402952:	81 fa 00 00 00 10    	cmp    $0x10000000,%edx
402958:	73 23                	jae    0x40297d
40295a:	03 c2                	add    %edx,%eax
40295c:	89 45 e4             	mov    %eax,-0x1c(%ebp)
40295f:	8b 08                	mov    (%eax),%ecx
402961:	81 e9 50 45 00 00    	sub    $0x4550,%ecx
402967:	f7 d9                	neg    %ecx
402969:	1b c9                	sbb    %ecx,%ecx
40296b:	f7 d1                	not    %ecx
40296d:	23 c8                	and    %eax,%ecx
40296f:	eb 09                	jmp    0x40297a
402971:	33 c0                	xor    %eax,%eax
402973:	40                   	inc    %eax
402974:	c3                   	ret
402975:	8b 65 e8             	mov    -0x18(%ebp),%esp
402978:	33 c9                	xor    %ecx,%ecx
40297a:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
40297d:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
402984:	8b c1                	mov    %ecx,%eax
402986:	8b 4d f0             	mov    -0x10(%ebp),%ecx
402989:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
402990:	59                   	pop    %ecx
402991:	5f                   	pop    %edi
402992:	5e                   	pop    %esi
402993:	5b                   	pop    %ebx
402994:	c9                   	leave
402995:	c2 04 00             	ret    $0x4
402998:	8b ff                	mov    %edi,%edi
40299a:	55                   	push   %ebp
40299b:	8b ec                	mov    %esp,%ebp
40299d:	6a 00                	push   $0x0
40299f:	ff 15 0c 40 40 00    	call   *0x40400c
4029a5:	85 c0                	test   %eax,%eax
4029a7:	74 20                	je     0x4029c9
4029a9:	50                   	push   %eax
4029aa:	e8 75 ff ff ff       	call   0x402924
4029af:	85 c0                	test   %eax,%eax
4029b1:	74 16                	je     0x4029c9
4029b3:	0f b7 48 5c          	movzwl 0x5c(%eax),%ecx
4029b7:	6a 02                	push   $0x2
4029b9:	58                   	pop    %eax
4029ba:	66 3b c8             	cmp    %ax,%cx
4029bd:	74 0d                	je     0x4029cc