5e1d63:	e8 18 ff ff ff       	call   0x5e1c80
5e1d68:	85 c0                	test   %eax,%eax
5e1d6a:	75 20                	jne    0x5e1d8c
5e1d6c:	ff 77 0c             	push   0xc(%edi)
5e1d6f:	ff 77 08             	push   0x8(%edi)
5e1d72:	6a ff                	push   $0xffffffff
5e1d74:	56                   	push   %esi
5e1d75:	6a 09                	push   $0x9
5e1d77:	ff 75 14             	push   0x14(%ebp)
5e1d7a:	e8 c2 cd 00 00       	call   0x5eeb41
5e1d7f:	83 c4 18             	add    $0x18,%esp
5e1d82:	85 c0                	test   %eax,%eax
5e1d84:	74 bc                	je     0x5e1d42
5e1d86:	48                   	dec    %eax
5e1d87:	89 47 10             	mov    %eax,0x10(%edi)
5e1d8a:	33 c0                	xor    %eax,%eax
5e1d8c:	5f                   	pop    %edi
5e1d8d:	5e                   	pop    %esi
5e1d8e:	5d                   	pop    %ebp
5e1d8f:	c3                   	ret
5e1d90:	8b ff                	mov    %edi,%edi
5e1d92:	55                   	push   %ebp
5e1d93:	8b ec                	mov    %esp,%ebp
5e1d95:	51                   	push   %ecx
5e1d96:	ff 75 10             	push   0x10(%ebp)
5e1d99:	8d 45 ff             	lea    -0x1(%ebp),%eax
5e1d9c:	50                   	push   %eax
5e1d9d:	ff 75 0c             	push   0xc(%ebp)
5e1da0:	ff 75 08             	push   0x8(%ebp)
5e1da3:	e8 36 ff ff ff       	call   0x5e1cde
5e1da8:	83 c4 10             	add    $0x10,%esp
5e1dab:	c9                   	leave
5e1dac:	c3                   	ret
5e1dad:	6a 10                	push   $0x10
5e1daf:	68 b0 a6 68 00       	push   $0x68a6b0
5e1db4:	e8 47 0b ff ff       	call   0x5d2900
5e1db9:	8b 75 18             	mov    0x18(%ebp),%esi
5e1dbc:	85 f6                	test   %esi,%esi
5e1dbe:	75 13                	jne    0x5e1dd3
5e1dc0:	e8 c3 8e ff ff       	call   0x5dac88
5e1dc5:	6a 16                	push   $0x16
5e1dc7:	5e                   	pop    %esi
5e1dc8:	89 30                	mov    %esi,(%eax)
5e1dca:	e8 11 44 ff ff       	call   0x5d61e0
5e1dcf:	8b c6                	mov    %esi,%eax
5e1dd1:	eb 59                	jmp    0x5e1e2c
5e1dd3:	83 0e ff             	orl    $0xffffffff,(%esi)
5e1dd6:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
5e1dda:	74 e4                	je     0x5e1dc0
5e1ddc:	83 7d 1c 00          	cmpl   $0x0,0x1c(%ebp)
5e1de0:	74 09                	je     0x5e1deb
5e1de2:	f7 45 14 7f fe ff ff 	testl  $0xfffffe7f,0x14(%ebp)
5e1de9:	75 d5                	jne    0x5e1dc0
5e1deb:	33 c0                	xor    %eax,%eax
5e1ded:	89 45 e0             	mov    %eax,-0x20(%ebp)
5e1df0:	89 45 e4             	mov    %eax,-0x1c(%ebp)
5e1df3:	89 45 fc             	mov    %eax,-0x4(%ebp)
5e1df6:	ff 75 1c             	push   0x1c(%ebp)
5e1df9:	ff 75 14             	push   0x14(%ebp)
5e1dfc:	ff 75 10             	push   0x10(%ebp)
5e1dff:	ff 75 0c             	push   0xc(%ebp)
5e1e02:	ff 75 08             	push   0x8(%ebp)
5e1e05:	56                   	push   %esi
5e1e06:	8d 45 e0             	lea    -0x20(%ebp),%eax
5e1e09:	50                   	push   %eax
5e1e0a:	e8 63 06 00 00       	call   0x5e2472
5e1e0f:	83 c4 1c             	add    $0x1c,%esp
5e1e12:	8b f8                	mov    %eax,%edi
5e1e14:	89 7d e4             	mov    %edi,-0x1c(%ebp)
5e1e17:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
5e1e1e:	e8 1f 00 00 00       	call   0x5e1e42
5e1e23:	85 ff                	test   %edi,%edi
5e1e25:	74 03                	je     0x5e1e2a
5e1e27:	83 0e ff             	orl    $0xffffffff,(%esi)
5e1e2a:	8b c7                	mov    %edi,%eax
5e1e2c:	8b 4d f0             	mov    -0x10(%ebp),%ecx
5e1e2f:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
5e1e36:	59                   	pop    %ecx
5e1e37:	5f                   	pop    %edi
5e1e38:	5e                   	pop    %esi
5e1e39:	5b                   	pop    %ebx
5e1e3a:	c9                   	leave
5e1e3b:	c3                   	ret
5e1e3c:	8b 75 18             	mov    0x18(%ebp),%esi
5e1e3f:	8b 7d e4             	mov    -0x1c(%ebp),%edi
5e1e42:	83 7d e0 00          	cmpl   $0x0,-0x20(%ebp)
5e1e46:	74 3f                	je     0x5e1e87
5e1e48:	85 ff                	test   %edi,%edi
5e1e4a:	74 33                	je     0x5e1e7f
5e1e4c:	8b 16                	mov    (%esi),%edx
5e1e4e:	c1 fa 06             	sar    $0x6,%edx
5e1e51:	8b 06                	mov    (%esi),%eax
5e1e53:	83 e0 3f             	and    $0x3f,%eax
5e1e56:	6b c8 38             	imul   $0x38,%eax,%ecx
5e1e59:	8b 04 95 a8 70 71 00 	mov    0x7170a8(,%edx,4),%eax
5e1e60:	8a 5c 08 28          	mov    0x28(%eax,%ecx,1),%bl
5e1e64:	80 e3 fe             	and    $0xfe,%bl
5e1e67:	8b 16                	mov    (%esi),%edx
5e1e69:	c1 fa 06             	sar    $0x6,%edx
5e1e6c:	8b 06                	mov    (%esi),%eax
5e1e6e:	83 e0 3f             	and    $0x3f,%eax
5e1e71:	6b c8 38             	imul   $0x38,%eax,%ecx
5e1e74:	8b 04 95 a8 70 71 00 	mov    0x7170a8(,%edx,4),%eax
5e1e7b:	88 5c 08 28          	mov    %bl,0x28(%eax,%ecx,1)
5e1e7f:	ff 36                	push   (%esi)
5e1e81:	e8 e8 ce 00 00       	call   0x5eed6e
5e1e86:	59                   	pop    %ecx
5e1e87:	c3                   	ret
5e1e88:	6a 10                	push   $0x10
5e1e8a:	68 d0 a6 68 00       	push   $0x68a6d0
5e1e8f:	e8 6c 0a ff ff       	call   0x5d2900
5e1e94:	8b 75 18             	mov    0x18(%ebp),%esi
5e1e97:	85 f6                	test   %esi,%esi
5e1e99:	75 13                	jne    0x5e1eae
5e1e9b:	e8 e8 8d ff ff       	call   0x5dac88
5e1ea0:	6a 16                	push   $0x16
5e1ea2:	5e                   	pop    %esi
5e1ea3:	89 30                	mov    %esi,(%eax)
5e1ea5:	e8 36 43 ff ff       	call   0x5d61e0
5e1eaa:	8b c6                	mov    %esi,%eax
5e1eac:	eb 59                	jmp    0x5e1f07
5e1eae:	83 0e ff             	orl    $0xffffffff,(%esi)
5e1eb1:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
5e1eb5:	74 e4                	je     0x5e1e9b
5e1eb7:	83 7d 1c 00          	cmpl   $0x0,0x1c(%ebp)
5e1ebb:	74 09                	je     0x5e1ec6
5e1ebd:	f7 45 14 7f fe ff ff 	testl  $0xfffffe7f,0x14(%ebp)
5e1ec4:	75 d5                	jne    0x5e1e9b
5e1ec6:	33 c0                	xor    %eax,%eax
5e1ec8:	89 45 e0             	mov    %eax,-0x20(%ebp)
5e1ecb:	89 45 e4             	mov    %eax,-0x1c(%ebp)
5e1ece:	89 45 fc             	mov    %eax,-0x4(%ebp)
5e1ed1:	ff 75 1c             	push   0x1c(%ebp)
5e1ed4:	ff 75 14             	push   0x14(%ebp)
5e1ed7:	ff 75 10             	push   0x10(%ebp)
5e1eda:	ff 75 0c             	push   0xc(%ebp)
5e1edd:	ff 75 08             	push   0x8(%ebp)
5e1ee0:	56                   	push   %esi
5e1ee1:	8d 45 e0             	lea    -0x20(%ebp),%eax
5e1ee4:	50                   	push   %eax
5e1ee5:	e8 16 06 00 00       	call   0x5e2500
5e1eea:	83 c4 1c             	add    $0x1c,%esp
5e1eed:	8b f8                	mov    %eax,%edi
5e1eef:	89 7d e4             	mov    %edi,-0x1c(%ebp)
5e1ef2:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
5e1ef9:	e8 1f 00 00 00       	call   0x5e1f1d
5e1efe:	85 ff                	test   %edi,%edi
5e1f00:	74 03                	je     0x5e1f05
5e1f02:	83 0e ff             	orl    $0xffffffff,(%esi)
5e1f05:	8b c7                	mov    %edi,%eax
5e1f07:	8b 4d f0             	mov    -0x10(%ebp),%ecx
5e1f0a:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
5e1f11:	59                   	pop    %ecx
5e1f12:	5f                   	pop    %edi
5e1f13:	5e                   	pop    %esi
5e1f14:	5b                   	pop    %ebx
5e1f15:	c9                   	leave
5e1f16:	c3                   	ret
5e1f17:	8b 75 18             	mov    0x18(%ebp),%esi
5e1f1a:	8b 7d e4             	mov    -0x1c(%ebp),%edi
5e1f1d:	83 7d e0 00          	cmpl   $0x0,-0x20(%ebp)
5e1f21:	74 3f                	je     0x5e1f62
5e1f23:	85 ff                	test   %edi,%edi
5e1f25:	74 33                	je     0x5e1f5a
5e1f27:	8b 16                	mov    (%esi),%edx
5e1f29:	c1 fa 06             	sar    $0x6,%edx
5e1f2c:	8b 06                	mov    (%esi),%eax
5e1f2e:	83 e0 3f             	and    $0x3f,%eax
5e1f31:	6b c8 38             	imul   $0x38,%eax,%ecx
5e1f34:	8b 04 95 a8 70 71 00 	mov    0x7170a8(,%edx,4),%eax
5e1f3b:	8a 5c 08 28          	mov    0x28(%eax,%ecx,1),%bl
5e1f3f:	80 e3 fe             	and    $0xfe,%bl
5e1f42:	8b 16                	mov    (%esi),%edx
5e1f44:	c1 fa 06             	sar    $0x6,%edx
5e1f47:	8b 06                	mov    (%esi),%eax
5e1f49:	83 e0 3f             	and    $0x3f,%eax
5e1f4c:	6b c8 38             	imul   $0x38,%eax,%ecx
5e1f4f:	8b 04 95 a8 70 71 00 	mov    0x7170a8(,%edx,4),%eax
5e1f56:	88 5c 08 28          	mov    %bl,0x28(%eax,%ecx,1)
5e1f5a:	ff 36                	push   (%esi)
5e1f5c:	e8 0d ce 00 00       	call   0x5eed6e
5e1f61:	59                   	pop    %ecx
5e1f62:	c3                   	ret
5e1f63:	8b ff                	mov    %edi,%edi
5e1f65:	55                   	push   %ebp
5e1f66:	8b ec                	mov    %esp,%ebp
5e1f68:	51                   	push   %ecx
5e1f69:	51                   	push   %ecx
5e1f6a:	8b 45 08             	mov    0x8(%ebp),%eax
5e1f6d:	8b 55 08             	mov    0x8(%ebp),%edx
5e1f70:	83 e0 3f             	and    $0x3f,%eax
5e1f73:	53                   	push   %ebx
5e1f74:	56                   	push   %esi
5e1f75:	57                   	push   %edi
5e1f76:	8b 7d 28             	mov    0x28(%ebp),%edi
5e1f79:	33 db                	xor    %ebx,%ebx
5e1f7b:	c1 fa 06             	sar    $0x6,%edx
5e1f7e:	6b c8 38             	imul   $0x38,%eax,%ecx
5e1f81:	88 1f                	mov    %bl,(%edi)
5e1f83:	8b 04 95 a8 70 71 00 	mov    0x7170a8(,%edx,4),%eax
5e1f8a:	38 5c 08 28          	cmp    %bl,0x28(%eax,%ecx,1)
5e1f8e:	0f 8d 13 02 00 00    	jge    0x5e21a7
5e1f94:	8b 75 24             	mov    0x24(%ebp),%esi
5e1f97:	f7 c6 00 40 07 00    	test   $0x74000,%esi
5e1f9d:	75 25                	jne    0x5e1fc4
5e1f9f:	8d 45 fc             	lea    -0x4(%ebp),%eax
5e1fa2:	89 5d fc             	mov    %ebx,-0x4(%ebp)
5e1fa5:	50                   	push   %eax
5e1fa6:	e8 e5 1b 00 00       	call   0x5e3b90
5e1fab:	59                   	pop    %ecx
5e1fac:	85 c0                	test   %eax,%eax
5e1fae:	0f 85 fa 01 00 00    	jne    0x5e21ae
5e1fb4:	8b 45 fc             	mov    -0x4(%ebp),%eax
5e1fb7:	25 00 40 07 00       	and    $0x74000,%eax
5e1fbc:	75 49                	jne    0x5e2007
5e1fbe:	81 ce 00 40 00 00    	or     $0x4000,%esi
5e1fc4:	8b c6                	mov    %esi,%eax
5e1fc6:	6a 02                	push   $0x2
5e1fc8:	25 00 40 07 00       	and    $0x74000,%eax
5e1fcd:	59                   	pop    %ecx
5e1fce:	89 4d f8             	mov    %ecx,-0x8(%ebp)
5e1fd1:	3d 00 40 00 00       	cmp    $0x4000,%eax
5e1fd6:	74 44                	je     0x5e201c
5e1fd8:	3d 00 00 01 00       	cmp    $0x10000,%eax
5e1fdd:	74 2c                	je     0x5e200b
5e1fdf:	3d 00 40 01 00       	cmp    $0x14000,%eax
5e1fe4:	74 25                	je     0x5e200b
5e1fe6:	3d 00 00 02 00       	cmp    $0x20000,%eax
5e1feb:	74 2b                	je     0x5e2018
5e1fed:	3d 00 40 02 00       	cmp    $0x24000,%eax
5e1ff2:	74 24                	je     0x5e2018
5e1ff4:	3d 00 00 04 00       	cmp    $0x40000,%eax
5e1ff9:	74 07                	je     0x5e2002
5e1ffb:	3d 00 40 04 00       	cmp    $0x44000,%eax
5e2000:	75 1c                	jne    0x5e201e
5e2002:	c6 07 01             	movb   $0x1,(%edi)
5e2005:	eb 17                	jmp    0x5e201e
5e2007:	0b f0                	or     %eax,%esi
5e2009:	eb b9                	jmp    0x5e1fc4
5e200b:	ba 01 03 00 00       	mov    $0x301,%edx
5e2010:	8b c6                	mov    %esi,%eax
5e2012:	23 c2                	and    %edx,%eax
5e2014:	3b c2                	cmp    %edx,%eax
5e2016:	75 06                	jne    0x5e201e
5e2018:	88 0f                	mov    %cl,(%edi)
5e201a:	eb 02                	jmp    0x5e201e
5e201c:	88 1f                	mov    %bl,(%edi)
5e201e:	f7 c6 00 00 07 00    	test   $0x70000,%esi
5e2024:	0f 84 7d 01 00 00    	je     0x5e21a7
5e202a:	f6 45 0c 40          	testb  $0x40,0xc(%ebp)
5e202e:	0f 85 73 01 00 00    	jne    0x5e21a7
5e2034:	8b 45 10             	mov    0x10(%ebp),%eax
5e2037:	ba 00 00 00 c0       	mov    $0xc0000000,%edx
5e203c:	23 c2                	and    %edx,%eax
5e203e:	be 00 00 00 80       	mov    $0x80000000,%esi
5e2043:	3d 00 00 00 40       	cmp    $0x40000000,%eax
5e2048:	74 0c                	je     0x5e2056
5e204a:	3b c6                	cmp    %esi,%eax
5e204c:	74 75                	je     0x5e20c3
5e204e:	3b c2                	cmp    %edx,%eax
5e2050:	0f 85 51 01 00 00    	jne    0x5e21a7
5e2056:	8b 45 14             	mov    0x14(%ebp),%eax
5e2059:	83 e8 01             	sub    $0x1,%eax
5e205c:	0f 84 fa 00 00 00    	je     0x5e215c
5e2062:	83 e8 01             	sub    $0x1,%eax
5e2065:	0f 84 f1 00 00 00    	je     0x5e215c
5e206b:	83 e8 01             	sub    $0x1,%eax
5e206e:	74 13                	je     0x5e2083
5e2070:	83 e8 01             	sub    $0x1,%eax
5e2073:	74 0e                	je     0x5e2083
5e2075:	83 e8 01             	sub    $0x1,%eax
5e2078:	0f 84 de 00 00 00    	je     0x5e215c
5e207e:	e9 24 01 00 00       	jmp    0x5e21a7
5e2083:	51                   	push   %ecx
5e2084:	53                   	push   %ebx
5e2085:	53                   	push   %ebx
5e2086:	ff 75 08             	push   0x8(%ebp)
5e2089:	e8 32 d3 00 00       	call   0x5ef3c0
5e208e:	83 c4 10             	add    $0x10,%esp
5e2091:	0b c2                	or     %edx,%eax
5e2093:	0f 84 c0 00 00 00    	je     0x5e2159
5e2099:	53                   	push   %ebx
5e209a:	53                   	push   %ebx
5e209b:	53                   	push   %ebx
5e209c:	ff 75 08             	push   0x8(%ebp)
5e209f:	e8 1c d3 00 00       	call   0x5ef3c0
5e20a4:	23 c2                	and    %edx,%eax
5e20a6:	83 c4 10             	add    $0x10,%esp
5e20a9:	83 f8 ff             	cmp    $0xffffffff,%eax
5e20ac:	75 0c                	jne    0x5e20ba
5e20ae:	e8 d5 8b ff ff       	call   0x5dac88
5e20b3:	8b 00                	mov    (%eax),%eax
5e20b5:	e9 ef 00 00 00       	jmp    0x5e21a9
5e20ba:	85 75 10             	test   %esi,0x10(%ebp)
5e20bd:	0f 84 e4 00 00 00    	je     0x5e21a7
5e20c3:	6a 03                	push   $0x3
5e20c5:	8d 45 fc             	lea    -0x4(%ebp),%eax
5e20c8:	89 5d fc             	mov    %ebx,-0x4(%ebp)
5e20cb:	50                   	push   %eax
5e20cc:	ff 75 08             	push   0x8(%ebp)
5e20cf:	e8 31 17 00 00       	call   0x5e3805
5e20d4:	8b c8                	mov    %eax,%ecx
5e20d6:	83 c4 0c             	add    $0xc,%esp
5e20d9:	85 c9                	test   %ecx,%ecx
5e20db:	7f 05                	jg     0x5e20e2
5e20dd:	83 f9 ff             	cmp    $0xffffffff,%ecx
5e20e0:	74 cc                	je     0x5e20ae
5e20e2:	8b 55 fc             	mov    -0x4(%ebp),%edx
5e20e5:	6a 02                	push   $0x2
5e20e7:	58                   	pop    %eax
5e20e8:	3b c8                	cmp    %eax,%ecx
5e20ea:	74 15                	je     0x5e2101
5e20ec:	83 f9 03             	cmp    $0x3,%ecx
5e20ef:	75 4e                	jne    0x5e213f
5e20f1:	81 fa ef bb bf 00    	cmp    $0xbfbbef,%edx
5e20f7:	75 08                	jne    0x5e2101
5e20f9:	c6 07 01             	movb   $0x1,(%edi)
5e20fc:	e9 a6 00 00 00       	jmp    0x5e21a7
5e2101:	0f b7 ca             	movzwl %dx,%ecx
5e2104:	81 f9 fe ff 00 00    	cmp    $0xfffe,%ecx
5e210a:	75 0d                	jne    0x5e2119
5e210c:	e8 77 8b ff ff       	call   0x5dac88
5e2111:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
5e2117:	eb 95                	jmp    0x5e20ae
5e2119:	81 f9 ff fe 00 00    	cmp    $0xfeff,%ecx
5e211f:	75 1e                	jne    0x5e213f
5e2121:	53                   	push   %ebx
5e2122:	53                   	push   %ebx
5e2123:	50                   	push   %eax
5e2124:	ff 75 08             	push   0x8(%ebp)
5e2127:	e8 94 d2 00 00       	call   0x5ef3c0
5e212c:	23 c2                	and    %edx,%eax
5e212e:	83 c4 10             	add    $0x10,%esp
5e2131:	83 f8 ff             	cmp    $0xffffffff,%eax
5e2134:	0f 84 74 ff ff ff    	je     0x5e20ae
5e213a:	c6 07 02             	movb   $0x2,(%edi)
5e213d:	eb 68                	jmp    0x5e21a7
5e213f:	53                   	push   %ebx
5e2140:	53                   	push   %ebx
5e2141:	53                   	push   %ebx
5e2142:	ff 75 08             	push   0x8(%ebp)
5e2145:	e8 76 d2 00 00       	call   0x5ef3c0
5e214a:	23 c2                	and    %edx,%eax
5e214c:	83 c4 10             	add    $0x10,%esp
5e214f:	83 f8 ff             	cmp    $0xffffffff,%eax
5e2152:	75 53                	jne    0x5e21a7
5e2154:	e9 55 ff ff ff       	jmp    0x5e20ae
5e2159:	6a 02                	push   $0x2
5e215b:	59                   	pop    %ecx
5e215c:	0f be 07             	movsbl (%edi),%eax