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
427cd6:	89 45 f4             	mov    %eax,-0xc(%ebp)
427cd9:	66 3b d1             	cmp    %cx,%dx
427cdc:	74 38                	je     0x427d16
427cde:	6a 02                	push   $0x2
427ce0:	50                   	push   %eax
427ce1:	e8 34 54 00 00       	call   0x42d11a
427ce6:	8b f8                	mov    %eax,%edi
427ce8:	59                   	pop    %ecx
427ce9:	59                   	pop    %ecx
427cea:	85 ff                	test   %edi,%edi
427cec:	74 45                	je     0x427d33
427cee:	53                   	push   %ebx
427cef:	ff 75 f4             	push   -0xc(%ebp)
427cf2:	57                   	push   %edi
427cf3:	e8 6e bb ff ff       	call   0x423866
427cf8:	83 c4 0c             	add    $0xc,%esp
427cfb:	85 c0                	test   %eax,%eax
427cfd:	75 4f                	jne    0x427d4e
427cff:	8b 45 f8             	mov    -0x8(%ebp),%eax
427d02:	89 38                	mov    %edi,(%eax)
427d04:	83 c0 04             	add    $0x4,%eax
427d07:	89 45 f8             	mov    %eax,-0x8(%ebp)
427d0a:	33 c0                	xor    %eax,%eax
427d0c:	50                   	push   %eax
427d0d:	e8 a8 2b 00 00       	call   0x42a8ba
427d12:	8b 45 f4             	mov    -0xc(%ebp),%eax
427d15:	59                   	pop    %ecx
427d16:	8d 1c 43             	lea    (%ebx,%eax,2),%ebx
427d19:	0f b7 03             	movzwl (%ebx),%eax
427d1c:	8b d0                	mov    %eax,%edx
427d1e:	66 85 c0             	test   %ax,%ax
427d21:	75 98                	jne    0x427cbb
427d23:	33 c0                	xor    %eax,%eax
427d25:	50                   	push   %eax
427d26:	e8 8f 2b 00 00       	call   0x42a8ba
427d2b:	8b c6                	mov    %esi,%eax
427d2d:	59                   	pop    %ecx
427d2e:	5f                   	pop    %edi
427d2f:	5e                   	pop    %esi
427d30:	5b                   	pop    %ebx
427d31:	c9                   	leave
427d32:	c3                   	ret
427d33:	56                   	push   %esi
427d34:	e8 22 00 00 00       	call   0x427d5b
427d39:	33 db                	xor    %ebx,%ebx
427d3b:	53                   	push   %ebx
427d3c:	e8 79 2b 00 00       	call   0x42a8ba
427d41:	53                   	push   %ebx
427d42:	e8 73 2b 00 00       	call   0x42a8ba
427d47:	83 c4 0c             	add    $0xc,%esp
427d4a:	33 c0                	xor    %eax,%eax
427d4c:	eb e0                	jmp    0x427d2e
427d4e:	33 c0                	xor    %eax,%eax
427d50:	50                   	push   %eax
427d51:	50                   	push   %eax
427d52:	50                   	push   %eax
427d53:	50                   	push   %eax
427d54:	50                   	push   %eax
427d55:	e8 56 7c ff ff       	call   0x41f9b0
427d5a:	cc                   	int3
427d5b:	8b ff                	mov    %edi,%edi
427d5d:	55                   	push   %ebp
427d5e:	8b ec                	mov    %esp,%ebp
427d60:	56                   	push   %esi
427d61:	8b 75 08             	mov    0x8(%ebp),%esi
427d64:	85 f6                	test   %esi,%esi
427d66:	74 1f                	je     0x427d87
427d68:	8b 06                	mov    (%esi),%eax
427d6a:	57                   	push   %edi
427d6b:	8b fe                	mov    %esi,%edi
427d6d:	eb 0c                	jmp    0x427d7b
427d6f:	50                   	push   %eax
427d70:	e8 45 2b 00 00       	call   0x42a8ba
427d75:	8d 7f 04             	lea    0x4(%edi),%edi
427d78:	8b 07                	mov    (%edi),%eax
427d7a:	59                   	pop    %ecx
427d7b:	85 c0                	test   %eax,%eax
427d7d:	75 f0                	jne    0x427d6f
427d7f:	56                   	push   %esi
427d80:	e8 35 2b 00 00       	call   0x42a8ba
427d85:	59                   	pop    %ecx
427d86:	5f                   	pop    %edi
427d87:	5e                   	pop    %esi
427d88:	5d                   	pop    %ebp
427d89:	c3                   	ret
427d8a:	8b ff                	mov    %edi,%edi
427d8c:	53                   	push   %ebx
427d8d:	56                   	push   %esi
427d8e:	57                   	push   %edi
427d8f:	8b 3d 4c 6d 45 00    	mov    0x456d4c,%edi
427d95:	85 ff                	test   %edi,%edi
427d97:	74 67                	je     0x427e00
427d99:	8b 07                	mov    (%edi),%eax
427d9b:	85 c0                	test   %eax,%eax
427d9d:	74 56                	je     0x427df5
427d9f:	33 db                	xor    %ebx,%ebx
427da1:	53                   	push   %ebx
427da2:	53                   	push   %ebx
427da3:	6a ff                	push   $0xffffffff
427da5:	50                   	push   %eax
427da6:	53                   	push   %ebx
427da7:	53                   	push   %ebx
427da8:	e8 63 9f 00 00       	call   0x431d10
427dad:	8b d8                	mov    %eax,%ebx
427daf:	83 c4 18             	add    $0x18,%esp
427db2:	85 db                	test   %ebx,%ebx
427db4:	74 4a                	je     0x427e00
427db6:	6a 02                	push   $0x2
427db8:	53                   	push   %ebx
427db9:	e8 5c 53 00 00       	call   0x42d11a
427dbe:	8b f0                	mov    %eax,%esi
427dc0:	59                   	pop    %ecx
427dc1:	59                   	pop    %ecx
427dc2:	85 f6                	test   %esi,%esi
427dc4:	74 41                	je     0x427e07
427dc6:	53                   	push   %ebx
427dc7:	56                   	push   %esi
427dc8:	6a ff                	push   $0xffffffff
427dca:	ff 37                	push   (%edi)
427dcc:	33 db                	xor    %ebx,%ebx
427dce:	53                   	push   %ebx
427dcf:	53                   	push   %ebx
427dd0:	e8 3b 9f 00 00       	call   0x431d10
427dd5:	83 c4 18             	add    $0x18,%esp
427dd8:	85 c0                	test   %eax,%eax
427dda:	74 1d                	je     0x427df9
427ddc:	53                   	push   %ebx
427ddd:	56                   	push   %esi
427dde:	e8 5d b1 00 00       	call   0x432f40
427de3:	53                   	push   %ebx
427de4:	e8 d1 2a 00 00       	call   0x42a8ba
427de9:	83 c7 04             	add    $0x4,%edi
427dec:	83 c4 0c             	add    $0xc,%esp
427def:	8b 07                	mov    (%edi),%eax
427df1:	85 c0                	test   %eax,%eax
427df3:	75 ac                	jne    0x427da1
427df5:	33 c0                	xor    %eax,%eax
427df7:	eb 0a                	jmp    0x427e03
427df9:	56                   	push   %esi
427dfa:	e8 bb 2a 00 00       	call   0x42a8ba
427dff:	59                   	pop    %ecx
427e00:	83 c8 ff             	or     $0xffffffff,%eax
427e03:	5f                   	pop    %edi
427e04:	5e                   	pop    %esi
427e05:	5b                   	pop    %ebx
427e06:	c3                   	ret
427e07:	6a 00                	push   $0x0
427e09:	eb ef                	jmp    0x427dfa
427e0b:	8b ff                	mov    %edi,%edi
427e0d:	55                   	push   %ebp
427e0e:	8b ec                	mov    %esp,%ebp
427e10:	8b 45 08             	mov    0x8(%ebp),%eax
427e13:	8b 00                	mov    (%eax),%eax
427e15:	3b 05 58 6d 45 00    	cmp    0x456d58,%eax
427e1b:	74 07                	je     0x427e24
427e1d:	50                   	push   %eax
427e1e:	e8 38 ff ff ff       	call   0x427d5b
427e23:	59                   	pop    %ecx
427e24:	5d                   	pop    %ebp
427e25:	c3                   	ret
427e26:	8b ff                	mov    %edi,%edi
427e28:	55                   	push   %ebp
427e29:	8b ec                	mov    %esp,%ebp
427e2b:	8b 45 08             	mov    0x8(%ebp),%eax
427e2e:	8b 00                	mov    (%eax),%eax
427e30:	3b 05 54 6d 45 00    	cmp    0x456d54,%eax
427e36:	74 07                	je     0x427e3f
427e38:	50                   	push   %eax
427e39:	e8 1d ff ff ff       	call   0x427d5b
427e3e:	59                   	pop    %ecx
427e3f:	5d                   	pop    %ebp
427e40:	c3                   	ret
427e41:	e9 76 fd ff ff       	jmp    0x427bbc
427e46:	6a 00                	push   $0x0
427e48:	b8 b7 cf 43 00       	mov    $0x43cfb7,%eax