784a64:	0f ac c8 0f          	shrd   $0xf,%ecx,%eax
784a68:	c1 e3 11             	shl    $0x11,%ebx
784a6b:	c1 e9 0f             	shr    $0xf,%ecx
784a6e:	0b e8                	or     %eax,%ebp
784a70:	33 6c 24 1c          	xor    0x1c(%esp),%ebp
784a74:	0b d9                	or     %ecx,%ebx
784a76:	33 5c 24 30          	xor    0x30(%esp),%ebx
784a7a:	01 74 24 18          	add    %esi,0x18(%esp)
784a7e:	8b 4c 24 20          	mov    0x20(%esp),%ecx
784a82:	13 ca                	adc    %edx,%ecx
784a84:	89 5c 24 10          	mov    %ebx,0x10(%esp)
784a88:	8b de                	mov    %esi,%ebx
784a8a:	89 4c 24 20          	mov    %ecx,0x20(%esp)
784a8e:	0f ac d6 1c          	shrd   $0x1c,%edx,%esi
784a92:	33 c0                	xor    %eax,%eax
784a94:	c1 e3 04             	shl    $0x4,%ebx
784a97:	c1 ea 1c             	shr    $0x1c,%edx
784a9a:	0b c6                	or     %esi,%eax
784a9c:	33 44 24 18          	xor    0x18(%esp),%eax
784aa0:	0b da                	or     %edx,%ebx
784aa2:	33 d9                	xor    %ecx,%ebx
784aa4:	8b 4c 24 38          	mov    0x38(%esp),%ecx
784aa8:	8b d1                	mov    %ecx,%edx
784aaa:	01 4c 24 14          	add    %ecx,0x14(%esp)
784aae:	8b 74 24 4c          	mov    0x4c(%esp),%esi
784ab2:	11 74 24 2c          	adc    %esi,0x2c(%esp)
784ab6:	33 c9                	xor    %ecx,%ecx
784ab8:	0f ac 74 24 38 19    	shrd   $0x19,%esi,0x38(%esp)
784abe:	0b 4c 24 38          	or     0x38(%esp),%ecx
784ac2:	33 4c 24 14          	xor    0x14(%esp),%ecx
784ac6:	c1 e2 07             	shl    $0x7,%edx
784ac9:	c1 ee 19             	shr    $0x19,%esi
784acc:	0b d6                	or     %esi,%edx
784ace:	89 5c 24 44          	mov    %ebx,0x44(%esp)
784ad2:	33 54 24 2c          	xor    0x2c(%esp),%edx
784ad6:	8b 74 24 1c          	mov    0x1c(%esp),%esi
784ada:	03 74 24 3c          	add    0x3c(%esp),%esi
784ade:	89 54 24 4c          	mov    %edx,0x4c(%esp)
784ae2:	11 7c 24 30          	adc    %edi,0x30(%esp)
784ae6:	01 4c 24 18          	add    %ecx,0x18(%esp)
784aea:	89 74 24 1c          	mov    %esi,0x1c(%esp)
784aee:	11 54 24 20          	adc    %edx,0x20(%esp)
784af2:	01 44 24 14          	add    %eax,0x14(%esp)
784af6:	8b 54 24 28          	mov    0x28(%esp),%edx
784afa:	11 5c 24 2c          	adc    %ebx,0x2c(%esp)
784afe:	01 6c 24 24          	add    %ebp,0x24(%esp)
784b02:	8b 5c 24 3c          	mov    0x3c(%esp),%ebx
784b06:	8b f3                	mov    %ebx,%esi
784b08:	13 54 24 10          	adc    0x10(%esp),%edx
784b0c:	89 54 24 28          	mov    %edx,0x28(%esp)
784b10:	33 d2                	xor    %edx,%edx
784b12:	0f ac fb 14          	shrd   $0x14,%edi,%ebx
784b16:	c1 e6 0c             	shl    $0xc,%esi
784b19:	0b d3                	or     %ebx,%edx
784b1b:	c1 ef 14             	shr    $0x14,%edi
784b1e:	33 54 24 1c          	xor    0x1c(%esp),%edx
784b22:	0b f7                	or     %edi,%esi
784b24:	33 74 24 30          	xor    0x30(%esp),%esi
784b28:	8b dd                	mov    %ebp,%ebx
784b2a:	03 54 24 78          	add    0x78(%esp),%edx
784b2e:	89 54 24 50          	mov    %edx,0x50(%esp)
784b32:	13 74 24 7c          	adc    0x7c(%esp),%esi
784b36:	33 ff                	xor    %edi,%edi
784b38:	8b 54 24 10          	mov    0x10(%esp),%edx
784b3c:	0f ac d5 08          	shrd   $0x8,%edx,%ebp
784b40:	c1 e3 18             	shl    $0x18,%ebx
784b43:	c1 ea 08             	shr    $0x8,%edx
784b46:	0b fd                	or     %ebp,%edi
784b48:	33 7c 24 24          	xor    0x24(%esp),%edi
784b4c:	0b da                	or     %edx,%ebx
784b4e:	8b 54 24 40          	mov    0x40(%esp),%edx
784b52:	33 5c 24 28          	xor    0x28(%esp),%ebx
784b56:	8b 6c 24 44          	mov    0x44(%esp),%ebp
784b5a:	c7 44 24 10 00 00 00 	movl   $0x0,0x10(%esp)
784b61:	00
784b62:	03 7a 30             	add    0x30(%edx),%edi
784b65:	13 5a 34             	adc    0x34(%edx),%ebx
784b68:	8b d0                	mov    %eax,%edx
784b6a:	0f ac e8 0a          	shrd   $0xa,%ebp,%eax
784b6e:	c1 e2 16             	shl    $0x16,%edx
784b71:	09 44 24 10          	or     %eax,0x10(%esp)
784b75:	8b 44 24 54          	mov    0x54(%esp),%eax
784b79:	c1 ed 0a             	shr    $0xa,%ebp
784b7c:	0b d5                	or     %ebp,%edx
784b7e:	8b 6c 24 10          	mov    0x10(%esp),%ebp
784b82:	33 54 24 2c          	xor    0x2c(%esp),%edx
784b86:	33 6c 24 14          	xor    0x14(%esp),%ebp
784b8a:	03 6c 24 68          	add    0x68(%esp),%ebp
784b8e:	13 54 24 58          	adc    0x58(%esp),%edx
784b92:	03 28                	add    (%eax),%ebp
784b94:	89 6c 24 10          	mov    %ebp,0x10(%esp)
784b98:	13 50 04             	adc    0x4(%eax),%edx
784b9b:	8b 44 24 4c          	mov    0x4c(%esp),%eax
784b9f:	89 54 24 3c          	mov    %edx,0x3c(%esp)
784ba3:	8b d0                	mov    %eax,%edx
784ba5:	0f a4 c8 09          	shld   $0x9,%ecx,%eax
784ba9:	c1 ea 17             	shr    $0x17,%edx
784bac:	89 54 24 34          	mov    %edx,0x34(%esp)
784bb0:	33 d2                	xor    %edx,%edx
784bb2:	c1 e1 09             	shl    $0x9,%ecx
784bb5:	09 4c 24 34          	or     %ecx,0x34(%esp)
784bb9:	0b d0                	or     %eax,%edx
784bbb:	8b 44 24 34          	mov    0x34(%esp),%eax
784bbf:	33 44 24 18          	xor    0x18(%esp),%eax
784bc3:	33 54 24 20          	xor    0x20(%esp),%edx
784bc7:	8b 4c 24 40          	mov    0x40(%esp),%ecx
784bcb:	03 41 08             	add    0x8(%ecx),%eax
784bce:	13 51 0c             	adc    0xc(%ecx),%edx
784bd1:	83 c0 03             	add    $0x3,%eax
784bd4:	8b 49 18             	mov    0x18(%ecx),%ecx
784bd7:	83 d2 00             	adc    $0x0,%edx
784bda:	89 44 24 34          	mov    %eax,0x34(%esp)
784bde:	8b 44 24 40          	mov    0x40(%esp),%eax
784be2:	89 54 24 4c          	mov    %edx,0x4c(%esp)
784be6:	8b 54 24 50          	mov    0x50(%esp),%edx
784bea:	03 ca                	add    %edx,%ecx
784bec:	8b 40 1c             	mov    0x1c(%eax),%eax
784bef:	13 c6                	adc    %esi,%eax
784bf1:	01 4c 24 18          	add    %ecx,0x18(%esp)
784bf5:	8b ca                	mov    %edx,%ecx
784bf7:	11 44 24 20          	adc    %eax,0x20(%esp)
784bfb:	33 c0                	xor    %eax,%eax
784bfd:	0f ac f2 19          	shrd   $0x19,%esi,%edx
784c01:	c1 e1 07             	shl    $0x7,%ecx
784c04:	0b c2                	or     %edx,%eax
784c06:	c1 ee 19             	shr    $0x19,%esi
784c09:	8b 54 24 2c          	mov    0x2c(%esp),%edx
784c0d:	0b ce                	or     %esi,%ecx
784c0f:	33 4c 24 20          	xor    0x20(%esp),%ecx
784c13:	8b f0                	mov    %eax,%esi
784c15:	8b 44 24 40          	mov    0x40(%esp),%eax
784c19:	33 74 24 18          	xor    0x18(%esp),%esi
784c1d:	89 4c 24 38          	mov    %ecx,0x38(%esp)
784c21:	8b 48 28             	mov    0x28(%eax),%ecx
784c24:	8b 40 2c             	mov    0x2c(%eax),%eax
784c27:	03 cf                	add    %edi,%ecx
784c29:	13 c3                	adc    %ebx,%eax
784c2b:	01 4c 24 14          	add    %ecx,0x14(%esp)
784c2f:	8b cb                	mov    %ebx,%ecx
784c31:	13 d0                	adc    %eax,%edx
784c33:	33 c0                	xor    %eax,%eax
784c35:	0f a4 fb 1e          	shld   $0x1e,%edi,%ebx
784c39:	c1 e9 02             	shr    $0x2,%ecx
784c3c:	0b c3                	or     %ebx,%eax
784c3e:	c1 e7 1e             	shl    $0x1e,%edi
784c41:	33 c2                	xor    %edx,%eax
784c43:	89 54 24 2c          	mov    %edx,0x2c(%esp)
784c47:	8b 54 24 3c          	mov    0x3c(%esp),%edx
784c4b:	0b cf                	or     %edi,%ecx
784c4d:	33 4c 24 14          	xor    0x14(%esp),%ecx
784c51:	8b dd                	mov    %ebp,%ebx
784c53:	8b 7c 24 24          	mov    0x24(%esp),%edi
784c57:	89 44 24 44          	mov    %eax,0x44(%esp)
784c5b:	8b 44 24 40          	mov    0x40(%esp),%eax
784c5f:	89 4c 24 48          	mov    %ecx,0x48(%esp)
784c63:	8b 48 38             	mov    0x38(%eax),%ecx
784c66:	8b 40 3c             	mov    0x3c(%eax),%eax
784c69:	03 cd                	add    %ebp,%ecx
784c6b:	13 c2                	adc    %edx,%eax
784c6d:	03 f9                	add    %ecx,%edi
784c6f:	8b 4c 24 28          	mov    0x28(%esp),%ecx
784c73:	13 c8                	adc    %eax,%ecx
784c75:	89 7c 24 24          	mov    %edi,0x24(%esp)
784c79:	8b 44 24 10          	mov    0x10(%esp),%eax
784c7d:	33 ed                	xor    %ebp,%ebp
784c7f:	0f ac d0 1e          	shrd   $0x1e,%edx,%eax
784c83:	c1 e3 02             	shl    $0x2,%ebx
784c86:	0b e8                	or     %eax,%ebp
784c88:	c1 ea 1e             	shr    $0x1e,%edx
784c8b:	8b 44 24 54          	mov    0x54(%esp),%eax
784c8f:	0b da                	or     %edx,%ebx
784c91:	8b 54 24 4c          	mov    0x4c(%esp),%edx
784c95:	33 d9                	xor    %ecx,%ebx
784c97:	89 4c 24 28          	mov    %ecx,0x28(%esp)
784c9b:	33 ef                	xor    %edi,%ebp
784c9d:	8b 7c 24 34          	mov    0x34(%esp),%edi
784ca1:	8b 48 08             	mov    0x8(%eax),%ecx
784ca4:	03 4c 24 5c          	add    0x5c(%esp),%ecx
784ca8:	8b 40 0c             	mov    0xc(%eax),%eax
784cab:	13 44 24 6c          	adc    0x6c(%esp),%eax
784caf:	03 cf                	add    %edi,%ecx
784cb1:	89 5c 24 3c          	mov    %ebx,0x3c(%esp)
784cb5:	13 c2                	adc    %edx,%eax
784cb7:	01 4c 24 1c          	add    %ecx,0x1c(%esp)
784cbb:	8b 5c 24 30          	mov    0x30(%esp),%ebx
784cbf:	8b ca                	mov    %edx,%ecx
784cc1:	13 d8                	adc    %eax,%ebx
784cc3:	c1 e9 08             	shr    $0x8,%ecx
784cc6:	0f a4 fa 18          	shld   $0x18,%edi,%edx
784cca:	33 c0                	xor    %eax,%eax
784ccc:	89 5c 24 30          	mov    %ebx,0x30(%esp)
784cd0:	0b c2                	or     %edx,%eax
784cd2:	c1 e7 18             	shl    $0x18,%edi
784cd5:	0b cf                	or     %edi,%ecx
784cd7:	33 c3                	xor    %ebx,%eax
784cd9:	33 4c 24 1c          	xor    0x1c(%esp),%ecx
784cdd:	01 74 24 14          	add    %esi,0x14(%esp)
784ce1:	8b 5c 24 2c          	mov    0x2c(%esp),%ebx
784ce5:	13 5c 24 38          	adc    0x38(%esp),%ebx
784ce9:	33 d2                	xor    %edx,%edx
784ceb:	8b 7c 24 38          	mov    0x38(%esp),%edi
784cef:	0f a4 74 24 38 0d    	shld   $0xd,%esi,0x38(%esp)
784cf5:	0b 54 24 38          	or     0x38(%esp),%edx
784cf9:	33 d3                	xor    %ebx,%edx
784cfb:	c1 e6 0d             	shl    $0xd,%esi
784cfe:	c1 ef 13             	shr    $0x13,%edi
784d01:	0b fe                	or     %esi,%edi
784d03:	89 5c 24 2c          	mov    %ebx,0x2c(%esp)
784d07:	33 7c 24 14          	xor    0x14(%esp),%edi
784d0b:	8b 5c 24 24          	mov    0x24(%esp),%ebx
784d0f:	03 d9                	add    %ecx,%ebx
784d11:	89 54 24 4c          	mov    %edx,0x4c(%esp)
784d15:	8b 54 24 28          	mov    0x28(%esp),%edx
784d19:	13 d0                	adc    %eax,%edx
784d1b:	89 4c 24 34          	mov    %ecx,0x34(%esp)
784d1f:	c1 64 24 34 12       	shll   $0x12,0x34(%esp)
784d24:	33 f6                	xor    %esi,%esi
784d26:	0f ac c1 0e          	shrd   $0xe,%eax,%ecx
784d2a:	89 54 24 28          	mov    %edx,0x28(%esp)
784d2e:	0b f1                	or     %ecx,%esi
784d30:	c1 e8 0e             	shr    $0xe,%eax
784d33:	8b 4c 24 34          	mov    0x34(%esp),%ecx
784d37:	33 f3                	xor    %ebx,%esi
784d39:	0b c8                	or     %eax,%ecx
784d3b:	89 5c 24 24          	mov    %ebx,0x24(%esp)
784d3f:	8b 5c 24 3c          	mov    0x3c(%esp),%ebx
784d43:	33 ca                	xor    %edx,%ecx
784d45:	8b 54 24 1c          	mov    0x1c(%esp),%edx
784d49:	8b 44 24 3c          	mov    0x3c(%esp),%eax
784d4d:	03 d5                	add    %ebp,%edx
784d4f:	89 4c 24 34          	mov    %ecx,0x34(%esp)
784d53:	8b 4c 24 30          	mov    0x30(%esp),%ecx
784d57:	13 cb                	adc    %ebx,%ecx
784d59:	89 74 24 50          	mov    %esi,0x50(%esp)
784d5d:	0f a4 e8 0a          	shld   $0xa,%ebp,%eax
784d61:	c1 eb 16             	shr    $0x16,%ebx
784d64:	33 f6                	xor    %esi,%esi
784d66:	c1 e5 0a             	shl    $0xa,%ebp
784d69:	0b f0                	or     %eax,%esi
784d6b:	8b 44 24 18          	mov    0x18(%esp),%eax
784d6f:	0b dd                	or     %ebp,%ebx
784d71:	8b 6c 24 44          	mov    0x44(%esp),%ebp
784d75:	33 da                	xor    %edx,%ebx
784d77:	33 f1                	xor    %ecx,%esi
784d79:	89 54 24 1c          	mov    %edx,0x1c(%esp)
784d7d:	03 44 24 48          	add    0x48(%esp),%eax
784d81:	8b 54 24 48          	mov    0x48(%esp),%edx
784d85:	11 6c 24 20          	adc    %ebp,0x20(%esp)
784d89:	89 4c 24 30          	mov    %ecx,0x30(%esp)
784d8d:	8b cd                	mov    %ebp,%ecx
784d8f:	0f a4 d5 11          	shld   $0x11,%edx,%ebp
784d93:	89 44 24 18          	mov    %eax,0x18(%esp)
784d97:	33 c0                	xor    %eax,%eax
784d99:	c1 e9 0f             	shr    $0xf,%ecx
784d9c:	0b c5                	or     %ebp,%eax
784d9e:	33 44 24 20          	xor    0x20(%esp),%eax
784da2:	c1 e2 11             	shl    $0x11,%edx
784da5:	0b ca                	or     %edx,%ecx
784da7:	8b 54 24 4c          	mov    0x4c(%esp),%edx
784dab:	33 4c 24 18          	xor    0x18(%esp),%ecx
784daf:	8b ea                	mov    %edx,%ebp
784db1:	01 7c 24 24          	add    %edi,0x24(%esp)
784db5:	11 54 24 28          	adc    %edx,0x28(%esp)
784db9:	c1 ed 07             	shr    $0x7,%ebp
784dbc:	89 6c 24 10          	mov    %ebp,0x10(%esp)
784dc0:	0f a4 fa 19          	shld   $0x19,%edi,%edx
784dc4:	33 ed                	xor    %ebp,%ebp
784dc6:	0b ea                	or     %edx,%ebp
784dc8:	c1 e7 19             	shl    $0x19,%edi
784dcb:	33 6c 24 28          	xor    0x28(%esp),%ebp
784dcf:	09 7c 24 10          	or     %edi,0x10(%esp)
784dd3:	8b f8                	mov    %eax,%edi
784dd5:	8b 54 24 24          	mov    0x24(%esp),%edx
784dd9:	31 54 24 10          	xor    %edx,0x10(%esp)
784ddd:	01 4c 24 1c          	add    %ecx,0x1c(%esp)
784de1:	8b 54 24 30          	mov    0x30(%esp),%edx
784de5:	13 d0                	adc    %eax,%edx
784de7:	89 6c 24 3c          	mov    %ebp,0x3c(%esp)
784deb:	0f a4 c8 1d          	shld   $0x1d,%ecx,%eax
784def:	33 ed                	xor    %ebp,%ebp
784df1:	c1 ef 03             	shr    $0x3,%edi
784df4:	0b e8                	or     %eax,%ebp
784df6:	c1 e1 1d             	shl    $0x1d,%ecx
784df9:	33 ea                	xor    %edx,%ebp
784dfb:	89 54 24 30          	mov    %edx,0x30(%esp)
784dff:	0b f9                	or     %ecx,%edi
784e01:	89 6c 24 44          	mov    %ebp,0x44(%esp)
784e05:	33 7c 24 1c          	xor    0x1c(%esp),%edi
784e09:	8b d3                	mov    %ebx,%edx
784e0b:	8b 6c 24 18          	mov    0x18(%esp),%ebp
784e0f:	8b 4c 24 20          	mov    0x20(%esp),%ecx
784e13:	03 eb                	add    %ebx,%ebp
784e15:	89 6c 24 18          	mov    %ebp,0x18(%esp)
784e19:	13 ce                	adc    %esi,%ecx
784e1b:	89 7c 24 4c          	mov    %edi,0x4c(%esp)
784e1f:	0f ac f3 19          	shrd   $0x19,%esi,%ebx
784e23:	c1 e2 07             	shl    $0x7,%edx
784e26:	33 c0                	xor    %eax,%eax
784e28:	c1 ee 19             	shr    $0x19,%esi
784e2b:	0b c3                	or     %ebx,%eax
784e2d:	0b d6                	or     %esi,%edx
784e2f:	89 4c 24 20          	mov    %ecx,0x20(%esp)
784e33:	8b 74 24 50          	mov    0x50(%esp),%esi
784e37:	33 d1                	xor    %ecx,%edx
784e39:	8b 4c 24 2c          	mov    0x2c(%esp),%ecx
784e3d:	33 c5                	xor    %ebp,%eax
784e3f:	01 74 24 14          	add    %esi,0x14(%esp)
784e43:	8b de                	mov    %esi,%ebx
784e45:	8b 6c 24 34          	mov    0x34(%esp),%ebp
784e49:	13 4c 24 34          	adc    0x34(%esp),%ecx
784e4d:	0f ac ee 15          	shrd   $0x15,%ebp,%esi
784e51:	c1 e3 0b             	shl    $0xb,%ebx
784e54:	c1 ed 15             	shr    $0x15,%ebp
784e57:	0b dd                	or     %ebp,%ebx
784e59:	89 4c 24 2c          	mov    %ecx,0x2c(%esp)
784e5d:	8b 6c 24 1c          	mov    0x1c(%esp),%ebp
784e61:	33 c9                	xor    %ecx,%ecx
784e63:	0b ce                	or     %esi,%ecx
784e65:	89 54 24 48          	mov    %edx,0x48(%esp)
784e69:	33 4c 24 14          	xor    0x14(%esp),%ecx
784e6d:	8b 74 24 2c          	mov    0x2c(%esp),%esi
784e71:	33 de                	xor    %esi,%ebx
784e73:	03 6c 24 10          	add    0x10(%esp),%ebp
784e77:	89 6c 24 1c          	mov    %ebp,0x1c(%esp)
784e7b:	8b 6c 24 30          	mov    0x30(%esp),%ebp
784e7f:	13 6c 24 3c          	adc    0x3c(%esp),%ebp
784e83:	01 4c 24 18          	add    %ecx,0x18(%esp)
784e87:	89 5c 24 34          	mov    %ebx,0x34(%esp)
784e8b:	11 5c 24 20          	adc    %ebx,0x20(%esp)
784e8f:	01 44 24 14          	add    %eax,0x14(%esp)
784e93:	8b 5c 24 10          	mov    0x10(%esp),%ebx
784e97:	13 f2                	adc    %edx,%esi
784e99:	89 4c 24 50          	mov    %ecx,0x50(%esp)
784e9d:	01 7c 24 24          	add    %edi,0x24(%esp)
784ea1:	8b 4c 24 3c          	mov    0x3c(%esp),%ecx
784ea5:	89 74 24 2c          	mov    %esi,0x2c(%esp)
784ea9:	8b f1                	mov    %ecx,%esi
784eab:	89 6c 24 30          	mov    %ebp,0x30(%esp)
784eaf:	8b 6c 24 44          	mov    0x44(%esp),%ebp
784eb3:	11 6c 24 28          	adc    %ebp,0x28(%esp)
784eb7:	33 d2                	xor    %edx,%edx
784eb9:	0f a4 d9 08          	shld   $0x8,%ebx,%ecx
784ebd:	c1 ee 18             	shr    $0x18,%esi
784ec0:	c1 e3 08             	shl    $0x8,%ebx
784ec3:	0b f3                	or     %ebx,%esi
784ec5:	0b d1                	or     %ecx,%edx
784ec7:	33 54 24 30          	xor    0x30(%esp),%edx
784ecb:	8b dd                	mov    %ebp,%ebx
784ecd:	33 74 24 1c          	xor    0x1c(%esp),%esi
784ed1:	8b 4c 24 40          	mov    0x40(%esp),%ecx