45ec9f:	2b 7e 38             	sub    0x38(%esi),%edi
45eca2:	2b fb                	sub    %ebx,%edi
45eca4:	f6 c2 0c             	test   $0xc,%dl
45eca7:	75 16                	jne    0x45ecbf
45eca9:	8d 46 18             	lea    0x18(%esi),%eax
45ecac:	50                   	push   %eax
45ecad:	57                   	push   %edi
45ecae:	8d 86 48 04 00 00    	lea    0x448(%esi),%eax
45ecb4:	6a 20                	push   $0x20
45ecb6:	50                   	push   %eax
45ecb7:	e8 11 a3 ff ff       	call   0x458fcd
45ecbc:	83 c4 10             	add    $0x10,%esp
45ecbf:	8d 46 0c             	lea    0xc(%esi),%eax
45ecc2:	50                   	push   %eax
45ecc3:	8d 4e 18             	lea    0x18(%esi),%ecx
45ecc6:	51                   	push   %ecx
45ecc7:	53                   	push   %ebx
45ecc8:	8d 45 f4             	lea    -0xc(%ebp),%eax
45eccb:	50                   	push   %eax
45eccc:	8d 8e 48 04 00 00    	lea    0x448(%esi),%ecx
45ecd2:	e8 cf 6a 00 00       	call   0x4657a6
45ecd7:	8b 4e 20             	mov    0x20(%esi),%ecx
45ecda:	8d 5e 18             	lea    0x18(%esi),%ebx
45ecdd:	8b c1                	mov    %ecx,%eax
45ecdf:	c1 e8 03             	shr    $0x3,%eax
45ece2:	a8 01                	test   $0x1,%al
45ece4:	74 1b                	je     0x45ed01
45ece6:	c1 e9 02             	shr    $0x2,%ecx
45ece9:	f6 c1 01             	test   $0x1,%cl
45ecec:	75 13                	jne    0x45ed01
45ecee:	53                   	push   %ebx
45ecef:	57                   	push   %edi
45ecf0:	8d 86 48 04 00 00    	lea    0x448(%esi),%eax
45ecf6:	6a 30                	push   $0x30
45ecf8:	50                   	push   %eax
45ecf9:	e8 cf a2 ff ff       	call   0x458fcd
45ecfe:	83 c4 10             	add    $0x10,%esp
45ed01:	6a 00                	push   $0x0
45ed03:	8b ce                	mov    %esi,%ecx
45ed05:	e8 9e 66 00 00       	call   0x4653a8
45ed0a:	83 3b 00             	cmpl   $0x0,(%ebx)
45ed0d:	7c 1d                	jl     0x45ed2c
45ed0f:	8b 46 20             	mov    0x20(%esi),%eax
45ed12:	c1 e8 02             	shr    $0x2,%eax
45ed15:	a8 01                	test   $0x1,%al
45ed17:	74 13                	je     0x45ed2c
45ed19:	53                   	push   %ebx
45ed1a:	57                   	push   %edi
45ed1b:	8d 86 48 04 00 00    	lea    0x448(%esi),%eax
45ed21:	6a 20                	push   $0x20
45ed23:	50                   	push   %eax
45ed24:	e8 a4 a2 ff ff       	call   0x458fcd
45ed29:	83 c4 10             	add    $0x10,%esp
45ed2c:	5f                   	pop    %edi
45ed2d:	b0 01                	mov    $0x1,%al
45ed2f:	8b 4d fc             	mov    -0x4(%ebp),%ecx
45ed32:	5e                   	pop    %esi
45ed33:	33 cd                	xor    %ebp,%ecx
45ed35:	5b                   	pop    %ebx
45ed36:	e8 c7 0c fe ff       	call   0x43fa02
45ed3b:	8b e5                	mov    %ebp,%esp
45ed3d:	5d                   	pop    %ebp
45ed3e:	c3                   	ret
45ed3f:	8b ff                	mov    %edi,%edi
45ed41:	55                   	push   %ebp
45ed42:	8b ec                	mov    %esp,%ebp
45ed44:	83 ec 0c             	sub    $0xc,%esp
45ed47:	a1 94 80 4b 00       	mov    0x4b8094,%eax
45ed4c:	33 c5                	xor    %ebp,%eax
45ed4e:	89 45 fc             	mov    %eax,-0x4(%ebp)
45ed51:	53                   	push   %ebx
45ed52:	56                   	push   %esi
45ed53:	8b f1                	mov    %ecx,%esi
45ed55:	33 db                	xor    %ebx,%ebx
45ed57:	6a 41                	push   $0x41
45ed59:	5a                   	pop    %edx
45ed5a:	6a 58                	push   $0x58
45ed5c:	0f b7 46 32          	movzwl 0x32(%esi),%eax
45ed60:	59                   	pop    %ecx
45ed61:	83 f8 64             	cmp    $0x64,%eax
45ed64:	7f 6b                	jg     0x45edd1
45ed66:	0f 84 92 00 00 00    	je     0x45edfe
45ed6c:	3b c1                	cmp    %ecx,%eax
45ed6e:	7f 3e                	jg     0x45edae
45ed70:	74 36                	je     0x45eda8
45ed72:	3b c2                	cmp    %edx,%eax
45ed74:	0f 84 94 00 00 00    	je     0x45ee0e
45ed7a:	83 f8 43             	cmp    $0x43,%eax
45ed7d:	74 3f                	je     0x45edbe
45ed7f:	83 f8 44             	cmp    $0x44,%eax
45ed82:	7e 1d                	jle    0x45eda1
45ed84:	83 f8 47             	cmp    $0x47,%eax
45ed87:	0f 8e 81 00 00 00    	jle    0x45ee0e
45ed8d:	83 f8 53             	cmp    $0x53,%eax
45ed90:	75 0f                	jne    0x45eda1
45ed92:	8b ce                	mov    %esi,%ecx
45ed94:	e8 6e 4a 00 00       	call   0x463807
45ed99:	84 c0                	test   %al,%al
45ed9b:	0f 85 a0 00 00 00    	jne    0x45ee41
45eda1:	32 c0                	xor    %al,%al
45eda3:	e9 f4 01 00 00       	jmp    0x45ef9c
45eda8:	6a 01                	push   $0x1
45edaa:	6a 10                	push   $0x10
45edac:	eb 57                	jmp    0x45ee05
45edae:	83 e8 5a             	sub    $0x5a,%eax
45edb1:	74 15                	je     0x45edc8
45edb3:	83 e8 07             	sub    $0x7,%eax
45edb6:	74 56                	je     0x45ee0e
45edb8:	48                   	dec    %eax
45edb9:	83 e8 01             	sub    $0x1,%eax
45edbc:	75 e3                	jne    0x45eda1
45edbe:	53                   	push   %ebx
45edbf:	8b ce                	mov    %esi,%ecx
45edc1:	e8 13 2a 00 00       	call   0x4617d9
45edc6:	eb d1                	jmp    0x45ed99
45edc8:	8b ce                	mov    %esi,%ecx
45edca:	e8 e7 11 00 00       	call   0x45ffb6
45edcf:	eb c8                	jmp    0x45ed99
45edd1:	83 f8 70             	cmp    $0x70,%eax
45edd4:	7f 4d                	jg     0x45ee23
45edd6:	74 3f                	je     0x45ee17
45edd8:	83 f8 67             	cmp    $0x67,%eax
45eddb:	7e 31                	jle    0x45ee0e
45eddd:	83 f8 69             	cmp    $0x69,%eax
45ede0:	74 1c                	je     0x45edfe
45ede2:	83 f8 6e             	cmp    $0x6e,%eax
45ede5:	74 0e                	je     0x45edf5
45ede7:	83 f8 6f             	cmp    $0x6f,%eax
45edea:	75 b5                	jne    0x45eda1
45edec:	8b ce                	mov    %esi,%ecx
45edee:	e8 21 45 00 00       	call   0x463314
45edf3:	eb a4                	jmp    0x45ed99
45edf5:	8b ce                	mov    %esi,%ecx
45edf7:	e8 b1 41 00 00       	call   0x462fad
45edfc:	eb 9b                	jmp    0x45ed99
45edfe:	83 4e 20 10          	orl    $0x10,0x20(%esi)
45ee02:	53                   	push   %ebx
45ee03:	6a 0a                	push   $0xa
45ee05:	8b ce                	mov    %esi,%ecx
45ee07:	e8 29 37 00 00       	call   0x462535
45ee0c:	eb 8b                	jmp    0x45ed99
45ee0e:	8b ce                	mov    %esi,%ecx
45ee10:	e8 94 1d 00 00       	call   0x460ba9
45ee15:	eb 82                	jmp    0x45ed99
45ee17:	8b ce                	mov    %esi,%ecx
45ee19:	e8 39 46 00 00       	call   0x463457
45ee1e:	e9 76 ff ff ff       	jmp    0x45ed99
45ee23:	83 e8 73             	sub    $0x73,%eax
45ee26:	0f 84 66 ff ff ff    	je     0x45ed92
45ee2c:	48                   	dec    %eax
45ee2d:	83 e8 01             	sub    $0x1,%eax
45ee30:	74 d0                	je     0x45ee02
45ee32:	83 e8 03             	sub    $0x3,%eax
45ee35:	0f 85 66 ff ff ff    	jne    0x45eda1
45ee3b:	53                   	push   %ebx
45ee3c:	e9 69 ff ff ff       	jmp    0x45edaa
45ee41:	8b ce                	mov    %esi,%ecx
45ee43:	e8 77 d1 ff ff       	call   0x45bfbf
45ee48:	84 c0                	test   %al,%al
45ee4a:	0f 85 4a 01 00 00    	jne    0x45ef9a
45ee50:	38 5e 30             	cmp    %bl,0x30(%esi)
45ee53:	0f 85 41 01 00 00    	jne    0x45ef9a
45ee59:	8b 56 20             	mov    0x20(%esi),%edx
45ee5c:	33 c9                	xor    %ecx,%ecx
45ee5e:	57                   	push   %edi
45ee5f:	8b c2                	mov    %edx,%eax
45ee61:	89 5d f4             	mov    %ebx,-0xc(%ebp)
45ee64:	c1 e8 04             	shr    $0x4,%eax
45ee67:	41                   	inc    %ecx
45ee68:	66 89 5d f8          	mov    %bx,-0x8(%ebp)
45ee6c:	6a 20                	push   $0x20
45ee6e:	5f                   	pop    %edi
45ee6f:	84 c1                	test   %al,%cl
45ee71:	74 28                	je     0x45ee9b
45ee73:	8b c2                	mov    %edx,%eax
45ee75:	c1 e8 06             	shr    $0x6,%eax
45ee78:	84 c1                	test   %al,%cl
45ee7a:	74 09                	je     0x45ee85
45ee7c:	6a 2d                	push   $0x2d
45ee7e:	58                   	pop    %eax
45ee7f:	66 89 45 f4          	mov    %ax,-0xc(%ebp)
45ee83:	eb 14                	jmp    0x45ee99
45ee85:	84 d1                	test   %dl,%cl
45ee87:	74 04                	je     0x45ee8d
45ee89:	6a 2b                	push   $0x2b
45ee8b:	eb f1                	jmp    0x45ee7e
45ee8d:	8b c2                	mov    %edx,%eax
45ee8f:	d1 e8                	shr    $1,%eax
45ee91:	84 c1                	test   %al,%cl
45ee93:	74 06                	je     0x45ee9b
45ee95:	66 89 7d f4          	mov    %di,-0xc(%ebp)
45ee99:	8b d9                	mov    %ecx,%ebx
45ee9b:	0f b7 4e 32          	movzwl 0x32(%esi),%ecx
45ee9f:	83 f9 78             	cmp    $0x78,%ecx
45eea2:	74 08                	je     0x45eeac
45eea4:	6a 58                	push   $0x58
45eea6:	58                   	pop    %eax
45eea7:	66 3b c8             	cmp    %ax,%cx
45eeaa:	75 0d                	jne    0x45eeb9
45eeac:	8b c2                	mov    %edx,%eax
45eeae:	c1 e8 05             	shr    $0x5,%eax
45eeb1:	a8 01                	test   $0x1,%al
45eeb3:	74 04                	je     0x45eeb9
45eeb5:	b4 01                	mov    $0x1,%ah
45eeb7:	eb 02                	jmp    0x45eebb
45eeb9:	32 e4                	xor    %ah,%ah
45eebb:	83 f9 61             	cmp    $0x61,%ecx
45eebe:	74 0c                	je     0x45eecc
45eec0:	6a 41                	push   $0x41
45eec2:	5f                   	pop    %edi
45eec3:	66 3b cf             	cmp    %di,%cx
45eec6:	74 04                	je     0x45eecc
45eec8:	32 c0                	xor    %al,%al
45eeca:	eb 02                	jmp    0x45eece
45eecc:	b0 01                	mov    $0x1,%al
45eece:	6a 30                	push   $0x30
45eed0:	5f                   	pop    %edi
45eed1:	84 e4                	test   %ah,%ah
45eed3:	75 04                	jne    0x45eed9
45eed5:	84 c0                	test   %al,%al
45eed7:	74 30                	je     0x45ef09
45eed9:	6a 58                	push   $0x58
45eedb:	58                   	pop    %eax
45eedc:	66 89 7c 5d f4       	mov    %di,-0xc(%ebp,%ebx,2)
45eee1:	66 3b c8             	cmp    %ax,%cx
45eee4:	74 0c                	je     0x45eef2
45eee6:	6a 41                	push   $0x41
45eee8:	58                   	pop    %eax
45eee9:	66 3b c8             	cmp    %ax,%cx
45eeec:	74 04                	je     0x45eef2
45eeee:	32 c0                	xor    %al,%al
45eef0:	eb 02                	jmp    0x45eef4
45eef2:	b0 01                	mov    $0x1,%al
45eef4:	84 c0                	test   %al,%al
45eef6:	0f 94 c0             	sete   %al
45eef9:	fe c8                	dec    %al
45eefb:	24 e0                	and    $0xe0,%al
45eefd:	04 78                	add    $0x78,%al
45eeff:	66 98                	cbtw
45ef01:	66 89 44 5d f6       	mov    %ax,-0xa(%ebp,%ebx,2)
45ef06:	83 c3 02             	add    $0x2,%ebx
45ef09:	8b 7e 24             	mov    0x24(%esi),%edi
45ef0c:	2b 7e 38             	sub    0x38(%esi),%edi
45ef0f:	2b fb                	sub    %ebx,%edi
45ef11:	f6 c2 0c             	test   $0xc,%dl
45ef14:	75 16                	jne    0x45ef2c
45ef16:	8d 46 18             	lea    0x18(%esi),%eax
45ef19:	50                   	push   %eax
45ef1a:	57                   	push   %edi
45ef1b:	8d 86 48 04 00 00    	lea    0x448(%esi),%eax
45ef21:	6a 20                	push   $0x20
45ef23:	50                   	push   %eax
45ef24:	e8 a4 a0 ff ff       	call   0x458fcd
45ef29:	83 c4 10             	add    $0x10,%esp
45ef2c:	8d 46 0c             	lea    0xc(%esi),%eax
45ef2f:	50                   	push   %eax
45ef30:	8d 4e 18             	lea    0x18(%esi),%ecx
45ef33:	51                   	push   %ecx
45ef34:	53                   	push   %ebx
45ef35:	8d 45 f4             	lea    -0xc(%ebp),%eax
45ef38:	50                   	push   %eax
45ef39:	8d 8e 48 04 00 00    	lea    0x448(%esi),%ecx
45ef3f:	e8 62 68 00 00       	call   0x4657a6
45ef44:	8b 4e 20             	mov    0x20(%esi),%ecx
45ef47:	8d 5e 18             	lea    0x18(%esi),%ebx
45ef4a:	8b c1                	mov    %ecx,%eax
45ef4c:	c1 e8 03             	shr    $0x3,%eax
45ef4f:	a8 01                	test   $0x1,%al
45ef51:	74 1b                	je     0x45ef6e
45ef53:	c1 e9 02             	shr    $0x2,%ecx
45ef56:	f6 c1 01             	test   $0x1,%cl
45ef59:	75 13                	jne    0x45ef6e
45ef5b:	53                   	push   %ebx
45ef5c:	57                   	push   %edi
45ef5d:	8d 86 48 04 00 00    	lea    0x448(%esi),%eax
45ef63:	6a 30                	push   $0x30
45ef65:	50                   	push   %eax
45ef66:	e8 62 a0 ff ff       	call   0x458fcd
45ef6b:	83 c4 10             	add    $0x10,%esp
45ef6e:	6a 00                	push   $0x0
45ef70:	8b ce                	mov    %esi,%ecx
45ef72:	e8 bd 64 00 00       	call   0x465434
45ef77:	83 3b 00             	cmpl   $0x0,(%ebx)
45ef7a:	7c 1d                	jl     0x45ef99
45ef7c:	8b 46 20             	mov    0x20(%esi),%eax
45ef7f:	c1 e8 02             	shr    $0x2,%eax
45ef82:	a8 01                	test   $0x1,%al
45ef84:	74 13                	je     0x45ef99
45ef86:	53                   	push   %ebx
45ef87:	57                   	push   %edi
45ef88:	8d 86 48 04 00 00    	lea    0x448(%esi),%eax
45ef8e:	6a 20                	push   $0x20
45ef90:	50                   	push   %eax
45ef91:	e8 37 a0 ff ff       	call   0x458fcd
45ef96:	83 c4 10             	add    $0x10,%esp
45ef99:	5f                   	pop    %edi
45ef9a:	b0 01                	mov    $0x1,%al
45ef9c:	8b 4d fc             	mov    -0x4(%ebp),%ecx
45ef9f:	5e                   	pop    %esi
45efa0:	33 cd                	xor    %ebp,%ecx
45efa2:	5b                   	pop    %ebx
45efa3:	e8 5a 0a fe ff       	call   0x43fa02
45efa8:	8b e5                	mov    %ebp,%esp
45efaa:	5d                   	pop    %ebp
45efab:	c3                   	ret
45efac:	8b ff                	mov    %edi,%edi
45efae:	55                   	push   %ebp
45efaf:	8b ec                	mov    %esp,%ebp
45efb1:	83 ec 0c             	sub    $0xc,%esp
45efb4:	a1 94 80 4b 00       	mov    0x4b8094,%eax
45efb9:	33 c5                	xor    %ebp,%eax
45efbb:	89 45 fc             	mov    %eax,-0x4(%ebp)
45efbe:	53                   	push   %ebx
45efbf:	56                   	push   %esi
45efc0:	8b f1                	mov    %ecx,%esi
45efc2:	33 db                	xor    %ebx,%ebx
45efc4:	6a 41                	push   $0x41
45efc6:	5a                   	pop    %edx
45efc7:	6a 58                	push   $0x58
45efc9:	0f b7 46 32          	movzwl 0x32(%esi),%eax
45efcd:	59                   	pop    %ecx
45efce:	83 f8 64             	cmp    $0x64,%eax
45efd1:	7f 6b                	jg     0x45f03e
45efd3:	0f 84 92 00 00 00    	je     0x45f06b
45efd9:	3b c1                	cmp    %ecx,%eax
45efdb:	7f 3e                	jg     0x45f01b
45efdd:	74 36                	je     0x45f015
45efdf:	3b c2                	cmp    %edx,%eax
45efe1:	0f 84 94 00 00 00    	je     0x45f07b
45efe7:	83 f8 43             	cmp    $0x43,%eax
45efea:	74 3f                	je     0x45f02b
45efec:	83 f8 44             	cmp    $0x44,%eax
45efef:	7e 1d                	jle    0x45f00e
45eff1:	83 f8 47             	cmp    $0x47,%eax
45eff4:	0f 8e 81 00 00 00    	jle    0x45f07b
45effa:	83 f8 53             	cmp    $0x53,%eax
45effd:	75 0f                	jne    0x45f00e
45efff:	8b ce                	mov    %esi,%ecx
45f001:	e8 7f 48 00 00       	call   0x463885
45f006:	84 c0                	test   %al,%al
45f008:	0f 85 a0 00 00 00    	jne    0x45f0ae
45f00e:	32 c0                	xor    %al,%al
45f010:	e9 e5 01 00 00       	jmp    0x45f1fa
45f015:	6a 01                	push   $0x1
45f017:	6a 10                	push   $0x10
45f019:	eb 57                	jmp    0x45f072
45f01b:	83 e8 5a             	sub    $0x5a,%eax
45f01e:	74 15                	je     0x45f035
45f020:	83 e8 07             	sub    $0x7,%eax
45f023:	74 56                	je     0x45f07b