414c8b:	75 16                	jne    0x414ca3
414c8d:	81 f9 00 d8 00 00    	cmp    $0xd800,%ecx
414c93:	72 08                	jb     0x414c9d
414c95:	81 f9 ff df 00 00    	cmp    $0xdfff,%ecx
414c9b:	76 43                	jbe    0x414ce0
414c9d:	6a 02                	push   $0x2
414c9f:	b3 e0                	mov    $0xe0,%bl
414ca1:	eb 14                	jmp    0x414cb7
414ca3:	f7 c1 00 00 e0 ff    	test   $0xffe00000,%ecx
414ca9:	75 35                	jne    0x414ce0
414cab:	81 f9 ff ff 10 00    	cmp    $0x10ffff,%ecx
414cb1:	77 2d                	ja     0x414ce0
414cb3:	6a 03                	push   $0x3
414cb5:	b3 f0                	mov    $0xf0,%bl
414cb7:	5e                   	pop    %esi
414cb8:	57                   	push   %edi
414cb9:	8b fe                	mov    %esi,%edi
414cbb:	8a c1                	mov    %cl,%al
414cbd:	c1 e9 06             	shr    $0x6,%ecx
414cc0:	24 3f                	and    $0x3f,%al
414cc2:	0c 80                	or     $0x80,%al
414cc4:	88 04 17             	mov    %al,(%edi,%edx,1)
414cc7:	83 ef 01             	sub    $0x1,%edi
414cca:	75 ef                	jne    0x414cbb
414ccc:	8b 45 10             	mov    0x10(%ebp),%eax
414ccf:	0a cb                	or     %bl,%cl
414cd1:	88 0a                	mov    %cl,(%edx)
414cd3:	33 c9                	xor    %ecx,%ecx
414cd5:	5f                   	pop    %edi
414cd6:	89 08                	mov    %ecx,(%eax)
414cd8:	89 48 04             	mov    %ecx,0x4(%eax)
414cdb:	8d 46 01             	lea    0x1(%esi),%eax
414cde:	eb 09                	jmp    0x414ce9
414ce0:	ff 75 10             	push   0x10(%ebp)
414ce3:	e8 05 00 00 00       	call   0x414ced
414ce8:	59                   	pop    %ecx
414ce9:	5e                   	pop    %esi
414cea:	5b                   	pop    %ebx
414ceb:	5d                   	pop    %ebp
414cec:	c3                   	ret
414ced:	8b ff                	mov    %edi,%edi
414cef:	55                   	push   %ebp
414cf0:	8b ec                	mov    %esp,%ebp
414cf2:	8b 45 08             	mov    0x8(%ebp),%eax
414cf5:	83 20 00             	andl   $0x0,(%eax)
414cf8:	83 60 04 00          	andl   $0x0,0x4(%eax)
414cfc:	e8 d2 9f ff ff       	call   0x40ecd3
414d01:	c7 00 2a 00 00 00    	movl   $0x2a,(%eax)
414d07:	83 c8 ff             	or     $0xffffffff,%eax
414d0a:	5d                   	pop    %ebp
414d0b:	c3                   	ret
414d0c:	8b ff                	mov    %edi,%edi
414d0e:	55                   	push   %ebp
414d0f:	8b ec                	mov    %esp,%ebp
414d11:	5d                   	pop    %ebp
414d12:	e9 2b ff ff ff       	jmp    0x414c42
414d17:	8b ff                	mov    %edi,%edi
414d19:	55                   	push   %ebp
414d1a:	8b ec                	mov    %esp,%ebp
414d1c:	83 7d 14 00          	cmpl   $0x0,0x14(%ebp)
414d20:	75 0b                	jne    0x414d2d
414d22:	8b 45 08             	mov    0x8(%ebp),%eax
414d25:	80 38 35             	cmpb   $0x35,(%eax)
414d28:	0f 9d c0             	setge  %al
414d2b:	5d                   	pop    %ebp
414d2c:	c3                   	ret
414d2d:	e8 dd 1a 00 00       	call   0x41680f
414d32:	85 c0                	test   %eax,%eax
414d34:	75 2b                	jne    0x414d61
414d36:	8b 55 08             	mov    0x8(%ebp),%edx
414d39:	8a 02                	mov    (%edx),%al
414d3b:	3c 35                	cmp    $0x35,%al
414d3d:	7f 0b                	jg     0x414d4a
414d3f:	7c 4c                	jl     0x414d8d
414d41:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
414d45:	8d 42 01             	lea    0x1(%edx),%eax
414d48:	75 05                	jne    0x414d4f
414d4a:	b0 01                	mov    $0x1,%al
414d4c:	5d                   	pop    %ebp
414d4d:	c3                   	ret
414d4e:	40                   	inc    %eax
414d4f:	8a 08                	mov    (%eax),%cl
414d51:	80 f9 30             	cmp    $0x30,%cl
414d54:	74 f8                	je     0x414d4e
414d56:	84 c9                	test   %cl,%cl
414d58:	75 f0                	jne    0x414d4a
414d5a:	8a 42 ff             	mov    -0x1(%edx),%al
414d5d:	24 01                	and    $0x1,%al
414d5f:	5d                   	pop    %ebp
414d60:	c3                   	ret
414d61:	3d 00 02 00 00       	cmp    $0x200,%eax
414d66:	75 10                	jne    0x414d78
414d68:	8b 45 08             	mov    0x8(%ebp),%eax
414d6b:	80 38 30             	cmpb   $0x30,(%eax)
414d6e:	74 1d                	je     0x414d8d
414d70:	83 7d 0c 2d          	cmpl   $0x2d,0xc(%ebp)
414d74:	74 17                	je     0x414d8d
414d76:	eb d2                	jmp    0x414d4a
414d78:	3d 00 01 00 00       	cmp    $0x100,%eax
414d7d:	75 0e                	jne    0x414d8d
414d7f:	8b 45 08             	mov    0x8(%ebp),%eax
414d82:	80 38 30             	cmpb   $0x30,(%eax)
414d85:	74 06                	je     0x414d8d
414d87:	83 7d 0c 2d          	cmpl   $0x2d,0xc(%ebp)
414d8b:	74 bd                	je     0x414d4a
414d8d:	32 c0                	xor    %al,%al
414d8f:	5d                   	pop    %ebp
414d90:	c3                   	ret
414d91:	8b ff                	mov    %edi,%edi
414d93:	55                   	push   %ebp
414d94:	8b ec                	mov    %esp,%ebp
414d96:	56                   	push   %esi
414d97:	57                   	push   %edi
414d98:	8b 7d 08             	mov    0x8(%ebp),%edi
414d9b:	85 ff                	test   %edi,%edi
414d9d:	75 16                	jne    0x414db5
414d9f:	e8 2f 9f ff ff       	call   0x40ecd3
414da4:	6a 16                	push   $0x16
414da6:	5e                   	pop    %esi
414da7:	89 30                	mov    %esi,(%eax)
414da9:	e8 68 9e ff ff       	call   0x40ec16
414dae:	8b c6                	mov    %esi,%eax
414db0:	e9 b4 00 00 00       	jmp    0x414e69
414db5:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
414db9:	53                   	push   %ebx
414dba:	76 26                	jbe    0x414de2
414dbc:	8b 4d 10             	mov    0x10(%ebp),%ecx
414dbf:	c6 07 00             	movb   $0x0,(%edi)
414dc2:	85 c9                	test   %ecx,%ecx
414dc4:	7e 04                	jle    0x414dca
414dc6:	8b c1                	mov    %ecx,%eax
414dc8:	eb 02                	jmp    0x414dcc
414dca:	33 c0                	xor    %eax,%eax
414dcc:	40                   	inc    %eax
414dcd:	39 45 0c             	cmp    %eax,0xc(%ebp)
414dd0:	77 09                	ja     0x414ddb
414dd2:	e8 fc 9e ff ff       	call   0x40ecd3
414dd7:	6a 22                	push   $0x22
414dd9:	eb 0e                	jmp    0x414de9
414ddb:	8b 5d 14             	mov    0x14(%ebp),%ebx
414dde:	85 db                	test   %ebx,%ebx
414de0:	75 13                	jne    0x414df5
414de2:	e8 ec 9e ff ff       	call   0x40ecd3
414de7:	6a 16                	push   $0x16
414de9:	5e                   	pop    %esi
414dea:	89 30                	mov    %esi,(%eax)
414dec:	e8 25 9e ff ff       	call   0x40ec16
414df1:	8b c6                	mov    %esi,%eax
414df3:	eb 73                	jmp    0x414e68
414df5:	8b 43 08             	mov    0x8(%ebx),%eax
414df8:	8d 77 01             	lea    0x1(%edi),%esi
414dfb:	c6 07 30             	movb   $0x30,(%edi)
414dfe:	eb 0f                	jmp    0x414e0f
414e00:	8a 10                	mov    (%eax),%dl
414e02:	84 d2                	test   %dl,%dl
414e04:	74 03                	je     0x414e09
414e06:	40                   	inc    %eax
414e07:	eb 02                	jmp    0x414e0b
414e09:	b2 30                	mov    $0x30,%dl
414e0b:	88 16                	mov    %dl,(%esi)
414e0d:	46                   	inc    %esi
414e0e:	49                   	dec    %ecx
414e0f:	85 c9                	test   %ecx,%ecx
414e11:	7f ed                	jg     0x414e00
414e13:	c6 06 00             	movb   $0x0,(%esi)
414e16:	78 25                	js     0x414e3d
414e18:	ff 75 1c             	push   0x1c(%ebp)
414e1b:	ff 75 18             	push   0x18(%ebp)
414e1e:	ff 33                	push   (%ebx)
414e20:	50                   	push   %eax
414e21:	e8 f1 fe ff ff       	call   0x414d17
414e26:	83 c4 10             	add    $0x10,%esp
414e29:	84 c0                	test   %al,%al
414e2b:	74 10                	je     0x414e3d
414e2d:	eb 03                	jmp    0x414e32
414e2f:	c6 06 30             	movb   $0x30,(%esi)
414e32:	4e                   	dec    %esi
414e33:	8a 06                	mov    (%esi),%al
414e35:	3c 39                	cmp    $0x39,%al
414e37:	74 f6                	je     0x414e2f
414e39:	fe c0                	inc    %al
414e3b:	88 06                	mov    %al,(%esi)
414e3d:	80 3f 31             	cmpb   $0x31,(%edi)
414e40:	75 05                	jne    0x414e47
414e42:	ff 43 04             	incl   0x4(%ebx)
414e45:	eb 1f                	jmp    0x414e66
414e47:	8d 77 01             	lea    0x1(%edi),%esi
414e4a:	8b ce                	mov    %esi,%ecx
414e4c:	8d 51 01             	lea    0x1(%ecx),%edx
414e4f:	8a 01                	mov    (%ecx),%al
414e51:	41                   	inc    %ecx
414e52:	84 c0                	test   %al,%al
414e54:	75 f9                	jne    0x414e4f
414e56:	2b ca                	sub    %edx,%ecx
414e58:	8d 41 01             	lea    0x1(%ecx),%eax
414e5b:	50                   	push   %eax
414e5c:	56                   	push   %esi
414e5d:	57                   	push   %edi
414e5e:	e8 6d 4d ff ff       	call   0x409bd0
414e63:	83 c4 0c             	add    $0xc,%esp
414e66:	33 c0                	xor    %eax,%eax
414e68:	5b                   	pop    %ebx
414e69:	5f                   	pop    %edi
414e6a:	5e                   	pop    %esi
414e6b:	5d                   	pop    %ebp
414e6c:	c3                   	ret
414e6d:	cc                   	int3
414e6e:	cc                   	int3
414e6f:	cc                   	int3
414e70:	8b ff                	mov    %edi,%edi
414e72:	55                   	push   %ebp
414e73:	8b ec                	mov    %esp,%ebp
414e75:	81 ec 1c 02 00 00    	sub    $0x21c,%esp
414e7b:	53                   	push   %ebx
414e7c:	8b 5d 08             	mov    0x8(%ebp),%ebx
414e7f:	56                   	push   %esi
414e80:	57                   	push   %edi
414e81:	8b 33                	mov    (%ebx),%esi
414e83:	85 f6                	test   %esi,%esi
414e85:	0f 84 72 04 00 00    	je     0x4152fd
414e8b:	8b 55 0c             	mov    0xc(%ebp),%edx
414e8e:	8b 02                	mov    (%edx),%eax
414e90:	89 45 cc             	mov    %eax,-0x34(%ebp)
414e93:	85 c0                	test   %eax,%eax
414e95:	0f 84 62 04 00 00    	je     0x4152fd
414e9b:	8d 78 ff             	lea    -0x1(%eax),%edi
414e9e:	8d 4e ff             	lea    -0x1(%esi),%ecx
414ea1:	89 4d f8             	mov    %ecx,-0x8(%ebp)
414ea4:	85 ff                	test   %edi,%edi
414ea6:	0f 85 2b 01 00 00    	jne    0x414fd7
414eac:	8b 52 04             	mov    0x4(%edx),%edx
414eaf:	89 55 f8             	mov    %edx,-0x8(%ebp)
414eb2:	83 fa 01             	cmp    $0x1,%edx
414eb5:	75 2f                	jne    0x414ee6
414eb7:	8b 73 04             	mov    0x4(%ebx),%esi
414eba:	8d 85 e8 fd ff ff    	lea    -0x218(%ebp),%eax
414ec0:	57                   	push   %edi
414ec1:	50                   	push   %eax
414ec2:	8d 4b 04             	lea    0x4(%ebx),%ecx
414ec5:	89 bd e4 fd ff ff    	mov    %edi,-0x21c(%ebp)
414ecb:	68 cc 01 00 00       	push   $0x1cc
414ed0:	51                   	push   %ecx
414ed1:	89 3b                	mov    %edi,(%ebx)
414ed3:	e8 e6 af ff ff       	call   0x40febe
414ed8:	83 c4 10             	add    $0x10,%esp
414edb:	8b c6                	mov    %esi,%eax
414edd:	33 d2                	xor    %edx,%edx
414edf:	5f                   	pop    %edi
414ee0:	5e                   	pop    %esi
414ee1:	5b                   	pop    %ebx
414ee2:	8b e5                	mov    %ebp,%esp
414ee4:	5d                   	pop    %ebp
414ee5:	c3                   	ret
414ee6:	85 c9                	test   %ecx,%ecx
414ee8:	75 40                	jne    0x414f2a
414eea:	8b 73 04             	mov    0x4(%ebx),%esi
414eed:	8d 85 e8 fd ff ff    	lea    -0x218(%ebp),%eax
414ef3:	51                   	push   %ecx
414ef4:	50                   	push   %eax
414ef5:	8d 7b 04             	lea    0x4(%ebx),%edi
414ef8:	89 8d e4 fd ff ff    	mov    %ecx,-0x21c(%ebp)
414efe:	68 cc 01 00 00       	push   $0x1cc
414f03:	57                   	push   %edi
414f04:	89 0b                	mov    %ecx,(%ebx)
414f06:	e8 b3 af ff ff       	call   0x40febe
414f0b:	33 d2                	xor    %edx,%edx
414f0d:	8b c6                	mov    %esi,%eax
414f0f:	f7 75 f8             	divl   -0x8(%ebp)
414f12:	83 c4 10             	add    $0x10,%esp
414f15:	33 c9                	xor    %ecx,%ecx
414f17:	3b ca                	cmp    %edx,%ecx
414f19:	89 17                	mov    %edx,(%edi)
414f1b:	1b c9                	sbb    %ecx,%ecx
414f1d:	5f                   	pop    %edi
414f1e:	f7 d9                	neg    %ecx
414f20:	33 d2                	xor    %edx,%edx
414f22:	5e                   	pop    %esi
414f23:	89 0b                	mov    %ecx,(%ebx)
414f25:	5b                   	pop    %ebx
414f26:	8b e5                	mov    %ebp,%esp
414f28:	5d                   	pop    %ebp
414f29:	c3                   	ret
414f2a:	33 ff                	xor    %edi,%edi
414f2c:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
414f33:	c7 45 dc 00 00 00 00 	movl   $0x0,-0x24(%ebp)
414f3a:	89 7d e8             	mov    %edi,-0x18(%ebp)
414f3d:	83 f9 ff             	cmp    $0xffffffff,%ecx
414f40:	74 4b                	je     0x414f8d
414f42:	41                   	inc    %ecx
414f43:	8d 0c 8b             	lea    (%ebx,%ecx,4),%ecx
414f46:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
414f49:	8d a4 24 00 00 00 00 	lea    0x0(%esp),%esp
414f50:	53                   	push   %ebx
414f51:	6a 00                	push   $0x0
414f53:	52                   	push   %edx
414f54:	33 c0                	xor    %eax,%eax
414f56:	0b 01                	or     (%ecx),%eax
414f58:	57                   	push   %edi
414f59:	50                   	push   %eax
414f5a:	e8 a1 42 00 00       	call   0x419200
414f5f:	89 5d e8             	mov    %ebx,-0x18(%ebp)
414f62:	5b                   	pop    %ebx
414f63:	90                   	nop
414f64:	89 55 c0             	mov    %edx,-0x40(%ebp)
414f67:	8b f9                	mov    %ecx,%edi
414f69:	8b 4d f4             	mov    -0xc(%ebp),%ecx
414f6c:	33 d2                	xor    %edx,%edx
414f6e:	03 d0                	add    %eax,%edx
414f70:	89 55 f4             	mov    %edx,-0xc(%ebp)
414f73:	8b 55 f8             	mov    -0x8(%ebp),%edx
414f76:	83 d1 00             	adc    $0x0,%ecx
414f79:	89 4d dc             	mov    %ecx,-0x24(%ebp)
414f7c:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
414f7f:	83 e9 04             	sub    $0x4,%ecx
414f82:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
414f85:	83 ee 01             	sub    $0x1,%esi
414f88:	75 c6                	jne    0x414f50
414f8a:	8b 5d 08             	mov    0x8(%ebp),%ebx
414f8d:	6a 00                	push   $0x0
414f8f:	8d 85 e8 fd ff ff    	lea    -0x218(%ebp),%eax
414f95:	c7 85 e4 fd ff ff 00 	movl   $0x0,-0x21c(%ebp)
414f9c:	00 00 00
414f9f:	50                   	push   %eax
414fa0:	8d 73 04             	lea    0x4(%ebx),%esi
414fa3:	c7 03 00 00 00 00    	movl   $0x0,(%ebx)
414fa9:	68 cc 01 00 00       	push   $0x1cc
414fae:	56                   	push   %esi
414faf:	e8 0a af ff ff       	call   0x40febe
414fb4:	8b 45 e8             	mov    -0x18(%ebp),%eax
414fb7:	83 c4 10             	add    $0x10,%esp
414fba:	8b 55 dc             	mov    -0x24(%ebp),%edx
414fbd:	33 c9                	xor    %ecx,%ecx
414fbf:	3b c8                	cmp    %eax,%ecx
414fc1:	89 3e                	mov    %edi,(%esi)
414fc3:	89 43 08             	mov    %eax,0x8(%ebx)
414fc6:	8b 45 f4             	mov    -0xc(%ebp),%eax
414fc9:	1b c9                	sbb    %ecx,%ecx
414fcb:	f7 d9                	neg    %ecx
414fcd:	5f                   	pop    %edi
414fce:	41                   	inc    %ecx
414fcf:	5e                   	pop    %esi
414fd0:	89 0b                	mov    %ecx,(%ebx)
414fd2:	5b                   	pop    %ebx
414fd3:	8b e5                	mov    %ebp,%esp
414fd5:	5d                   	pop    %ebp
414fd6:	c3                   	ret
414fd7:	3b f9                	cmp    %ecx,%edi
414fd9:	0f 87 1e 03 00 00    	ja     0x4152fd
414fdf:	8b d1                	mov    %ecx,%edx
414fe1:	8b c1                	mov    %ecx,%eax