402829:	59                   	pop    %ecx
40282a:	59                   	pop    %ecx
40282b:	5d                   	pop    %ebp
40282c:	c3                   	ret
40282d:	8d 40 00             	lea    0x0(%eax),%eax
402830:	53                   	push   %ebx
402831:	51                   	push   %ecx
402832:	8b d8                	mov    %eax,%ebx
402834:	85 db                	test   %ebx,%ebx
402836:	7e 1a                	jle    0x402852
402838:	8b c3                	mov    %ebx,%eax
40283a:	ff 15 2c 60 42 00    	call   *0x42602c
402840:	89 04 24             	mov    %eax,(%esp)
402843:	83 3c 24 00          	cmpl   $0x0,(%esp)
402847:	75 0e                	jne    0x402857
402849:	b0 01                	mov    $0x1,%al
40284b:	e8 d8 00 00 00       	call   0x402928
402850:	eb 05                	jmp    0x402857
402852:	33 c0                	xor    %eax,%eax
402854:	89 04 24             	mov    %eax,(%esp)
402857:	8b 04 24             	mov    (%esp),%eax
40285a:	5a                   	pop    %edx
40285b:	5b                   	pop    %ebx
40285c:	c3                   	ret
40285d:	8d 40 00             	lea    0x0(%eax),%eax
402860:	53                   	push   %ebx
402861:	85 c0                	test   %eax,%eax
402863:	74 15                	je     0x40287a
402865:	ff 15 30 60 42 00    	call   *0x426030
40286b:	8b d8                	mov    %eax,%ebx
40286d:	85 db                	test   %ebx,%ebx
40286f:	74 0b                	je     0x40287c
402871:	b0 02                	mov    $0x2,%al
402873:	e8 b0 00 00 00       	call   0x402928
402878:	eb 02                	jmp    0x40287c
40287a:	33 db                	xor    %ebx,%ebx
40287c:	8b c3                	mov    %ebx,%eax
40287e:	5b                   	pop    %ebx
40287f:	c3                   	ret
402880:	8b 08                	mov    (%eax),%ecx
402882:	85 c9                	test   %ecx,%ecx
402884:	74 32                	je     0x4028b8
402886:	85 d2                	test   %edx,%edx
402888:	74 18                	je     0x4028a2
40288a:	50                   	push   %eax
40288b:	89 c8                	mov    %ecx,%eax
40288d:	ff 15 34 60 42 00    	call   *0x426034
402893:	59                   	pop    %ecx
402894:	09 c0                	or     %eax,%eax
402896:	74 19                	je     0x4028b1
402898:	89 01                	mov    %eax,(%ecx)
40289a:	c3                   	ret
40289b:	b0 02                	mov    $0x2,%al
40289d:	e9 86 00 00 00       	jmp    0x402928
4028a2:	89 10                	mov    %edx,(%eax)
4028a4:	89 c8                	mov    %ecx,%eax
4028a6:	ff 15 30 60 42 00    	call   *0x426030
4028ac:	09 c0                	or     %eax,%eax
4028ae:	75 eb                	jne    0x40289b
4028b0:	c3                   	ret
4028b1:	b0 01                	mov    $0x1,%al
4028b3:	e9 70 00 00 00       	jmp    0x402928
4028b8:	85 d2                	test   %edx,%edx
4028ba:	74 10                	je     0x4028cc
4028bc:	50                   	push   %eax
4028bd:	89 d0                	mov    %edx,%eax
4028bf:	ff 15 2c 60 42 00    	call   *0x42602c
4028c5:	59                   	pop    %ecx
4028c6:	09 c0                	or     %eax,%eax
4028c8:	74 e7                	je     0x4028b1
4028ca:	89 01                	mov    %eax,(%ecx)
4028cc:	c3                   	ret
4028cd:	8d 40 00             	lea    0x0(%eax),%eax
4028d0:	89 15 04 60 42 00    	mov    %edx,0x426004
4028d6:	e8 a1 0d 00 00       	call   0x40367c
4028db:	c3                   	ret
4028dc:	53                   	push   %ebx
4028dd:	56                   	push   %esi
4028de:	8b f2                	mov    %edx,%esi
4028e0:	8b d8                	mov    %eax,%ebx
4028e2:	80 e3 7f             	and    $0x7f,%bl
4028e5:	83 3d 08 90 42 00 00 	cmpl   $0x0,0x429008
4028ec:	74 0a                	je     0x4028f8
4028ee:	8b d6                	mov    %esi,%edx
4028f0:	8b c3                	mov    %ebx,%eax
4028f2:	ff 15 08 90 42 00    	call   *0x429008
4028f8:	84 db                	test   %bl,%bl
4028fa:	75 0d                	jne    0x402909
4028fc:	e8 4f 1d 00 00       	call   0x404650
402901:	8b 98 04 00 00 00    	mov    0x4(%eax),%ebx
402907:	eb 0f                	jmp    0x402918
402909:	80 fb 18             	cmp    $0x18,%bl
40290c:	77 0a                	ja     0x402918
40290e:	33 c0                	xor    %eax,%eax
402910:	8a c3                	mov    %bl,%al
402912:	8a 98 38 60 42 00    	mov    0x426038(%eax),%bl
402918:	33 c0                	xor    %eax,%eax
40291a:	8a c3                	mov    %bl,%al
40291c:	8b d6                	mov    %esi,%edx
40291e:	e8 ad ff ff ff       	call   0x4028d0
402923:	5e                   	pop    %esi
402924:	5b                   	pop    %ebx
402925:	c3                   	ret
402926:	8b c0                	mov    %eax,%eax
402928:	83 e0 7f             	and    $0x7f,%eax
40292b:	8b 14 24             	mov    (%esp),%edx
40292e:	e9 a9 ff ff ff       	jmp    0x4028dc
402933:	c3                   	ret
402934:	53                   	push   %ebx
402935:	8b d8                	mov    %eax,%ebx
402937:	e8 14 1d 00 00       	call   0x404650
40293c:	89 98 04 00 00 00    	mov    %ebx,0x4(%eax)
402942:	5b                   	pop    %ebx
402943:	c3                   	ret
402944:	56                   	push   %esi
402945:	57                   	push   %edi
402946:	89 c6                	mov    %eax,%esi
402948:	89 d7                	mov    %edx,%edi
40294a:	89 c8                	mov    %ecx,%eax
40294c:	39 f7                	cmp    %esi,%edi
40294e:	77 13                	ja     0x402963
402950:	74 2f                	je     0x402981
402952:	c1 f9 02             	sar    $0x2,%ecx
402955:	78 2a                	js     0x402981
402957:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
402959:	89 c1                	mov    %eax,%ecx
40295b:	83 e1 03             	and    $0x3,%ecx
40295e:	f3 a4                	rep movsb %ds:(%esi),%es:(%edi)
402960:	5f                   	pop    %edi
402961:	5e                   	pop    %esi
402962:	c3                   	ret
402963:	8d 74 31 fc          	lea    -0x4(%ecx,%esi,1),%esi
402967:	8d 7c 39 fc          	lea    -0x4(%ecx,%edi,1),%edi
40296b:	c1 f9 02             	sar    $0x2,%ecx
40296e:	78 11                	js     0x402981
402970:	fd                   	std
402971:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
402973:	89 c1                	mov    %eax,%ecx
402975:	83 e1 03             	and    $0x3,%ecx
402978:	83 c6 03             	add    $0x3,%esi
40297b:	83 c7 03             	add    $0x3,%edi
40297e:	f3 a4                	rep movsb %ds:(%esi),%es:(%edi)
402980:	fc                   	cld
402981:	5f                   	pop    %edi
402982:	5e                   	pop    %esi
402983:	c3                   	ret
402984:	d9 ea                	fldl2e
402986:	de c9                	fmulp  %st,%st(1)
402988:	d9 c0                	fld    %st(0)
40298a:	d9 fc                	frndint
40298c:	dc e9                	fsubr  %st,%st(1)
40298e:	d9 c9                	fxch   %st(1)
402990:	d9 f0                	f2xm1
402992:	d9 e8                	fld1
402994:	de c1                	faddp  %st,%st(1)
402996:	d9 fd                	fscale
402998:	dd d9                	fstp   %st(1)
40299a:	c3                   	ret
40299b:	90                   	nop
40299c:	83 ec 08             	sub    $0x8,%esp
40299f:	df 3c 24             	fistpll (%esp)
4029a2:	9b                   	fwait
4029a3:	58                   	pop    %eax
4029a4:	5a                   	pop    %edx
4029a5:	c3                   	ret
4029a6:	8b c0                	mov    %eax,%eax
4029a8:	83 ec 0c             	sub    $0xc,%esp
4029ab:	d9 3c 24             	fnstcw (%esp)
4029ae:	d9 7c 24 02          	fnstcw 0x2(%esp)
4029b2:	9b                   	fwait
4029b3:	66 81 4c 24 02 00 0f 	orw    $0xf00,0x2(%esp)
4029ba:	d9 6c 24 02          	fldcw  0x2(%esp)
4029be:	df 7c 24 04          	fistpll 0x4(%esp)
4029c2:	9b d9 2c 24          	fldcw  (%esp)
4029c6:	59                   	pop    %ecx
4029c7:	58                   	pop    %eax
4029c8:	5a                   	pop    %edx
4029c9:	c3                   	ret
4029ca:	8b c0                	mov    %eax,%eax
4029cc:	53                   	push   %ebx
4029cd:	56                   	push   %esi
4029ce:	8b d8                	mov    %eax,%ebx
4029d0:	33 f6                	xor    %esi,%esi
4029d2:	66 8b 43 04          	mov    0x4(%ebx),%ax
4029d6:	66 3d b1 d7          	cmp    $0xd7b1,%ax
4029da:	72 2f                	jb     0x402a0b
4029dc:	66 3d b3 d7          	cmp    $0xd7b3,%ax
4029e0:	77 29                	ja     0x402a0b
4029e2:	66 25 b2 d7          	and    $0xd7b2,%ax
4029e6:	66 3d b2 d7          	cmp    $0xd7b2,%ax
4029ea:	75 07                	jne    0x4029f3
4029ec:	8b c3                	mov    %ebx,%eax
4029ee:	ff 53 1c             	call   *0x1c(%ebx)
4029f1:	8b f0                	mov    %eax,%esi
4029f3:	85 f6                	test   %esi,%esi
4029f5:	75 07                	jne    0x4029fe
4029f7:	8b c3                	mov    %ebx,%eax
4029f9:	ff 53 24             	call   *0x24(%ebx)
4029fc:	8b f0                	mov    %eax,%esi
4029fe:	85 f6                	test   %esi,%esi
402a00:	74 1b                	je     0x402a1d
402a02:	8b c6                	mov    %esi,%eax
402a04:	e8 2b ff ff ff       	call   0x402934
402a09:	eb 12                	jmp    0x402a1d
402a0b:	81 fb 38 90 42 00    	cmp    $0x429038,%ebx
402a11:	74 0a                	je     0x402a1d
402a13:	b8 67 00 00 00       	mov    $0x67,%eax
402a18:	e8 17 ff ff ff       	call   0x402934
402a1d:	8b c6                	mov    %esi,%eax
402a1f:	5e                   	pop    %esi
402a20:	5b                   	pop    %ebx
402a21:	c3                   	ret
402a22:	8b c0                	mov    %eax,%eax
402a24:	53                   	push   %ebx
402a25:	56                   	push   %esi
402a26:	51                   	push   %ecx
402a27:	89 ce                	mov    %ecx,%esi
402a29:	c1 ee 02             	shr    $0x2,%esi
402a2c:	74 26                	je     0x402a54
402a2e:	8b 08                	mov    (%eax),%ecx
402a30:	8b 1a                	mov    (%edx),%ebx
402a32:	39 d9                	cmp    %ebx,%ecx
402a34:	75 45                	jne    0x402a7b
402a36:	4e                   	dec    %esi
402a37:	74 15                	je     0x402a4e
402a39:	8b 48 04             	mov    0x4(%eax),%ecx
402a3c:	8b 5a 04             	mov    0x4(%edx),%ebx
402a3f:	39 d9                	cmp    %ebx,%ecx
402a41:	75 38                	jne    0x402a7b
402a43:	83 c0 08             	add    $0x8,%eax
402a46:	83 c2 08             	add    $0x8,%edx
402a49:	4e                   	dec    %esi
402a4a:	75 e2                	jne    0x402a2e
402a4c:	eb 06                	jmp    0x402a54
402a4e:	83 c0 04             	add    $0x4,%eax
402a51:	83 c2 04             	add    $0x4,%edx
402a54:	5e                   	pop    %esi
402a55:	83 e6 03             	and    $0x3,%esi
402a58:	74 36                	je     0x402a90
402a5a:	8a 08                	mov    (%eax),%cl
402a5c:	3a 0a                	cmp    (%edx),%cl
402a5e:	75 30                	jne    0x402a90
402a60:	4e                   	dec    %esi
402a61:	74 13                	je     0x402a76
402a63:	8a 48 01             	mov    0x1(%eax),%cl
402a66:	3a 4a 01             	cmp    0x1(%edx),%cl
402a69:	75 25                	jne    0x402a90
402a6b:	4e                   	dec    %esi
402a6c:	74 08                	je     0x402a76
402a6e:	8a 48 02             	mov    0x2(%eax),%cl
402a71:	3a 4a 02             	cmp    0x2(%edx),%cl
402a74:	75 1a                	jne    0x402a90
402a76:	31 c0                	xor    %eax,%eax
402a78:	5e                   	pop    %esi
402a79:	5b                   	pop    %ebx
402a7a:	c3                   	ret
402a7b:	5e                   	pop    %esi
402a7c:	38 d9                	cmp    %bl,%cl
402a7e:	75 10                	jne    0x402a90
402a80:	38 fd                	cmp    %bh,%ch
402a82:	75 0c                	jne    0x402a90
402a84:	c1 e9 10             	shr    $0x10,%ecx
402a87:	c1 eb 10             	shr    $0x10,%ebx
402a8a:	38 d9                	cmp    %bl,%cl
402a8c:	75 02                	jne    0x402a90
402a8e:	38 fd                	cmp    %bh,%ch
402a90:	5e                   	pop    %esi
402a91:	5b                   	pop    %ebx
402a92:	c3                   	ret
402a93:	90                   	nop
402a94:	57                   	push   %edi
402a95:	89 c7                	mov    %eax,%edi
402a97:	88 cd                	mov    %cl,%ch
402a99:	89 c8                	mov    %ecx,%eax
402a9b:	c1 e0 10             	shl    $0x10,%eax
402a9e:	66 89 c8             	mov    %cx,%ax
402aa1:	89 d1                	mov    %edx,%ecx
402aa3:	c1 f9 02             	sar    $0x2,%ecx
402aa6:	78 09                	js     0x402ab1
402aa8:	f3 ab                	rep stos %eax,%es:(%edi)
402aaa:	89 d1                	mov    %edx,%ecx
402aac:	83 e1 03             	and    $0x3,%ecx
402aaf:	f3 aa                	rep stos %al,%es:(%edi)
402ab1:	5f                   	pop    %edi
402ab2:	c3                   	ret
402ab3:	90                   	nop
402ab4:	53                   	push   %ebx
402ab5:	56                   	push   %esi
402ab6:	57                   	push   %edi
402ab7:	89 c6                	mov    %eax,%esi
402ab9:	50                   	push   %eax
402aba:	85 c0                	test   %eax,%eax
402abc:	74 6c                	je     0x402b2a
402abe:	31 c0                	xor    %eax,%eax
402ac0:	31 db                	xor    %ebx,%ebx
402ac2:	bf cc cc cc 0c       	mov    $0xccccccc,%edi
402ac7:	8a 1e                	mov    (%esi),%bl
402ac9:	46                   	inc    %esi
402aca:	80 fb 20             	cmp    $0x20,%bl
402acd:	74 f8                	je     0x402ac7
402acf:	b5 00                	mov    $0x0,%ch
402ad1:	80 fb 2d             	cmp    $0x2d,%bl
402ad4:	74 62                	je     0x402b38
402ad6:	80 fb 2b             	cmp    $0x2b,%bl
402ad9:	74 5f                	je     0x402b3a
402adb:	80 fb 24             	cmp    $0x24,%bl
402ade:	74 5f                	je     0x402b3f
402ae0:	80 fb 78             	cmp    $0x78,%bl
402ae3:	74 5a                	je     0x402b3f
402ae5:	80 fb 58             	cmp    $0x58,%bl
402ae8:	74 55                	je     0x402b3f
402aea:	80 fb 30             	cmp    $0x30,%bl
402aed:	75 13                	jne    0x402b02
402aef:	8a 1e                	mov    (%esi),%bl
402af1:	46                   	inc    %esi
402af2:	80 fb 78             	cmp    $0x78,%bl
402af5:	74 48                	je     0x402b3f
402af7:	80 fb 58             	cmp    $0x58,%bl
402afa:	74 43                	je     0x402b3f
402afc:	84 db                	test   %bl,%bl
402afe:	74 20                	je     0x402b20
402b00:	eb 04                	jmp    0x402b06
402b02:	84 db                	test   %bl,%bl
402b04:	74 2d                	je     0x402b33
402b06:	80 eb 30             	sub    $0x30,%bl
402b09:	80 fb 09             	cmp    $0x9,%bl
402b0c:	77 25                	ja     0x402b33
402b0e:	39 f8                	cmp    %edi,%eax
402b10:	77 21                	ja     0x402b33
402b12:	8d 04 80             	lea    (%eax,%eax,4),%eax
402b15:	01 c0                	add    %eax,%eax
402b17:	01 d8                	add    %ebx,%eax
402b19:	8a 1e                	mov    (%esi),%bl
402b1b:	46                   	inc    %esi
402b1c:	84 db                	test   %bl,%bl
402b1e:	75 e6                	jne    0x402b06
402b20:	fe cd                	dec    %ch
402b22:	74 09                	je     0x402b2d
402b24:	85 c0                	test   %eax,%eax
402b26:	7d 54                	jge    0x402b7c
402b28:	eb 09                	jmp    0x402b33
402b2a:	46                   	inc    %esi
402b2b:	eb 06                	jmp    0x402b33
402b2d:	f7 d8                	neg    %eax
402b2f:	7e 4b                	jle    0x402b7c
402b31:	78 49                	js     0x402b7c
402b33:	5b                   	pop    %ebx
402b34:	29 de                	sub    %ebx,%esi
402b36:	eb 47                	jmp    0x402b7f
402b38:	fe c5                	inc    %ch