417c2b:	5b                   	pop    %ebx
417c2c:	8b e5                	mov    %ebp,%esp
417c2e:	5d                   	pop    %ebp
417c2f:	c3                   	ret
417c30:	55                   	push   %ebp
417c31:	8b ec                	mov    %esp,%ebp
417c33:	83 ec 0c             	sub    $0xc,%esp
417c36:	8b 45 0c             	mov    0xc(%ebp),%eax
417c39:	53                   	push   %ebx
417c3a:	8b 5d 1c             	mov    0x1c(%ebp),%ebx
417c3d:	89 45 f4             	mov    %eax,-0xc(%ebp)
417c40:	56                   	push   %esi
417c41:	8b 75 14             	mov    0x14(%ebp),%esi
417c44:	57                   	push   %edi
417c45:	8b 7d 18             	mov    0x18(%ebp),%edi
417c48:	89 7d fc             	mov    %edi,-0x4(%ebp)
417c4b:	85 db                	test   %ebx,%ebx
417c4d:	74 6d                	je     0x417cbc
417c4f:	90                   	nop
417c50:	85 f6                	test   %esi,%esi
417c52:	74 56                	je     0x417caa
417c54:	8b 46 20             	mov    0x20(%esi),%eax
417c57:	0f b7 0f             	movzwl (%edi),%ecx
417c5a:	89 4d f8             	mov    %ecx,-0x8(%ebp)
417c5d:	83 38 00             	cmpl   $0x0,(%eax)
417c60:	74 23                	je     0x417c85
417c62:	8b 46 30             	mov    0x30(%esi),%eax
417c65:	8b 00                	mov    (%eax),%eax
417c67:	85 c0                	test   %eax,%eax
417c69:	7e 1a                	jle    0x417c85
417c6b:	8d 48 ff             	lea    -0x1(%eax),%ecx
417c6e:	8b 46 30             	mov    0x30(%esi),%eax
417c71:	89 08                	mov    %ecx,(%eax)
417c73:	8b 4e 20             	mov    0x20(%esi),%ecx
417c76:	8b 11                	mov    (%ecx),%edx
417c78:	8d 42 02             	lea    0x2(%edx),%eax
417c7b:	89 01                	mov    %eax,(%ecx)
417c7d:	8b 45 f8             	mov    -0x8(%ebp),%eax
417c80:	66 89 02             	mov    %ax,(%edx)
417c83:	eb 15                	jmp    0x417c9a
417c85:	8b 06                	mov    (%esi),%eax
417c87:	51                   	push   %ecx
417c88:	8b 78 0c             	mov    0xc(%eax),%edi
417c8b:	8b cf                	mov    %edi,%ecx
417c8d:	ff 15 d4 e2 49 00    	call   *0x49e2d4
417c93:	8b ce                	mov    %esi,%ecx
417c95:	ff d7                	call   *%edi
417c97:	8b 7d fc             	mov    -0x4(%ebp),%edi
417c9a:	8b 75 14             	mov    0x14(%ebp),%esi
417c9d:	b9 ff ff 00 00       	mov    $0xffff,%ecx
417ca2:	0f b7 c0             	movzwl %ax,%eax
417ca5:	66 3b c8             	cmp    %ax,%cx
417ca8:	75 04                	jne    0x417cae
417caa:	c6 45 10 01          	movb   $0x1,0x10(%ebp)
417cae:	83 c7 02             	add    $0x2,%edi
417cb1:	89 7d fc             	mov    %edi,-0x4(%ebp)
417cb4:	83 eb 01             	sub    $0x1,%ebx
417cb7:	75 97                	jne    0x417c50
417cb9:	8b 45 f4             	mov    -0xc(%ebp),%eax
417cbc:	8b 4d 10             	mov    0x10(%ebp),%ecx
417cbf:	5f                   	pop    %edi
417cc0:	89 70 04             	mov    %esi,0x4(%eax)
417cc3:	5e                   	pop    %esi
417cc4:	89 08                	mov    %ecx,(%eax)
417cc6:	5b                   	pop    %ebx
417cc7:	8b e5                	mov    %ebp,%esp
417cc9:	5d                   	pop    %ebp
417cca:	c3                   	ret
417ccb:	cc                   	int3
417ccc:	cc                   	int3
417ccd:	cc                   	int3
417cce:	cc                   	int3
417ccf:	cc                   	int3
417cd0:	55                   	push   %ebp
417cd1:	8b ec                	mov    %esp,%ebp
417cd3:	6a ff                	push   $0xffffffff
417cd5:	68 f5 8c 49 00       	push   $0x498cf5
417cda:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
417ce0:	50                   	push   %eax
417ce1:	83 ec 54             	sub    $0x54,%esp
417ce4:	a1 14 40 4c 00       	mov    0x4c4014,%eax
417ce9:	33 c5                	xor    %ebp,%eax
417ceb:	89 45 f0             	mov    %eax,-0x10(%ebp)
417cee:	53                   	push   %ebx
417cef:	56                   	push   %esi
417cf0:	57                   	push   %edi
417cf1:	50                   	push   %eax
417cf2:	8d 45 f4             	lea    -0xc(%ebp),%eax
417cf5:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
417cfb:	8b 5d 24             	mov    0x24(%ebp),%ebx
417cfe:	8b 45 0c             	mov    0xc(%ebp),%eax
417d01:	8b 7d 18             	mov    0x18(%ebp),%edi
417d04:	8b 55 20             	mov    0x20(%ebp),%edx
417d07:	89 45 a0             	mov    %eax,-0x60(%ebp)
417d0a:	89 7d ac             	mov    %edi,-0x54(%ebp)
417d0d:	89 55 a8             	mov    %edx,-0x58(%ebp)
417d10:	85 db                	test   %ebx,%ebx
417d12:	74 11                	je     0x417d25
417d14:	8a 02                	mov    (%edx),%al
417d16:	3c 2b                	cmp    $0x2b,%al
417d18:	74 04                	je     0x417d1e
417d1a:	3c 2d                	cmp    $0x2d,%al
417d1c:	75 07                	jne    0x417d25
417d1e:	b9 01 00 00 00       	mov    $0x1,%ecx
417d23:	eb 02                	jmp    0x417d27
417d25:	33 c9                	xor    %ecx,%ecx
417d27:	8b 47 14             	mov    0x14(%edi),%eax
417d2a:	25 00 0e 00 00       	and    $0xe00,%eax
417d2f:	89 4d b8             	mov    %ecx,-0x48(%ebp)
417d32:	3d 00 08 00 00       	cmp    $0x800,%eax
417d37:	75 1c                	jne    0x417d55
417d39:	8d 71 02             	lea    0x2(%ecx),%esi
417d3c:	3b f3                	cmp    %ebx,%esi
417d3e:	77 15                	ja     0x417d55
417d40:	80 3c 0a 30          	cmpb   $0x30,(%edx,%ecx,1)
417d44:	75 0f                	jne    0x417d55
417d46:	8a 44 0a 01          	mov    0x1(%edx,%ecx,1),%al
417d4a:	3c 78                	cmp    $0x78,%al
417d4c:	74 04                	je     0x417d52
417d4e:	3c 58                	cmp    $0x58,%al
417d50:	75 03                	jne    0x417d55
417d52:	89 75 b8             	mov    %esi,-0x48(%ebp)
417d55:	8b 47 30             	mov    0x30(%edi),%eax
417d58:	8b 78 04             	mov    0x4(%eax),%edi
417d5b:	89 7d b4             	mov    %edi,-0x4c(%ebp)
417d5e:	8b 07                	mov    (%edi),%eax
417d60:	8b 70 04             	mov    0x4(%eax),%esi
417d63:	8b ce                	mov    %esi,%ecx
417d65:	ff 15 d4 e2 49 00    	call   *0x49e2d4
417d6b:	8b cf                	mov    %edi,%ecx
417d6d:	ff d6                	call   *%esi
417d6f:	8d 45 b0             	lea    -0x50(%ebp),%eax
417d72:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
417d79:	50                   	push   %eax
417d7a:	e8 b1 c7 ff ff       	call   0x414530
417d7f:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
417d86:	83 c4 04             	add    $0x4,%esp
417d89:	8b 7d b4             	mov    -0x4c(%ebp),%edi
417d8c:	89 45 bc             	mov    %eax,-0x44(%ebp)
417d8f:	85 ff                	test   %edi,%edi
417d91:	74 29                	je     0x417dbc
417d93:	8b 07                	mov    (%edi),%eax
417d95:	8b 70 08             	mov    0x8(%eax),%esi
417d98:	8b ce                	mov    %esi,%ecx
417d9a:	ff 15 d4 e2 49 00    	call   *0x49e2d4
417da0:	8b cf                	mov    %edi,%ecx
417da2:	ff d6                	call   *%esi
417da4:	8b f8                	mov    %eax,%edi
417da6:	85 ff                	test   %edi,%edi
417da8:	74 12                	je     0x417dbc
417daa:	8b 07                	mov    (%edi),%eax
417dac:	6a 01                	push   $0x1
417dae:	8b 30                	mov    (%eax),%esi
417db0:	8b ce                	mov    %esi,%ecx
417db2:	ff 15 d4 e2 49 00    	call   *0x49e2d4
417db8:	8b cf                	mov    %edi,%ecx
417dba:	ff d6                	call   *%esi
417dbc:	6a 00                	push   $0x0
417dbe:	53                   	push   %ebx
417dbf:	8d 4d d8             	lea    -0x28(%ebp),%ecx
417dc2:	e8 e9 ee ff ff       	call   0x416cb0
417dc7:	8b 7d bc             	mov    -0x44(%ebp),%edi
417dca:	8d 45 d8             	lea    -0x28(%ebp),%eax
417dcd:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
417dd4:	8b 55 a8             	mov    -0x58(%ebp),%edx
417dd7:	83 7d ec 08          	cmpl   $0x8,-0x14(%ebp)
417ddb:	8b 0f                	mov    (%edi),%ecx
417ddd:	0f 43 45 d8          	cmovae -0x28(%ebp),%eax
417de1:	50                   	push   %eax
417de2:	8d 04 13             	lea    (%ebx,%edx,1),%eax
417de5:	8b 71 2c             	mov    0x2c(%ecx),%esi
417de8:	8b ce                	mov    %esi,%ecx
417dea:	50                   	push   %eax
417deb:	52                   	push   %edx
417dec:	ff 15 d4 e2 49 00    	call   *0x49e2d4
417df2:	8b cf                	mov    %edi,%ecx
417df4:	ff d6                	call   *%esi
417df6:	8b 55 ac             	mov    -0x54(%ebp),%edx
417df9:	8b 42 30             	mov    0x30(%edx),%eax
417dfc:	8b 78 04             	mov    0x4(%eax),%edi
417dff:	89 7d a8             	mov    %edi,-0x58(%ebp)
417e02:	8b 07                	mov    (%edi),%eax
417e04:	8b 70 04             	mov    0x4(%eax),%esi
417e07:	8b ce                	mov    %esi,%ecx
417e09:	ff 15 d4 e2 49 00    	call   *0x49e2d4
417e0f:	8b cf                	mov    %edi,%ecx
417e11:	ff d6                	call   *%esi
417e13:	8d 45 a4             	lea    -0x5c(%ebp),%eax
417e16:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
417e1a:	50                   	push   %eax
417e1b:	e8 10 11 00 00       	call   0x418f30
417e20:	8b f8                	mov    %eax,%edi
417e22:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
417e26:	8b 45 a8             	mov    -0x58(%ebp),%eax
417e29:	83 c4 04             	add    $0x4,%esp
417e2c:	89 7d bc             	mov    %edi,-0x44(%ebp)
417e2f:	85 c0                	test   %eax,%eax
417e31:	74 2d                	je     0x417e60
417e33:	8b 00                	mov    (%eax),%eax
417e35:	8b 70 08             	mov    0x8(%eax),%esi
417e38:	8b ce                	mov    %esi,%ecx
417e3a:	ff 15 d4 e2 49 00    	call   *0x49e2d4
417e40:	8b 4d a8             	mov    -0x58(%ebp),%ecx
417e43:	ff d6                	call   *%esi
417e45:	8b f8                	mov    %eax,%edi
417e47:	85 ff                	test   %edi,%edi
417e49:	74 12                	je     0x417e5d
417e4b:	8b 07                	mov    (%edi),%eax
417e4d:	6a 01                	push   $0x1
417e4f:	8b 30                	mov    (%eax),%esi
417e51:	8b ce                	mov    %esi,%ecx
417e53:	ff 15 d4 e2 49 00    	call   *0x49e2d4
417e59:	8b cf                	mov    %edi,%ecx
417e5b:	ff d6                	call   *%esi
417e5d:	8b 7d bc             	mov    -0x44(%ebp),%edi
417e60:	8b 07                	mov    (%edi),%eax
417e62:	8d 4d c0             	lea    -0x40(%ebp),%ecx
417e65:	51                   	push   %ecx
417e66:	8b 70 14             	mov    0x14(%eax),%esi
417e69:	8b ce                	mov    %esi,%ecx
417e6b:	ff 15 d4 e2 49 00    	call   *0x49e2d4
417e71:	8b cf                	mov    %edi,%ecx
417e73:	ff d6                	call   *%esi
417e75:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
417e79:	8d 7d c0             	lea    -0x40(%ebp),%edi
417e7c:	83 7d d4 10          	cmpl   $0x10,-0x2c(%ebp)
417e80:	0f 43 7d c0          	cmovae -0x40(%ebp),%edi
417e84:	8a 07                	mov    (%edi),%al
417e86:	3c 7f                	cmp    $0x7f,%al
417e88:	0f 84 be 00 00 00    	je     0x417f4c
417e8e:	84 c0                	test   %al,%al
417e90:	0f 8e b6 00 00 00    	jle    0x417f4c
417e96:	8b 45 bc             	mov    -0x44(%ebp),%eax
417e99:	8b 00                	mov    (%eax),%eax
417e9b:	8b 70 10             	mov    0x10(%eax),%esi
417e9e:	8b ce                	mov    %esi,%ecx
417ea0:	ff 15 d4 e2 49 00    	call   *0x49e2d4
417ea6:	8b 4d bc             	mov    -0x44(%ebp),%ecx
417ea9:	ff d6                	call   *%esi
417eab:	0f b7 f0             	movzwl %ax,%esi
417eae:	8a 07                	mov    (%edi),%al
417eb0:	89 75 bc             	mov    %esi,-0x44(%ebp)
417eb3:	3c 7f                	cmp    $0x7f,%al
417eb5:	0f 84 91 00 00 00    	je     0x417f4c
417ebb:	0f 1f 44 00 00       	nopl   0x0(%eax,%eax,1)
417ec0:	8b 55 b8             	mov    -0x48(%ebp),%edx
417ec3:	84 c0                	test   %al,%al
417ec5:	0f 8e 84 00 00 00    	jle    0x417f4f
417ecb:	0f be c8             	movsbl %al,%ecx
417ece:	8b c3                	mov    %ebx,%eax
417ed0:	2b c2                	sub    %edx,%eax
417ed2:	3b c8                	cmp    %eax,%ecx
417ed4:	73 79                	jae    0x417f4f
417ed6:	2b d9                	sub    %ecx,%ebx
417ed8:	8b 4d e8             	mov    -0x18(%ebp),%ecx
417edb:	3b cb                	cmp    %ebx,%ecx
417edd:	0f 82 3d 02 00 00    	jb     0x418120
417ee3:	8b 55 ec             	mov    -0x14(%ebp),%edx
417ee6:	8b c2                	mov    %edx,%eax
417ee8:	2b c1                	sub    %ecx,%eax
417eea:	83 f8 01             	cmp    $0x1,%eax
417eed:	72 34                	jb     0x417f23
417eef:	8d 41 01             	lea    0x1(%ecx),%eax
417ef2:	83 fa 08             	cmp    $0x8,%edx
417ef5:	89 45 e8             	mov    %eax,-0x18(%ebp)
417ef8:	8d 45 d8             	lea    -0x28(%ebp),%eax
417efb:	0f 43 45 d8          	cmovae -0x28(%ebp),%eax
417eff:	2b cb                	sub    %ebx,%ecx
417f01:	8d 34 58             	lea    (%eax,%ebx,2),%esi
417f04:	8d 04 4d 02 00 00 00 	lea    0x2(,%ecx,2),%eax
417f0b:	50                   	push   %eax
417f0c:	8d 46 02             	lea    0x2(%esi),%eax
417f0f:	56                   	push   %esi
417f10:	50                   	push   %eax
417f11:	e8 0a 37 05 00       	call   0x46b620
417f16:	8b 45 bc             	mov    -0x44(%ebp),%eax
417f19:	83 c4 0c             	add    $0xc,%esp
417f1c:	66 89 06             	mov    %ax,(%esi)
417f1f:	8b f0                	mov    %eax,%esi
417f21:	eb 15                	jmp    0x417f38
417f23:	56                   	push   %esi
417f24:	6a 01                	push   $0x1
417f26:	53                   	push   %ebx
417f27:	c6 45 a8 00          	movb   $0x0,-0x58(%ebp)
417f2b:	8d 4d d8             	lea    -0x28(%ebp),%ecx
417f2e:	ff 75 a8             	push   -0x58(%ebp)
417f31:	6a 01                	push   $0x1
417f33:	e8 38 11 00 00       	call   0x419070
417f38:	80 7f 01 00          	cmpb   $0x0,0x1(%edi)
417f3c:	8d 47 01             	lea    0x1(%edi),%eax
417f3f:	0f 4f f8             	cmovg  %eax,%edi
417f42:	8a 07                	mov    (%edi),%al
417f44:	3c 7f                	cmp    $0x7f,%al
417f46:	0f 85 74 ff ff ff    	jne    0x417ec0
417f4c:	8b 55 b8             	mov    -0x48(%ebp),%edx
417f4f:	8b 45 ac             	mov    -0x54(%ebp),%eax
417f52:	8b 4d e8             	mov    -0x18(%ebp),%ecx
417f55:	89 4d bc             	mov    %ecx,-0x44(%ebp)
417f58:	83 78 24 00          	cmpl   $0x0,0x24(%eax)
417f5c:	8b 78 20             	mov    0x20(%eax),%edi
417f5f:	7c 0e                	jl     0x417f6f
417f61:	7f 04                	jg     0x417f67
417f63:	85 ff                	test   %edi,%edi
417f65:	74 08                	je     0x417f6f
417f67:	3b f9                	cmp    %ecx,%edi
417f69:	76 04                	jbe    0x417f6f
417f6b:	2b f9                	sub    %ecx,%edi
417f6d:	eb 02                	jmp    0x417f71
417f6f:	33 ff                	xor    %edi,%edi
417f71:	8b 40 14             	mov    0x14(%eax),%eax
417f74:	8b 75 1c             	mov    0x1c(%ebp),%esi
417f77:	25 c0 01 00 00       	and    $0x1c0,%eax
417f7c:	8b 5d 08             	mov    0x8(%ebp),%ebx
417f7f:	83 f8 40             	cmp    $0x40,%eax
417f82:	0f 84 84 00 00 00    	je     0x41800c
417f88:	3d 00 01 00 00       	cmp    $0x100,%eax
417f8d:	74 40                	je     0x417fcf
417f8f:	57                   	push   %edi
417f90:	56                   	push   %esi
417f91:	ff 75 14             	push   0x14(%ebp)
417f94:	8d 45 b0             	lea    -0x50(%ebp),%eax
417f97:	ff 75 10             	push   0x10(%ebp)
417f9a:	50                   	push   %eax
417f9b:	53                   	push   %ebx
417f9c:	e8 0f fc ff ff       	call   0x417bb0
417fa1:	8b 75 b8             	mov    -0x48(%ebp),%esi
417fa4:	33 ff                	xor    %edi,%edi
417fa6:	83 7d ec 08          	cmpl   $0x8,-0x14(%ebp)
417faa:	56                   	push   %esi
417fab:	8b 10                	mov    (%eax),%edx
417fad:	8b 48 04             	mov    0x4(%eax),%ecx
417fb0:	8d 45 d8             	lea    -0x28(%ebp),%eax
417fb3:	0f 43 45 d8          	cmovae -0x28(%ebp),%eax
417fb7:	50                   	push   %eax
417fb8:	51                   	push   %ecx
417fb9:	52                   	push   %edx
417fba:	8d 45 b0             	lea    -0x50(%ebp),%eax
417fbd:	89 55 10             	mov    %edx,0x10(%ebp)
417fc0:	50                   	push   %eax
417fc1:	53                   	push   %ebx
417fc2:	89 4d 14             	mov    %ecx,0x14(%ebp)
417fc5:	e8 66 fc ff ff       	call   0x417c30
417fca:	83 c4 30             	add    $0x30,%esp
417fcd:	eb 60                	jmp    0x41802f
417fcf:	83 7d ec 08          	cmpl   $0x8,-0x14(%ebp)
417fd3:	8d 45 d8             	lea    -0x28(%ebp),%eax
417fd6:	52                   	push   %edx
417fd7:	0f 43 45 d8          	cmovae -0x28(%ebp),%eax
417fdb:	50                   	push   %eax
417fdc:	ff 75 14             	push   0x14(%ebp)