648b04:	33 54 24 04          	xor    0x4(%esp),%edx
648b08:	83 c4 08             	add    $0x8,%esp
648b0b:	52                   	push   %edx
648b0c:	50                   	push   %eax
648b0d:	8b 44 24 10          	mov    0x10(%esp),%eax
648b11:	8b 54 24 14          	mov    0x14(%esp),%edx
648b15:	23 44 24 18          	and    0x18(%esp),%eax
648b19:	23 54 24 1c          	and    0x1c(%esp),%edx
648b1d:	33 04 24             	xor    (%esp),%eax
648b20:	33 54 24 04          	xor    0x4(%esp),%edx
648b24:	83 c4 08             	add    $0x8,%esp
648b27:	03 04 24             	add    (%esp),%eax
648b2a:	13 54 24 04          	adc    0x4(%esp),%edx
648b2e:	83 c4 08             	add    $0x8,%esp
648b31:	89 44 24 48          	mov    %eax,0x48(%esp)
648b35:	89 54 24 4c          	mov    %edx,0x4c(%esp)
648b39:	8b 44 24 10          	mov    0x10(%esp),%eax
648b3d:	8b 54 24 14          	mov    0x14(%esp),%edx
648b41:	03 44 24 40          	add    0x40(%esp),%eax
648b45:	13 54 24 44          	adc    0x44(%esp),%edx
648b49:	89 44 24 10          	mov    %eax,0x10(%esp)
648b4d:	89 54 24 14          	mov    %edx,0x14(%esp)
648b51:	8b 44 24 40          	mov    0x40(%esp),%eax
648b55:	8b 54 24 44          	mov    0x44(%esp),%edx
648b59:	03 44 24 48          	add    0x48(%esp),%eax
648b5d:	13 54 24 4c          	adc    0x4c(%esp),%edx
648b61:	89 44 24 30          	mov    %eax,0x30(%esp)
648b65:	89 54 24 34          	mov    %edx,0x34(%esp)
648b69:	8b 44 24 10          	mov    0x10(%esp),%eax
648b6d:	8b 54 24 14          	mov    0x14(%esp),%edx
648b71:	0f ac d0 0e          	shrd   $0xe,%edx,%eax
648b75:	c1 ea 0e             	shr    $0xe,%edx
648b78:	52                   	push   %edx
648b79:	50                   	push   %eax
648b7a:	8b 54 24 18          	mov    0x18(%esp),%edx
648b7e:	c1 e2 12             	shl    $0x12,%edx
648b81:	33 c0                	xor    %eax,%eax
648b83:	0b 04 24             	or     (%esp),%eax
648b86:	0b 54 24 04          	or     0x4(%esp),%edx
648b8a:	83 c4 08             	add    $0x8,%esp
648b8d:	52                   	push   %edx
648b8e:	50                   	push   %eax
648b8f:	8b 44 24 18          	mov    0x18(%esp),%eax
648b93:	8b 54 24 1c          	mov    0x1c(%esp),%edx
648b97:	0f ac d0 12          	shrd   $0x12,%edx,%eax
648b9b:	c1 ea 12             	shr    $0x12,%edx
648b9e:	52                   	push   %edx
648b9f:	50                   	push   %eax
648ba0:	8b 54 24 20          	mov    0x20(%esp),%edx
648ba4:	c1 e2 0e             	shl    $0xe,%edx
648ba7:	33 c0                	xor    %eax,%eax
648ba9:	0b 04 24             	or     (%esp),%eax
648bac:	0b 54 24 04          	or     0x4(%esp),%edx
648bb0:	83 c4 08             	add    $0x8,%esp
648bb3:	33 04 24             	xor    (%esp),%eax
648bb6:	33 54 24 04          	xor    0x4(%esp),%edx
648bba:	83 c4 08             	add    $0x8,%esp
648bbd:	52                   	push   %edx
648bbe:	50                   	push   %eax
648bbf:	8b 44 24 1c          	mov    0x1c(%esp),%eax
648bc3:	c1 e8 09             	shr    $0x9,%eax
648bc6:	33 d2                	xor    %edx,%edx
648bc8:	52                   	push   %edx
648bc9:	50                   	push   %eax
648bca:	8b 44 24 20          	mov    0x20(%esp),%eax
648bce:	8b 54 24 24          	mov    0x24(%esp),%edx
648bd2:	0f a4 c2 17          	shld   $0x17,%eax,%edx
648bd6:	c1 e0 17             	shl    $0x17,%eax
648bd9:	0b 04 24             	or     (%esp),%eax
648bdc:	0b 54 24 04          	or     0x4(%esp),%edx
648be0:	83 c4 08             	add    $0x8,%esp
648be3:	33 04 24             	xor    (%esp),%eax
648be6:	33 54 24 04          	xor    0x4(%esp),%edx
648bea:	83 c4 08             	add    $0x8,%esp
648bed:	03 44 24 28          	add    0x28(%esp),%eax
648bf1:	13 54 24 2c          	adc    0x2c(%esp),%edx
648bf5:	52                   	push   %edx
648bf6:	50                   	push   %eax
648bf7:	8b 44 24 18          	mov    0x18(%esp),%eax
648bfb:	8b 54 24 1c          	mov    0x1c(%esp),%edx
648bff:	23 44 24 20          	and    0x20(%esp),%eax
648c03:	23 54 24 24          	and    0x24(%esp),%edx
648c07:	52                   	push   %edx
648c08:	50                   	push   %eax
648c09:	8b 44 24 20          	mov    0x20(%esp),%eax
648c0d:	8b 54 24 24          	mov    0x24(%esp),%edx
648c11:	f7 d0                	not    %eax
648c13:	f7 d2                	not    %edx
648c15:	23 44 24 30          	and    0x30(%esp),%eax
648c19:	23 54 24 34          	and    0x34(%esp),%edx
648c1d:	33 04 24             	xor    (%esp),%eax
648c20:	33 54 24 04          	xor    0x4(%esp),%edx
648c24:	83 c4 08             	add    $0x8,%esp
648c27:	03 04 24             	add    (%esp),%eax
648c2a:	13 54 24 04          	adc    0x4(%esp),%edx
648c2e:	83 c4 08             	add    $0x8,%esp
648c31:	05 bc be c9 15       	add    $0x15c9bebc,%eax
648c36:	81 d2 0a be 9e 3c    	adc    $0x3c9ebe0a,%edx
648c3c:	03 84 24 a0 02 00 00 	add    0x2a0(%esp),%eax
648c43:	13 94 24 a4 02 00 00 	adc    0x2a4(%esp),%edx
648c4a:	89 44 24 40          	mov    %eax,0x40(%esp)
648c4e:	89 54 24 44          	mov    %edx,0x44(%esp)
648c52:	8b 44 24 30          	mov    0x30(%esp),%eax
648c56:	8b 54 24 34          	mov    0x34(%esp),%edx
648c5a:	0f ac d0 1c          	shrd   $0x1c,%edx,%eax
648c5e:	c1 ea 1c             	shr    $0x1c,%edx
648c61:	52                   	push   %edx
648c62:	50                   	push   %eax
648c63:	8b 54 24 38          	mov    0x38(%esp),%edx
648c67:	c1 e2 04             	shl    $0x4,%edx
648c6a:	33 c0                	xor    %eax,%eax
648c6c:	0b 04 24             	or     (%esp),%eax
648c6f:	0b 54 24 04          	or     0x4(%esp),%edx
648c73:	83 c4 08             	add    $0x8,%esp
648c76:	52                   	push   %edx
648c77:	50                   	push   %eax
648c78:	8b 44 24 3c          	mov    0x3c(%esp),%eax
648c7c:	c1 e8 02             	shr    $0x2,%eax
648c7f:	33 d2                	xor    %edx,%edx
648c81:	52                   	push   %edx
648c82:	50                   	push   %eax
648c83:	8b 44 24 40          	mov    0x40(%esp),%eax
648c87:	8b 54 24 44          	mov    0x44(%esp),%edx
648c8b:	0f a4 c2 1e          	shld   $0x1e,%eax,%edx
648c8f:	c1 e0 1e             	shl    $0x1e,%eax
648c92:	0b 04 24             	or     (%esp),%eax
648c95:	0b 54 24 04          	or     0x4(%esp),%edx
648c99:	83 c4 08             	add    $0x8,%esp
648c9c:	33 04 24             	xor    (%esp),%eax
648c9f:	33 54 24 04          	xor    0x4(%esp),%edx
648ca3:	83 c4 08             	add    $0x8,%esp
648ca6:	52                   	push   %edx
648ca7:	50                   	push   %eax
648ca8:	8b 44 24 3c          	mov    0x3c(%esp),%eax
648cac:	c1 e8 07             	shr    $0x7,%eax
648caf:	33 d2                	xor    %edx,%edx
648cb1:	52                   	push   %edx
648cb2:	50                   	push   %eax
648cb3:	8b 44 24 40          	mov    0x40(%esp),%eax
648cb7:	8b 54 24 44          	mov    0x44(%esp),%edx
648cbb:	0f a4 c2 19          	shld   $0x19,%eax,%edx
648cbf:	c1 e0 19             	shl    $0x19,%eax
648cc2:	0b 04 24             	or     (%esp),%eax
648cc5:	0b 54 24 04          	or     0x4(%esp),%edx
648cc9:	83 c4 08             	add    $0x8,%esp
648ccc:	33 04 24             	xor    (%esp),%eax
648ccf:	33 54 24 04          	xor    0x4(%esp),%edx
648cd3:	83 c4 08             	add    $0x8,%esp
648cd6:	52                   	push   %edx
648cd7:	50                   	push   %eax
648cd8:	8b 44 24 38          	mov    0x38(%esp),%eax
648cdc:	8b 54 24 3c          	mov    0x3c(%esp),%edx
648ce0:	23 44 24 40          	and    0x40(%esp),%eax
648ce4:	23 54 24 44          	and    0x44(%esp),%edx
648ce8:	52                   	push   %edx
648ce9:	50                   	push   %eax
648cea:	8b 44 24 40          	mov    0x40(%esp),%eax
648cee:	8b 54 24 44          	mov    0x44(%esp),%edx
648cf2:	23 44 24 10          	and    0x10(%esp),%eax
648cf6:	23 54 24 14          	and    0x14(%esp),%edx
648cfa:	33 04 24             	xor    (%esp),%eax
648cfd:	33 54 24 04          	xor    0x4(%esp),%edx
648d01:	83 c4 08             	add    $0x8,%esp
648d04:	52                   	push   %edx
648d05:	50                   	push   %eax
648d06:	8b 44 24 48          	mov    0x48(%esp),%eax
648d0a:	8b 54 24 4c          	mov    0x4c(%esp),%edx
648d0e:	23 44 24 10          	and    0x10(%esp),%eax
648d12:	23 54 24 14          	and    0x14(%esp),%edx
648d16:	33 04 24             	xor    (%esp),%eax
648d19:	33 54 24 04          	xor    0x4(%esp),%edx
648d1d:	83 c4 08             	add    $0x8,%esp
648d20:	03 04 24             	add    (%esp),%eax
648d23:	13 54 24 04          	adc    0x4(%esp),%edx
648d27:	83 c4 08             	add    $0x8,%esp
648d2a:	89 44 24 48          	mov    %eax,0x48(%esp)
648d2e:	89 54 24 4c          	mov    %edx,0x4c(%esp)
648d32:	8b 44 24 08          	mov    0x8(%esp),%eax
648d36:	8b 54 24 0c          	mov    0xc(%esp),%edx
648d3a:	03 44 24 40          	add    0x40(%esp),%eax
648d3e:	13 54 24 44          	adc    0x44(%esp),%edx
648d42:	89 44 24 08          	mov    %eax,0x8(%esp)
648d46:	89 54 24 0c          	mov    %edx,0xc(%esp)
648d4a:	8b 44 24 40          	mov    0x40(%esp),%eax
648d4e:	8b 54 24 44          	mov    0x44(%esp),%edx
648d52:	03 44 24 48          	add    0x48(%esp),%eax
648d56:	13 54 24 4c          	adc    0x4c(%esp),%edx
648d5a:	89 44 24 28          	mov    %eax,0x28(%esp)
648d5e:	89 54 24 2c          	mov    %edx,0x2c(%esp)
648d62:	8b 44 24 08          	mov    0x8(%esp),%eax
648d66:	8b 54 24 0c          	mov    0xc(%esp),%edx
648d6a:	0f ac d0 0e          	shrd   $0xe,%edx,%eax
648d6e:	c1 ea 0e             	shr    $0xe,%edx
648d71:	52                   	push   %edx
648d72:	50                   	push   %eax
648d73:	8b 54 24 10          	mov    0x10(%esp),%edx
648d77:	c1 e2 12             	shl    $0x12,%edx
648d7a:	33 c0                	xor    %eax,%eax
648d7c:	0b 04 24             	or     (%esp),%eax
648d7f:	0b 54 24 04          	or     0x4(%esp),%edx
648d83:	83 c4 08             	add    $0x8,%esp
648d86:	52                   	push   %edx
648d87:	50                   	push   %eax
648d88:	8b 44 24 10          	mov    0x10(%esp),%eax
648d8c:	8b 54 24 14          	mov    0x14(%esp),%edx
648d90:	0f ac d0 12          	shrd   $0x12,%edx,%eax
648d94:	c1 ea 12             	shr    $0x12,%edx
648d97:	52                   	push   %edx
648d98:	50                   	push   %eax
648d99:	8b 54 24 18          	mov    0x18(%esp),%edx
648d9d:	c1 e2 0e             	shl    $0xe,%edx
648da0:	33 c0                	xor    %eax,%eax
648da2:	0b 04 24             	or     (%esp),%eax
648da5:	0b 54 24 04          	or     0x4(%esp),%edx
648da9:	83 c4 08             	add    $0x8,%esp
648dac:	33 04 24             	xor    (%esp),%eax
648daf:	33 54 24 04          	xor    0x4(%esp),%edx
648db3:	83 c4 08             	add    $0x8,%esp
648db6:	52                   	push   %edx
648db7:	50                   	push   %eax
648db8:	8b 44 24 14          	mov    0x14(%esp),%eax
648dbc:	c1 e8 09             	shr    $0x9,%eax
648dbf:	33 d2                	xor    %edx,%edx
648dc1:	52                   	push   %edx
648dc2:	50                   	push   %eax
648dc3:	8b 44 24 18          	mov    0x18(%esp),%eax
648dc7:	8b 54 24 1c          	mov    0x1c(%esp),%edx
648dcb:	0f a4 c2 17          	shld   $0x17,%eax,%edx
648dcf:	c1 e0 17             	shl    $0x17,%eax
648dd2:	0b 04 24             	or     (%esp),%eax
648dd5:	0b 54 24 04          	or     0x4(%esp),%edx
648dd9:	83 c4 08             	add    $0x8,%esp
648ddc:	33 04 24             	xor    (%esp),%eax
648ddf:	33 54 24 04          	xor    0x4(%esp),%edx
648de3:	83 c4 08             	add    $0x8,%esp
648de6:	03 44 24 20          	add    0x20(%esp),%eax
648dea:	13 54 24 24          	adc    0x24(%esp),%edx
648dee:	52                   	push   %edx
648def:	50                   	push   %eax
648df0:	8b 44 24 10          	mov    0x10(%esp),%eax
648df4:	8b 54 24 14          	mov    0x14(%esp),%edx
648df8:	23 44 24 18          	and    0x18(%esp),%eax
648dfc:	23 54 24 1c          	and    0x1c(%esp),%edx
648e00:	52                   	push   %edx
648e01:	50                   	push   %eax
648e02:	8b 44 24 18          	mov    0x18(%esp),%eax
648e06:	8b 54 24 1c          	mov    0x1c(%esp),%edx
648e0a:	f7 d0                	not    %eax
648e0c:	f7 d2                	not    %edx
648e0e:	23 44 24 28          	and    0x28(%esp),%eax
648e12:	23 54 24 2c          	and    0x2c(%esp),%edx
648e16:	33 04 24             	xor    (%esp),%eax
648e19:	33 54 24 04          	xor    0x4(%esp),%edx
648e1d:	83 c4 08             	add    $0x8,%esp
648e20:	03 04 24             	add    (%esp),%eax
648e23:	13 54 24 04          	adc    0x4(%esp),%edx
648e27:	83 c4 08             	add    $0x8,%esp
648e2a:	05 4c 0d 10 9c       	add    $0x9c100d4c,%eax
648e2f:	81 d2 c4 67 1d 43    	adc    $0x431d67c4,%edx
648e35:	03 84 24 a8 02 00 00 	add    0x2a8(%esp),%eax
648e3c:	13 94 24 ac 02 00 00 	adc    0x2ac(%esp),%edx
648e43:	89 44 24 40          	mov    %eax,0x40(%esp)
648e47:	89 54 24 44          	mov    %edx,0x44(%esp)
648e4b:	8b 44 24 28          	mov    0x28(%esp),%eax
648e4f:	8b 54 24 2c          	mov    0x2c(%esp),%edx
648e53:	0f ac d0 1c          	shrd   $0x1c,%edx,%eax
648e57:	c1 ea 1c             	shr    $0x1c,%edx
648e5a:	52                   	push   %edx
648e5b:	50                   	push   %eax
648e5c:	8b 54 24 30          	mov    0x30(%esp),%edx
648e60:	c1 e2 04             	shl    $0x4,%edx
648e63:	33 c0                	xor    %eax,%eax
648e65:	0b 04 24             	or     (%esp),%eax
648e68:	0b 54 24 04          	or     0x4(%esp),%edx
648e6c:	83 c4 08             	add    $0x8,%esp
648e6f:	52                   	push   %edx
648e70:	50                   	push   %eax
648e71:	8b 44 24 34          	mov    0x34(%esp),%eax
648e75:	c1 e8 02             	shr    $0x2,%eax
648e78:	33 d2                	xor    %edx,%edx
648e7a:	52                   	push   %edx
648e7b:	50                   	push   %eax
648e7c:	8b 44 24 38          	mov    0x38(%esp),%eax
648e80:	8b 54 24 3c          	mov    0x3c(%esp),%edx
648e84:	0f a4 c2 1e          	shld   $0x1e,%eax,%edx
648e88:	c1 e0 1e             	shl    $0x1e,%eax
648e8b:	0b 04 24             	or     (%esp),%eax
648e8e:	0b 54 24 04          	or     0x4(%esp),%edx
648e92:	83 c4 08             	add    $0x8,%esp
648e95:	33 04 24             	xor    (%esp),%eax
648e98:	33 54 24 04          	xor    0x4(%esp),%edx
648e9c:	83 c4 08             	add    $0x8,%esp
648e9f:	52                   	push   %edx
648ea0:	50                   	push   %eax
648ea1:	8b 44 24 34          	mov    0x34(%esp),%eax
648ea5:	c1 e8 07             	shr    $0x7,%eax
648ea8:	33 d2                	xor    %edx,%edx
648eaa:	52                   	push   %edx
648eab:	50                   	push   %eax
648eac:	8b 44 24 38          	mov    0x38(%esp),%eax
648eb0:	8b 54 24 3c          	mov    0x3c(%esp),%edx
648eb4:	0f a4 c2 19          	shld   $0x19,%eax,%edx
648eb8:	c1 e0 19             	shl    $0x19,%eax
648ebb:	0b 04 24             	or     (%esp),%eax
648ebe:	0b 54 24 04          	or     0x4(%esp),%edx
648ec2:	83 c4 08             	add    $0x8,%esp
648ec5:	33 04 24             	xor    (%esp),%eax
648ec8:	33 54 24 04          	xor    0x4(%esp),%edx
648ecc:	83 c4 08             	add    $0x8,%esp
648ecf:	52                   	push   %edx
648ed0:	50                   	push   %eax
648ed1:	8b 44 24 30          	mov    0x30(%esp),%eax
648ed5:	8b 54 24 34          	mov    0x34(%esp),%edx
648ed9:	23 44 24 38          	and    0x38(%esp),%eax
648edd:	23 54 24 3c          	and    0x3c(%esp),%edx
648ee1:	52                   	push   %edx
648ee2:	50                   	push   %eax
648ee3:	8b 44 24 38          	mov    0x38(%esp),%eax
648ee7:	8b 54 24 3c          	mov    0x3c(%esp),%edx
648eeb:	23 44 24 48          	and    0x48(%esp),%eax
648eef:	23 54 24 4c          	and    0x4c(%esp),%edx
648ef3:	33 04 24             	xor    (%esp),%eax
648ef6:	33 54 24 04          	xor    0x4(%esp),%edx
648efa:	83 c4 08             	add    $0x8,%esp
648efd:	52                   	push   %edx
648efe:	50                   	push   %eax
648eff:	8b 44 24 40          	mov    0x40(%esp),%eax
648f03:	8b 54 24 44          	mov    0x44(%esp),%edx
648f07:	23 44 24 48          	and    0x48(%esp),%eax
648f0b:	23 54 24 4c          	and    0x4c(%esp),%edx
648f0f:	33 04 24             	xor    (%esp),%eax
648f12:	33 54 24 04          	xor    0x4(%esp),%edx
648f16:	83 c4 08             	add    $0x8,%esp
648f19:	03 04 24             	add    (%esp),%eax
648f1c:	13 54 24 04          	adc    0x4(%esp),%edx
648f20:	83 c4 08             	add    $0x8,%esp
648f23:	89 44 24 48          	mov    %eax,0x48(%esp)
648f27:	89 54 24 4c          	mov    %edx,0x4c(%esp)
648f2b:	8b 04 24             	mov    (%esp),%eax
648f2e:	8b 54 24 04          	mov    0x4(%esp),%edx
648f32:	03 44 24 40          	add    0x40(%esp),%eax
648f36:	13 54 24 44          	adc    0x44(%esp),%edx
648f3a:	89 04 24             	mov    %eax,(%esp)
648f3d:	89 54 24 04          	mov    %edx,0x4(%esp)
648f41:	8b 44 24 40          	mov    0x40(%esp),%eax
648f45:	8b 54 24 44          	mov    0x44(%esp),%edx
648f49:	03 44 24 48          	add    0x48(%esp),%eax
648f4d:	13 54 24 4c          	adc    0x4c(%esp),%edx
648f51:	89 44 24 20          	mov    %eax,0x20(%esp)
648f55:	89 54 24 24          	mov    %edx,0x24(%esp)