9659e7:	53                   	push   %ebx
9659e8:	57                   	push   %edi
9659e9:	8b 7d 08             	mov    0x8(%ebp),%edi
9659ec:	8b d9                	mov    %ecx,%ebx
9659ee:	89 5d e8             	mov    %ebx,-0x18(%ebp)
9659f1:	85 ff                	test   %edi,%edi
9659f3:	74 52                	je     0x965a47
9659f5:	8b 07                	mov    (%edi),%eax
9659f7:	8d 4d ec             	lea    -0x14(%ebp),%ecx
9659fa:	56                   	push   %esi
9659fb:	51                   	push   %ecx
9659fc:	8b 70 0c             	mov    0xc(%eax),%esi
9659ff:	8b ce                	mov    %esi,%ecx
965a01:	e8 5f 6c ac ff       	call   0x42c665
965a06:	8b cf                	mov    %edi,%ecx
965a08:	ff d6                	call   *%esi
965a0a:	83 c3 44             	add    $0x44,%ebx
965a0d:	8b f0                	mov    %eax,%esi
965a0f:	8b fb                	mov    %ebx,%edi
965a11:	6a 00                	push   $0x0
965a13:	6a 00                	push   $0x0
965a15:	68 85 00 00 00       	push   $0x85
965a1a:	a5                   	movsl  %ds:(%esi),%es:(%edi)
965a1b:	a5                   	movsl  %ds:(%esi),%es:(%edi)
965a1c:	a5                   	movsl  %ds:(%esi),%es:(%edi)
965a1d:	a5                   	movsl  %ds:(%esi),%es:(%edi)
965a1e:	8b 75 e8             	mov    -0x18(%ebp),%esi
965a21:	8b 86 b0 00 00 00    	mov    0xb0(%esi),%eax
965a27:	ff 70 20             	push   0x20(%eax)
965a2a:	ff 15 20 40 d8 00    	call   *0xd84020
965a30:	53                   	push   %ebx
965a31:	ff 15 50 40 d8 00    	call   *0xd84050
965a37:	8b 86 b0 00 00 00    	mov    0xb0(%esi),%eax
965a3d:	ff 70 20             	push   0x20(%eax)
965a40:	ff 15 8c 3f d8 00    	call   *0xd83f8c
965a46:	5e                   	pop    %esi
965a47:	8b 4d fc             	mov    -0x4(%ebp),%ecx
965a4a:	5f                   	pop    %edi
965a4b:	33 cd                	xor    %ebp,%ecx
965a4d:	5b                   	pop    %ebx
965a4e:	e8 63 5d ab ff       	call   0x41b7b6
965a53:	8b e5                	mov    %ebp,%esp
965a55:	5d                   	pop    %ebp
965a56:	c2 04 00             	ret    $0x4
965a59:	cc                   	int3
965a5a:	cc                   	int3
965a5b:	cc                   	int3
965a5c:	cc                   	int3
965a5d:	cc                   	int3
965a5e:	cc                   	int3
965a5f:	cc                   	int3
965a60:	cc                   	int3
965a61:	cc                   	int3
965a62:	cc                   	int3
965a63:	cc                   	int3
965a64:	cc                   	int3
965a65:	cc                   	int3
965a66:	cc                   	int3
965a67:	cc                   	int3
965a68:	cc                   	int3
965a69:	cc                   	int3
965a6a:	cc                   	int3
965a6b:	cc                   	int3
965a6c:	cc                   	int3
965a6d:	cc                   	int3
965a6e:	cc                   	int3
965a6f:	cc                   	int3
965a70:	cc                   	int3
965a71:	cc                   	int3
965a72:	cc                   	int3
965a73:	cc                   	int3
965a74:	cc                   	int3
965a75:	cc                   	int3
965a76:	cc                   	int3
965a77:	cc                   	int3
965a78:	cc                   	int3
965a79:	55                   	push   %ebp
965a7a:	8b ec                	mov    %esp,%ebp
965a7c:	51                   	push   %ecx
965a7d:	56                   	push   %esi
965a7e:	8b f1                	mov    %ecx,%esi
965a80:	57                   	push   %edi
965a81:	33 ff                	xor    %edi,%edi
965a83:	8b 4e 14             	mov    0x14(%esi),%ecx
965a86:	89 7e 0c             	mov    %edi,0xc(%esi)
965a89:	89 7e 10             	mov    %edi,0x10(%esi)
965a8c:	89 7e 08             	mov    %edi,0x8(%esi)
965a8f:	89 7e 04             	mov    %edi,0x4(%esi)
965a92:	e8 d4 49 aa ff       	call   0x40a46b
965a97:	89 7e 14             	mov    %edi,0x14(%esi)
965a9a:	5f                   	pop    %edi
965a9b:	5e                   	pop    %esi
965a9c:	8b e5                	mov    %ebp,%esp
965a9e:	5d                   	pop    %ebp
965a9f:	c3                   	ret
965aa0:	cc                   	int3
965aa1:	cc                   	int3
965aa2:	cc                   	int3
965aa3:	cc                   	int3
965aa4:	cc                   	int3
965aa5:	cc                   	int3
965aa6:	cc                   	int3
965aa7:	cc                   	int3
965aa8:	cc                   	int3
965aa9:	55                   	push   %ebp
965aaa:	8b ec                	mov    %esp,%ebp
965aac:	8b 55 08             	mov    0x8(%ebp),%edx
965aaf:	56                   	push   %esi
965ab0:	8b f1                	mov    %ecx,%esi
965ab2:	8b 02                	mov    (%edx),%eax
965ab4:	3b 56 04             	cmp    0x4(%esi),%edx
965ab7:	75 05                	jne    0x965abe
965ab9:	89 46 04             	mov    %eax,0x4(%esi)
965abc:	eb 05                	jmp    0x965ac3
965abe:	8b 4a 04             	mov    0x4(%edx),%ecx
965ac1:	89 01                	mov    %eax,(%ecx)
965ac3:	8b 42 04             	mov    0x4(%edx),%eax
965ac6:	3b 56 08             	cmp    0x8(%esi),%edx
965ac9:	75 05                	jne    0x965ad0
965acb:	89 46 08             	mov    %eax,0x8(%esi)
965ace:	eb 05                	jmp    0x965ad5
965ad0:	8b 0a                	mov    (%edx),%ecx
965ad2:	89 41 04             	mov    %eax,0x4(%ecx)
965ad5:	52                   	push   %edx
965ad6:	8b ce                	mov    %esi,%ecx
965ad8:	e8 df 95 ad ff       	call   0x43f0bc
965add:	5e                   	pop    %esi
965ade:	5d                   	pop    %ebp
965adf:	c2 04 00             	ret    $0x4
965ae2:	cc                   	int3
965ae3:	cc                   	int3
965ae4:	cc                   	int3
965ae5:	cc                   	int3
965ae6:	cc                   	int3
965ae7:	cc                   	int3
965ae8:	cc                   	int3
965ae9:	cc                   	int3
965aea:	cc                   	int3
965aeb:	cc                   	int3
965aec:	cc                   	int3
965aed:	cc                   	int3
965aee:	cc                   	int3
965aef:	cc                   	int3
965af0:	55                   	push   %ebp
965af1:	8b ec                	mov    %esp,%ebp
965af3:	8b 0d f8 ee d5 00    	mov    0xd5eef8,%ecx
965af9:	85 c9                	test   %ecx,%ecx
965afb:	74 39                	je     0x965b36
965afd:	8b 55 08             	mov    0x8(%ebp),%edx
965b00:	56                   	push   %esi
965b01:	57                   	push   %edi
965b02:	8b 41 08             	mov    0x8(%ecx),%eax
965b05:	8b f9                	mov    %ecx,%edi
965b07:	8b 09                	mov    (%ecx),%ecx
965b09:	85 c0                	test   %eax,%eax
965b0b:	75 04                	jne    0x965b11
965b0d:	33 f6                	xor    %esi,%esi
965b0f:	eb 03                	jmp    0x965b14
965b11:	8b 70 20             	mov    0x20(%eax),%esi
965b14:	85 d2                	test   %edx,%edx
965b16:	75 04                	jne    0x965b1c
965b18:	33 c0                	xor    %eax,%eax
965b1a:	eb 03                	jmp    0x965b1f
965b1c:	8b 42 20             	mov    0x20(%edx),%eax
965b1f:	3b f0                	cmp    %eax,%esi
965b21:	74 06                	je     0x965b29
965b23:	85 c9                	test   %ecx,%ecx
965b25:	75 db                	jne    0x965b02
965b27:	eb 0b                	jmp    0x965b34
965b29:	57                   	push   %edi
965b2a:	b9 f4 ee d5 00       	mov    $0xd5eef4,%ecx
965b2f:	e8 d3 0f ac ff       	call   0x426b07
965b34:	5f                   	pop    %edi
965b35:	5e                   	pop    %esi
965b36:	5d                   	pop    %ebp
965b37:	c2 04 00             	ret    $0x4
965b3a:	cc                   	int3
965b3b:	cc                   	int3
965b3c:	cc                   	int3
965b3d:	cc                   	int3
965b3e:	cc                   	int3
965b3f:	cc                   	int3
965b40:	cc                   	int3
965b41:	cc                   	int3
965b42:	cc                   	int3
965b43:	cc                   	int3
965b44:	cc                   	int3
965b45:	cc                   	int3
965b46:	cc                   	int3
965b47:	cc                   	int3
965b48:	cc                   	int3
965b49:	cc                   	int3
965b4a:	cc                   	int3
965b4b:	cc                   	int3
965b4c:	55                   	push   %ebp
965b4d:	8b ec                	mov    %esp,%ebp
965b4f:	56                   	push   %esi
965b50:	6a 00                	push   $0x0
965b52:	ff 75 08             	push   0x8(%ebp)
965b55:	8d 71 70             	lea    0x70(%ecx),%esi
965b58:	8b ce                	mov    %esi,%ecx
965b5a:	e8 0d 2d ac ff       	call   0x42886c
965b5f:	85 c0                	test   %eax,%eax
965b61:	74 08                	je     0x965b6b
965b63:	50                   	push   %eax
965b64:	8b ce                	mov    %esi,%ecx
965b66:	e8 06 5c aa ff       	call   0x40b771
965b6b:	5e                   	pop    %esi
965b6c:	5d                   	pop    %ebp
965b6d:	c2 04 00             	ret    $0x4
965b70:	cc                   	int3
965b71:	cc                   	int3
965b72:	cc                   	int3
965b73:	cc                   	int3
965b74:	cc                   	int3
965b75:	cc                   	int3
965b76:	cc                   	int3
965b77:	cc                   	int3
965b78:	cc                   	int3
965b79:	55                   	push   %ebp
965b7a:	8b ec                	mov    %esp,%ebp
965b7c:	83 ec 64             	sub    $0x64,%esp
965b7f:	a1 24 f6 d5 00       	mov    0xd5f624,%eax
965b84:	33 c5                	xor    %ebp,%eax
965b86:	89 45 fc             	mov    %eax,-0x4(%ebp)
965b89:	53                   	push   %ebx
965b8a:	57                   	push   %edi
965b8b:	8b 7d 08             	mov    0x8(%ebp),%edi
965b8e:	e8 9c 87 ac ff       	call   0x42e32f
965b93:	8b 40 04             	mov    0x4(%eax),%eax
965b96:	50                   	push   %eax
965b97:	68 68 c3 c4 00       	push   $0xc4c368
965b9c:	e8 69 04 aa ff       	call   0x40600a
965ba1:	8b d8                	mov    %eax,%ebx
965ba3:	59                   	pop    %ecx
965ba4:	59                   	pop    %ecx
965ba5:	85 db                	test   %ebx,%ebx
965ba7:	0f 84 4b 01 00 00    	je     0x965cf8
965bad:	83 7f 04 00          	cmpl   $0x0,0x4(%edi)
965bb1:	0f 84 41 01 00 00    	je     0x965cf8
965bb7:	8b 47 1c             	mov    0x1c(%edi),%eax
965bba:	8b 4f 18             	mov    0x18(%edi),%ecx
965bbd:	83 65 9c 00          	andl   $0x0,-0x64(%ebp)
965bc1:	56                   	push   %esi
965bc2:	8b 77 10             	mov    0x10(%edi),%esi
965bc5:	89 45 ec             	mov    %eax,-0x14(%ebp)
965bc8:	03 47 14             	add    0x14(%edi),%eax
965bcb:	83 bb 04 01 00 00 00 	cmpl   $0x0,0x104(%ebx)
965bd2:	89 45 f4             	mov    %eax,-0xc(%ebp)
965bd5:	8d 04 0e             	lea    (%esi,%ecx,1),%eax
965bd8:	89 4d f0             	mov    %ecx,-0x10(%ebp)
965bdb:	89 45 f8             	mov    %eax,-0x8(%ebp)
965bde:	c7 45 a0 01 00 00 00 	movl   $0x1,-0x60(%ebp)
965be5:	74 2d                	je     0x965c14
965be7:	8b 33                	mov    (%ebx),%esi
965be9:	8d 45 a0             	lea    -0x60(%ebp),%eax
965bec:	50                   	push   %eax
965bed:	8d 45 9c             	lea    -0x64(%ebp),%eax
965bf0:	50                   	push   %eax
965bf1:	8b b6 40 01 00 00    	mov    0x140(%esi),%esi
965bf7:	8d 45 ec             	lea    -0x14(%ebp),%eax
965bfa:	50                   	push   %eax
965bfb:	8b ce                	mov    %esi,%ecx
965bfd:	e8 63 6a ac ff       	call   0x42c665
965c02:	8b cb                	mov    %ebx,%ecx
965c04:	ff d6                	call   *%esi
965c06:	85 c0                	test   %eax,%eax
965c08:	0f 84 e9 00 00 00    	je     0x965cf7
965c0e:	83 7d a0 03          	cmpl   $0x3,-0x60(%ebp)
965c12:	74 07                	je     0x965c1b
965c14:	c7 45 a0 01 00 00 00 	movl   $0x1,-0x60(%ebp)
965c1b:	e8 0f 87 ac ff       	call   0x42e32f
965c20:	8b 40 04             	mov    0x4(%eax),%eax
965c23:	8b 40 4c             	mov    0x4c(%eax),%eax
965c26:	83 f8 02             	cmp    $0x2,%eax
965c29:	7c 0d                	jl     0x965c38
965c2b:	83 f8 03             	cmp    $0x3,%eax
965c2e:	7e 16                	jle    0x965c46
965c30:	83 c0 fa             	add    $0xfffffffa,%eax
965c33:	83 f8 01             	cmp    $0x1,%eax
965c36:	76 0e                	jbe    0x965c46
965c38:	e8 f2 86 ac ff       	call   0x42e32f
965c3d:	8b 48 04             	mov    0x4(%eax),%ecx
965c40:	8b 45 a0             	mov    -0x60(%ebp),%eax
965c43:	89 41 4c             	mov    %eax,0x4c(%ecx)
965c46:	8d 45 a4             	lea    -0x5c(%ebp),%eax
965c49:	c7 45 a4 28 00 00 00 	movl   $0x28,-0x5c(%ebp)
965c50:	50                   	push   %eax
965c51:	33 db                	xor    %ebx,%ebx
965c53:	6a 02                	push   $0x2
965c55:	ff 75 f0             	push   -0x10(%ebp)
965c58:	89 5d dc             	mov    %ebx,-0x24(%ebp)
965c5b:	ff 75 ec             	push   -0x14(%ebp)
965c5e:	89 5d e0             	mov    %ebx,-0x20(%ebp)
965c61:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
965c64:	89 5d e8             	mov    %ebx,-0x18(%ebp)
965c67:	89 5d cc             	mov    %ebx,-0x34(%ebp)
965c6a:	89 5d d0             	mov    %ebx,-0x30(%ebp)
965c6d:	89 5d d4             	mov    %ebx,-0x2c(%ebp)
965c70:	89 5d d8             	mov    %ebx,-0x28(%ebp)
965c73:	ff 15 ac 3e d8 00    	call   *0xd83eac
965c79:	50                   	push   %eax
965c7a:	ff 15 3c 3d d8 00    	call   *0xd83d3c
965c80:	85 c0                	test   %eax,%eax
965c82:	74 10                	je     0x965c94
965c84:	8d 45 b8             	lea    -0x48(%ebp),%eax
965c87:	50                   	push   %eax
965c88:	8d 45 dc             	lea    -0x24(%ebp),%eax
965c8b:	50                   	push   %eax
965c8c:	ff 15 00 3d d8 00    	call   *0xd83d00
965c92:	eb 0e                	jmp    0x965ca2
965c94:	53                   	push   %ebx
965c95:	8d 45 dc             	lea    -0x24(%ebp),%eax
965c98:	50                   	push   %eax
965c99:	53                   	push   %ebx
965c9a:	6a 30                	push   $0x30
965c9c:	ff 15 ac 40 d8 00    	call   *0xd840ac
965ca2:	83 7d a0 03          	cmpl   $0x3,-0x60(%ebp)
965ca6:	75 1b                	jne    0x965cc3
965ca8:	8b 4d dc             	mov    -0x24(%ebp),%ecx
965cab:	8b 45 e4             	mov    -0x1c(%ebp),%eax
965cae:	8b 55 e0             	mov    -0x20(%ebp),%edx
965cb1:	2b c1                	sub    %ecx,%eax
965cb3:	89 47 14             	mov    %eax,0x14(%edi)
965cb6:	8b 45 e8             	mov    -0x18(%ebp),%eax
965cb9:	89 4f 1c             	mov    %ecx,0x1c(%edi)
965cbc:	2b c2                	sub    %edx,%eax
965cbe:	89 57 18             	mov    %edx,0x18(%edi)
965cc1:	eb 31                	jmp    0x965cf4
965cc3:	8d 45 ec             	lea    -0x14(%ebp),%eax
965cc6:	50                   	push   %eax
965cc7:	8d 45 dc             	lea    -0x24(%ebp),%eax
965cca:	50                   	push   %eax
965ccb:	8d 45 cc             	lea    -0x34(%ebp),%eax
965cce:	50                   	push   %eax
965ccf:	ff 15 08 3e d8 00    	call   *0xd83e08
965cd5:	85 c0                	test   %eax,%eax
965cd7:	74 1e                	je     0x965cf7
965cd9:	8b 45 cc             	mov    -0x34(%ebp),%eax
965cdc:	89 47 1c             	mov    %eax,0x1c(%edi)
965cdf:	8b 45 d0             	mov    -0x30(%ebp),%eax
965ce2:	89 47 18             	mov    %eax,0x18(%edi)
965ce5:	8b 45 f4             	mov    -0xc(%ebp),%eax
965ce8:	2b 45 ec             	sub    -0x14(%ebp),%eax
965ceb:	89 47 14             	mov    %eax,0x14(%edi)
965cee:	8b 45 f8             	mov    -0x8(%ebp),%eax
965cf1:	2b 45 f0             	sub    -0x10(%ebp),%eax
965cf4:	89 47 10             	mov    %eax,0x10(%edi)
965cf7:	5e                   	pop    %esi
965cf8:	8b 4d fc             	mov    -0x4(%ebp),%ecx