589a71:	cc                   	int3
589a72:	cc                   	int3
589a73:	2b 49 fc             	sub    -0x4(%ecx),%ecx
589a76:	83 e9 0c             	sub    $0xc,%ecx
589a79:	e9 03 bd e7 ff       	jmp    0x405781
589a7e:	cc                   	int3
589a7f:	cc                   	int3
589a80:	e9 41 99 e9 ff       	jmp    0x4233c6
589a85:	cc                   	int3
589a86:	cc                   	int3
589a87:	cc                   	int3
589a88:	cc                   	int3
589a89:	cc                   	int3
589a8a:	cc                   	int3
589a8b:	cc                   	int3
589a8c:	cc                   	int3
589a8d:	cc                   	int3
589a8e:	cc                   	int3
589a8f:	cc                   	int3
589a90:	e9 f1 aa ea ff       	jmp    0x434586
589a95:	cc                   	int3
589a96:	cc                   	int3
589a97:	cc                   	int3
589a98:	cc                   	int3
589a99:	cc                   	int3
589a9a:	cc                   	int3
589a9b:	cc                   	int3
589a9c:	cc                   	int3
589a9d:	cc                   	int3
589a9e:	cc                   	int3
589a9f:	cc                   	int3
589aa0:	8b 44 24 04          	mov    0x4(%esp),%eax
589aa4:	85 c0                	test   %eax,%eax
589aa6:	75 03                	jne    0x589aab
589aa8:	c2 04 00             	ret    $0x4
589aab:	3d 5d 74 d1 05       	cmp    $0x5d1745d,%eax
589ab0:	77 3b                	ja     0x589aed
589ab2:	6b c0 2c             	imul   $0x2c,%eax,%eax
589ab5:	3d 00 10 00 00       	cmp    $0x1000,%eax
589aba:	72 22                	jb     0x589ade
589abc:	8d 48 23             	lea    0x23(%eax),%ecx
589abf:	3b c8                	cmp    %eax,%ecx
589ac1:	76 2f                	jbe    0x589af2
589ac3:	51                   	push   %ecx
589ac4:	e8 b4 0e ea ff       	call   0x42a97d
589ac9:	8b c8                	mov    %eax,%ecx
589acb:	83 c4 04             	add    $0x4,%esp
589ace:	85 c9                	test   %ecx,%ecx
589ad0:	74 25                	je     0x589af7
589ad2:	8d 41 23             	lea    0x23(%ecx),%eax
589ad5:	83 e0 e0             	and    $0xffffffe0,%eax
589ad8:	89 48 fc             	mov    %ecx,-0x4(%eax)
589adb:	c2 04 00             	ret    $0x4
589ade:	50                   	push   %eax
589adf:	e8 99 0e ea ff       	call   0x42a97d
589ae4:	83 c4 04             	add    $0x4,%esp
589ae7:	85 c0                	test   %eax,%eax
589ae9:	75 bd                	jne    0x589aa8
589aeb:	eb 0f                	jmp    0x589afc
589aed:	e8 2c 84 e7 ff       	call   0x401f1e
589af2:	e8 27 84 e7 ff       	call   0x401f1e
589af7:	e8 91 3e eb ff       	call   0x43d98d
589afc:	e8 8c 3e eb ff       	call   0x43d98d
589b01:	cc                   	int3
589b02:	cc                   	int3
589b03:	cc                   	int3
589b04:	cc                   	int3
589b05:	cc                   	int3
589b06:	cc                   	int3
589b07:	cc                   	int3
589b08:	cc                   	int3
589b09:	cc                   	int3
589b0a:	cc                   	int3
589b0b:	cc                   	int3
589b0c:	cc                   	int3
589b0d:	cc                   	int3
589b0e:	cc                   	int3
589b0f:	cc                   	int3
589b10:	cc                   	int3
589b11:	cc                   	int3
589b12:	cc                   	int3
589b13:	cc                   	int3
589b14:	cc                   	int3
589b15:	cc                   	int3
589b16:	cc                   	int3
589b17:	cc                   	int3
589b18:	cc                   	int3
589b19:	cc                   	int3
589b1a:	cc                   	int3
589b1b:	cc                   	int3
589b1c:	cc                   	int3
589b1d:	cc                   	int3
589b1e:	cc                   	int3
589b1f:	cc                   	int3
589b20:	8b 44 24 04          	mov    0x4(%esp),%eax
589b24:	85 c0                	test   %eax,%eax
589b26:	75 03                	jne    0x589b2b
589b28:	c2 04 00             	ret    $0x4
589b2b:	3d ff ff ff 1f       	cmp    $0x1fffffff,%eax
589b30:	77 3b                	ja     0x589b6d
589b32:	c1 e0 03             	shl    $0x3,%eax
589b35:	3d 00 10 00 00       	cmp    $0x1000,%eax
589b3a:	72 22                	jb     0x589b5e
589b3c:	8d 48 23             	lea    0x23(%eax),%ecx
589b3f:	3b c8                	cmp    %eax,%ecx
589b41:	76 2f                	jbe    0x589b72
589b43:	51                   	push   %ecx
589b44:	e8 34 0e ea ff       	call   0x42a97d
589b49:	8b c8                	mov    %eax,%ecx
589b4b:	83 c4 04             	add    $0x4,%esp
589b4e:	85 c9                	test   %ecx,%ecx
589b50:	74 25                	je     0x589b77
589b52:	8d 41 23             	lea    0x23(%ecx),%eax
589b55:	83 e0 e0             	and    $0xffffffe0,%eax
589b58:	89 48 fc             	mov    %ecx,-0x4(%eax)
589b5b:	c2 04 00             	ret    $0x4
589b5e:	50                   	push   %eax
589b5f:	e8 19 0e ea ff       	call   0x42a97d
589b64:	83 c4 04             	add    $0x4,%esp
589b67:	85 c0                	test   %eax,%eax
589b69:	75 bd                	jne    0x589b28
589b6b:	eb 0f                	jmp    0x589b7c
589b6d:	e8 ac 83 e7 ff       	call   0x401f1e
589b72:	e8 a7 83 e7 ff       	call   0x401f1e
589b77:	e8 11 3e eb ff       	call   0x43d98d
589b7c:	e8 0c 3e eb ff       	call   0x43d98d
589b81:	cc                   	int3
589b82:	cc                   	int3
589b83:	cc                   	int3
589b84:	cc                   	int3
589b85:	cc                   	int3
589b86:	cc                   	int3
589b87:	cc                   	int3
589b88:	cc                   	int3
589b89:	cc                   	int3
589b8a:	cc                   	int3
589b8b:	cc                   	int3
589b8c:	cc                   	int3
589b8d:	cc                   	int3
589b8e:	cc                   	int3
589b8f:	cc                   	int3
589b90:	cc                   	int3
589b91:	cc                   	int3
589b92:	cc                   	int3
589b93:	cc                   	int3
589b94:	cc                   	int3
589b95:	cc                   	int3
589b96:	cc                   	int3
589b97:	cc                   	int3
589b98:	cc                   	int3
589b99:	cc                   	int3
589b9a:	cc                   	int3
589b9b:	cc                   	int3
589b9c:	cc                   	int3
589b9d:	cc                   	int3
589b9e:	cc                   	int3
589b9f:	cc                   	int3
589ba0:	8b 44 24 04          	mov    0x4(%esp),%eax
589ba4:	8b 09                	mov    (%ecx),%ecx
589ba6:	89 08                	mov    %ecx,(%eax)
589ba8:	c2 04 00             	ret    $0x4
589bab:	cc                   	int3
589bac:	cc                   	int3
589bad:	cc                   	int3
589bae:	cc                   	int3
589baf:	cc                   	int3
589bb0:	8b 44 24 04          	mov    0x4(%esp),%eax
589bb4:	8b 09                	mov    (%ecx),%ecx
589bb6:	89 08                	mov    %ecx,(%eax)
589bb8:	c2 04 00             	ret    $0x4
589bbb:	cc                   	int3
589bbc:	cc                   	int3
589bbd:	cc                   	int3
589bbe:	cc                   	int3
589bbf:	cc                   	int3
589bc0:	8b 41 08             	mov    0x8(%ecx),%eax
589bc3:	2b 01                	sub    (%ecx),%eax
589bc5:	c1 f8 03             	sar    $0x3,%eax
589bc8:	c3                   	ret
589bc9:	cc                   	int3
589bca:	cc                   	int3
589bcb:	cc                   	int3
589bcc:	cc                   	int3
589bcd:	cc                   	int3
589bce:	cc                   	int3
589bcf:	cc                   	int3
589bd0:	8b 49 04             	mov    0x4(%ecx),%ecx
589bd3:	85 c9                	test   %ecx,%ecx
589bd5:	74 10                	je     0x589be7
589bd7:	8b 41 04             	mov    0x4(%ecx),%eax
589bda:	83 c1 04             	add    $0x4,%ecx
589bdd:	8b 40 04             	mov    0x4(%eax),%eax
589be0:	03 c8                	add    %eax,%ecx
589be2:	8b 01                	mov    (%ecx),%eax
589be4:	ff 60 14             	jmp    *0x14(%eax)
589be7:	33 c0                	xor    %eax,%eax
589be9:	c2 04 00             	ret    $0x4
589bec:	cc                   	int3
589bed:	cc                   	int3
589bee:	cc                   	int3
589bef:	cc                   	int3
589bf0:	cc                   	int3
589bf1:	cc                   	int3
589bf2:	cc                   	int3
589bf3:	2b 49 fc             	sub    -0x4(%ecx),%ecx
589bf6:	e9 18 f5 e9 ff       	jmp    0x429113
589bfb:	cc                   	int3
589bfc:	cc                   	int3
589bfd:	cc                   	int3
589bfe:	cc                   	int3
589bff:	cc                   	int3
589c00:	56                   	push   %esi
589c01:	57                   	push   %edi
589c02:	8b f1                	mov    %ecx,%esi
589c04:	e8 b9 b8 ea ff       	call   0x4354c2
589c09:	8b 7c 24 0c          	mov    0xc(%esp),%edi
589c0d:	3b f8                	cmp    %eax,%edi
589c0f:	75 1c                	jne    0x589c2d
589c11:	8d 46 b8             	lea    -0x48(%esi),%eax
589c14:	85 c0                	test   %eax,%eax
589c16:	75 05                	jne    0x589c1d
589c18:	5f                   	pop    %edi
589c19:	5e                   	pop    %esi
589c1a:	c2 04 00             	ret    $0x4
589c1d:	8b 46 bc             	mov    -0x44(%esi),%eax
589c20:	5f                   	pop    %edi
589c21:	8b 40 04             	mov    0x4(%eax),%eax
589c24:	83 c0 bc             	add    $0xffffffbc,%eax
589c27:	03 c6                	add    %esi,%eax
589c29:	5e                   	pop    %esi
589c2a:	c2 04 00             	ret    $0x4
589c2d:	e8 7b c8 ea ff       	call   0x4364ad
589c32:	3b f8                	cmp    %eax,%edi
589c34:	75 08                	jne    0x589c3e
589c36:	5f                   	pop    %edi
589c37:	8d 46 b8             	lea    -0x48(%esi),%eax
589c3a:	5e                   	pop    %esi
589c3b:	c2 04 00             	ret    $0x4
589c3e:	57                   	push   %edi
589c3f:	8d 4e f4             	lea    -0xc(%esi),%ecx
589c42:	e8 67 b3 ea ff       	call   0x434fae
589c47:	5f                   	pop    %edi
589c48:	5e                   	pop    %esi
589c49:	c2 04 00             	ret    $0x4
589c4c:	cc                   	int3
589c4d:	cc                   	int3
589c4e:	cc                   	int3
589c4f:	cc                   	int3
589c50:	cc                   	int3
589c51:	cc                   	int3
589c52:	cc                   	int3
589c53:	cc                   	int3
589c54:	cc                   	int3
589c55:	cc                   	int3
589c56:	cc                   	int3
589c57:	cc                   	int3
589c58:	cc                   	int3
589c59:	cc                   	int3
589c5a:	cc                   	int3
589c5b:	cc                   	int3
589c5c:	cc                   	int3
589c5d:	cc                   	int3
589c5e:	cc                   	int3
589c5f:	cc                   	int3
589c60:	8b d1                	mov    %ecx,%edx
589c62:	53                   	push   %ebx
589c63:	8b 5c 24 08          	mov    0x8(%esp),%ebx
589c67:	56                   	push   %esi
589c68:	8b 72 10             	mov    0x10(%edx),%esi
589c6b:	3b f3                	cmp    %ebx,%esi
589c6d:	72 4d                	jb     0x589cbc
589c6f:	57                   	push   %edi
589c70:	8b 7c 24 18          	mov    0x18(%esp),%edi
589c74:	66 83 3f 00          	cmpw   $0x0,(%edi)
589c78:	75 04                	jne    0x589c7e
589c7a:	33 c9                	xor    %ecx,%ecx
589c7c:	eb 16                	jmp    0x589c94
589c7e:	8b cf                	mov    %edi,%ecx
589c80:	55                   	push   %ebp
589c81:	8d 69 02             	lea    0x2(%ecx),%ebp
589c84:	66 8b 01             	mov    (%ecx),%ax
589c87:	83 c1 02             	add    $0x2,%ecx
589c8a:	66 85 c0             	test   %ax,%ax
589c8d:	75 f5                	jne    0x589c84
589c8f:	2b cd                	sub    %ebp,%ecx
589c91:	d1 f9                	sar    $1,%ecx
589c93:	5d                   	pop    %ebp
589c94:	2b f3                	sub    %ebx,%esi
589c96:	39 74 24 14          	cmp    %esi,0x14(%esp)
589c9a:	0f 46 74 24 14       	cmovbe 0x14(%esp),%esi
589c9f:	83 7a 14 08          	cmpl   $0x8,0x14(%edx)
589ca3:	72 02                	jb     0x589ca7
589ca5:	8b 12                	mov    (%edx),%edx
589ca7:	51                   	push   %ecx
589ca8:	57                   	push   %edi
589ca9:	8d 04 5a             	lea    (%edx,%ebx,2),%eax
589cac:	56                   	push   %esi
589cad:	50                   	push   %eax
589cae:	e8 a6 03 ea ff       	call   0x42a059
589cb3:	83 c4 10             	add    $0x10,%esp
589cb6:	5f                   	pop    %edi
589cb7:	5e                   	pop    %esi
589cb8:	5b                   	pop    %ebx
589cb9:	c2 0c 00             	ret    $0xc
589cbc:	68 44 17 bd 00       	push   $0xbd1744
589cc1:	e8 d6 0b ea ff       	call   0x42a89c
589cc6:	cc                   	int3
589cc7:	cc                   	int3
589cc8:	cc                   	int3
589cc9:	cc                   	int3
589cca:	cc                   	int3
589ccb:	cc                   	int3
589ccc:	cc                   	int3
589ccd:	cc                   	int3
589cce:	cc                   	int3
589ccf:	cc                   	int3
589cd0:	cc                   	int3
589cd1:	cc                   	int3
589cd2:	cc                   	int3
589cd3:	cc                   	int3
589cd4:	cc                   	int3
589cd5:	cc                   	int3
589cd6:	cc                   	int3
589cd7:	cc                   	int3
589cd8:	cc                   	int3
589cd9:	cc                   	int3
589cda:	cc                   	int3
589cdb:	cc                   	int3
589cdc:	cc                   	int3
589cdd:	cc                   	int3
589cde:	cc                   	int3
589cdf:	cc                   	int3
589ce0:	8b 44 24 08          	mov    0x8(%esp),%eax
589ce4:	8b 4c 24 04          	mov    0x4(%esp),%ecx
589ce8:	3d ff ff ff 1f       	cmp    $0x1fffffff,%eax
589ced:	77 2e                	ja     0x589d1d
589cef:	c1 e0 03             	shl    $0x3,%eax
589cf2:	3d 00 10 00 00       	cmp    $0x1000,%eax
589cf7:	72 1a                	jb     0x589d13
589cf9:	f6 c1 1f             	test   $0x1f,%cl
589cfc:	75 24                	jne    0x589d22
589cfe:	8b 41 fc             	mov    -0x4(%ecx),%eax
589d01:	3b c1                	cmp    %ecx,%eax
589d03:	73 22                	jae    0x589d27
589d05:	2b c8                	sub    %eax,%ecx
589d07:	83 f9 04             	cmp    $0x4,%ecx
589d0a:	72 20                	jb     0x589d2c
589d0c:	83 f9 23             	cmp    $0x23,%ecx
589d0f:	77 20                	ja     0x589d31
589d11:	8b c8                	mov    %eax,%ecx