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
45f025:	48                   	dec    %eax
45f026:	83 e8 01             	sub    $0x1,%eax
45f029:	75 e3                	jne    0x45f00e
45f02b:	53                   	push   %ebx
45f02c:	8b ce                	mov    %esi,%ecx
45f02e:	e8 55 28 00 00       	call   0x461888
45f033:	eb d1                	jmp    0x45f006
45f035:	8b ce                	mov    %esi,%ecx
45f037:	e8 f9 0f 00 00       	call   0x460035
45f03c:	eb c8                	jmp    0x45f006
45f03e:	83 f8 70             	cmp    $0x70,%eax
45f041:	7f 4d                	jg     0x45f090
45f043:	74 3f                	je     0x45f084
45f045:	83 f8 67             	cmp    $0x67,%eax
45f048:	7e 31                	jle    0x45f07b
45f04a:	83 f8 69             	cmp    $0x69,%eax
45f04d:	74 1c                	je     0x45f06b
45f04f:	83 f8 6e             	cmp    $0x6e,%eax
45f052:	74 0e                	je     0x45f062
45f054:	83 f8 6f             	cmp    $0x6f,%eax
45f057:	75 b5                	jne    0x45f00e
45f059:	8b ce                	mov    %esi,%ecx
45f05b:	e8 d3 42 00 00       	call   0x463333
45f060:	eb a4                	jmp    0x45f006
45f062:	8b ce                	mov    %esi,%ecx
45f064:	e8 dd 3f 00 00       	call   0x463046
45f069:	eb 9b                	jmp    0x45f006
45f06b:	83 4e 20 10          	orl    $0x10,0x20(%esi)
45f06f:	53                   	push   %ebx
45f070:	6a 0a                	push   $0xa
45f072:	8b ce                	mov    %esi,%ecx
45f074:	e8 42 36 00 00       	call   0x4626bb
45f079:	eb 8b                	jmp    0x45f006
45f07b:	8b ce                	mov    %esi,%ecx
45f07d:	e8 b8 1c 00 00       	call   0x460d3a
45f082:	eb 82                	jmp    0x45f006
45f084:	8b ce                	mov    %esi,%ecx
45f086:	e8 e4 43 00 00       	call   0x46346f
45f08b:	e9 76 ff ff ff       	jmp    0x45f006
45f090:	83 e8 73             	sub    $0x73,%eax
45f093:	0f 84 66 ff ff ff    	je     0x45efff
45f099:	48                   	dec    %eax
45f09a:	83 e8 01             	sub    $0x1,%eax
45f09d:	74 d0                	je     0x45f06f
45f09f:	83 e8 03             	sub    $0x3,%eax
45f0a2:	0f 85 66 ff ff ff    	jne    0x45f00e
45f0a8:	53                   	push   %ebx
45f0a9:	e9 69 ff ff ff       	jmp    0x45f017
45f0ae:	38 5e 30             	cmp    %bl,0x30(%esi)
45f0b1:	0f 85 41 01 00 00    	jne    0x45f1f8
45f0b7:	8b 56 20             	mov    0x20(%esi),%edx
45f0ba:	33 c9                	xor    %ecx,%ecx
45f0bc:	57                   	push   %edi
45f0bd:	8b c2                	mov    %edx,%eax
45f0bf:	89 5d f4             	mov    %ebx,-0xc(%ebp)
45f0c2:	c1 e8 04             	shr    $0x4,%eax
45f0c5:	41                   	inc    %ecx
45f0c6:	66 89 5d f8          	mov    %bx,-0x8(%ebp)
45f0ca:	6a 20                	push   $0x20
45f0cc:	5f                   	pop    %edi
45f0cd:	84 c1                	test   %al,%cl
45f0cf:	74 28                	je     0x45f0f9
45f0d1:	8b c2                	mov    %edx,%eax
45f0d3:	c1 e8 06             	shr    $0x6,%eax
45f0d6:	84 c1                	test   %al,%cl
45f0d8:	74 09                	je     0x45f0e3
45f0da:	6a 2d                	push   $0x2d
45f0dc:	58                   	pop    %eax
45f0dd:	66 89 45 f4          	mov    %ax,-0xc(%ebp)
45f0e1:	eb 14                	jmp    0x45f0f7
45f0e3:	84 d1                	test   %dl,%cl
45f0e5:	74 04                	je     0x45f0eb
45f0e7:	6a 2b                	push   $0x2b
45f0e9:	eb f1                	jmp    0x45f0dc
45f0eb:	8b c2                	mov    %edx,%eax
45f0ed:	d1 e8                	shr    $1,%eax
45f0ef:	84 c1                	test   %al,%cl
45f0f1:	74 06                	je     0x45f0f9
45f0f3:	66 89 7d f4          	mov    %di,-0xc(%ebp)
45f0f7:	8b d9                	mov    %ecx,%ebx
45f0f9:	0f b7 4e 32          	movzwl 0x32(%esi),%ecx
45f0fd:	83 f9 78             	cmp    $0x78,%ecx
45f100:	74 08                	je     0x45f10a
45f102:	6a 58                	push   $0x58
45f104:	58                   	pop    %eax
45f105:	66 3b c8             	cmp    %ax,%cx
45f108:	75 0d                	jne    0x45f117
45f10a:	8b c2                	mov    %edx,%eax
45f10c:	c1 e8 05             	shr    $0x5,%eax
45f10f:	a8 01                	test   $0x1,%al
45f111:	74 04                	je     0x45f117
45f113:	b4 01                	mov    $0x1,%ah
45f115:	eb 02                	jmp    0x45f119
45f117:	32 e4                	xor    %ah,%ah
45f119:	83 f9 61             	cmp    $0x61,%ecx
45f11c:	74 0c                	je     0x45f12a
45f11e:	6a 41                	push   $0x41
45f120:	5f                   	pop    %edi
45f121:	66 3b cf             	cmp    %di,%cx
45f124:	74 04                	je     0x45f12a
45f126:	32 c0                	xor    %al,%al
45f128:	eb 02                	jmp    0x45f12c
45f12a:	b0 01                	mov    $0x1,%al
45f12c:	6a 30                	push   $0x30
45f12e:	5f                   	pop    %edi
45f12f:	84 e4                	test   %ah,%ah
45f131:	75 04                	jne    0x45f137
45f133:	84 c0                	test   %al,%al
45f135:	74 30                	je     0x45f167
45f137:	6a 58                	push   $0x58
45f139:	58                   	pop    %eax
45f13a:	66 89 7c 5d f4       	mov    %di,-0xc(%ebp,%ebx,2)
45f13f:	66 3b c8             	cmp    %ax,%cx
45f142:	74 0c                	je     0x45f150
45f144:	6a 41                	push   $0x41
45f146:	58                   	pop    %eax
45f147:	66 3b c8             	cmp    %ax,%cx
45f14a:	74 04                	je     0x45f150
45f14c:	32 c0                	xor    %al,%al
45f14e:	eb 02                	jmp    0x45f152
45f150:	b0 01                	mov    $0x1,%al
45f152:	84 c0                	test   %al,%al
45f154:	0f 94 c0             	sete   %al
45f157:	fe c8                	dec    %al
45f159:	24 e0                	and    $0xe0,%al
45f15b:	04 78                	add    $0x78,%al
45f15d:	66 98                	cbtw
45f15f:	66 89 44 5d f6       	mov    %ax,-0xa(%ebp,%ebx,2)
45f164:	83 c3 02             	add    $0x2,%ebx
45f167:	8b 7e 24             	mov    0x24(%esi),%edi
45f16a:	2b 7e 38             	sub    0x38(%esi),%edi
45f16d:	2b fb                	sub    %ebx,%edi
45f16f:	f6 c2 0c             	test   $0xc,%dl
45f172:	75 16                	jne    0x45f18a
45f174:	8d 46 18             	lea    0x18(%esi),%eax
45f177:	50                   	push   %eax
45f178:	57                   	push   %edi
45f179:	8d 86 48 04 00 00    	lea    0x448(%esi),%eax
45f17f:	6a 20                	push   $0x20
45f181:	50                   	push   %eax
45f182:	e8 46 9e ff ff       	call   0x458fcd
45f187:	83 c4 10             	add    $0x10,%esp
45f18a:	8d 46 0c             	lea    0xc(%esi),%eax
45f18d:	50                   	push   %eax
45f18e:	8d 4e 18             	lea    0x18(%esi),%ecx
45f191:	51                   	push   %ecx
45f192:	53                   	push   %ebx
45f193:	8d 45 f4             	lea    -0xc(%ebp),%eax
45f196:	50                   	push   %eax
45f197:	8d 8e 48 04 00 00    	lea    0x448(%esi),%ecx
45f19d:	e8 04 66 00 00       	call   0x4657a6
45f1a2:	8b 4e 20             	mov    0x20(%esi),%ecx
45f1a5:	8d 5e 18             	lea    0x18(%esi),%ebx
45f1a8:	8b c1                	mov    %ecx,%eax
45f1aa:	c1 e8 03             	shr    $0x3,%eax
45f1ad:	a8 01                	test   $0x1,%al
45f1af:	74 1b                	je     0x45f1cc
45f1b1:	c1 e9 02             	shr    $0x2,%ecx
45f1b4:	f6 c1 01             	test   $0x1,%cl
45f1b7:	75 13                	jne    0x45f1cc
45f1b9:	53                   	push   %ebx
45f1ba:	57                   	push   %edi
45f1bb:	8d 86 48 04 00 00    	lea    0x448(%esi),%eax
45f1c1:	6a 30                	push   $0x30
45f1c3:	50                   	push   %eax
45f1c4:	e8 04 9e ff ff       	call   0x458fcd
45f1c9:	83 c4 10             	add    $0x10,%esp
45f1cc:	6a 00                	push   $0x0
45f1ce:	8b ce                	mov    %esi,%ecx
45f1d0:	e8 eb 62 00 00       	call   0x4654c0
45f1d5:	83 3b 00             	cmpl   $0x0,(%ebx)
45f1d8:	7c 1d                	jl     0x45f1f7
45f1da:	8b 46 20             	mov    0x20(%esi),%eax
45f1dd:	c1 e8 02             	shr    $0x2,%eax
45f1e0:	a8 01                	test   $0x1,%al