419dbc:	8b 80 88 00 00 00    	mov    0x88(%eax),%eax
419dc2:	8b 00                	mov    (%eax),%eax
419dc4:	8a 00                	mov    (%eax),%al
419dc6:	88 01                	mov    %al,(%ecx)
419dc8:	8b 42 04             	mov    0x4(%edx),%eax
419dcb:	25 ff ff 0f 00       	and    $0xfffff,%eax
419dd0:	89 45 f0             	mov    %eax,-0x10(%ebp)
419dd3:	77 09                	ja     0x419dde
419dd5:	83 3a 00             	cmpl   $0x0,(%edx)
419dd8:	0f 86 c5 00 00 00    	jbe    0x419ea3
419dde:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
419de2:	b9 00 00 0f 00       	mov    $0xf0000,%ecx
419de7:	6a 30                	push   $0x30
419de9:	58                   	pop    %eax
419dea:	89 45 f8             	mov    %eax,-0x8(%ebp)
419ded:	89 4d f0             	mov    %ecx,-0x10(%ebp)
419df0:	85 ff                	test   %edi,%edi
419df2:	7e 53                	jle    0x419e47
419df4:	8b 02                	mov    (%edx),%eax
419df6:	8b 52 04             	mov    0x4(%edx),%edx
419df9:	23 45 fc             	and    -0x4(%ebp),%eax
419dfc:	23 d1                	and    %ecx,%edx
419dfe:	8b 4d f8             	mov    -0x8(%ebp),%ecx
419e01:	81 e2 ff ff 0f 00    	and    $0xfffff,%edx
419e07:	0f bf c9             	movswl %cx,%ecx
419e0a:	e8 e1 c5 00 00       	call   0x4263f0
419e0f:	6a 30                	push   $0x30
419e11:	59                   	pop    %ecx
419e12:	66 03 c1             	add    %cx,%ax
419e15:	0f b7 c0             	movzwl %ax,%eax
419e18:	83 f8 39             	cmp    $0x39,%eax
419e1b:	76 02                	jbe    0x419e1f
419e1d:	03 c3                	add    %ebx,%eax
419e1f:	8b 4d f0             	mov    -0x10(%ebp),%ecx
419e22:	8b 55 08             	mov    0x8(%ebp),%edx
419e25:	88 06                	mov    %al,(%esi)
419e27:	46                   	inc    %esi
419e28:	8b 45 fc             	mov    -0x4(%ebp),%eax
419e2b:	0f ac c8 04          	shrd   $0x4,%ecx,%eax
419e2f:	89 45 fc             	mov    %eax,-0x4(%ebp)
419e32:	8b 45 f8             	mov    -0x8(%ebp),%eax
419e35:	c1 e9 04             	shr    $0x4,%ecx
419e38:	83 e8 04             	sub    $0x4,%eax
419e3b:	4f                   	dec    %edi
419e3c:	89 4d f0             	mov    %ecx,-0x10(%ebp)
419e3f:	89 45 f8             	mov    %eax,-0x8(%ebp)
419e42:	66 85 c0             	test   %ax,%ax
419e45:	79 a9                	jns    0x419df0
419e47:	66 85 c0             	test   %ax,%ax
419e4a:	78 57                	js     0x419ea3
419e4c:	8b 02                	mov    (%edx),%eax
419e4e:	8b 52 04             	mov    0x4(%edx),%edx
419e51:	23 45 fc             	and    -0x4(%ebp),%eax
419e54:	23 d1                	and    %ecx,%edx
419e56:	8b 4d f8             	mov    -0x8(%ebp),%ecx
419e59:	81 e2 ff ff 0f 00    	and    $0xfffff,%edx
419e5f:	0f bf c9             	movswl %cx,%ecx
419e62:	e8 89 c5 00 00       	call   0x4263f0
419e67:	66 83 f8 08          	cmp    $0x8,%ax
419e6b:	76 36                	jbe    0x419ea3
419e6d:	6a 30                	push   $0x30
419e6f:	8d 46 ff             	lea    -0x1(%esi),%eax
419e72:	5b                   	pop    %ebx
419e73:	8a 08                	mov    (%eax),%cl
419e75:	80 f9 66             	cmp    $0x66,%cl
419e78:	74 05                	je     0x419e7f
419e7a:	80 f9 46             	cmp    $0x46,%cl
419e7d:	75 05                	jne    0x419e84
419e7f:	88 18                	mov    %bl,(%eax)
419e81:	48                   	dec    %eax
419e82:	eb ef                	jmp    0x419e73
419e84:	8b 5d e4             	mov    -0x1c(%ebp),%ebx
419e87:	3b 45 e8             	cmp    -0x18(%ebp),%eax
419e8a:	74 14                	je     0x419ea0
419e8c:	8a 08                	mov    (%eax),%cl
419e8e:	80 f9 39             	cmp    $0x39,%cl
419e91:	75 07                	jne    0x419e9a
419e93:	80 c3 3a             	add    $0x3a,%bl
419e96:	88 18                	mov    %bl,(%eax)
419e98:	eb 09                	jmp    0x419ea3
419e9a:	fe c1                	inc    %cl
419e9c:	88 08                	mov    %cl,(%eax)
419e9e:	eb 03                	jmp    0x419ea3
419ea0:	fe 40 ff             	incb   -0x1(%eax)
419ea3:	85 ff                	test   %edi,%edi
419ea5:	7e 10                	jle    0x419eb7
419ea7:	57                   	push   %edi
419ea8:	6a 30                	push   $0x30
419eaa:	58                   	pop    %eax
419eab:	50                   	push   %eax
419eac:	56                   	push   %esi
419ead:	e8 2e eb fe ff       	call   0x4089e0
419eb2:	83 c4 0c             	add    $0xc,%esp
419eb5:	03 f7                	add    %edi,%esi
419eb7:	8b 45 e8             	mov    -0x18(%ebp),%eax
419eba:	80 38 00             	cmpb   $0x0,(%eax)
419ebd:	75 02                	jne    0x419ec1
419ebf:	8b f0                	mov    %eax,%esi
419ec1:	80 7d 20 00          	cmpb   $0x0,0x20(%ebp)
419ec5:	b1 34                	mov    $0x34,%cl
419ec7:	8b 55 08             	mov    0x8(%ebp),%edx
419eca:	0f 94 c0             	sete   %al
419ecd:	fe c8                	dec    %al
419ecf:	24 e0                	and    $0xe0,%al
419ed1:	04 70                	add    $0x70,%al
419ed3:	88 06                	mov    %al,(%esi)
419ed5:	8b 02                	mov    (%edx),%eax
419ed7:	8b 52 04             	mov    0x4(%edx),%edx
419eda:	e8 11 c5 00 00       	call   0x4263f0
419edf:	8b c8                	mov    %eax,%ecx
419ee1:	33 db                	xor    %ebx,%ebx
419ee3:	81 e1 ff 07 00 00    	and    $0x7ff,%ecx
419ee9:	2b 4d f4             	sub    -0xc(%ebp),%ecx
419eec:	1b db                	sbb    %ebx,%ebx
419eee:	78 0f                	js     0x419eff
419ef0:	7f 04                	jg     0x419ef6
419ef2:	85 c9                	test   %ecx,%ecx
419ef4:	72 09                	jb     0x419eff
419ef6:	c6 46 01 2b          	movb   $0x2b,0x1(%esi)
419efa:	83 c6 02             	add    $0x2,%esi
419efd:	eb 0e                	jmp    0x419f0d
419eff:	c6 46 01 2d          	movb   $0x2d,0x1(%esi)
419f03:	83 c6 02             	add    $0x2,%esi
419f06:	f7 d9                	neg    %ecx
419f08:	83 d3 00             	adc    $0x0,%ebx
419f0b:	f7 db                	neg    %ebx
419f0d:	8b fe                	mov    %esi,%edi
419f0f:	6a 30                	push   $0x30
419f11:	58                   	pop    %eax
419f12:	88 06                	mov    %al,(%esi)
419f14:	85 db                	test   %ebx,%ebx
419f16:	7c 3f                	jl     0x419f57
419f18:	b8 e8 03 00 00       	mov    $0x3e8,%eax
419f1d:	7f 04                	jg     0x419f23
419f1f:	3b c8                	cmp    %eax,%ecx
419f21:	72 16                	jb     0x419f39
419f23:	6a 00                	push   $0x0
419f25:	50                   	push   %eax
419f26:	53                   	push   %ebx
419f27:	51                   	push   %ecx
419f28:	e8 43 c5 00 00       	call   0x426470
419f2d:	04 30                	add    $0x30,%al
419f2f:	89 55 e4             	mov    %edx,-0x1c(%ebp)
419f32:	88 06                	mov    %al,(%esi)
419f34:	46                   	inc    %esi
419f35:	3b f7                	cmp    %edi,%esi
419f37:	75 0b                	jne    0x419f44
419f39:	85 db                	test   %ebx,%ebx
419f3b:	7c 1a                	jl     0x419f57
419f3d:	7f 05                	jg     0x419f44
419f3f:	83 f9 64             	cmp    $0x64,%ecx
419f42:	72 13                	jb     0x419f57
419f44:	6a 00                	push   $0x0
419f46:	6a 64                	push   $0x64
419f48:	53                   	push   %ebx
419f49:	51                   	push   %ecx
419f4a:	e8 21 c5 00 00       	call   0x426470
419f4f:	04 30                	add    $0x30,%al
419f51:	89 55 e4             	mov    %edx,-0x1c(%ebp)
419f54:	88 06                	mov    %al,(%esi)
419f56:	46                   	inc    %esi
419f57:	3b f7                	cmp    %edi,%esi
419f59:	75 0b                	jne    0x419f66
419f5b:	85 db                	test   %ebx,%ebx
419f5d:	7c 1a                	jl     0x419f79
419f5f:	7f 05                	jg     0x419f66
419f61:	83 f9 0a             	cmp    $0xa,%ecx
419f64:	72 13                	jb     0x419f79
419f66:	6a 00                	push   $0x0
419f68:	6a 0a                	push   $0xa
419f6a:	53                   	push   %ebx
419f6b:	51                   	push   %ecx
419f6c:	e8 ff c4 00 00       	call   0x426470
419f71:	04 30                	add    $0x30,%al
419f73:	89 55 e4             	mov    %edx,-0x1c(%ebp)
419f76:	88 06                	mov    %al,(%esi)
419f78:	46                   	inc    %esi
419f79:	6a 30                	push   $0x30
419f7b:	58                   	pop    %eax
419f7c:	02 c8                	add    %al,%cl
419f7e:	33 ff                	xor    %edi,%edi
419f80:	88 0e                	mov    %cl,(%esi)
419f82:	c6 46 01 00          	movb   $0x0,0x1(%esi)
419f86:	80 7d dc 00          	cmpb   $0x0,-0x24(%ebp)
419f8a:	74 0a                	je     0x419f96
419f8c:	8b 4d d0             	mov    -0x30(%ebp),%ecx
419f8f:	83 a1 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%ecx)
419f96:	8b c7                	mov    %edi,%eax
419f98:	5f                   	pop    %edi
419f99:	5e                   	pop    %esi
419f9a:	5b                   	pop    %ebx
419f9b:	8b e5                	mov    %ebp,%esp
419f9d:	5d                   	pop    %ebp
419f9e:	c3                   	ret
419f9f:	8b ff                	mov    %edi,%edi
419fa1:	55                   	push   %ebp
419fa2:	8b ec                	mov    %esp,%ebp
419fa4:	83 ec 0c             	sub    $0xc,%esp
419fa7:	8d 45 f4             	lea    -0xc(%ebp),%eax
419faa:	56                   	push   %esi
419fab:	8b 75 1c             	mov    0x1c(%ebp),%esi
419fae:	57                   	push   %edi
419faf:	ff 75 18             	push   0x18(%ebp)
419fb2:	ff 75 14             	push   0x14(%ebp)
419fb5:	8d 7e 01             	lea    0x1(%esi),%edi
419fb8:	50                   	push   %eax
419fb9:	8b 45 08             	mov    0x8(%ebp),%eax
419fbc:	57                   	push   %edi
419fbd:	ff 70 04             	push   0x4(%eax)
419fc0:	ff 30                	push   (%eax)
419fc2:	e8 29 90 00 00       	call   0x422ff0
419fc7:	83 c9 ff             	or     $0xffffffff,%ecx
419fca:	83 c4 18             	add    $0x18,%esp
419fcd:	39 4d 10             	cmp    %ecx,0x10(%ebp)
419fd0:	74 17                	je     0x419fe9
419fd2:	8b 4d 10             	mov    0x10(%ebp),%ecx
419fd5:	33 c0                	xor    %eax,%eax
419fd7:	83 7d f4 2d          	cmpl   $0x2d,-0xc(%ebp)
419fdb:	0f 94 c0             	sete   %al
419fde:	2b c8                	sub    %eax,%ecx
419fe0:	33 c0                	xor    %eax,%eax
419fe2:	85 f6                	test   %esi,%esi
419fe4:	0f 9f c0             	setg   %al
419fe7:	2b c8                	sub    %eax,%ecx
419fe9:	8d 45 f4             	lea    -0xc(%ebp),%eax
419fec:	50                   	push   %eax
419fed:	57                   	push   %edi
419fee:	8b 7d 0c             	mov    0xc(%ebp),%edi
419ff1:	51                   	push   %ecx
419ff2:	33 c9                	xor    %ecx,%ecx
419ff4:	83 7d f4 2d          	cmpl   $0x2d,-0xc(%ebp)
419ff8:	0f 94 c1             	sete   %cl
419ffb:	33 c0                	xor    %eax,%eax
419ffd:	85 f6                	test   %esi,%esi
419fff:	0f 9f c0             	setg   %al
41a002:	03 cf                	add    %edi,%ecx
41a004:	03 c1                	add    %ecx,%eax
41a006:	50                   	push   %eax
41a007:	e8 fe 8e 00 00       	call   0x422f0a
41a00c:	83 c4 10             	add    $0x10,%esp
41a00f:	85 c0                	test   %eax,%eax
41a011:	74 05                	je     0x41a018
41a013:	c6 07 00             	movb   $0x0,(%edi)
41a016:	eb 1c                	jmp    0x41a034
41a018:	ff 75 28             	push   0x28(%ebp)
41a01b:	8d 45 f4             	lea    -0xc(%ebp),%eax
41a01e:	6a 00                	push   $0x0
41a020:	50                   	push   %eax
41a021:	ff 75 24             	push   0x24(%ebp)
41a024:	ff 75 20             	push   0x20(%ebp)
41a027:	56                   	push   %esi
41a028:	ff 75 10             	push   0x10(%ebp)
41a02b:	57                   	push   %edi
41a02c:	e8 09 00 00 00       	call   0x41a03a
41a031:	83 c4 20             	add    $0x20,%esp
41a034:	5f                   	pop    %edi
41a035:	5e                   	pop    %esi
41a036:	8b e5                	mov    %ebp,%esp
41a038:	5d                   	pop    %ebp
41a039:	c3                   	ret
41a03a:	8b ff                	mov    %edi,%edi
41a03c:	55                   	push   %ebp
41a03d:	8b ec                	mov    %esp,%ebp
41a03f:	83 ec 10             	sub    $0x10,%esp
41a042:	56                   	push   %esi
41a043:	57                   	push   %edi
41a044:	8b 7d 10             	mov    0x10(%ebp),%edi
41a047:	85 ff                	test   %edi,%edi
41a049:	7e 04                	jle    0x41a04f
41a04b:	8b c7                	mov    %edi,%eax
41a04d:	eb 02                	jmp    0x41a051
41a04f:	33 c0                	xor    %eax,%eax
41a051:	83 c0 09             	add    $0x9,%eax
41a054:	39 45 0c             	cmp    %eax,0xc(%ebp)
41a057:	77 17                	ja     0x41a070
41a059:	e8 0d aa ff ff       	call   0x414a6b
41a05e:	6a 22                	push   $0x22
41a060:	5e                   	pop    %esi
41a061:	89 30                	mov    %esi,(%eax)
41a063:	e8 7a 1c ff ff       	call   0x40bce2
41a068:	8b c6                	mov    %esi,%eax
41a06a:	5f                   	pop    %edi
41a06b:	5e                   	pop    %esi
41a06c:	8b e5                	mov    %ebp,%esp
41a06e:	5d                   	pop    %ebp
41a06f:	c3                   	ret
41a070:	53                   	push   %ebx
41a071:	ff 75 24             	push   0x24(%ebp)
41a074:	8d 4d f0             	lea    -0x10(%ebp),%ecx
41a077:	e8 4c 27 ff ff       	call   0x40c7c8
41a07c:	8a 55 20             	mov    0x20(%ebp),%dl
41a07f:	8b 5d 08             	mov    0x8(%ebp),%ebx
41a082:	84 d2                	test   %dl,%dl
41a084:	74 25                	je     0x41a0ab
41a086:	8b 4d 1c             	mov    0x1c(%ebp),%ecx
41a089:	33 c0                	xor    %eax,%eax
41a08b:	85 ff                	test   %edi,%edi
41a08d:	0f 9f c0             	setg   %al
41a090:	50                   	push   %eax
41a091:	33 c0                	xor    %eax,%eax
41a093:	83 39 2d             	cmpl   $0x2d,(%ecx)
41a096:	0f 94 c0             	sete   %al
41a099:	03 c3                	add    %ebx,%eax
41a09b:	50                   	push   %eax
41a09c:	ff 75 0c             	push   0xc(%ebp)
41a09f:	53                   	push   %ebx
41a0a0:	e8 04 04 00 00       	call   0x41a4a9
41a0a5:	8a 55 20             	mov    0x20(%ebp),%dl
41a0a8:	83 c4 10             	add    $0x10,%esp
41a0ab:	8b 45 1c             	mov    0x1c(%ebp),%eax
41a0ae:	8b f3                	mov    %ebx,%esi
41a0b0:	83 38 2d             	cmpl   $0x2d,(%eax)
41a0b3:	75 06                	jne    0x41a0bb
41a0b5:	c6 03 2d             	movb   $0x2d,(%ebx)
41a0b8:	8d 73 01             	lea    0x1(%ebx),%esi
41a0bb:	85 ff                	test   %edi,%edi
41a0bd:	7e 15                	jle    0x41a0d4
41a0bf:	8a 46 01             	mov    0x1(%esi),%al
41a0c2:	88 06                	mov    %al,(%esi)
41a0c4:	46                   	inc    %esi
41a0c5:	8b 45 f4             	mov    -0xc(%ebp),%eax
41a0c8:	8b 80 88 00 00 00    	mov    0x88(%eax),%eax
41a0ce:	8b 00                	mov    (%eax),%eax
41a0d0:	8a 00                	mov    (%eax),%al
41a0d2:	88 06                	mov    %al,(%esi)
41a0d4:	33 c0                	xor    %eax,%eax
41a0d6:	84 d2                	test   %dl,%dl
41a0d8:	0f 94 c0             	sete   %al
41a0db:	03 c7                	add    %edi,%eax
41a0dd:	03 f0                	add    %eax,%esi
41a0df:	83 c8 ff             	or     $0xffffffff,%eax
41a0e2:	39 45 0c             	cmp    %eax,0xc(%ebp)
41a0e5:	74 07                	je     0x41a0ee
41a0e7:	8b c3                	mov    %ebx,%eax
41a0e9:	2b c6                	sub    %esi,%eax
41a0eb:	03 45 0c             	add    0xc(%ebp),%eax
41a0ee:	68 6c cd 42 00       	push   $0x42cd6c
41a0f3:	50                   	push   %eax
41a0f4:	56                   	push   %esi
41a0f5:	e8 6b da ff ff       	call   0x417b65
41a0fa:	83 c4 0c             	add    $0xc,%esp
41a0fd:	5b                   	pop    %ebx
41a0fe:	85 c0                	test   %eax,%eax
41a100:	75 76                	jne    0x41a178
41a102:	8d 4e 02             	lea    0x2(%esi),%ecx
41a105:	38 45 14             	cmp    %al,0x14(%ebp)
41a108:	74 03                	je     0x41a10d
41a10a:	c6 06 45             	movb   $0x45,(%esi)
41a10d:	8b 55 1c             	mov    0x1c(%ebp),%edx
41a110:	8b 42 08             	mov    0x8(%edx),%eax