896974:	ff 15 40 32 d8 00    	call   *0xd83240
89697a:	50                   	push   %eax
89697b:	8d 8d f8 fe ff ff    	lea    -0x108(%ebp),%ecx
896981:	e8 ec fb b7 ff       	call   0x416572
896986:	8d 85 f8 fe ff ff    	lea    -0x108(%ebp),%eax
89698c:	8b cb                	mov    %ebx,%ecx
89698e:	50                   	push   %eax
89698f:	e8 22 5c b9 ff       	call   0x42c5b6
896994:	8b bd 2c ff ff ff    	mov    -0xd4(%ebp),%edi
89699a:	83 bf 90 00 00 00 00 	cmpl   $0x0,0x90(%edi)
8969a1:	0f 85 12 01 00 00    	jne    0x896ab9
8969a7:	8d 85 00 ff ff ff    	lea    -0x100(%ebp),%eax
8969ad:	8b cb                	mov    %ebx,%ecx
8969af:	50                   	push   %eax
8969b0:	e8 77 ff b8 ff       	call   0x42692c
8969b5:	89 85 3c ff ff ff    	mov    %eax,-0xc4(%ebp)
8969bb:	85 c0                	test   %eax,%eax
8969bd:	0f 84 4a fe ff ff    	je     0x89680d
8969c3:	8b b5 34 ff ff ff    	mov    -0xcc(%ebp),%esi
8969c9:	83 7e 78 00          	cmpl   $0x0,0x78(%esi)
8969cd:	75 0e                	jne    0x8969dd
8969cf:	8d 85 f0 fe ff ff    	lea    -0x110(%ebp),%eax
8969d5:	8b cb                	mov    %ebx,%ecx
8969d7:	50                   	push   %eax
8969d8:	e8 4f ff b8 ff       	call   0x42692c
8969dd:	ff 75 10             	push   0x10(%ebp)
8969e0:	8d 85 20 ff ff ff    	lea    -0xe0(%ebp),%eax
8969e6:	8b cb                	mov    %ebx,%ecx
8969e8:	ff 75 0c             	push   0xc(%ebp)
8969eb:	50                   	push   %eax
8969ec:	e8 eb f9 b8 ff       	call   0x4263dc
8969f1:	8b 45 18             	mov    0x18(%ebp),%eax
8969f4:	8b cb                	mov    %ebx,%ecx
8969f6:	83 c0 fe             	add    $0xfffffffe,%eax
8969f9:	50                   	push   %eax
8969fa:	ff 75 0c             	push   0xc(%ebp)
8969fd:	e8 dc e0 b6 ff       	call   0x404ade
896a02:	83 7e 78 00          	cmpl   $0x0,0x78(%esi)
896a06:	74 0e                	je     0x896a16
896a08:	8d 85 10 ff ff ff    	lea    -0xf0(%ebp),%eax
896a0e:	8b cb                	mov    %ebx,%ecx
896a10:	50                   	push   %eax
896a11:	e8 16 ff b8 ff       	call   0x42692c
896a16:	8b 45 0c             	mov    0xc(%ebp),%eax
896a19:	8b cb                	mov    %ebx,%ecx
896a1b:	ff 75 18             	push   0x18(%ebp)
896a1e:	83 c0 02             	add    $0x2,%eax
896a21:	50                   	push   %eax
896a22:	e8 b7 e0 b6 ff       	call   0x404ade
896a27:	8b 45 14             	mov    0x14(%ebp),%eax
896a2a:	8b cb                	mov    %ebx,%ecx
896a2c:	ff 75 18             	push   0x18(%ebp)
896a2f:	83 c0 fe             	add    $0xfffffffe,%eax
896a32:	50                   	push   %eax
896a33:	e8 a6 e0 b6 ff       	call   0x404ade
896a38:	8b 45 18             	mov    0x18(%ebp),%eax
896a3b:	8b cb                	mov    %ebx,%ecx
896a3d:	83 c0 fe             	add    $0xfffffffe,%eax
896a40:	50                   	push   %eax
896a41:	ff 75 14             	push   0x14(%ebp)
896a44:	e8 95 e0 b6 ff       	call   0x404ade
896a49:	8b 45 10             	mov    0x10(%ebp),%eax
896a4c:	8b cb                	mov    %ebx,%ecx
896a4e:	48                   	dec    %eax
896a4f:	50                   	push   %eax
896a50:	ff 75 14             	push   0x14(%ebp)
896a53:	e8 86 e0 b6 ff       	call   0x404ade
896a58:	8d 85 f0 fe ff ff    	lea    -0x110(%ebp),%eax
896a5e:	8b cb                	mov    %ebx,%ecx
896a60:	50                   	push   %eax
896a61:	e8 c6 fe b8 ff       	call   0x42692c
896a66:	83 7e 78 00          	cmpl   $0x0,0x78(%esi)
896a6a:	0f 84 46 01 00 00    	je     0x896bb6
896a70:	8b 45 18             	mov    0x18(%ebp),%eax
896a73:	8b cb                	mov    %ebx,%ecx
896a75:	48                   	dec    %eax
896a76:	50                   	push   %eax
896a77:	8b 45 0c             	mov    0xc(%ebp),%eax
896a7a:	83 c0 03             	add    $0x3,%eax
896a7d:	50                   	push   %eax
896a7e:	8d 85 20 ff ff ff    	lea    -0xe0(%ebp),%eax
896a84:	50                   	push   %eax
896a85:	e8 52 f9 b8 ff       	call   0x4263dc
896a8a:	8b 45 18             	mov    0x18(%ebp),%eax
896a8d:	8b cb                	mov    %ebx,%ecx
896a8f:	48                   	dec    %eax
896a90:	50                   	push   %eax
896a91:	8b 45 14             	mov    0x14(%ebp),%eax
896a94:	83 c0 fe             	add    $0xfffffffe,%eax
896a97:	50                   	push   %eax
896a98:	e8 41 e0 b6 ff       	call   0x404ade
896a9d:	8b 45 18             	mov    0x18(%ebp),%eax
896aa0:	8b cb                	mov    %ebx,%ecx
896aa2:	83 c0 fe             	add    $0xfffffffe,%eax
896aa5:	50                   	push   %eax
896aa6:	8b 45 14             	mov    0x14(%ebp),%eax
896aa9:	48                   	dec    %eax
896aaa:	50                   	push   %eax
896aab:	e8 2e e0 b6 ff       	call   0x404ade
896ab0:	8b 45 10             	mov    0x10(%ebp),%eax
896ab3:	48                   	dec    %eax
896ab4:	e9 f0 00 00 00       	jmp    0x896ba9
896ab9:	8b 85 34 ff ff ff    	mov    -0xcc(%ebp),%eax
896abf:	83 78 78 00          	cmpl   $0x0,0x78(%eax)
896ac3:	8d 85 10 ff ff ff    	lea    -0xf0(%ebp),%eax
896ac9:	75 06                	jne    0x896ad1
896acb:	8d 85 f0 fe ff ff    	lea    -0x110(%ebp),%eax
896ad1:	50                   	push   %eax
896ad2:	8b cb                	mov    %ebx,%ecx
896ad4:	e8 53 fe b8 ff       	call   0x42692c
896ad9:	89 85 3c ff ff ff    	mov    %eax,-0xc4(%ebp)
896adf:	85 c0                	test   %eax,%eax
896ae1:	0f 84 26 fd ff ff    	je     0x89680d
896ae7:	8b 75 20             	mov    0x20(%ebp),%esi
896aea:	8b 45 18             	mov    0x18(%ebp),%eax
896aed:	85 f6                	test   %esi,%esi
896aef:	75 01                	jne    0x896af2
896af1:	48                   	dec    %eax
896af2:	50                   	push   %eax
896af3:	ff 75 14             	push   0x14(%ebp)
896af6:	8d 85 20 ff ff ff    	lea    -0xe0(%ebp),%eax
896afc:	8b cb                	mov    %ebx,%ecx
896afe:	50                   	push   %eax
896aff:	e8 d8 f8 b8 ff       	call   0x4263dc
896b04:	8b 45 10             	mov    0x10(%ebp),%eax
896b07:	8b cb                	mov    %ebx,%ecx
896b09:	83 c0 02             	add    $0x2,%eax
896b0c:	50                   	push   %eax
896b0d:	ff 75 14             	push   0x14(%ebp)
896b10:	e8 c9 df b6 ff       	call   0x404ade
896b15:	8b 45 14             	mov    0x14(%ebp),%eax
896b18:	8b cb                	mov    %ebx,%ecx
896b1a:	ff 75 10             	push   0x10(%ebp)
896b1d:	83 c0 fe             	add    $0xfffffffe,%eax
896b20:	50                   	push   %eax
896b21:	e8 b8 df b6 ff       	call   0x404ade
896b26:	8b 85 34 ff ff ff    	mov    -0xcc(%ebp),%eax
896b2c:	83 78 78 00          	cmpl   $0x0,0x78(%eax)
896b30:	74 0e                	je     0x896b40
896b32:	8d 85 00 ff ff ff    	lea    -0x100(%ebp),%eax
896b38:	8b cb                	mov    %ebx,%ecx
896b3a:	50                   	push   %eax
896b3b:	e8 ec fd b8 ff       	call   0x42692c
896b40:	8b 45 0c             	mov    0xc(%ebp),%eax
896b43:	8b cb                	mov    %ebx,%ecx
896b45:	ff 75 10             	push   0x10(%ebp)
896b48:	83 c0 02             	add    $0x2,%eax
896b4b:	50                   	push   %eax
896b4c:	e8 8d df b6 ff       	call   0x404ade
896b51:	8b 45 10             	mov    0x10(%ebp),%eax
896b54:	8b cb                	mov    %ebx,%ecx
896b56:	83 c0 02             	add    $0x2,%eax
896b59:	50                   	push   %eax
896b5a:	ff 75 0c             	push   0xc(%ebp)
896b5d:	e8 7c df b6 ff       	call   0x404ade
896b62:	ff 75 18             	push   0x18(%ebp)
896b65:	8b cb                	mov    %ebx,%ecx
896b67:	ff 75 0c             	push   0xc(%ebp)
896b6a:	e8 6f df b6 ff       	call   0x404ade
896b6f:	8b 85 34 ff ff ff    	mov    -0xcc(%ebp),%eax
896b75:	83 78 78 00          	cmpl   $0x0,0x78(%eax)
896b79:	74 3b                	je     0x896bb6
896b7b:	8d 85 f0 fe ff ff    	lea    -0x110(%ebp),%eax
896b81:	8b cb                	mov    %ebx,%ecx
896b83:	50                   	push   %eax
896b84:	e8 a3 fd b8 ff       	call   0x42692c
896b89:	8b 45 18             	mov    0x18(%ebp),%eax
896b8c:	85 f6                	test   %esi,%esi
896b8e:	75 01                	jne    0x896b91
896b90:	48                   	dec    %eax
896b91:	50                   	push   %eax
896b92:	8b 45 14             	mov    0x14(%ebp),%eax
896b95:	8b cb                	mov    %ebx,%ecx
896b97:	48                   	dec    %eax
896b98:	50                   	push   %eax
896b99:	8d 85 20 ff ff ff    	lea    -0xe0(%ebp),%eax
896b9f:	50                   	push   %eax
896ba0:	e8 37 f8 b8 ff       	call   0x4263dc
896ba5:	8b 45 10             	mov    0x10(%ebp),%eax
896ba8:	40                   	inc    %eax
896ba9:	50                   	push   %eax
896baa:	8b 45 14             	mov    0x14(%ebp),%eax
896bad:	48                   	dec    %eax
896bae:	8b cb                	mov    %ebx,%ecx
896bb0:	50                   	push   %eax
896bb1:	e8 28 df b6 ff       	call   0x404ade
896bb6:	83 7d 20 00          	cmpl   $0x0,0x20(%ebp)
896bba:	0f 84 ee 00 00 00    	je     0x896cae
896bc0:	83 bf 90 00 00 00 00 	cmpl   $0x0,0x90(%edi)
896bc7:	75 08                	jne    0x896bd1
896bc9:	8b 55 10             	mov    0x10(%ebp),%edx
896bcc:	83 c2 fe             	add    $0xfffffffe,%edx
896bcf:	eb 03                	jmp    0x896bd4
896bd1:	8b 55 18             	mov    0x18(%ebp),%edx
896bd4:	8b 45 0c             	mov    0xc(%ebp),%eax
896bd7:	8b 4d 14             	mov    0x14(%ebp),%ecx
896bda:	ff 75 1c             	push   0x1c(%ebp)
896bdd:	2b c8                	sub    %eax,%ecx
896bdf:	89 85 70 ff ff ff    	mov    %eax,-0x90(%ebp)
896be5:	03 c1                	add    %ecx,%eax
896be7:	89 95 74 ff ff ff    	mov    %edx,-0x8c(%ebp)
896bed:	89 85 78 ff ff ff    	mov    %eax,-0x88(%ebp)
896bf3:	8d 42 02             	lea    0x2(%edx),%eax
896bf6:	89 85 7c ff ff ff    	mov    %eax,-0x84(%ebp)
896bfc:	8b 07                	mov    (%edi),%eax
896bfe:	8b b0 dc 01 00 00    	mov    0x1dc(%eax),%esi
896c04:	8b ce                	mov    %esi,%ecx
896c06:	e8 5a 5a b9 ff       	call   0x42c665
896c0b:	8b cf                	mov    %edi,%ecx
896c0d:	ff d6                	call   *%esi
896c0f:	83 bd 1c ff ff ff 00 	cmpl   $0x0,-0xe4(%ebp)
896c16:	8b f0                	mov    %eax,%esi
896c18:	74 36                	je     0x896c50
896c1a:	83 bd 30 ff ff ff 00 	cmpl   $0x0,-0xd0(%ebp)
896c21:	74 09                	je     0x896c2c
896c23:	83 85 70 ff ff ff 03 	addl   $0x3,-0x90(%ebp)
896c2a:	eb 17                	jmp    0x896c43
896c2c:	6a 00                	push   $0x0
896c2e:	6a 01                	push   $0x1
896c30:	8d 85 70 ff ff ff    	lea    -0x90(%ebp),%eax
896c36:	50                   	push   %eax
896c37:	ff 15 4c 40 d8 00    	call   *0xd8404c
896c3d:	ff 85 70 ff ff ff    	incl   -0x90(%ebp)
896c43:	83 fe ff             	cmp    $0xffffffff,%esi
896c46:	75 0d                	jne    0x896c55
896c48:	e8 e9 16 b8 ff       	call   0x418336
896c4d:	8b 70 6c             	mov    0x6c(%eax),%esi
896c50:	83 fe ff             	cmp    $0xffffffff,%esi
896c53:	74 39                	je     0x896c8e
896c55:	56                   	push   %esi
896c56:	8d 8d e0 fe ff ff    	lea    -0x120(%ebp),%ecx
896c5c:	e8 89 fd b8 ff       	call   0x4269ea
896c61:	ff b5 e4 fe ff ff    	push   -0x11c(%ebp)
896c67:	8d 85 70 ff ff ff    	lea    -0x90(%ebp),%eax
896c6d:	50                   	push   %eax
896c6e:	ff 73 04             	push   0x4(%ebx)
896c71:	ff 15 c8 3d d8 00    	call   *0xd83dc8
896c77:	8d 8d e0 fe ff ff    	lea    -0x120(%ebp),%ecx
896c7d:	c7 85 e0 fe ff ff dc 	movl   $0xc3a7dc,-0x120(%ebp)
896c84:	a7 c3 00
896c87:	e8 ac 21 ba ff       	call   0x438e38
896c8c:	eb 20                	jmp    0x896cae
896c8e:	e8 a3 16 b8 ff       	call   0x418336
896c93:	05 d0 00 00 00       	add    $0xd0,%eax
896c98:	74 03                	je     0x896c9d
896c9a:	8b 40 04             	mov    0x4(%eax),%eax
896c9d:	50                   	push   %eax
896c9e:	8d 85 70 ff ff ff    	lea    -0x90(%ebp),%eax
896ca4:	50                   	push   %eax
896ca5:	ff 73 04             	push   0x4(%ebx)
896ca8:	ff 15 c8 3d d8 00    	call   *0xd83dc8
896cae:	ff b5 3c ff ff ff    	push   -0xc4(%ebp)
896cb4:	8b cb                	mov    %ebx,%ecx
896cb6:	e8 71 fc b8 ff       	call   0x42692c
896cbb:	83 bd 1c ff ff ff 00 	cmpl   $0x0,-0xe4(%ebp)
896cc2:	0f 84 c8 00 00 00    	je     0x896d90
896cc8:	8b 07                	mov    (%edi),%eax
896cca:	8b b0 8c 02 00 00    	mov    0x28c(%eax),%esi
896cd0:	8b ce                	mov    %esi,%ecx
896cd2:	e8 8e 59 b9 ff       	call   0x42c665
896cd7:	8b cf                	mov    %edi,%ecx
896cd9:	ff d6                	call   *%esi
896cdb:	85 c0                	test   %eax,%eax
896cdd:	74 1a                	je     0x896cf9
896cdf:	83 7d 20 00          	cmpl   $0x0,0x20(%ebp)
896ce3:	74 14                	je     0x896cf9
896ce5:	8b 45 18             	mov    0x18(%ebp),%eax
896ce8:	2b 45 10             	sub    0x10(%ebp),%eax
896ceb:	6b c0 03             	imul   $0x3,%eax,%eax
896cee:	99                   	cltd
896cef:	83 e2 03             	and    $0x3,%edx
896cf2:	03 c2                	add    %edx,%eax
896cf4:	c1 f8 02             	sar    $0x2,%eax
896cf7:	eb 06                	jmp    0x896cff
896cf9:	8b 45 18             	mov    0x18(%ebp),%eax
896cfc:	2b 45 10             	sub    0x10(%ebp),%eax
896cff:	89 85 30 ff ff ff    	mov    %eax,-0xd0(%ebp)
896d05:	8b 07                	mov    (%edi),%eax
896d07:	8b b0 8c 02 00 00    	mov    0x28c(%eax),%esi
896d0d:	8b ce                	mov    %esi,%ecx
896d0f:	e8 51 59 b9 ff       	call   0x42c665
896d14:	8b cf                	mov    %edi,%ecx
896d16:	ff d6                	call   *%esi
896d18:	85 c0                	test   %eax,%eax
896d1a:	74 19                	je     0x896d35
896d1c:	83 7d 20 00          	cmpl   $0x0,0x20(%ebp)
896d20:	74 13                	je     0x896d35
896d22:	6b 05 d8 e9 d5 00 03 	imul   $0x3,0xd5e9d8,%eax
896d29:	99                   	cltd
896d2a:	83 e2 03             	and    $0x3,%edx
896d2d:	8d 0c 02             	lea    (%edx,%eax,1),%ecx
896d30:	c1 f9 02             	sar    $0x2,%ecx
896d33:	eb 06                	jmp    0x896d3b
896d35:	8b 0d d8 e9 d5 00    	mov    0xd5e9d8,%ecx
896d3b:	8b 85 30 ff ff ff    	mov    -0xd0(%ebp),%eax
896d41:	01 45 0c             	add    %eax,0xc(%ebp)
896d44:	8b 07                	mov    (%edi),%eax
896d46:	29 4d 14             	sub    %ecx,0x14(%ebp)
896d49:	8b b0 8c 02 00 00    	mov    0x28c(%eax),%esi
896d4f:	8b ce                	mov    %esi,%ecx
896d51:	e8 0f 59 b9 ff       	call   0x42c665
896d56:	8b cf                	mov    %edi,%ecx
896d58:	ff d6                	call   *%esi
896d5a:	85 c0                	test   %eax,%eax
896d5c:	74 32                	je     0x896d90
896d5e:	83 7d 20 00          	cmpl   $0x0,0x20(%ebp)
896d62:	74 2c                	je     0x896d90
896d64:	8b 07                	mov    (%edi),%eax
896d66:	ff 75 1c             	push   0x1c(%ebp)
896d69:	8b b0 40 02 00 00    	mov    0x240(%eax),%esi
896d6f:	8b ce                	mov    %esi,%ecx
896d71:	e8 ef 58 b9 ff       	call   0x42c665
896d76:	8b cf                	mov    %edi,%ecx
896d78:	ff d6                	call   *%esi
896d7a:	85 c0                	test   %eax,%eax
896d7c:	74 12                	je     0x896d90
896d7e:	6a 00                	push   $0x0
896d80:	ff 35 d8 e9 d5 00    	push   0xd5e9d8
896d86:	8d 45 0c             	lea    0xc(%ebp),%eax
896d89:	50                   	push   %eax
896d8a:	ff 15 4c 40 d8 00    	call   *0xd8404c
896d90:	6a 00                	push   $0x0
896d92:	8b cb                	mov    %ebx,%ecx
896d94:	e8 1d 58 b9 ff       	call   0x42c5b6
896d99:	be a4 a7 c3 00       	mov    $0xc3a7a4,%esi
896d9e:	8d 8d 10 ff ff ff    	lea    -0xf0(%ebp),%ecx
896da4:	89 b5 10 ff ff ff    	mov    %esi,-0xf0(%ebp)
896daa:	e8 89 20 ba ff       	call   0x438e38
896daf:	8d 8d f0 fe ff ff    	lea    -0x110(%ebp),%ecx
896db5:	89 b5 f0 fe ff ff    	mov    %esi,-0x110(%ebp)
896dbb:	e8 78 20 ba ff       	call   0x438e38
896dc0:	8d 8d 00 ff ff ff    	lea    -0x100(%ebp),%ecx
896dc6:	89 b5 00 ff ff ff    	mov    %esi,-0x100(%ebp)
896dcc:	e8 67 20 ba ff       	call   0x438e38
896dd1:	c7 85 f8 fe ff ff 2c 	movl   $0xc3872c,-0x108(%ebp)
896dd8:	87 c3 00
896ddb:	8d 8d f8 fe ff ff    	lea    -0x108(%ebp),%ecx
896de1:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
896de5:	e8 4e 20 ba ff       	call   0x438e38
896dea:	8b bd 2c ff ff ff    	mov    -0xd4(%ebp),%edi
896df0:	ff 75 1c             	push   0x1c(%ebp)
896df3:	8b 07                	mov    (%edi),%eax
896df5:	8b b0 e4 01 00 00    	mov    0x1e4(%eax),%esi
896dfb:	8b ce                	mov    %esi,%ecx
896dfd:	e8 63 58 b9 ff       	call   0x42c665
896e02:	8b cf                	mov    %edi,%ecx
896e04:	ff d6                	call   *%esi
896e06:	83 8d 30 ff ff ff ff 	orl    $0xffffffff,-0xd0(%ebp)
896e0d:	83 7d 20 00          	cmpl   $0x0,0x20(%ebp)
896e11:	75 1c                	jne    0x896e2f