461baa:	8b ec                	mov    %esp,%ebp
461bac:	53                   	push   %ebx
461bad:	56                   	push   %esi
461bae:	8b f1                	mov    %ecx,%esi
461bb0:	ff 76 2c             	push   0x2c(%esi)
461bb3:	e8 3d e0 ff ff       	call   0x45fbf5
461bb8:	59                   	pop    %ecx
461bb9:	8b d8                	mov    %eax,%ebx
461bbb:	8b cb                	mov    %ebx,%ecx
461bbd:	83 e9 01             	sub    $0x1,%ecx
461bc0:	74 78                	je     0x461c3a
461bc2:	83 e9 01             	sub    $0x1,%ecx
461bc5:	74 56                	je     0x461c1d
461bc7:	49                   	dec    %ecx
461bc8:	83 e9 01             	sub    $0x1,%ecx
461bcb:	74 33                	je     0x461c00
461bcd:	83 e9 04             	sub    $0x4,%ecx
461bd0:	74 17                	je     0x461be9
461bd2:	e8 58 b2 fe ff       	call   0x44ce2f
461bd7:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
461bdd:	e8 f4 b0 fe ff       	call   0x44ccd6
461be2:	32 c0                	xor    %al,%al
461be4:	e9 06 01 00 00       	jmp    0x461cef
461be9:	8b 46 20             	mov    0x20(%esi),%eax
461bec:	83 46 14 08          	addl   $0x8,0x14(%esi)
461bf0:	c1 e8 04             	shr    $0x4,%eax
461bf3:	a8 01                	test   $0x1,%al
461bf5:	8b 46 14             	mov    0x14(%esi),%eax
461bf8:	8b 48 f8             	mov    -0x8(%eax),%ecx
461bfb:	8b 50 fc             	mov    -0x4(%eax),%edx
461bfe:	eb 58                	jmp    0x461c58
461c00:	8b 46 20             	mov    0x20(%esi),%eax
461c03:	83 46 14 04          	addl   $0x4,0x14(%esi)
461c07:	c1 e8 04             	shr    $0x4,%eax
461c0a:	a8 01                	test   $0x1,%al
461c0c:	8b 46 14             	mov    0x14(%esi),%eax
461c0f:	74 05                	je     0x461c16
461c11:	8b 40 fc             	mov    -0x4(%eax),%eax
461c14:	eb 3f                	jmp    0x461c55
461c16:	8b 48 fc             	mov    -0x4(%eax),%ecx
461c19:	33 d2                	xor    %edx,%edx
461c1b:	eb 3b                	jmp    0x461c58
461c1d:	8b 46 20             	mov    0x20(%esi),%eax
461c20:	83 46 14 04          	addl   $0x4,0x14(%esi)
461c24:	c1 e8 04             	shr    $0x4,%eax
461c27:	a8 01                	test   $0x1,%al
461c29:	8b 46 14             	mov    0x14(%esi),%eax
461c2c:	74 06                	je     0x461c34
461c2e:	0f bf 40 fc          	movswl -0x4(%eax),%eax
461c32:	eb 21                	jmp    0x461c55
461c34:	0f b7 40 fc          	movzwl -0x4(%eax),%eax
461c38:	eb 1b                	jmp    0x461c55
461c3a:	8b 46 20             	mov    0x20(%esi),%eax
461c3d:	83 46 14 04          	addl   $0x4,0x14(%esi)
461c41:	c1 e8 04             	shr    $0x4,%eax
461c44:	a8 01                	test   $0x1,%al
461c46:	8b 46 14             	mov    0x14(%esi),%eax
461c49:	74 06                	je     0x461c51
461c4b:	0f be 40 fc          	movsbl -0x4(%eax),%eax
461c4f:	eb 04                	jmp    0x461c55
461c51:	0f b6 40 fc          	movzbl -0x4(%eax),%eax
461c55:	99                   	cltd
461c56:	8b c8                	mov    %eax,%ecx
461c58:	57                   	push   %edi
461c59:	8b 7e 20             	mov    0x20(%esi),%edi
461c5c:	8b c7                	mov    %edi,%eax
461c5e:	c1 e8 04             	shr    $0x4,%eax
461c61:	a8 01                	test   $0x1,%al
461c63:	74 17                	je     0x461c7c
461c65:	85 d2                	test   %edx,%edx
461c67:	7f 13                	jg     0x461c7c
461c69:	7c 04                	jl     0x461c6f
461c6b:	85 c9                	test   %ecx,%ecx
461c6d:	73 0d                	jae    0x461c7c
461c6f:	f7 d9                	neg    %ecx
461c71:	83 d2 00             	adc    $0x0,%edx
461c74:	f7 da                	neg    %edx
461c76:	83 cf 40             	or     $0x40,%edi
461c79:	89 7e 20             	mov    %edi,0x20(%esi)
461c7c:	83 7e 28 00          	cmpl   $0x0,0x28(%esi)
461c80:	5f                   	pop    %edi
461c81:	7d 09                	jge    0x461c8c
461c83:	c7 46 28 01 00 00 00 	movl   $0x1,0x28(%esi)
461c8a:	eb 11                	jmp    0x461c9d
461c8c:	83 66 20 f7          	andl   $0xfffffff7,0x20(%esi)
461c90:	b8 00 02 00 00       	mov    $0x200,%eax
461c95:	39 46 28             	cmp    %eax,0x28(%esi)
461c98:	7e 03                	jle    0x461c9d
461c9a:	89 46 28             	mov    %eax,0x28(%esi)
461c9d:	8b c1                	mov    %ecx,%eax
461c9f:	0b c2                	or     %edx,%eax
461ca1:	75 04                	jne    0x461ca7
461ca3:	83 66 20 df          	andl   $0xffffffdf,0x20(%esi)
461ca7:	c6 46 3c 00          	movb   $0x0,0x3c(%esi)
461cab:	ff 75 0c             	push   0xc(%ebp)
461cae:	ff 75 08             	push   0x8(%ebp)
461cb1:	83 fb 08             	cmp    $0x8,%ebx
461cb4:	75 0b                	jne    0x461cc1
461cb6:	52                   	push   %edx
461cb7:	51                   	push   %ecx
461cb8:	8b ce                	mov    %esi,%ecx
461cba:	e8 16 6c ff ff       	call   0x4588d5
461cbf:	eb 08                	jmp    0x461cc9
461cc1:	51                   	push   %ecx
461cc2:	8b ce                	mov    %esi,%ecx
461cc4:	e8 3c 66 ff ff       	call   0x458305
461cc9:	8b 46 20             	mov    0x20(%esi),%eax
461ccc:	c1 e8 07             	shr    $0x7,%eax
461ccf:	a8 01                	test   $0x1,%al
461cd1:	74 1a                	je     0x461ced
461cd3:	83 7e 38 00          	cmpl   $0x0,0x38(%esi)
461cd7:	74 08                	je     0x461ce1
461cd9:	8b 46 34             	mov    0x34(%esi),%eax
461cdc:	80 38 30             	cmpb   $0x30,(%eax)
461cdf:	74 0c                	je     0x461ced
461ce1:	ff 4e 34             	decl   0x34(%esi)
461ce4:	8b 4e 34             	mov    0x34(%esi),%ecx
461ce7:	c6 01 30             	movb   $0x30,(%ecx)
461cea:	ff 46 38             	incl   0x38(%esi)
461ced:	b0 01                	mov    $0x1,%al
461cef:	5e                   	pop    %esi
461cf0:	5b                   	pop    %ebx
461cf1:	5d                   	pop    %ebp
461cf2:	c2 08 00             	ret    $0x8
461cf5:	8b ff                	mov    %edi,%edi
461cf7:	55                   	push   %ebp
461cf8:	8b ec                	mov    %esp,%ebp
461cfa:	51                   	push   %ecx
461cfb:	51                   	push   %ecx
461cfc:	53                   	push   %ebx
461cfd:	56                   	push   %esi
461cfe:	8b f1                	mov    %ecx,%esi
461d00:	ff 76 2c             	push   0x2c(%esi)
461d03:	e8 ed de ff ff       	call   0x45fbf5
461d08:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
461d0c:	8b d8                	mov    %eax,%ebx
461d0e:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
461d12:	59                   	pop    %ecx
461d13:	8b cb                	mov    %ebx,%ecx
461d15:	83 e9 01             	sub    $0x1,%ecx
461d18:	0f 84 81 00 00 00    	je     0x461d9f
461d1e:	83 e9 01             	sub    $0x1,%ecx
461d21:	74 5e                	je     0x461d81
461d23:	49                   	dec    %ecx
461d24:	83 e9 01             	sub    $0x1,%ecx
461d27:	74 3a                	je     0x461d63
461d29:	83 e9 04             	sub    $0x4,%ecx
461d2c:	74 17                	je     0x461d45
461d2e:	e8 fc b0 fe ff       	call   0x44ce2f
461d33:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
461d39:	e8 98 af fe ff       	call   0x44ccd6
461d3e:	32 c0                	xor    %al,%al
461d40:	e9 2a 01 00 00       	jmp    0x461e6f
461d45:	8b 46 20             	mov    0x20(%esi),%eax
461d48:	8b ce                	mov    %esi,%ecx
461d4a:	c1 e8 04             	shr    $0x4,%eax
461d4d:	a8 01                	test   $0x1,%al
461d4f:	8d 45 f8             	lea    -0x8(%ebp),%eax
461d52:	50                   	push   %eax
461d53:	74 07                	je     0x461d5c
461d55:	e8 c5 57 ff ff       	call   0x45751f
461d5a:	eb 5f                	jmp    0x461dbb
461d5c:	e8 76 5a ff ff       	call   0x4577d7
461d61:	eb 58                	jmp    0x461dbb
461d63:	8b 46 20             	mov    0x20(%esi),%eax
461d66:	8b ce                	mov    %esi,%ecx
461d68:	c1 e8 04             	shr    $0x4,%eax
461d6b:	a8 01                	test   $0x1,%al
461d6d:	8d 45 f8             	lea    -0x8(%ebp),%eax
461d70:	50                   	push   %eax
461d71:	74 07                	je     0x461d7a
461d73:	e8 03 48 ff ff       	call   0x45657b
461d78:	eb 41                	jmp    0x461dbb
461d7a:	e8 68 4a ff ff       	call   0x4567e7
461d7f:	eb 3a                	jmp    0x461dbb
461d81:	8b 46 20             	mov    0x20(%esi),%eax
461d84:	8b ce                	mov    %esi,%ecx
461d86:	c1 e8 04             	shr    $0x4,%eax
461d89:	a8 01                	test   $0x1,%al
461d8b:	8d 45 f8             	lea    -0x8(%ebp),%eax
461d8e:	50                   	push   %eax
461d8f:	74 07                	je     0x461d98
461d91:	e8 c5 41 ff ff       	call   0x455f5b
461d96:	eb 23                	jmp    0x461dbb
461d98:	e8 66 45 ff ff       	call   0x456303
461d9d:	eb 1c                	jmp    0x461dbb
461d9f:	8b 46 20             	mov    0x20(%esi),%eax
461da2:	8b ce                	mov    %esi,%ecx
461da4:	c1 e8 04             	shr    $0x4,%eax
461da7:	a8 01                	test   $0x1,%al
461da9:	8d 45 f8             	lea    -0x8(%ebp),%eax
461dac:	50                   	push   %eax
461dad:	74 07                	je     0x461db6
461daf:	e8 b7 3c ff ff       	call   0x455a6b
461db4:	eb 05                	jmp    0x461dbb
461db6:	e8 28 3f ff ff       	call   0x455ce3
461dbb:	84 c0                	test   %al,%al
461dbd:	0f 84 7b ff ff ff    	je     0x461d3e
461dc3:	8b ce                	mov    %esi,%ecx
461dc5:	e8 b7 a0 ff ff       	call   0x45be81
461dca:	84 c0                	test   %al,%al
461dcc:	0f 84 9b 00 00 00    	je     0x461e6d
461dd2:	8b 55 fc             	mov    -0x4(%ebp),%edx
461dd5:	8b 4d f8             	mov    -0x8(%ebp),%ecx
461dd8:	57                   	push   %edi
461dd9:	8b 7e 20             	mov    0x20(%esi),%edi
461ddc:	8b c7                	mov    %edi,%eax
461dde:	c1 e8 04             	shr    $0x4,%eax
461de1:	a8 01                	test   $0x1,%al
461de3:	74 17                	je     0x461dfc
461de5:	85 d2                	test   %edx,%edx
461de7:	7f 13                	jg     0x461dfc
461de9:	7c 04                	jl     0x461def
461deb:	85 c9                	test   %ecx,%ecx
461ded:	73 0d                	jae    0x461dfc
461def:	f7 d9                	neg    %ecx
461df1:	83 d2 00             	adc    $0x0,%edx
461df4:	f7 da                	neg    %edx
461df6:	83 cf 40             	or     $0x40,%edi
461df9:	89 7e 20             	mov    %edi,0x20(%esi)
461dfc:	83 7e 28 00          	cmpl   $0x0,0x28(%esi)
461e00:	5f                   	pop    %edi
461e01:	7d 09                	jge    0x461e0c
461e03:	c7 46 28 01 00 00 00 	movl   $0x1,0x28(%esi)
461e0a:	eb 11                	jmp    0x461e1d
461e0c:	83 66 20 f7          	andl   $0xfffffff7,0x20(%esi)
461e10:	b8 00 02 00 00       	mov    $0x200,%eax
461e15:	39 46 28             	cmp    %eax,0x28(%esi)
461e18:	7e 03                	jle    0x461e1d
461e1a:	89 46 28             	mov    %eax,0x28(%esi)
461e1d:	8b c1                	mov    %ecx,%eax
461e1f:	0b c2                	or     %edx,%eax
461e21:	75 04                	jne    0x461e27
461e23:	83 66 20 df          	andl   $0xffffffdf,0x20(%esi)
461e27:	c6 46 3c 00          	movb   $0x0,0x3c(%esi)
461e2b:	ff 75 0c             	push   0xc(%ebp)
461e2e:	ff 75 08             	push   0x8(%ebp)
461e31:	83 fb 08             	cmp    $0x8,%ebx
461e34:	75 0b                	jne    0x461e41
461e36:	52                   	push   %edx
461e37:	51                   	push   %ecx
461e38:	8b ce                	mov    %esi,%ecx
461e3a:	e8 1d 6b ff ff       	call   0x45895c
461e3f:	eb 08                	jmp    0x461e49
461e41:	51                   	push   %ecx
461e42:	8b ce                	mov    %esi,%ecx
461e44:	e8 2e 65 ff ff       	call   0x458377
461e49:	8b 46 20             	mov    0x20(%esi),%eax
461e4c:	c1 e8 07             	shr    $0x7,%eax
461e4f:	a8 01                	test   $0x1,%al
461e51:	74 1a                	je     0x461e6d
461e53:	83 7e 38 00          	cmpl   $0x0,0x38(%esi)
461e57:	74 08                	je     0x461e61
461e59:	8b 46 34             	mov    0x34(%esi),%eax
461e5c:	80 38 30             	cmpb   $0x30,(%eax)
461e5f:	74 0c                	je     0x461e6d
461e61:	ff 4e 34             	decl   0x34(%esi)
461e64:	8b 46 34             	mov    0x34(%esi),%eax
461e67:	c6 00 30             	movb   $0x30,(%eax)
461e6a:	ff 46 38             	incl   0x38(%esi)
461e6d:	b0 01                	mov    $0x1,%al
461e6f:	5e                   	pop    %esi
461e70:	5b                   	pop    %ebx
461e71:	8b e5                	mov    %ebp,%esp
461e73:	5d                   	pop    %ebp
461e74:	c2 08 00             	ret    $0x8
461e77:	8b ff                	mov    %edi,%edi
461e79:	55                   	push   %ebp
461e7a:	8b ec                	mov    %esp,%ebp
461e7c:	53                   	push   %ebx
461e7d:	56                   	push   %esi
461e7e:	8b f1                	mov    %ecx,%esi
461e80:	ff 76 2c             	push   0x2c(%esi)
461e83:	e8 6d dd ff ff       	call   0x45fbf5
461e88:	59                   	pop    %ecx
461e89:	8b d8                	mov    %eax,%ebx
461e8b:	8b cb                	mov    %ebx,%ecx
461e8d:	83 e9 01             	sub    $0x1,%ecx
461e90:	74 78                	je     0x461f0a
461e92:	83 e9 01             	sub    $0x1,%ecx
461e95:	74 56                	je     0x461eed
461e97:	49                   	dec    %ecx
461e98:	83 e9 01             	sub    $0x1,%ecx
461e9b:	74 33                	je     0x461ed0
461e9d:	83 e9 04             	sub    $0x4,%ecx
461ea0:	74 17                	je     0x461eb9
461ea2:	e8 88 af fe ff       	call   0x44ce2f
461ea7:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
461ead:	e8 24 ae fe ff       	call   0x44ccd6
461eb2:	32 c0                	xor    %al,%al
461eb4:	e9 06 01 00 00       	jmp    0x461fbf
461eb9:	8b 46 20             	mov    0x20(%esi),%eax
461ebc:	83 46 14 08          	addl   $0x8,0x14(%esi)
461ec0:	c1 e8 04             	shr    $0x4,%eax
461ec3:	a8 01                	test   $0x1,%al
461ec5:	8b 46 14             	mov    0x14(%esi),%eax
461ec8:	8b 48 f8             	mov    -0x8(%eax),%ecx
461ecb:	8b 50 fc             	mov    -0x4(%eax),%edx
461ece:	eb 58                	jmp    0x461f28
461ed0:	8b 46 20             	mov    0x20(%esi),%eax
461ed3:	83 46 14 04          	addl   $0x4,0x14(%esi)
461ed7:	c1 e8 04             	shr    $0x4,%eax
461eda:	a8 01                	test   $0x1,%al
461edc:	8b 46 14             	mov    0x14(%esi),%eax
461edf:	74 05                	je     0x461ee6
461ee1:	8b 40 fc             	mov    -0x4(%eax),%eax
461ee4:	eb 3f                	jmp    0x461f25
461ee6:	8b 48 fc             	mov    -0x4(%eax),%ecx
461ee9:	33 d2                	xor    %edx,%edx
461eeb:	eb 3b                	jmp    0x461f28
461eed:	8b 46 20             	mov    0x20(%esi),%eax
461ef0:	83 46 14 04          	addl   $0x4,0x14(%esi)
461ef4:	c1 e8 04             	shr    $0x4,%eax
461ef7:	a8 01                	test   $0x1,%al
461ef9:	8b 46 14             	mov    0x14(%esi),%eax
461efc:	74 06                	je     0x461f04
461efe:	0f bf 40 fc          	movswl -0x4(%eax),%eax
461f02:	eb 21                	jmp    0x461f25
461f04:	0f b7 40 fc          	movzwl -0x4(%eax),%eax
461f08:	eb 1b                	jmp    0x461f25
461f0a:	8b 46 20             	mov    0x20(%esi),%eax
461f0d:	83 46 14 04          	addl   $0x4,0x14(%esi)
461f11:	c1 e8 04             	shr    $0x4,%eax
461f14:	a8 01                	test   $0x1,%al
461f16:	8b 46 14             	mov    0x14(%esi),%eax
461f19:	74 06                	je     0x461f21
461f1b:	0f be 40 fc          	movsbl -0x4(%eax),%eax
461f1f:	eb 04                	jmp    0x461f25
461f21:	0f b6 40 fc          	movzbl -0x4(%eax),%eax
461f25:	99                   	cltd
461f26:	8b c8                	mov    %eax,%ecx
461f28:	57                   	push   %edi
461f29:	8b 7e 20             	mov    0x20(%esi),%edi
461f2c:	8b c7                	mov    %edi,%eax
461f2e:	c1 e8 04             	shr    $0x4,%eax
461f31:	a8 01                	test   $0x1,%al
461f33:	74 17                	je     0x461f4c
461f35:	85 d2                	test   %edx,%edx
461f37:	7f 13                	jg     0x461f4c
461f39:	7c 04                	jl     0x461f3f
461f3b:	85 c9                	test   %ecx,%ecx
461f3d:	73 0d                	jae    0x461f4c
461f3f:	f7 d9                	neg    %ecx
461f41:	83 d2 00             	adc    $0x0,%edx
461f44:	f7 da                	neg    %edx
461f46:	83 cf 40             	or     $0x40,%edi
461f49:	89 7e 20             	mov    %edi,0x20(%esi)
461f4c:	83 7e 28 00          	cmpl   $0x0,0x28(%esi)
461f50:	5f                   	pop    %edi
461f51:	7d 09                	jge    0x461f5c