427988:	8b cb                	mov    %ebx,%ecx
42798a:	8b c2                	mov    %edx,%eax
42798c:	39 1a                	cmp    %ebx,(%edx)
42798e:	74 08                	je     0x427998
427990:	8d 40 04             	lea    0x4(%eax),%eax
427993:	41                   	inc    %ecx
427994:	39 18                	cmp    %ebx,(%eax)
427996:	75 f8                	jne    0x427990
427998:	53                   	push   %ebx
427999:	89 0d 6c 6d 45 00    	mov    %ecx,0x456d6c
42799f:	89 5d f8             	mov    %ebx,-0x8(%ebp)
4279a2:	89 15 74 6d 45 00    	mov    %edx,0x456d74
4279a8:	e8 0d 2f 00 00       	call   0x42a8ba
4279ad:	8b fb                	mov    %ebx,%edi
4279af:	59                   	pop    %ecx
4279b0:	56                   	push   %esi
4279b1:	89 5d f8             	mov    %ebx,-0x8(%ebp)
4279b4:	e8 01 2f 00 00       	call   0x42a8ba
4279b9:	8b c7                	mov    %edi,%eax
4279bb:	59                   	pop    %ecx
4279bc:	5b                   	pop    %ebx
4279bd:	5e                   	pop    %esi
4279be:	5f                   	pop    %edi
4279bf:	c9                   	leave
4279c0:	c3                   	ret
4279c1:	8b ff                	mov    %edi,%edi
4279c3:	55                   	push   %ebp
4279c4:	8b ec                	mov    %esp,%ebp
4279c6:	8b 45 18             	mov    0x18(%ebp),%eax
4279c9:	83 ec 0c             	sub    $0xc,%esp
4279cc:	8b 4d 14             	mov    0x14(%ebp),%ecx
4279cf:	8b 55 08             	mov    0x8(%ebp),%edx
4279d2:	83 20 00             	andl   $0x0,(%eax)
4279d5:	56                   	push   %esi
4279d6:	8b 75 0c             	mov    0xc(%ebp),%esi
4279d9:	c7 01 01 00 00 00    	movl   $0x1,(%ecx)
4279df:	8b 4d 10             	mov    0x10(%ebp),%ecx
4279e2:	85 f6                	test   %esi,%esi
4279e4:	74 08                	je     0x4279ee
4279e6:	89 0e                	mov    %ecx,(%esi)
4279e8:	83 c6 04             	add    $0x4,%esi
4279eb:	89 75 0c             	mov    %esi,0xc(%ebp)
4279ee:	53                   	push   %ebx
4279ef:	57                   	push   %edi
4279f0:	32 db                	xor    %bl,%bl
4279f2:	c7 45 f4 09 00 00 00 	movl   $0x9,-0xc(%ebp)
4279f9:	eb 03                	jmp    0x4279fe
4279fb:	8b 45 18             	mov    0x18(%ebp),%eax
4279fe:	6a 22                	push   $0x22
427a00:	5e                   	pop    %esi
427a01:	66 39 32             	cmp    %si,(%edx)
427a04:	8b fa                	mov    %edx,%edi
427a06:	8b 75 0c             	mov    0xc(%ebp),%esi
427a09:	75 0d                	jne    0x427a18
427a0b:	84 db                	test   %bl,%bl
427a0d:	6a 22                	push   $0x22
427a0f:	0f 94 c3             	sete   %bl
427a12:	83 c2 02             	add    $0x2,%edx
427a15:	58                   	pop    %eax
427a16:	eb 1a                	jmp    0x427a32
427a18:	ff 00                	incl   (%eax)
427a1a:	85 c9                	test   %ecx,%ecx
427a1c:	74 09                	je     0x427a27
427a1e:	66 8b 02             	mov    (%edx),%ax
427a21:	66 89 01             	mov    %ax,(%ecx)
427a24:	83 c1 02             	add    $0x2,%ecx
427a27:	0f b7 02             	movzwl (%edx),%eax
427a2a:	83 c2 02             	add    $0x2,%edx
427a2d:	66 85 c0             	test   %ax,%ax
427a30:	74 23                	je     0x427a55
427a32:	84 db                	test   %bl,%bl
427a34:	75 c5                	jne    0x4279fb
427a36:	6a 20                	push   $0x20
427a38:	5f                   	pop    %edi
427a39:	66 3b c7             	cmp    %di,%ax
427a3c:	74 0b                	je     0x427a49
427a3e:	6a 09                	push   $0x9
427a40:	5f                   	pop    %edi
427a41:	66 3b c7             	cmp    %di,%ax
427a44:	8b 45 18             	mov    0x18(%ebp),%eax
427a47:	75 b5                	jne    0x4279fe
427a49:	85 c9                	test   %ecx,%ecx
427a4b:	74 0a                	je     0x427a57
427a4d:	33 c0                	xor    %eax,%eax
427a4f:	66 89 41 fe          	mov    %ax,-0x2(%ecx)
427a53:	eb 02                	jmp    0x427a57
427a55:	8b d7                	mov    %edi,%edx
427a57:	c6 45 ff 00          	movb   $0x0,-0x1(%ebp)
427a5b:	0f b7 02             	movzwl (%edx),%eax
427a5e:	8b f8                	mov    %eax,%edi
427a60:	66 85 c0             	test   %ax,%ax
427a63:	74 19                	je     0x427a7e
427a65:	6a 20                	push   $0x20
427a67:	5b                   	pop    %ebx
427a68:	66 3b c3             	cmp    %bx,%ax
427a6b:	74 09                	je     0x427a76
427a6d:	0f b7 f8             	movzwl %ax,%edi
427a70:	66 3b 45 f4          	cmp    -0xc(%ebp),%ax
427a74:	75 08                	jne    0x427a7e
427a76:	83 c2 02             	add    $0x2,%edx
427a79:	0f b7 02             	movzwl (%edx),%eax
427a7c:	eb ea                	jmp    0x427a68
427a7e:	66 85 ff             	test   %di,%di
427a81:	0f 84 ca 00 00 00    	je     0x427b51
427a87:	85 f6                	test   %esi,%esi
427a89:	74 08                	je     0x427a93
427a8b:	89 0e                	mov    %ecx,(%esi)
427a8d:	83 c6 04             	add    $0x4,%esi
427a90:	89 75 0c             	mov    %esi,0xc(%ebp)
427a93:	8b 45 14             	mov    0x14(%ebp),%eax
427a96:	6a 5c                	push   $0x5c
427a98:	5e                   	pop    %esi
427a99:	ff 00                	incl   (%eax)
427a9b:	0f b7 02             	movzwl (%edx),%eax
427a9e:	33 db                	xor    %ebx,%ebx
427aa0:	c7 45 f8 01 00 00 00 	movl   $0x1,-0x8(%ebp)
427aa7:	8b f8                	mov    %eax,%edi
427aa9:	66 3b c6             	cmp    %si,%ax
427aac:	75 0e                	jne    0x427abc
427aae:	83 c2 02             	add    $0x2,%edx
427ab1:	43                   	inc    %ebx
427ab2:	0f b7 02             	movzwl (%edx),%eax
427ab5:	66 3b c6             	cmp    %si,%ax
427ab8:	74 f4                	je     0x427aae
427aba:	8b f8                	mov    %eax,%edi
427abc:	6a 22                	push   $0x22
427abe:	58                   	pop    %eax
427abf:	66 3b f8             	cmp    %ax,%di
427ac2:	75 29                	jne    0x427aed
427ac4:	f6 c3 01             	test   $0x1,%bl
427ac7:	75 22                	jne    0x427aeb
427ac9:	8a 45 ff             	mov    -0x1(%ebp),%al
427acc:	84 c0                	test   %al,%al
427ace:	74 11                	je     0x427ae1
427ad0:	6a 22                	push   $0x22
427ad2:	5f                   	pop    %edi
427ad3:	66 39 7a 02          	cmp    %di,0x2(%edx)
427ad7:	75 05                	jne    0x427ade
427ad9:	83 c2 02             	add    $0x2,%edx
427adc:	eb 0d                	jmp    0x427aeb
427ade:	8a 45 ff             	mov    -0x1(%ebp),%al
427ae1:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
427ae5:	84 c0                	test   %al,%al
427ae7:	0f 94 45 ff          	sete   -0x1(%ebp)
427aeb:	d1 eb                	shr    $1,%ebx
427aed:	8b 7d 18             	mov    0x18(%ebp),%edi
427af0:	85 db                	test   %ebx,%ebx
427af2:	74 0f                	je     0x427b03
427af4:	4b                   	dec    %ebx
427af5:	85 c9                	test   %ecx,%ecx
427af7:	74 06                	je     0x427aff
427af9:	66 89 31             	mov    %si,(%ecx)
427afc:	83 c1 02             	add    $0x2,%ecx
427aff:	ff 07                	incl   (%edi)
427b01:	eb ed                	jmp    0x427af0
427b03:	0f b7 02             	movzwl (%edx),%eax
427b06:	66 85 c0             	test   %ax,%ax
427b09:	74 30                	je     0x427b3b
427b0b:	80 7d ff 00          	cmpb   $0x0,-0x1(%ebp)
427b0f:	75 10                	jne    0x427b21
427b11:	6a 20                	push   $0x20
427b13:	5b                   	pop    %ebx
427b14:	66 3b c3             	cmp    %bx,%ax
427b17:	74 22                	je     0x427b3b
427b19:	6a 09                	push   $0x9
427b1b:	5b                   	pop    %ebx
427b1c:	66 3b c3             	cmp    %bx,%ax
427b1f:	74 1a                	je     0x427b3b
427b21:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
427b25:	74 0c                	je     0x427b33
427b27:	85 c9                	test   %ecx,%ecx
427b29:	74 06                	je     0x427b31
427b2b:	66 89 01             	mov    %ax,(%ecx)
427b2e:	83 c1 02             	add    $0x2,%ecx
427b31:	ff 07                	incl   (%edi)
427b33:	83 c2 02             	add    $0x2,%edx
427b36:	e9 60 ff ff ff       	jmp    0x427a9b
427b3b:	8b 75 0c             	mov    0xc(%ebp),%esi
427b3e:	85 c9                	test   %ecx,%ecx
427b40:	74 08                	je     0x427b4a
427b42:	33 c0                	xor    %eax,%eax
427b44:	66 89 01             	mov    %ax,(%ecx)
427b47:	83 c1 02             	add    $0x2,%ecx
427b4a:	ff 07                	incl   (%edi)
427b4c:	e9 0a ff ff ff       	jmp    0x427a5b
427b51:	5f                   	pop    %edi
427b52:	5b                   	pop    %ebx
427b53:	85 f6                	test   %esi,%esi
427b55:	74 03                	je     0x427b5a
427b57:	83 26 00             	andl   $0x0,(%esi)
427b5a:	8b 45 14             	mov    0x14(%ebp),%eax
427b5d:	5e                   	pop    %esi
427b5e:	ff 00                	incl   (%eax)
427b60:	c9                   	leave
427b61:	c3                   	ret
427b62:	8b ff                	mov    %edi,%edi
427b64:	55                   	push   %ebp
427b65:	8b ec                	mov    %esp,%ebp
427b67:	56                   	push   %esi
427b68:	8b 75 08             	mov    0x8(%ebp),%esi
427b6b:	81 fe ff ff ff 3f    	cmp    $0x3fffffff,%esi
427b71:	73 39                	jae    0x427bac
427b73:	83 c8 ff             	or     $0xffffffff,%eax
427b76:	8b 4d 0c             	mov    0xc(%ebp),%ecx
427b79:	33 d2                	xor    %edx,%edx
427b7b:	f7 75 10             	divl   0x10(%ebp)
427b7e:	3b c8                	cmp    %eax,%ecx
427b80:	73 2a                	jae    0x427bac
427b82:	0f af 4d 10          	imul   0x10(%ebp),%ecx
427b86:	c1 e6 02             	shl    $0x2,%esi
427b89:	8b c6                	mov    %esi,%eax
427b8b:	f7 d0                	not    %eax
427b8d:	3b c1                	cmp    %ecx,%eax
427b8f:	76 1b                	jbe    0x427bac
427b91:	8d 04 0e             	lea    (%esi,%ecx,1),%eax
427b94:	6a 01                	push   $0x1
427b96:	50                   	push   %eax
427b97:	e8 7e 55 00 00       	call   0x42d11a
427b9c:	6a 00                	push   $0x0
427b9e:	8b f0                	mov    %eax,%esi
427ba0:	e8 15 2d 00 00       	call   0x42a8ba
427ba5:	83 c4 0c             	add    $0xc,%esp
427ba8:	8b c6                	mov    %esi,%eax
427baa:	eb 02                	jmp    0x427bae
427bac:	33 c0                	xor    %eax,%eax
427bae:	5e                   	pop    %esi
427baf:	5d                   	pop    %ebp
427bb0:	c3                   	ret
427bb1:	8b ff                	mov    %edi,%edi
427bb3:	55                   	push   %ebp
427bb4:	8b ec                	mov    %esp,%ebp
427bb6:	5d                   	pop    %ebp
427bb7:	e9 cf fc ff ff       	jmp    0x42788b
427bbc:	a1 50 6d 45 00       	mov    0x456d50,%eax
427bc1:	85 c0                	test   %eax,%eax
427bc3:	75 22                	jne    0x427be7
427bc5:	39 05 4c 6d 45 00    	cmp    %eax,0x456d4c
427bcb:	74 18                	je     0x427be5
427bcd:	e8 16 00 00 00       	call   0x427be8
427bd2:	85 c0                	test   %eax,%eax
427bd4:	74 09                	je     0x427bdf
427bd6:	e8 af 01 00 00       	call   0x427d8a
427bdb:	85 c0                	test   %eax,%eax
427bdd:	75 06                	jne    0x427be5
427bdf:	a1 50 6d 45 00       	mov    0x456d50,%eax
427be4:	c3                   	ret
427be5:	33 c0                	xor    %eax,%eax
427be7:	c3                   	ret
427be8:	83 3d 50 6d 45 00 00 	cmpl   $0x0,0x456d50
427bef:	74 03                	je     0x427bf4
427bf1:	33 c0                	xor    %eax,%eax
427bf3:	c3                   	ret
427bf4:	56                   	push   %esi
427bf5:	e8 3d af 00 00       	call   0x432b37
427bfa:	8b f0                	mov    %eax,%esi
427bfc:	85 f6                	test   %esi,%esi
427bfe:	75 0c                	jne    0x427c0c
427c00:	50                   	push   %eax
427c01:	e8 b4 2c 00 00       	call   0x42a8ba
427c06:	59                   	pop    %ecx
427c07:	83 c8 ff             	or     $0xffffffff,%eax
427c0a:	5e                   	pop    %esi
427c0b:	c3                   	ret
427c0c:	57                   	push   %edi
427c0d:	56                   	push   %esi
427c0e:	e8 2a 00 00 00       	call   0x427c3d
427c13:	59                   	pop    %ecx
427c14:	85 c0                	test   %eax,%eax
427c16:	75 05                	jne    0x427c1d
427c18:	83 cf ff             	or     $0xffffffff,%edi
427c1b:	eb 0c                	jmp    0x427c29
427c1d:	a3 54 6d 45 00       	mov    %eax,0x456d54
427c22:	33 ff                	xor    %edi,%edi
427c24:	a3 50 6d 45 00       	mov    %eax,0x456d50
427c29:	6a 00                	push   $0x0
427c2b:	e8 8a 2c 00 00       	call   0x42a8ba
427c30:	56                   	push   %esi
427c31:	e8 84 2c 00 00       	call   0x42a8ba
427c36:	59                   	pop    %ecx
427c37:	59                   	pop    %ecx
427c38:	8b c7                	mov    %edi,%eax
427c3a:	5f                   	pop    %edi
427c3b:	5e                   	pop    %esi
427c3c:	c3                   	ret
427c3d:	8b ff                	mov    %edi,%edi
427c3f:	55                   	push   %ebp
427c40:	8b ec                	mov    %esp,%ebp
427c42:	83 ec 0c             	sub    $0xc,%esp
427c45:	53                   	push   %ebx
427c46:	8b 5d 08             	mov    0x8(%ebp),%ebx
427c49:	56                   	push   %esi
427c4a:	57                   	push   %edi
427c4b:	33 ff                	xor    %edi,%edi
427c4d:	8b f3                	mov    %ebx,%esi
427c4f:	0f b7 03             	movzwl (%ebx),%eax
427c52:	8b d7                	mov    %edi,%edx
427c54:	89 7d fc             	mov    %edi,-0x4(%ebp)
427c57:	66 85 c0             	test   %ax,%ax
427c5a:	74 35                	je     0x427c91
427c5c:	6a 3d                	push   $0x3d
427c5e:	8b c8                	mov    %eax,%ecx
427c60:	5b                   	pop    %ebx
427c61:	66 3b cb             	cmp    %bx,%cx
427c64:	74 01                	je     0x427c67
427c66:	42                   	inc    %edx
427c67:	8b ce                	mov    %esi,%ecx
427c69:	8d 79 02             	lea    0x2(%ecx),%edi
427c6c:	66 8b 01             	mov    (%ecx),%ax
427c6f:	83 c1 02             	add    $0x2,%ecx
427c72:	66 3b 45 fc          	cmp    -0x4(%ebp),%ax
427c76:	75 f4                	jne    0x427c6c
427c78:	2b cf                	sub    %edi,%ecx
427c7a:	d1 f9                	sar    $1,%ecx
427c7c:	8d 34 4e             	lea    (%esi,%ecx,2),%esi
427c7f:	83 c6 02             	add    $0x2,%esi
427c82:	0f b7 06             	movzwl (%esi),%eax
427c85:	8b c8                	mov    %eax,%ecx
427c87:	66 85 c0             	test   %ax,%ax
427c8a:	75 d5                	jne    0x427c61
427c8c:	8b 5d 08             	mov    0x8(%ebp),%ebx
427c8f:	33 ff                	xor    %edi,%edi
427c91:	8d 42 01             	lea    0x1(%edx),%eax
427c94:	6a 04                	push   $0x4
427c96:	50                   	push   %eax
427c97:	e8 7e 54 00 00       	call   0x42d11a
427c9c:	8b f0                	mov    %eax,%esi
427c9e:	59                   	pop    %ecx
427c9f:	59                   	pop    %ecx
427ca0:	85 f6                	test   %esi,%esi
427ca2:	75 0a                	jne    0x427cae
427ca4:	57                   	push   %edi
427ca5:	e8 10 2c 00 00       	call   0x42a8ba
427caa:	33 c0                	xor    %eax,%eax
427cac:	eb 7f                	jmp    0x427d2d
427cae:	0f b7 03             	movzwl (%ebx),%eax
427cb1:	89 75 f8             	mov    %esi,-0x8(%ebp)
427cb4:	66 85 c0             	test   %ax,%ax
427cb7:	74 6a                	je     0x427d23
427cb9:	8b d0                	mov    %eax,%edx
427cbb:	8b cb                	mov    %ebx,%ecx
427cbd:	8d 79 02             	lea    0x2(%ecx),%edi
427cc0:	66 8b 01             	mov    (%ecx),%ax
427cc3:	83 c1 02             	add    $0x2,%ecx
427cc6:	66 3b 45 fc          	cmp    -0x4(%ebp),%ax
427cca:	75 f4                	jne    0x427cc0
427ccc:	2b cf                	sub    %edi,%ecx
427cce:	d1 f9                	sar    $1,%ecx
427cd0:	6a 3d                	push   $0x3d
427cd2:	8d 41 01             	lea    0x1(%ecx),%eax
427cd5:	59                   	pop    %ecx