4668f5:	8d 57 fb             	lea    -0x5(%edi),%edx
4668f8:	89 55 c8             	mov    %edx,-0x38(%ebp)
4668fb:	89 4d d0             	mov    %ecx,-0x30(%ebp)
4668fe:	8b 96 50 01 00 00    	mov    0x150(%esi),%edx
466904:	68 20 00 cc 00       	push   $0xcc0020
466909:	6a 05                	push   $0x5
46690b:	5f                   	pop    %edi
46690c:	57                   	push   %edi
46690d:	25 00 00 40 00       	and    $0x400000,%eax
466912:	0f 84 a8 00 00 00    	je     0x4669c0
466918:	8b 45 dc             	mov    -0x24(%ebp),%eax
46691b:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
46691e:	2b c1                	sub    %ecx,%eax
466920:	50                   	push   %eax
466921:	ff 75 e0             	push   -0x20(%ebp)
466924:	8d 41 fe             	lea    -0x2(%ecx),%eax
466927:	50                   	push   %eax
466928:	8b 42 48             	mov    0x48(%edx),%eax
46692b:	ff 70 0c             	push   0xc(%eax)
46692e:	57                   	push   %edi
46692f:	ff 75 d0             	push   -0x30(%ebp)
466932:	6a 00                	push   $0x0
466934:	6a 00                	push   $0x0
466936:	ff 73 04             	push   0x4(%ebx)
466939:	ff 15 c0 70 4a 00    	call   *0x4a70c0
46693f:	8b 45 dc             	mov    -0x24(%ebp),%eax
466942:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
466945:	2b c1                	sub    %ecx,%eax
466947:	68 20 00 cc 00       	push   $0xcc0020
46694c:	57                   	push   %edi
46694d:	50                   	push   %eax
46694e:	8b 45 e8             	mov    -0x18(%ebp),%eax
466951:	83 c0 fb             	add    $0xfffffffb,%eax
466954:	50                   	push   %eax
466955:	8d 41 fe             	lea    -0x2(%ecx),%eax
466958:	50                   	push   %eax
466959:	8b 86 50 01 00 00    	mov    0x150(%esi),%eax
46695f:	8b 40 48             	mov    0x48(%eax),%eax
466962:	ff 70 0c             	push   0xc(%eax)
466965:	57                   	push   %edi
466966:	ff 75 d0             	push   -0x30(%ebp)
466969:	ff 75 cc             	push   -0x34(%ebp)
46696c:	6a 00                	push   $0x0
46696e:	ff 73 04             	push   0x4(%ebx)
466971:	ff 15 c0 70 4a 00    	call   *0x4a70c0
466977:	8b 45 e8             	mov    -0x18(%ebp),%eax
46697a:	2b 45 e0             	sub    -0x20(%ebp),%eax
46697d:	68 20 00 cc 00       	push   $0xcc0020
466982:	50                   	push   %eax
466983:	8b 86 50 01 00 00    	mov    0x150(%esi),%eax
466989:	6a fb                	push   $0xfffffffb
46698b:	ff 75 e0             	push   -0x20(%ebp)
46698e:	ff 75 e4             	push   -0x1c(%ebp)
466991:	8b 40 48             	mov    0x48(%eax),%eax
466994:	ff 70 0c             	push   0xc(%eax)
466997:	ff 75 d4             	push   -0x2c(%ebp)
46699a:	57                   	push   %edi
46699b:	6a 00                	push   $0x0
46699d:	6a 00                	push   $0x0
46699f:	ff 73 04             	push   0x4(%ebx)
4669a2:	ff 15 c0 70 4a 00    	call   *0x4a70c0
4669a8:	8b 45 e8             	mov    -0x18(%ebp),%eax
4669ab:	2b 45 e0             	sub    -0x20(%ebp),%eax
4669ae:	68 20 00 cc 00       	push   $0xcc0020
4669b3:	50                   	push   %eax
4669b4:	8b 45 dc             	mov    -0x24(%ebp),%eax
4669b7:	6a fb                	push   $0xfffffffb
4669b9:	03 c7                	add    %edi,%eax
4669bb:	e9 9a 00 00 00       	jmp    0x466a5a
4669c0:	8b 45 e4             	mov    -0x1c(%ebp),%eax
4669c3:	2b 45 dc             	sub    -0x24(%ebp),%eax
4669c6:	50                   	push   %eax
4669c7:	ff 75 e0             	push   -0x20(%ebp)
4669ca:	8b 42 48             	mov    0x48(%edx),%eax
4669cd:	ff 75 dc             	push   -0x24(%ebp)
4669d0:	ff 70 0c             	push   0xc(%eax)
4669d3:	57                   	push   %edi
4669d4:	51                   	push   %ecx
4669d5:	6a 00                	push   $0x0
4669d7:	6a 00                	push   $0x0
4669d9:	ff 73 04             	push   0x4(%ebx)
4669dc:	ff 15 c0 70 4a 00    	call   *0x4a70c0
4669e2:	8b 45 e4             	mov    -0x1c(%ebp),%eax
4669e5:	2b 45 dc             	sub    -0x24(%ebp),%eax
4669e8:	68 20 00 cc 00       	push   $0xcc0020
4669ed:	57                   	push   %edi
4669ee:	50                   	push   %eax
4669ef:	8b 45 e8             	mov    -0x18(%ebp),%eax
4669f2:	83 c0 fb             	add    $0xfffffffb,%eax
4669f5:	50                   	push   %eax
4669f6:	8b 86 50 01 00 00    	mov    0x150(%esi),%eax
4669fc:	ff 75 dc             	push   -0x24(%ebp)
4669ff:	8b 40 48             	mov    0x48(%eax),%eax
466a02:	ff 70 0c             	push   0xc(%eax)
466a05:	57                   	push   %edi
466a06:	ff 75 d0             	push   -0x30(%ebp)
466a09:	ff 75 cc             	push   -0x34(%ebp)
466a0c:	6a 00                	push   $0x0
466a0e:	ff 73 04             	push   0x4(%ebx)
466a11:	ff 15 c0 70 4a 00    	call   *0x4a70c0
466a17:	8b 45 e8             	mov    -0x18(%ebp),%eax
466a1a:	2b 45 e0             	sub    -0x20(%ebp),%eax
466a1d:	68 20 00 cc 00       	push   $0xcc0020
466a22:	50                   	push   %eax
466a23:	8b 86 50 01 00 00    	mov    0x150(%esi),%eax
466a29:	57                   	push   %edi
466a2a:	ff 75 e0             	push   -0x20(%ebp)
466a2d:	ff 75 dc             	push   -0x24(%ebp)
466a30:	8b 40 48             	mov    0x48(%eax),%eax
466a33:	ff 70 0c             	push   0xc(%eax)
466a36:	ff 75 d4             	push   -0x2c(%ebp)
466a39:	57                   	push   %edi
466a3a:	6a 00                	push   $0x0
466a3c:	6a 00                	push   $0x0
466a3e:	ff 73 04             	push   0x4(%ebx)
466a41:	ff 15 c0 70 4a 00    	call   *0x4a70c0
466a47:	8b 45 e8             	mov    -0x18(%ebp),%eax
466a4a:	2b 45 e0             	sub    -0x20(%ebp),%eax
466a4d:	68 20 00 cc 00       	push   $0xcc0020
466a52:	50                   	push   %eax
466a53:	8b 45 e4             	mov    -0x1c(%ebp),%eax
466a56:	57                   	push   %edi
466a57:	83 c0 fb             	add    $0xfffffffb,%eax
466a5a:	ff 75 e0             	push   -0x20(%ebp)
466a5d:	50                   	push   %eax
466a5e:	8b 86 50 01 00 00    	mov    0x150(%esi),%eax
466a64:	8b 40 48             	mov    0x48(%eax),%eax
466a67:	ff 70 0c             	push   0xc(%eax)
466a6a:	ff 75 d4             	push   -0x2c(%ebp)
466a6d:	57                   	push   %edi
466a6e:	6a 00                	push   $0x0
466a70:	ff 75 c8             	push   -0x38(%ebp)
466a73:	ff 73 04             	push   0x4(%ebx)
466a76:	ff 15 c0 70 4a 00    	call   *0x4a70c0
466a7c:	51                   	push   %ecx
466a7d:	8d 55 b0             	lea    -0x50(%ebp),%edx
466a80:	8b cb                	mov    %ebx,%ecx
466a82:	e8 06 25 00 00       	call   0x468f8d
466a87:	6a 0f                	push   $0xf
466a89:	8d 55 b0             	lea    -0x50(%ebp),%edx
466a8c:	8b cb                	mov    %ebx,%ecx
466a8e:	e8 20 26 00 00       	call   0x4690b3
466a93:	ff 73 04             	push   0x4(%ebx)
466a96:	ff 76 20             	push   0x20(%esi)
466a99:	ff 15 94 7d 4a 00    	call   *0x4a7d94
466a9f:	8d 4d c0             	lea    -0x40(%ebp),%ecx
466aa2:	c7 45 c0 e8 1a 40 00 	movl   $0x401ae8,-0x40(%ebp)
466aa9:	e8 25 93 fb ff       	call   0x41fdd3
466aae:	e8 02 9a 02 00       	call   0x4904b5
466ab3:	c3                   	ret
466ab4:	8b ff                	mov    %edi,%edi
466ab6:	55                   	push   %ebp
466ab7:	8b ec                	mov    %esp,%ebp
466ab9:	8b 4d 08             	mov    0x8(%ebp),%ecx
466abc:	8b c1                	mov    %ecx,%eax
466abe:	83 e8 04             	sub    $0x4,%eax
466ac1:	74 2e                	je     0x466af1
466ac3:	83 e8 01             	sub    $0x1,%eax
466ac6:	74 25                	je     0x466aed
466ac8:	48                   	dec    %eax
466ac9:	83 e8 01             	sub    $0x1,%eax
466acc:	74 1b                	je     0x466ae9
466ace:	83 e8 01             	sub    $0x1,%eax
466ad1:	74 12                	je     0x466ae5
466ad3:	83 e8 01             	sub    $0x1,%eax
466ad6:	74 09                	je     0x466ae1
466ad8:	83 e8 01             	sub    $0x1,%eax
466adb:	75 17                	jne    0x466af4
466add:	6a 09                	push   $0x9
466adf:	eb 12                	jmp    0x466af3
466ae1:	6a 0a                	push   $0xa
466ae3:	eb 0e                	jmp    0x466af3
466ae5:	6a 07                	push   $0x7
466ae7:	eb 0a                	jmp    0x466af3
466ae9:	6a 08                	push   $0x8
466aeb:	eb 06                	jmp    0x466af3
466aed:	6a 04                	push   $0x4
466aef:	eb 02                	jmp    0x466af3
466af1:	6a 05                	push   $0x5
466af3:	59                   	pop    %ecx
466af4:	8b c1                	mov    %ecx,%eax
466af6:	5d                   	pop    %ebp
466af7:	c2 04 00             	ret    $0x4
466afa:	cc                   	int3
466afb:	cc                   	int3
466afc:	cc                   	int3
466afd:	cc                   	int3
466afe:	cc                   	int3
466aff:	cc                   	int3
466b00:	8b ff                	mov    %edi,%edi
466b02:	55                   	push   %ebp
466b03:	8b ec                	mov    %esp,%ebp
466b05:	83 e4 f8             	and    $0xfffffff8,%esp
466b08:	83 ec 14             	sub    $0x14,%esp
466b0b:	a1 dc 38 4a 00       	mov    0x4a38dc,%eax
466b10:	33 c4                	xor    %esp,%eax
466b12:	89 44 24 10          	mov    %eax,0x10(%esp)
466b16:	53                   	push   %ebx
466b17:	56                   	push   %esi
466b18:	57                   	push   %edi
466b19:	6a 02                	push   $0x2
466b1b:	8b f9                	mov    %ecx,%edi
466b1d:	8d 45 08             	lea    0x8(%ebp),%eax
466b20:	5e                   	pop    %esi
466b21:	50                   	push   %eax
466b22:	ff 77 20             	push   0x20(%edi)
466b25:	ff 15 fc 7d 4a 00    	call   *0x4a7dfc
466b2b:	8d 44 24 0c          	lea    0xc(%esp),%eax
466b2f:	50                   	push   %eax
466b30:	ff 77 20             	push   0x20(%edi)
466b33:	ff 15 ec 7d 4a 00    	call   *0x4a7dec
466b39:	ff 75 0c             	push   0xc(%ebp)
466b3c:	33 d2                	xor    %edx,%edx
466b3e:	8d 4c 24 10          	lea    0x10(%esp),%ecx
466b42:	ff 75 08             	push   0x8(%ebp)
466b45:	e8 3a 22 00 00       	call   0x468d84
466b4a:	6a ec                	push   $0xffffffec
466b4c:	ff 77 20             	push   0x20(%edi)
466b4f:	8b d8                	mov    %eax,%ebx
466b51:	ff 15 30 7d 4a 00    	call   *0x4a7d30
466b57:	a9 00 00 40 00       	test   $0x400000,%eax
466b5c:	74 08                	je     0x466b66
466b5e:	53                   	push   %ebx
466b5f:	e8 50 ff ff ff       	call   0x466ab4
466b64:	8b d8                	mov    %eax,%ebx
466b66:	ff 75 0c             	push   0xc(%ebp)
466b69:	8d 44 24 10          	lea    0x10(%esp),%eax
466b6d:	ff 75 08             	push   0x8(%ebp)
466b70:	50                   	push   %eax
466b71:	ff 15 f8 7c 4a 00    	call   *0x4a7cf8
466b77:	85 c0                	test   %eax,%eax
466b79:	74 03                	je     0x466b7e
466b7b:	33 f6                	xor    %esi,%esi
466b7d:	46                   	inc    %esi
466b7e:	83 a7 cc 00 00 00 00 	andl   $0x0,0xcc(%edi)
466b85:	83 c3 fd             	add    $0xfffffffd,%ebx
466b88:	83 fb 07             	cmp    $0x7,%ebx
466b8b:	77 2c                	ja     0x466bb9
466b8d:	ff 24 9d d0 6b 46 00 	jmp    *0x466bd0(,%ebx,4)
466b94:	6a 0c                	push   $0xc
466b96:	eb 1a                	jmp    0x466bb2
466b98:	6a 0a                	push   $0xa
466b9a:	eb 16                	jmp    0x466bb2
466b9c:	6a 0b                	push   $0xb
466b9e:	eb 12                	jmp    0x466bb2
466ba0:	6a 0f                	push   $0xf
466ba2:	eb 0e                	jmp    0x466bb2
466ba4:	6a 0d                	push   $0xd
466ba6:	eb 0a                	jmp    0x466bb2
466ba8:	6a 0e                	push   $0xe
466baa:	eb 06                	jmp    0x466bb2
466bac:	6a 10                	push   $0x10
466bae:	eb 02                	jmp    0x466bb2
466bb0:	6a 11                	push   $0x11
466bb2:	5e                   	pop    %esi
466bb3:	89 b7 cc 00 00 00    	mov    %esi,0xcc(%edi)
466bb9:	8b 4c 24 1c          	mov    0x1c(%esp),%ecx
466bbd:	8b c6                	mov    %esi,%eax
466bbf:	5f                   	pop    %edi
466bc0:	5e                   	pop    %esi
466bc1:	5b                   	pop    %ebx
466bc2:	33 cc                	xor    %esp,%ecx
466bc4:	e8 37 93 02 00       	call   0x48ff00
466bc9:	8b e5                	mov    %ebp,%esp
466bcb:	5d                   	pop    %ebp
466bcc:	c2 08 00             	ret    $0x8
466bcf:	90                   	nop
466bd0:	94                   	xchg   %eax,%esp
466bd1:	6b 46 00 98          	imul   $0xffffff98,0x0(%esi),%eax
466bd5:	6b 46 00 9c          	imul   $0xffffff9c,0x0(%esi),%eax
466bd9:	6b 46 00 a0          	imul   $0xffffffa0,0x0(%esi),%eax
466bdd:	6b 46 00 a4          	imul   $0xffffffa4,0x0(%esi),%eax
466be1:	6b 46 00 a8          	imul   $0xffffffa8,0x0(%esi),%eax
466be5:	6b 46 00 ac          	imul   $0xffffffac,0x0(%esi),%eax
466be9:	6b 46 00 b0          	imul   $0xffffffb0,0x0(%esi),%eax
466bed:	6b 46 00 6a          	imul   $0x6a,0x0(%esi),%eax
466bf1:	2c b8                	sub    $0xb8,%al
466bf3:	76 50                	jbe    0x466c45
466bf5:	49                   	dec    %ecx
466bf6:	00 e8                	add    %ch,%al
466bf8:	0a 99 02 00 8b f1    	or     -0xe74fffe(%ecx),%bl
466bfe:	bb 40 4a 40 00       	mov    $0x404a40,%ebx
466c03:	33 ff                	xor    %edi,%edi
466c05:	89 5d d0             	mov    %ebx,-0x30(%ebp)
466c08:	89 7d d4             	mov    %edi,-0x2c(%ebp)
466c0b:	89 7d fc             	mov    %edi,-0x4(%ebp)
466c0e:	8b 45 0c             	mov    0xc(%ebp),%eax
466c11:	6a 71                	push   $0x71
466c13:	6a 04                	push   $0x4
466c15:	89 45 d8             	mov    %eax,-0x28(%ebp)
466c18:	8b 45 10             	mov    0x10(%ebp),%eax
466c1b:	6a 71                	push   $0x71
466c1d:	89 45 dc             	mov    %eax,-0x24(%ebp)
466c20:	ff 15 40 77 4a 00    	call   *0x4a7740
466c26:	50                   	push   %eax
466c27:	ff 15 a4 7d 4a 00    	call   *0x4a7da4
466c2d:	50                   	push   %eax
466c2e:	8d 4d d0             	lea    -0x30(%ebp),%ecx
466c31:	ff 15 e0 73 4a 00    	call   *0x4a73e0
466c37:	85 c0                	test   %eax,%eax
466c39:	0f 84 81 00 00 00    	je     0x466cc0
466c3f:	8d 45 e0             	lea    -0x20(%ebp),%eax
466c42:	50                   	push   %eax
466c43:	ff 76 20             	push   0x20(%esi)
466c46:	ff 15 ec 7d 4a 00    	call   *0x4a7dec
466c4c:	57                   	push   %edi
466c4d:	ff 75 d4             	push   -0x2c(%ebp)
466c50:	ff 15 a8 7d 4a 00    	call   *0x4a7da8
466c56:	50                   	push   %eax
466c57:	ff 15 64 77 4a 00    	call   *0x4a7764
466c5d:	8b f8                	mov    %eax,%edi
466c5f:	85 ff                	test   %edi,%edi
466c61:	74 5d                	je     0x466cc0
466c63:	83 7d d8 ff          	cmpl   $0xffffffff,-0x28(%ebp)
466c67:	75 29                	jne    0x466c92
466c69:	83 7d dc ff          	cmpl   $0xffffffff,-0x24(%ebp)
466c6d:	75 23                	jne    0x466c92
466c6f:	8d 45 c8             	lea    -0x38(%ebp),%eax
466c72:	50                   	push   %eax
466c73:	ff 15 c0 7d 4a 00    	call   *0x4a7dc0
466c79:	8b 45 c8             	mov    -0x38(%ebp),%eax
466c7c:	89 45 d8             	mov    %eax,-0x28(%ebp)
466c7f:	8b 45 cc             	mov    -0x34(%ebp),%eax
466c82:	89 45 dc             	mov    %eax,-0x24(%ebp)
466c85:	8d 45 d8             	lea    -0x28(%ebp),%eax
466c88:	50                   	push   %eax
466c89:	ff 76 20             	push   0x20(%esi)
466c8c:	ff 15 60 7d 4a 00    	call   *0x4a7d60
466c92:	8d 45 e0             	lea    -0x20(%ebp),%eax
466c95:	8b ce                	mov    %esi,%ecx
466c97:	50                   	push   %eax
466c98:	e8 4d b2 ff ff       	call   0x461eea
466c9d:	8b ce                	mov    %esi,%ecx
466c9f:	ff 15 3c 77 4a 00    	call   *0x4a773c
466ca5:	85 c0                	test   %eax,%eax
466ca7:	75 02                	jne    0x466cab
466ca9:	8b c6                	mov    %esi,%eax
466cab:	8d 4d e0             	lea    -0x20(%ebp),%ecx
466cae:	51                   	push   %ecx
466caf:	50                   	push   %eax
466cb0:	ff 75 dc             	push   -0x24(%ebp)
466cb3:	8b cf                	mov    %edi,%ecx
466cb5:	ff 75 d8             	push   -0x28(%ebp)
466cb8:	6a 02                	push   $0x2
466cba:	ff 15 dc 73 4a 00    	call   *0x4a73dc
466cc0:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
466cc7:	8d 4d d0             	lea    -0x30(%ebp),%ecx
466cca:	89 5d d0             	mov    %ebx,-0x30(%ebp)
466ccd:	ff 15 e4 73 4a 00    	call   *0x4a73e4
466cd3:	e8 dd 97 02 00       	call   0x4904b5