468a15:	8b 86 f8 01 00 00    	mov    0x1f8(%esi),%eax
468a1b:	ff 30                	push   (%eax)
468a1d:	ff 15 04 d7 48 00    	call   *0x48d704
468a23:	8b 8e 14 03 00 00    	mov    0x314(%esi),%ecx
468a29:	e8 2a f0 fd ff       	call   0x447a58
468a2e:	5f                   	pop    %edi
468a2f:	5e                   	pop    %esi
468a30:	33 c0                	xor    %eax,%eax
468a32:	5b                   	pop    %ebx
468a33:	5d                   	pop    %ebp
468a34:	c2 08 00             	ret    $0x8
468a37:	55                   	push   %ebp
468a38:	8b ec                	mov    %esp,%ebp
468a3a:	53                   	push   %ebx
468a3b:	56                   	push   %esi
468a3c:	8b 75 08             	mov    0x8(%ebp),%esi
468a3f:	57                   	push   %edi
468a40:	8b 46 04             	mov    0x4(%esi),%eax
468a43:	8b f9                	mov    %ecx,%edi
468a45:	8b 48 08             	mov    0x8(%eax),%ecx
468a48:	e8 39 48 fa ff       	call   0x40d286
468a4d:	8b 46 04             	mov    0x4(%esi),%eax
468a50:	8b 48 08             	mov    0x8(%eax),%ecx
468a53:	e8 2e 48 fa ff       	call   0x40d286
468a58:	8a d8                	mov    %al,%bl
468a5a:	56                   	push   %esi
468a5b:	8b cf                	mov    %edi,%ecx
468a5d:	88 5d 08             	mov    %bl,0x8(%ebp)
468a60:	e8 ef 9f f9 ff       	call   0x402a54
468a65:	6a 01                	push   $0x1
468a67:	8b cf                	mov    %edi,%ecx
468a69:	e8 0b a2 f9 ff       	call   0x402c79
468a6e:	85 c0                	test   %eax,%eax
468a70:	7f 29                	jg     0x468a9b
468a72:	79 11                	jns    0x468a85
468a74:	f7 d8                	neg    %eax
468a76:	6a 00                	push   $0x0
468a78:	50                   	push   %eax
468a79:	8b 07                	mov    (%edi),%eax
468a7b:	8b 48 04             	mov    0x4(%eax),%ecx
468a7e:	03 cf                	add    %edi,%ecx
468a80:	e8 c7 44 fe ff       	call   0x44cf4c
468a85:	8b 75 0c             	mov    0xc(%ebp),%esi
468a88:	8b ce                	mov    %esi,%ecx
468a8a:	e8 91 a1 fa ff       	call   0x412c20
468a8f:	83 26 00             	andl   $0x0,(%esi)
468a92:	c7 46 0c 01 00 00 00 	movl   $0x1,0xc(%esi)
468a99:	eb 47                	jmp    0x468ae2
468a9b:	8b 87 f8 01 00 00    	mov    0x1f8(%edi),%eax
468aa1:	6a ec                	push   $0xffffffec
468aa3:	8b 30                	mov    (%eax),%esi
468aa5:	56                   	push   %esi
468aa6:	ff 15 44 d6 48 00    	call   *0x48d644
468aac:	b9 00 00 08 00       	mov    $0x80000,%ecx
468ab1:	80 fb ff             	cmp    $0xff,%bl
468ab4:	72 12                	jb     0x468ac8
468ab6:	85 c1                	test   %eax,%ecx
468ab8:	74 0e                	je     0x468ac8
468aba:	33 c1                	xor    %ecx,%eax
468abc:	50                   	push   %eax
468abd:	6a ec                	push   $0xffffffec
468abf:	56                   	push   %esi
468ac0:	ff 15 f0 d4 48 00    	call   *0x48d4f0
468ac6:	eb 1a                	jmp    0x468ae2
468ac8:	0b c1                	or     %ecx,%eax
468aca:	50                   	push   %eax
468acb:	6a ec                	push   $0xffffffec
468acd:	56                   	push   %esi
468ace:	ff 15 f0 d4 48 00    	call   *0x48d4f0
468ad4:	6a 02                	push   $0x2
468ad6:	ff 75 08             	push   0x8(%ebp)
468ad9:	6a 00                	push   $0x0
468adb:	56                   	push   %esi
468adc:	ff 15 f4 d4 48 00    	call   *0x48d4f4
468ae2:	5f                   	pop    %edi
468ae3:	5e                   	pop    %esi
468ae4:	33 c0                	xor    %eax,%eax
468ae6:	5b                   	pop    %ebx
468ae7:	5d                   	pop    %ebp
468ae8:	c2 08 00             	ret    $0x8
468aeb:	55                   	push   %ebp
468aec:	8b ec                	mov    %esp,%ebp
468aee:	56                   	push   %esi
468aef:	ff 75 08             	push   0x8(%ebp)
468af2:	8b f1                	mov    %ecx,%esi
468af4:	e8 b1 01 00 00       	call   0x468caa
468af9:	51                   	push   %ecx
468afa:	8d 45 08             	lea    0x8(%ebp),%eax
468afd:	50                   	push   %eax
468afe:	8b 06                	mov    (%esi),%eax
468b00:	c7 45 08 01 00 00 00 	movl   $0x1,0x8(%ebp)
468b07:	8b 48 04             	mov    0x4(%eax),%ecx
468b0a:	03 ce                	add    %esi,%ecx
468b0c:	e8 d7 a7 f9 ff       	call   0x4032e8
468b11:	6a 00                	push   $0x0
468b13:	8b ce                	mov    %esi,%ecx
468b15:	c7 86 fc 00 00 00 03 	movl   $0x3,0xfc(%esi)
468b1c:	00 00 00
468b1f:	e8 ac 5d fa ff       	call   0x40e8d0
468b24:	8b 06                	mov    (%esi),%eax
468b26:	8d 4e 04             	lea    0x4(%esi),%ecx
468b29:	8b 40 04             	mov    0x4(%eax),%eax
468b2c:	03 c8                	add    %eax,%ecx
468b2e:	e8 26 a8 f9 ff       	call   0x403359
468b33:	8b 4d 0c             	mov    0xc(%ebp),%ecx
468b36:	50                   	push   %eax
468b37:	e8 72 51 fa ff       	call   0x40dcae
468b3c:	33 c0                	xor    %eax,%eax
468b3e:	5e                   	pop    %esi
468b3f:	5d                   	pop    %ebp
468b40:	c2 08 00             	ret    $0x8
468b43:	55                   	push   %ebp
468b44:	8b ec                	mov    %esp,%ebp
468b46:	56                   	push   %esi
468b47:	ff 75 08             	push   0x8(%ebp)
468b4a:	8b f1                	mov    %ecx,%esi
468b4c:	e8 59 01 00 00       	call   0x468caa
468b51:	51                   	push   %ecx
468b52:	8d 45 08             	lea    0x8(%ebp),%eax
468b55:	50                   	push   %eax
468b56:	8b 06                	mov    (%esi),%eax
468b58:	c7 45 08 01 00 00 00 	movl   $0x1,0x8(%ebp)
468b5f:	8b 48 04             	mov    0x4(%eax),%ecx
468b62:	03 ce                	add    %esi,%ecx
468b64:	e8 7f a7 f9 ff       	call   0x4032e8
468b69:	6a 00                	push   $0x0
468b6b:	8b ce                	mov    %esi,%ecx
468b6d:	c7 86 fc 00 00 00 05 	movl   $0x5,0xfc(%esi)
468b74:	00 00 00
468b77:	e8 54 5d fa ff       	call   0x40e8d0
468b7c:	8b 06                	mov    (%esi),%eax
468b7e:	8d 4e 04             	lea    0x4(%esi),%ecx
468b81:	8b 40 04             	mov    0x4(%eax),%eax
468b84:	03 c8                	add    %eax,%ecx
468b86:	e8 ce a7 f9 ff       	call   0x403359
468b8b:	8b 4d 0c             	mov    0xc(%ebp),%ecx
468b8e:	50                   	push   %eax
468b8f:	e8 1a 51 fa ff       	call   0x40dcae
468b94:	33 c0                	xor    %eax,%eax
468b96:	5e                   	pop    %esi
468b97:	5d                   	pop    %ebp
468b98:	c2 08 00             	ret    $0x8
468b9b:	55                   	push   %ebp
468b9c:	8b ec                	mov    %esp,%ebp
468b9e:	56                   	push   %esi
468b9f:	ff 75 08             	push   0x8(%ebp)
468ba2:	8b f1                	mov    %ecx,%esi
468ba4:	e8 01 01 00 00       	call   0x468caa
468ba9:	51                   	push   %ecx
468baa:	8d 45 08             	lea    0x8(%ebp),%eax
468bad:	50                   	push   %eax
468bae:	8b 06                	mov    (%esi),%eax
468bb0:	c7 45 08 01 00 00 00 	movl   $0x1,0x8(%ebp)
468bb7:	8b 48 04             	mov    0x4(%eax),%ecx
468bba:	03 ce                	add    %esi,%ecx
468bbc:	e8 27 a7 f9 ff       	call   0x4032e8
468bc1:	6a 00                	push   $0x0
468bc3:	8b ce                	mov    %esi,%ecx
468bc5:	c7 86 fc 00 00 00 04 	movl   $0x4,0xfc(%esi)
468bcc:	00 00 00
468bcf:	e8 fc 5c fa ff       	call   0x40e8d0
468bd4:	8b 06                	mov    (%esi),%eax
468bd6:	8d 4e 04             	lea    0x4(%esi),%ecx
468bd9:	8b 40 04             	mov    0x4(%eax),%eax
468bdc:	03 c8                	add    %eax,%ecx
468bde:	e8 76 a7 f9 ff       	call   0x403359
468be3:	8b 4d 0c             	mov    0xc(%ebp),%ecx
468be6:	50                   	push   %eax
468be7:	e8 c2 50 fa ff       	call   0x40dcae
468bec:	33 c0                	xor    %eax,%eax
468bee:	5e                   	pop    %esi
468bef:	5d                   	pop    %ebp
468bf0:	c2 08 00             	ret    $0x8
468bf3:	55                   	push   %ebp
468bf4:	8b ec                	mov    %esp,%ebp
468bf6:	56                   	push   %esi
468bf7:	ff 75 08             	push   0x8(%ebp)
468bfa:	8b f1                	mov    %ecx,%esi
468bfc:	e8 a9 00 00 00       	call   0x468caa
468c01:	51                   	push   %ecx
468c02:	8d 45 08             	lea    0x8(%ebp),%eax
468c05:	50                   	push   %eax
468c06:	8b 06                	mov    (%esi),%eax
468c08:	c7 45 08 01 00 00 00 	movl   $0x1,0x8(%ebp)
468c0f:	8b 48 04             	mov    0x4(%eax),%ecx
468c12:	03 ce                	add    %esi,%ecx
468c14:	e8 cf a6 f9 ff       	call   0x4032e8
468c19:	6a 00                	push   $0x0
468c1b:	8b ce                	mov    %esi,%ecx
468c1d:	c7 86 fc 00 00 00 06 	movl   $0x6,0xfc(%esi)
468c24:	00 00 00
468c27:	e8 a4 5c fa ff       	call   0x40e8d0
468c2c:	8b 06                	mov    (%esi),%eax
468c2e:	8d 4e 04             	lea    0x4(%esi),%ecx
468c31:	8b 40 04             	mov    0x4(%eax),%eax
468c34:	03 c8                	add    %eax,%ecx
468c36:	e8 1e a7 f9 ff       	call   0x403359
468c3b:	8b 4d 0c             	mov    0xc(%ebp),%ecx
468c3e:	50                   	push   %eax
468c3f:	e8 6a 50 fa ff       	call   0x40dcae
468c44:	33 c0                	xor    %eax,%eax
468c46:	5e                   	pop    %esi
468c47:	5d                   	pop    %ebp
468c48:	c2 08 00             	ret    $0x8
468c4b:	53                   	push   %ebx
468c4c:	56                   	push   %esi
468c4d:	57                   	push   %edi
468c4e:	6a 00                	push   $0x0
468c50:	8b f9                	mov    %ecx,%edi
468c52:	e8 22 a0 f9 ff       	call   0x402c79
468c57:	8b f0                	mov    %eax,%esi
468c59:	85 f6                	test   %esi,%esi
468c5b:	7f 19                	jg     0x468c76
468c5d:	79 13                	jns    0x468c72
468c5f:	8b 07                	mov    (%edi),%eax
468c61:	8b ce                	mov    %esi,%ecx
468c63:	f7 d9                	neg    %ecx
468c65:	6a 00                	push   $0x0
468c67:	51                   	push   %ecx
468c68:	8b 48 04             	mov    0x4(%eax),%ecx
468c6b:	03 cf                	add    %edi,%ecx
468c6d:	e8 da 42 fe ff       	call   0x44cf4c
468c72:	8b c6                	mov    %esi,%eax
468c74:	eb 2b                	jmp    0x468ca1
468c76:	ff 15 1c d7 48 00    	call   *0x48d71c
468c7c:	8b b7 08 03 00 00    	mov    0x308(%edi),%esi
468c82:	33 d2                	xor    %edx,%edx
468c84:	42                   	inc    %edx
468c85:	8b d8                	mov    %eax,%ebx
468c87:	3b f2                	cmp    %edx,%esi
468c89:	7c 14                	jl     0x468c9f
468c8b:	8b 8f 04 03 00 00    	mov    0x304(%edi),%ecx
468c91:	8b 01                	mov    (%ecx),%eax
468c93:	39 18                	cmp    %ebx,(%eax)
468c95:	74 0e                	je     0x468ca5
468c97:	42                   	inc    %edx
468c98:	83 c1 04             	add    $0x4,%ecx
468c9b:	3b d6                	cmp    %esi,%edx
468c9d:	7e f2                	jle    0x468c91
468c9f:	33 c0                	xor    %eax,%eax
468ca1:	5f                   	pop    %edi
468ca2:	5e                   	pop    %esi
468ca3:	5b                   	pop    %ebx
468ca4:	c3                   	ret
468ca5:	33 c0                	xor    %eax,%eax
468ca7:	40                   	inc    %eax
468ca8:	eb f7                	jmp    0x468ca1
468caa:	55                   	push   %ebp
468cab:	8b ec                	mov    %esp,%ebp
468cad:	56                   	push   %esi
468cae:	57                   	push   %edi
468caf:	8b 7d 08             	mov    0x8(%ebp),%edi
468cb2:	57                   	push   %edi
468cb3:	8b f1                	mov    %ecx,%esi
468cb5:	e8 9a 9d f9 ff       	call   0x402a54
468cba:	83 7f 08 03          	cmpl   $0x3,0x8(%edi)
468cbe:	75 19                	jne    0x468cd9
468cc0:	8b 47 04             	mov    0x4(%edi),%eax
468cc3:	8b 48 08             	mov    0x8(%eax),%ecx
468cc6:	e8 bb 45 fa ff       	call   0x40d286
468ccb:	69 c0 e8 03 00 00    	imul   $0x3e8,%eax,%eax
468cd1:	89 86 10 03 00 00    	mov    %eax,0x310(%esi)
468cd7:	eb 07                	jmp    0x468ce0
468cd9:	83 a6 10 03 00 00 00 	andl   $0x0,0x310(%esi)
468ce0:	ff 15 a0 d7 48 00    	call   *0x48d7a0
468ce6:	5f                   	pop    %edi
468ce7:	89 86 18 03 00 00    	mov    %eax,0x318(%esi)
468ced:	5e                   	pop    %esi
468cee:	5d                   	pop    %ebp
468cef:	c2 04 00             	ret    $0x4
468cf2:	55                   	push   %ebp
468cf3:	8b ec                	mov    %esp,%ebp
468cf5:	56                   	push   %esi
468cf6:	8b f1                	mov    %ecx,%esi
468cf8:	57                   	push   %edi
468cf9:	33 ff                	xor    %edi,%edi
468cfb:	6a 14                	push   $0x14
468cfd:	89 7e 04             	mov    %edi,0x4(%esi)
468d00:	89 7e 08             	mov    %edi,0x8(%esi)
468d03:	e8 e2 67 fb ff       	call   0x41f4ea
468d08:	59                   	pop    %ecx
468d09:	85 c0                	test   %eax,%eax
468d0b:	74 0c                	je     0x468d19
468d0d:	ff 75 08             	push   0x8(%ebp)
468d10:	8b c8                	mov    %eax,%ecx
468d12:	e8 a7 6a ff ff       	call   0x45f7be
468d17:	8b f8                	mov    %eax,%edi
468d19:	89 3e                	mov    %edi,(%esi)
468d1b:	5f                   	pop    %edi
468d1c:	8b c6                	mov    %esi,%eax
468d1e:	5e                   	pop    %esi
468d1f:	5d                   	pop    %ebp
468d20:	c2 04 00             	ret    $0x4
468d23:	55                   	push   %ebp
468d24:	8b ec                	mov    %esp,%ebp
468d26:	56                   	push   %esi
468d27:	8b 75 08             	mov    0x8(%ebp),%esi
468d2a:	57                   	push   %edi
468d2b:	8b 06                	mov    (%esi),%eax
468d2d:	8b f9                	mov    %ecx,%edi
468d2f:	89 07                	mov    %eax,(%edi)
468d31:	8d 46 04             	lea    0x4(%esi),%eax
468d34:	50                   	push   %eax
468d35:	8d 4f 04             	lea    0x4(%edi),%ecx
468d38:	e8 b0 e1 f9 ff       	call   0x406eed
468d3d:	8b 46 14             	mov    0x14(%esi),%eax
468d40:	89 47 14             	mov    %eax,0x14(%edi)
468d43:	8b 46 18             	mov    0x18(%esi),%eax
468d46:	89 47 18             	mov    %eax,0x18(%edi)
468d49:	8b 46 1c             	mov    0x1c(%esi),%eax
468d4c:	89 47 1c             	mov    %eax,0x1c(%edi)
468d4f:	8b 46 20             	mov    0x20(%esi),%eax
468d52:	89 47 20             	mov    %eax,0x20(%edi)
468d55:	8b c7                	mov    %edi,%eax
468d57:	5f                   	pop    %edi
468d58:	5e                   	pop    %esi
468d59:	5d                   	pop    %ebp
468d5a:	c2 04 00             	ret    $0x4
468d5d:	55                   	push   %ebp
468d5e:	8b ec                	mov    %esp,%ebp
468d60:	56                   	push   %esi
468d61:	8b f1                	mov    %ecx,%esi
468d63:	e8 c1 a9 f9 ff       	call   0x403729
468d68:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
468d6c:	74 07                	je     0x468d75
468d6e:	56                   	push   %esi
468d6f:	e8 ea 67 fb ff       	call   0x41f55e
468d74:	59                   	pop    %ecx
468d75:	8b c6                	mov    %esi,%eax
468d77:	5e                   	pop    %esi
468d78:	5d                   	pop    %ebp
468d79:	c2 04 00             	ret    $0x4
468d7c:	56                   	push   %esi
468d7d:	8b f1                	mov    %ecx,%esi
468d7f:	e8 70 52 fd ff       	call   0x43dff4
468d84:	56                   	push   %esi
468d85:	e8 d4 67 fb ff       	call   0x41f55e
468d8a:	59                   	pop    %ecx
468d8b:	8b c6                	mov    %esi,%eax
468d8d:	5e                   	pop    %esi
468d8e:	c2 04 00             	ret    $0x4
468d91:	56                   	push   %esi
468d92:	8b f1                	mov    %ecx,%esi
468d94:	8b 0e                	mov    (%esi),%ecx
468d96:	85 c9                	test   %ecx,%ecx
468d98:	74 06                	je     0x468da0
468d9a:	51                   	push   %ecx
468d9b:	e8 60 bc fd ff       	call   0x444a00
468da0:	56                   	push   %esi
468da1:	e8 b8 67 fb ff       	call   0x41f55e