6439ff:	cc                   	int3
643a00:	8b c1                	mov    %ecx,%eax
643a02:	c3                   	ret
643a03:	cc                   	int3
643a04:	cc                   	int3
643a05:	cc                   	int3
643a06:	cc                   	int3
643a07:	cc                   	int3
643a08:	cc                   	int3
643a09:	cc                   	int3
643a0a:	cc                   	int3
643a0b:	cc                   	int3
643a0c:	cc                   	int3
643a0d:	cc                   	int3
643a0e:	cc                   	int3
643a0f:	cc                   	int3
643a10:	8b c1                	mov    %ecx,%eax
643a12:	c3                   	ret
643a13:	cc                   	int3
643a14:	cc                   	int3
643a15:	cc                   	int3
643a16:	cc                   	int3
643a17:	cc                   	int3
643a18:	cc                   	int3
643a19:	cc                   	int3
643a1a:	cc                   	int3
643a1b:	cc                   	int3
643a1c:	cc                   	int3
643a1d:	cc                   	int3
643a1e:	cc                   	int3
643a1f:	cc                   	int3
643a20:	8b c1                	mov    %ecx,%eax
643a22:	c3                   	ret
643a23:	cc                   	int3
643a24:	cc                   	int3
643a25:	cc                   	int3
643a26:	cc                   	int3
643a27:	cc                   	int3
643a28:	cc                   	int3
643a29:	cc                   	int3
643a2a:	cc                   	int3
643a2b:	cc                   	int3
643a2c:	cc                   	int3
643a2d:	cc                   	int3
643a2e:	cc                   	int3
643a2f:	cc                   	int3
643a30:	8b c1                	mov    %ecx,%eax
643a32:	c3                   	ret
643a33:	cc                   	int3
643a34:	cc                   	int3
643a35:	cc                   	int3
643a36:	cc                   	int3
643a37:	cc                   	int3
643a38:	cc                   	int3
643a39:	cc                   	int3
643a3a:	cc                   	int3
643a3b:	cc                   	int3
643a3c:	cc                   	int3
643a3d:	cc                   	int3
643a3e:	cc                   	int3
643a3f:	cc                   	int3
643a40:	8b c1                	mov    %ecx,%eax
643a42:	c3                   	ret
643a43:	cc                   	int3
643a44:	cc                   	int3
643a45:	cc                   	int3
643a46:	cc                   	int3
643a47:	cc                   	int3
643a48:	cc                   	int3
643a49:	cc                   	int3
643a4a:	cc                   	int3
643a4b:	cc                   	int3
643a4c:	cc                   	int3
643a4d:	cc                   	int3
643a4e:	cc                   	int3
643a4f:	cc                   	int3
643a50:	8b c1                	mov    %ecx,%eax
643a52:	c3                   	ret
643a53:	cc                   	int3
643a54:	cc                   	int3
643a55:	cc                   	int3
643a56:	cc                   	int3
643a57:	cc                   	int3
643a58:	cc                   	int3
643a59:	cc                   	int3
643a5a:	cc                   	int3
643a5b:	cc                   	int3
643a5c:	cc                   	int3
643a5d:	cc                   	int3
643a5e:	cc                   	int3
643a5f:	cc                   	int3
643a60:	8b c1                	mov    %ecx,%eax
643a62:	c3                   	ret
643a63:	cc                   	int3
643a64:	cc                   	int3
643a65:	cc                   	int3
643a66:	cc                   	int3
643a67:	cc                   	int3
643a68:	cc                   	int3
643a69:	cc                   	int3
643a6a:	cc                   	int3
643a6b:	cc                   	int3
643a6c:	cc                   	int3
643a6d:	cc                   	int3
643a6e:	cc                   	int3
643a6f:	cc                   	int3
643a70:	8b c1                	mov    %ecx,%eax
643a72:	c3                   	ret
643a73:	cc                   	int3
643a74:	cc                   	int3
643a75:	cc                   	int3
643a76:	cc                   	int3
643a77:	cc                   	int3
643a78:	cc                   	int3
643a79:	cc                   	int3
643a7a:	cc                   	int3
643a7b:	cc                   	int3
643a7c:	cc                   	int3
643a7d:	cc                   	int3
643a7e:	cc                   	int3
643a7f:	cc                   	int3
643a80:	8b c1                	mov    %ecx,%eax
643a82:	c3                   	ret
643a83:	cc                   	int3
643a84:	cc                   	int3
643a85:	cc                   	int3
643a86:	cc                   	int3
643a87:	cc                   	int3
643a88:	cc                   	int3
643a89:	cc                   	int3
643a8a:	cc                   	int3
643a8b:	cc                   	int3
643a8c:	cc                   	int3
643a8d:	cc                   	int3
643a8e:	cc                   	int3
643a8f:	cc                   	int3
643a90:	8b c1                	mov    %ecx,%eax
643a92:	c3                   	ret
643a93:	cc                   	int3
643a94:	cc                   	int3
643a95:	cc                   	int3
643a96:	cc                   	int3
643a97:	cc                   	int3
643a98:	cc                   	int3
643a99:	cc                   	int3
643a9a:	cc                   	int3
643a9b:	cc                   	int3
643a9c:	cc                   	int3
643a9d:	cc                   	int3
643a9e:	cc                   	int3
643a9f:	cc                   	int3
643aa0:	56                   	push   %esi
643aa1:	8b 71 08             	mov    0x8(%ecx),%esi
643aa4:	ba ff ff ff 3f       	mov    $0x3fffffff,%edx
643aa9:	2b 31                	sub    (%ecx),%esi
643aab:	c1 fe 02             	sar    $0x2,%esi
643aae:	8b c6                	mov    %esi,%eax
643ab0:	d1 e8                	shr    $1,%eax
643ab2:	2b d0                	sub    %eax,%edx
643ab4:	8d 0c 30             	lea    (%eax,%esi,1),%ecx
643ab7:	33 c0                	xor    %eax,%eax
643ab9:	3b d6                	cmp    %esi,%edx
643abb:	5e                   	pop    %esi
643abc:	0f 43 c1             	cmovae %ecx,%eax
643abf:	3b 44 24 04          	cmp    0x4(%esp),%eax
643ac3:	0f 42 44 24 04       	cmovb  0x4(%esp),%eax
643ac8:	c2 04 00             	ret    $0x4
643acb:	cc                   	int3
643acc:	cc                   	int3
643acd:	cc                   	int3
643ace:	cc                   	int3
643acf:	cc                   	int3
643ad0:	cc                   	int3
643ad1:	cc                   	int3
643ad2:	cc                   	int3
643ad3:	cc                   	int3
643ad4:	cc                   	int3
643ad5:	cc                   	int3
643ad6:	cc                   	int3
643ad7:	cc                   	int3
643ad8:	cc                   	int3
643ad9:	cc                   	int3
643ada:	cc                   	int3
643adb:	cc                   	int3
643adc:	cc                   	int3
643add:	cc                   	int3
643ade:	cc                   	int3
643adf:	cc                   	int3
643ae0:	56                   	push   %esi
643ae1:	8b 71 08             	mov    0x8(%ecx),%esi
643ae4:	ba ff ff ff 3f       	mov    $0x3fffffff,%edx
643ae9:	2b 31                	sub    (%ecx),%esi
643aeb:	c1 fe 02             	sar    $0x2,%esi
643aee:	8b c6                	mov    %esi,%eax
643af0:	d1 e8                	shr    $1,%eax
643af2:	2b d0                	sub    %eax,%edx
643af4:	8d 0c 30             	lea    (%eax,%esi,1),%ecx
643af7:	33 c0                	xor    %eax,%eax
643af9:	3b d6                	cmp    %esi,%edx
643afb:	5e                   	pop    %esi
643afc:	0f 43 c1             	cmovae %ecx,%eax
643aff:	3b 44 24 04          	cmp    0x4(%esp),%eax
643b03:	0f 42 44 24 04       	cmovb  0x4(%esp),%eax
643b08:	c2 04 00             	ret    $0x4
643b0b:	cc                   	int3
643b0c:	cc                   	int3
643b0d:	cc                   	int3
643b0e:	cc                   	int3
643b0f:	cc                   	int3
643b10:	cc                   	int3
643b11:	cc                   	int3
643b12:	cc                   	int3
643b13:	cc                   	int3
643b14:	cc                   	int3
643b15:	cc                   	int3
643b16:	cc                   	int3
643b17:	cc                   	int3
643b18:	cc                   	int3
643b19:	cc                   	int3
643b1a:	cc                   	int3
643b1b:	cc                   	int3
643b1c:	cc                   	int3
643b1d:	cc                   	int3
643b1e:	cc                   	int3
643b1f:	cc                   	int3
643b20:	56                   	push   %esi
643b21:	8b 71 08             	mov    0x8(%ecx),%esi
643b24:	ba ff ff ff 3f       	mov    $0x3fffffff,%edx
643b29:	2b 31                	sub    (%ecx),%esi
643b2b:	c1 fe 02             	sar    $0x2,%esi
643b2e:	8b c6                	mov    %esi,%eax
643b30:	d1 e8                	shr    $1,%eax
643b32:	2b d0                	sub    %eax,%edx
643b34:	8d 0c 30             	lea    (%eax,%esi,1),%ecx
643b37:	33 c0                	xor    %eax,%eax
643b39:	3b d6                	cmp    %esi,%edx
643b3b:	5e                   	pop    %esi
643b3c:	0f 43 c1             	cmovae %ecx,%eax
643b3f:	3b 44 24 04          	cmp    0x4(%esp),%eax
643b43:	0f 42 44 24 04       	cmovb  0x4(%esp),%eax
643b48:	c2 04 00             	ret    $0x4
643b4b:	cc                   	int3
643b4c:	cc                   	int3
643b4d:	cc                   	int3
643b4e:	cc                   	int3
643b4f:	cc                   	int3
643b50:	cc                   	int3
643b51:	cc                   	int3
643b52:	cc                   	int3
643b53:	cc                   	int3
643b54:	cc                   	int3
643b55:	cc                   	int3
643b56:	cc                   	int3
643b57:	cc                   	int3
643b58:	cc                   	int3
643b59:	cc                   	int3
643b5a:	cc                   	int3
643b5b:	cc                   	int3
643b5c:	cc                   	int3
643b5d:	cc                   	int3
643b5e:	cc                   	int3
643b5f:	cc                   	int3
643b60:	56                   	push   %esi
643b61:	8b 71 08             	mov    0x8(%ecx),%esi
643b64:	ba ff ff ff 3f       	mov    $0x3fffffff,%edx
643b69:	2b 31                	sub    (%ecx),%esi
643b6b:	c1 fe 02             	sar    $0x2,%esi
643b6e:	8b c6                	mov    %esi,%eax
643b70:	d1 e8                	shr    $1,%eax
643b72:	2b d0                	sub    %eax,%edx
643b74:	8d 0c 30             	lea    (%eax,%esi,1),%ecx
643b77:	33 c0                	xor    %eax,%eax
643b79:	3b d6                	cmp    %esi,%edx
643b7b:	5e                   	pop    %esi
643b7c:	0f 43 c1             	cmovae %ecx,%eax
643b7f:	3b 44 24 04          	cmp    0x4(%esp),%eax
643b83:	0f 42 44 24 04       	cmovb  0x4(%esp),%eax
643b88:	c2 04 00             	ret    $0x4
643b8b:	cc                   	int3
643b8c:	cc                   	int3
643b8d:	cc                   	int3
643b8e:	cc                   	int3
643b8f:	cc                   	int3
643b90:	cc                   	int3
643b91:	cc                   	int3
643b92:	cc                   	int3
643b93:	cc                   	int3
643b94:	cc                   	int3
643b95:	cc                   	int3
643b96:	cc                   	int3
643b97:	cc                   	int3
643b98:	cc                   	int3
643b99:	cc                   	int3
643b9a:	cc                   	int3
643b9b:	cc                   	int3
643b9c:	cc                   	int3
643b9d:	cc                   	int3
643b9e:	cc                   	int3
643b9f:	cc                   	int3
643ba0:	55                   	push   %ebp
643ba1:	8b ec                	mov    %esp,%ebp
643ba3:	6a ff                	push   $0xffffffff
643ba5:	68 90 83 b7 00       	push   $0xb78390
643baa:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
643bb0:	50                   	push   %eax
643bb1:	83 ec 18             	sub    $0x18,%esp
643bb4:	53                   	push   %ebx
643bb5:	56                   	push   %esi
643bb6:	57                   	push   %edi
643bb7:	a1 24 f6 d5 00       	mov    0xd5f624,%eax
643bbc:	33 c5                	xor    %ebp,%eax
643bbe:	50                   	push   %eax
643bbf:	8d 45 f4             	lea    -0xc(%ebp),%eax
643bc2:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
643bc8:	89 65 f0             	mov    %esp,-0x10(%ebp)
643bcb:	8b f9                	mov    %ecx,%edi
643bcd:	89 7d e0             	mov    %edi,-0x20(%ebp)
643bd0:	8b 45 0c             	mov    0xc(%ebp),%eax
643bd3:	8b f0                	mov    %eax,%esi
643bd5:	8b 17                	mov    (%edi),%edx
643bd7:	2b f2                	sub    %edx,%esi
643bd9:	c1 fe 02             	sar    $0x2,%esi
643bdc:	89 75 dc             	mov    %esi,-0x24(%ebp)
643bdf:	8b 75 10             	mov    0x10(%ebp),%esi
643be2:	85 f6                	test   %esi,%esi
643be4:	0f 84 e8 01 00 00    	je     0x643dd2
643bea:	8b 4f 08             	mov    0x8(%edi),%ecx
643bed:	8b 5f 04             	mov    0x4(%edi),%ebx
643bf0:	2b cb                	sub    %ebx,%ecx
643bf2:	c1 f9 02             	sar    $0x2,%ecx
643bf5:	3b ce                	cmp    %esi,%ecx
643bf7:	0f 83 f6 00 00 00    	jae    0x643cf3
643bfd:	2b da                	sub    %edx,%ebx
643bff:	b9 ff ff ff 3f       	mov    $0x3fffffff,%ecx
643c04:	c1 fb 02             	sar    $0x2,%ebx
643c07:	8b c1                	mov    %ecx,%eax
643c09:	2b c3                	sub    %ebx,%eax
643c0b:	3b c6                	cmp    %esi,%eax
643c0d:	73 0a                	jae    0x643c19
643c0f:	68 58 20 bd 00       	push   $0xbd2058
643c14:	e8 fd 5b de ff       	call   0x429816
643c19:	8d 04 33             	lea    (%ebx,%esi,1),%eax
643c1c:	8b 5f 08             	mov    0x8(%edi),%ebx
643c1f:	89 45 10             	mov    %eax,0x10(%ebp)
643c22:	2b da                	sub    %edx,%ebx
643c24:	c1 fb 02             	sar    $0x2,%ebx
643c27:	8b c3                	mov    %ebx,%eax
643c29:	d1 e8                	shr    $1,%eax
643c2b:	2b c8                	sub    %eax,%ecx
643c2d:	03 c3                	add    %ebx,%eax