417cd9:	6a 02                	push   $0x2
417cdb:	c1 e6 02             	shl    $0x2,%esi
417cde:	8d 4d e8             	lea    -0x18(%ebp),%ecx
417ce1:	5a                   	pop    %edx
417ce2:	2b ce                	sub    %esi,%ecx
417ce4:	3b d0                	cmp    %eax,%edx
417ce6:	7c 08                	jl     0x417cf0
417ce8:	8b 31                	mov    (%ecx),%esi
417cea:	89 74 95 e0          	mov    %esi,-0x20(%ebp,%edx,4)
417cee:	eb 05                	jmp    0x417cf5
417cf0:	83 64 95 e0 00       	andl   $0x0,-0x20(%ebp,%edx,4)
417cf5:	4a                   	dec    %edx
417cf6:	83 e9 04             	sub    $0x4,%ecx
417cf9:	85 d2                	test   %edx,%edx
417cfb:	7d e7                	jge    0x417ce4
417cfd:	6a 02                	push   $0x2
417cff:	33 db                	xor    %ebx,%ebx
417d01:	58                   	pop    %eax
417d02:	e9 5a 01 00 00       	jmp    0x417e61
417d07:	3b 1d 80 c2 42 00    	cmp    0x42c280,%ebx
417d0d:	8b 0d 8c c2 42 00    	mov    0x42c28c,%ecx
417d13:	0f 8c ad 00 00 00    	jl     0x417dc6
417d19:	33 c0                	xor    %eax,%eax
417d1b:	8d 7d e0             	lea    -0x20(%ebp),%edi
417d1e:	ab                   	stos   %eax,%es:(%edi)
417d1f:	ab                   	stos   %eax,%es:(%edi)
417d20:	ab                   	stos   %eax,%es:(%edi)
417d21:	81 4d e0 00 00 00 80 	orl    $0x80000000,-0x20(%ebp)
417d28:	8b c1                	mov    %ecx,%eax
417d2a:	99                   	cltd
417d2b:	83 e2 1f             	and    $0x1f,%edx
417d2e:	03 c2                	add    %edx,%eax
417d30:	8b d1                	mov    %ecx,%edx
417d32:	c1 f8 05             	sar    $0x5,%eax
417d35:	81 e2 1f 00 00 80    	and    $0x8000001f,%edx
417d3b:	79 05                	jns    0x417d42
417d3d:	4a                   	dec    %edx
417d3e:	83 ca e0             	or     $0xffffffe0,%edx
417d41:	42                   	inc    %edx
417d42:	83 65 f4 00          	andl   $0x0,-0xc(%ebp)
417d46:	83 65 08 00          	andl   $0x0,0x8(%ebp)
417d4a:	83 cf ff             	or     $0xffffffff,%edi
417d4d:	8b ca                	mov    %edx,%ecx
417d4f:	d3 e7                	shl    %cl,%edi
417d51:	c7 45 fc 20 00 00 00 	movl   $0x20,-0x4(%ebp)
417d58:	29 55 fc             	sub    %edx,-0x4(%ebp)
417d5b:	f7 d7                	not    %edi
417d5d:	8b 5d 08             	mov    0x8(%ebp),%ebx
417d60:	8d 5c 9d e0          	lea    -0x20(%ebp,%ebx,4),%ebx
417d64:	8b 33                	mov    (%ebx),%esi
417d66:	8b ce                	mov    %esi,%ecx
417d68:	23 cf                	and    %edi,%ecx
417d6a:	89 4d f0             	mov    %ecx,-0x10(%ebp)
417d6d:	8b ca                	mov    %edx,%ecx
417d6f:	d3 ee                	shr    %cl,%esi
417d71:	8b 4d fc             	mov    -0x4(%ebp),%ecx
417d74:	0b 75 f4             	or     -0xc(%ebp),%esi
417d77:	89 33                	mov    %esi,(%ebx)
417d79:	8b 75 f0             	mov    -0x10(%ebp),%esi
417d7c:	d3 e6                	shl    %cl,%esi
417d7e:	ff 45 08             	incl   0x8(%ebp)
417d81:	83 7d 08 03          	cmpl   $0x3,0x8(%ebp)
417d85:	89 75 f4             	mov    %esi,-0xc(%ebp)
417d88:	7c d3                	jl     0x417d5d
417d8a:	8b f0                	mov    %eax,%esi
417d8c:	6a 02                	push   $0x2
417d8e:	c1 e6 02             	shl    $0x2,%esi
417d91:	8d 4d e8             	lea    -0x18(%ebp),%ecx
417d94:	5a                   	pop    %edx
417d95:	2b ce                	sub    %esi,%ecx
417d97:	3b d0                	cmp    %eax,%edx
417d99:	7c 08                	jl     0x417da3
417d9b:	8b 31                	mov    (%ecx),%esi
417d9d:	89 74 95 e0          	mov    %esi,-0x20(%ebp,%edx,4)
417da1:	eb 05                	jmp    0x417da8
417da3:	83 64 95 e0 00       	andl   $0x0,-0x20(%ebp,%edx,4)
417da8:	4a                   	dec    %edx
417da9:	83 e9 04             	sub    $0x4,%ecx
417dac:	85 d2                	test   %edx,%edx
417dae:	7d e7                	jge    0x417d97
417db0:	a1 80 c2 42 00       	mov    0x42c280,%eax
417db5:	8b 0d 94 c2 42 00    	mov    0x42c294,%ecx
417dbb:	8d 1c 01             	lea    (%ecx,%eax,1),%ebx
417dbe:	33 c0                	xor    %eax,%eax
417dc0:	40                   	inc    %eax
417dc1:	e9 9b 00 00 00       	jmp    0x417e61
417dc6:	a1 94 c2 42 00       	mov    0x42c294,%eax
417dcb:	81 65 e0 ff ff ff 7f 	andl   $0x7fffffff,-0x20(%ebp)
417dd2:	03 d8                	add    %eax,%ebx
417dd4:	8b c1                	mov    %ecx,%eax
417dd6:	99                   	cltd
417dd7:	83 e2 1f             	and    $0x1f,%edx
417dda:	03 c2                	add    %edx,%eax
417ddc:	8b d1                	mov    %ecx,%edx
417dde:	c1 f8 05             	sar    $0x5,%eax
417de1:	81 e2 1f 00 00 80    	and    $0x8000001f,%edx
417de7:	79 05                	jns    0x417dee
417de9:	4a                   	dec    %edx
417dea:	83 ca e0             	or     $0xffffffe0,%edx
417ded:	42                   	inc    %edx
417dee:	83 65 f4 00          	andl   $0x0,-0xc(%ebp)
417df2:	83 65 08 00          	andl   $0x0,0x8(%ebp)
417df6:	83 ce ff             	or     $0xffffffff,%esi
417df9:	8b ca                	mov    %edx,%ecx
417dfb:	d3 e6                	shl    %cl,%esi
417dfd:	c7 45 fc 20 00 00 00 	movl   $0x20,-0x4(%ebp)
417e04:	29 55 fc             	sub    %edx,-0x4(%ebp)
417e07:	f7 d6                	not    %esi
417e09:	8b 4d 08             	mov    0x8(%ebp),%ecx
417e0c:	8b 7c 8d e0          	mov    -0x20(%ebp,%ecx,4),%edi
417e10:	8b cf                	mov    %edi,%ecx
417e12:	23 ce                	and    %esi,%ecx
417e14:	89 4d f0             	mov    %ecx,-0x10(%ebp)
417e17:	8b ca                	mov    %edx,%ecx
417e19:	d3 ef                	shr    %cl,%edi
417e1b:	8b 4d 08             	mov    0x8(%ebp),%ecx
417e1e:	0b 7d f4             	or     -0xc(%ebp),%edi
417e21:	89 7c 8d e0          	mov    %edi,-0x20(%ebp,%ecx,4)
417e25:	8b 7d f0             	mov    -0x10(%ebp),%edi
417e28:	8b 4d fc             	mov    -0x4(%ebp),%ecx
417e2b:	d3 e7                	shl    %cl,%edi
417e2d:	ff 45 08             	incl   0x8(%ebp)
417e30:	83 7d 08 03          	cmpl   $0x3,0x8(%ebp)
417e34:	89 7d f4             	mov    %edi,-0xc(%ebp)
417e37:	7c d0                	jl     0x417e09
417e39:	8b f0                	mov    %eax,%esi
417e3b:	6a 02                	push   $0x2
417e3d:	c1 e6 02             	shl    $0x2,%esi
417e40:	8d 4d e8             	lea    -0x18(%ebp),%ecx
417e43:	5a                   	pop    %edx
417e44:	2b ce                	sub    %esi,%ecx
417e46:	3b d0                	cmp    %eax,%edx
417e48:	7c 08                	jl     0x417e52
417e4a:	8b 31                	mov    (%ecx),%esi
417e4c:	89 74 95 e0          	mov    %esi,-0x20(%ebp,%edx,4)
417e50:	eb 05                	jmp    0x417e57
417e52:	83 64 95 e0 00       	andl   $0x0,-0x20(%ebp,%edx,4)
417e57:	4a                   	dec    %edx
417e58:	83 e9 04             	sub    $0x4,%ecx
417e5b:	85 d2                	test   %edx,%edx
417e5d:	7d e7                	jge    0x417e46
417e5f:	33 c0                	xor    %eax,%eax
417e61:	5e                   	pop    %esi
417e62:	6a 1f                	push   $0x1f
417e64:	59                   	pop    %ecx
417e65:	2b 0d 8c c2 42 00    	sub    0x42c28c,%ecx
417e6b:	d3 e3                	shl    %cl,%ebx
417e6d:	8b 4d ec             	mov    -0x14(%ebp),%ecx
417e70:	f7 d9                	neg    %ecx
417e72:	1b c9                	sbb    %ecx,%ecx
417e74:	81 e1 00 00 00 80    	and    $0x80000000,%ecx
417e7a:	0b d9                	or     %ecx,%ebx
417e7c:	8b 0d 90 c2 42 00    	mov    0x42c290,%ecx
417e82:	0b 5d e0             	or     -0x20(%ebp),%ebx
417e85:	83 f9 40             	cmp    $0x40,%ecx
417e88:	75 0d                	jne    0x417e97
417e8a:	8b 4d 0c             	mov    0xc(%ebp),%ecx
417e8d:	8b 55 e4             	mov    -0x1c(%ebp),%edx
417e90:	89 59 04             	mov    %ebx,0x4(%ecx)
417e93:	89 11                	mov    %edx,(%ecx)
417e95:	eb 0a                	jmp    0x417ea1
417e97:	83 f9 20             	cmp    $0x20,%ecx
417e9a:	75 05                	jne    0x417ea1
417e9c:	8b 4d 0c             	mov    0xc(%ebp),%ecx
417e9f:	89 19                	mov    %ebx,(%ecx)
417ea1:	5f                   	pop    %edi
417ea2:	5b                   	pop    %ebx
417ea3:	c9                   	leave
417ea4:	c3                   	ret
417ea5:	8b ff                	mov    %edi,%edi
417ea7:	55                   	push   %ebp
417ea8:	8b ec                	mov    %esp,%ebp
417eaa:	83 ec 7c             	sub    $0x7c,%esp
417ead:	a1 68 b2 42 00       	mov    0x42b268,%eax
417eb2:	33 c5                	xor    %ebp,%eax
417eb4:	89 45 fc             	mov    %eax,-0x4(%ebp)
417eb7:	8b 45 08             	mov    0x8(%ebp),%eax
417eba:	53                   	push   %ebx
417ebb:	33 db                	xor    %ebx,%ebx
417ebd:	56                   	push   %esi
417ebe:	33 f6                	xor    %esi,%esi
417ec0:	89 45 88             	mov    %eax,-0x78(%ebp)
417ec3:	8b 45 0c             	mov    0xc(%ebp),%eax
417ec6:	46                   	inc    %esi
417ec7:	33 c9                	xor    %ecx,%ecx
417ec9:	57                   	push   %edi
417eca:	89 45 90             	mov    %eax,-0x70(%ebp)
417ecd:	8d 7d e0             	lea    -0x20(%ebp),%edi
417ed0:	89 5d 8c             	mov    %ebx,-0x74(%ebp)
417ed3:	89 75 98             	mov    %esi,-0x68(%ebp)
417ed6:	89 5d b4             	mov    %ebx,-0x4c(%ebp)
417ed9:	89 5d a8             	mov    %ebx,-0x58(%ebp)
417edc:	89 5d a4             	mov    %ebx,-0x5c(%ebp)
417edf:	89 5d a0             	mov    %ebx,-0x60(%ebp)
417ee2:	89 5d 9c             	mov    %ebx,-0x64(%ebp)
417ee5:	89 5d b0             	mov    %ebx,-0x50(%ebp)
417ee8:	89 5d 94             	mov    %ebx,-0x6c(%ebp)
417eeb:	39 5d 24             	cmp    %ebx,0x24(%ebp)
417eee:	75 1f                	jne    0x417f0f
417ef0:	e8 e0 db fe ff       	call   0x405ad5
417ef5:	53                   	push   %ebx
417ef6:	53                   	push   %ebx
417ef7:	53                   	push   %ebx
417ef8:	53                   	push   %ebx
417ef9:	53                   	push   %ebx
417efa:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
417f00:	e8 20 d3 fe ff       	call   0x405225
417f05:	83 c4 14             	add    $0x14,%esp
417f08:	33 c0                	xor    %eax,%eax
417f0a:	e9 4e 06 00 00       	jmp    0x41855d
417f0f:	8b 55 10             	mov    0x10(%ebp),%edx
417f12:	89 55 ac             	mov    %edx,-0x54(%ebp)
417f15:	8a 02                	mov    (%edx),%al
417f17:	3c 20                	cmp    $0x20,%al
417f19:	74 0c                	je     0x417f27
417f1b:	3c 09                	cmp    $0x9,%al
417f1d:	74 08                	je     0x417f27
417f1f:	3c 0a                	cmp    $0xa,%al
417f21:	74 04                	je     0x417f27
417f23:	3c 0d                	cmp    $0xd,%al
417f25:	75 03                	jne    0x417f2a
417f27:	42                   	inc    %edx
417f28:	eb eb                	jmp    0x417f15
417f2a:	b3 30                	mov    $0x30,%bl
417f2c:	8a 02                	mov    (%edx),%al
417f2e:	42                   	inc    %edx
417f2f:	83 f9 0b             	cmp    $0xb,%ecx
417f32:	0f 87 2f 02 00 00    	ja     0x418167
417f38:	ff 24 8d 6d 85 41 00 	jmp    *0x41856d(,%ecx,4)
417f3f:	8a c8                	mov    %al,%cl
417f41:	80 e9 31             	sub    $0x31,%cl
417f44:	80 f9 08             	cmp    $0x8,%cl
417f47:	77 06                	ja     0x417f4f
417f49:	6a 03                	push   $0x3
417f4b:	59                   	pop    %ecx
417f4c:	4a                   	dec    %edx
417f4d:	eb dd                	jmp    0x417f2c
417f4f:	8b 4d 24             	mov    0x24(%ebp),%ecx
417f52:	8b 09                	mov    (%ecx),%ecx
417f54:	8b 89 bc 00 00 00    	mov    0xbc(%ecx),%ecx
417f5a:	8b 09                	mov    (%ecx),%ecx
417f5c:	3a 01                	cmp    (%ecx),%al
417f5e:	75 05                	jne    0x417f65
417f60:	6a 05                	push   $0x5
417f62:	59                   	pop    %ecx
417f63:	eb c7                	jmp    0x417f2c
417f65:	0f be c0             	movsbl %al,%eax
417f68:	83 e8 2b             	sub    $0x2b,%eax
417f6b:	74 1d                	je     0x417f8a
417f6d:	48                   	dec    %eax
417f6e:	48                   	dec    %eax
417f6f:	74 0d                	je     0x417f7e
417f71:	83 e8 03             	sub    $0x3,%eax
417f74:	0f 85 8b 01 00 00    	jne    0x418105
417f7a:	8b ce                	mov    %esi,%ecx
417f7c:	eb ae                	jmp    0x417f2c
417f7e:	6a 02                	push   $0x2
417f80:	59                   	pop    %ecx
417f81:	c7 45 8c 00 80 00 00 	movl   $0x8000,-0x74(%ebp)
417f88:	eb a2                	jmp    0x417f2c
417f8a:	83 65 8c 00          	andl   $0x0,-0x74(%ebp)
417f8e:	6a 02                	push   $0x2
417f90:	59                   	pop    %ecx
417f91:	eb 99                	jmp    0x417f2c
417f93:	8a c8                	mov    %al,%cl
417f95:	80 e9 31             	sub    $0x31,%cl
417f98:	89 75 a8             	mov    %esi,-0x58(%ebp)
417f9b:	80 f9 08             	cmp    $0x8,%cl
417f9e:	76 a9                	jbe    0x417f49
417fa0:	8b 4d 24             	mov    0x24(%ebp),%ecx
417fa3:	8b 09                	mov    (%ecx),%ecx
417fa5:	8b 89 bc 00 00 00    	mov    0xbc(%ecx),%ecx
417fab:	8b 09                	mov    (%ecx),%ecx
417fad:	3a 01                	cmp    (%ecx),%al
417faf:	75 04                	jne    0x417fb5
417fb1:	6a 04                	push   $0x4
417fb3:	eb ad                	jmp    0x417f62
417fb5:	3c 2b                	cmp    $0x2b,%al
417fb7:	74 28                	je     0x417fe1
417fb9:	3c 2d                	cmp    $0x2d,%al
417fbb:	74 24                	je     0x417fe1
417fbd:	3a c3                	cmp    %bl,%al
417fbf:	74 b9                	je     0x417f7a
417fc1:	3c 43                	cmp    $0x43,%al
417fc3:	0f 8e 3c 01 00 00    	jle    0x418105
417fc9:	3c 45                	cmp    $0x45,%al
417fcb:	7e 10                	jle    0x417fdd
417fcd:	3c 63                	cmp    $0x63,%al
417fcf:	0f 8e 30 01 00 00    	jle    0x418105
417fd5:	3c 65                	cmp    $0x65,%al
417fd7:	0f 8f 28 01 00 00    	jg     0x418105
417fdd:	6a 06                	push   $0x6
417fdf:	eb 81                	jmp    0x417f62
417fe1:	4a                   	dec    %edx
417fe2:	6a 0b                	push   $0xb
417fe4:	e9 79 ff ff ff       	jmp    0x417f62
417fe9:	8a c8                	mov    %al,%cl
417feb:	80 e9 31             	sub    $0x31,%cl
417fee:	80 f9 08             	cmp    $0x8,%cl
417ff1:	0f 86 52 ff ff ff    	jbe    0x417f49
417ff7:	8b 4d 24             	mov    0x24(%ebp),%ecx
417ffa:	8b 09                	mov    (%ecx),%ecx
417ffc:	8b 89 bc 00 00 00    	mov    0xbc(%ecx),%ecx
418002:	8b 09                	mov    (%ecx),%ecx
418004:	3a 01                	cmp    (%ecx),%al
418006:	0f 84 54 ff ff ff    	je     0x417f60
41800c:	3a c3                	cmp    %bl,%al
41800e:	0f 84 66 ff ff ff    	je     0x417f7a
418014:	8b 55 ac             	mov    -0x54(%ebp),%edx
418017:	e9 14 01 00 00       	jmp    0x418130
41801c:	89 75 a8             	mov    %esi,-0x58(%ebp)
41801f:	eb 1a                	jmp    0x41803b
418021:	3c 39                	cmp    $0x39,%al
418023:	7f 1a                	jg     0x41803f
418025:	83 7d b4 19          	cmpl   $0x19,-0x4c(%ebp)
418029:	73 0a                	jae    0x418035
41802b:	ff 45 b4             	incl   -0x4c(%ebp)
41802e:	2a c3                	sub    %bl,%al
418030:	88 07                	mov    %al,(%edi)
418032:	47                   	inc    %edi
418033:	eb 03                	jmp    0x418038
418035:	ff 45 b0             	incl   -0x50(%ebp)
418038:	8a 02                	mov    (%edx),%al
41803a:	42                   	inc    %edx
41803b:	3a c3                	cmp    %bl,%al
41803d:	7d e2                	jge    0x418021
41803f:	8b 4d 24             	mov    0x24(%ebp),%ecx
418042:	8b 09                	mov    (%ecx),%ecx
418044:	8b 89 bc 00 00 00    	mov    0xbc(%ecx),%ecx
41804a:	8b 09                	mov    (%ecx),%ecx
41804c:	3a 01                	cmp    (%ecx),%al
41804e:	0f 84 5d ff ff ff    	je     0x417fb1
418054:	3c 2b                	cmp    $0x2b,%al
418056:	74 89                	je     0x417fe1
418058:	3c 2d                	cmp    $0x2d,%al
41805a:	74 85                	je     0x417fe1
41805c:	e9 60 ff ff ff       	jmp    0x417fc1
418061:	83 7d b4 00          	cmpl   $0x0,-0x4c(%ebp)
418065:	89 75 a8             	mov    %esi,-0x58(%ebp)
418068:	89 75 a4             	mov    %esi,-0x5c(%ebp)
41806b:	75 26                	jne    0x418093
41806d:	eb 06                	jmp    0x418075
41806f:	ff 4d b0             	decl   -0x50(%ebp)
418072:	8a 02                	mov    (%edx),%al
418074:	42                   	inc    %edx
418075:	3a c3                	cmp    %bl,%al
418077:	74 f6                	je     0x41806f
418079:	eb 18                	jmp    0x418093
41807b:	3c 39                	cmp    $0x39,%al
41807d:	7f d5                	jg     0x418054