417e71:	e9 da 00 00 00       	jmp    0x417f50
417e76:	53                   	push   %ebx
417e77:	57                   	push   %edi
417e78:	83 ce ff             	or     $0xffffffff,%esi
417e7b:	56                   	push   %esi
417e7c:	ff 75 0c             	push   0xc(%ebp)
417e7f:	6a 09                	push   $0x9
417e81:	51                   	push   %ecx
417e82:	e8 e8 23 00 00       	call   0x41a26f
417e87:	83 c4 18             	add    $0x18,%esp
417e8a:	85 c0                	test   %eax,%eax
417e8c:	0f 85 bb 00 00 00    	jne    0x417f4d
417e92:	ff 15 98 40 42 00    	call   *0x424098
417e98:	83 f8 7a             	cmp    $0x7a,%eax
417e9b:	75 60                	jne    0x417efd
417e9d:	8b 4d 0c             	mov    0xc(%ebp),%ecx
417ea0:	8b c1                	mov    %ecx,%eax
417ea2:	89 45 fc             	mov    %eax,-0x4(%ebp)
417ea5:	8b d3                	mov    %ebx,%edx
417ea7:	85 db                	test   %ebx,%ebx
417ea9:	74 34                	je     0x417edf
417eab:	8a 08                	mov    (%eax),%cl
417ead:	4a                   	dec    %edx
417eae:	89 55 f8             	mov    %edx,-0x8(%ebp)
417eb1:	84 c9                	test   %cl,%cl
417eb3:	74 27                	je     0x417edc
417eb5:	8d 45 e8             	lea    -0x18(%ebp),%eax
417eb8:	50                   	push   %eax
417eb9:	0f b6 c1             	movzbl %cl,%eax
417ebc:	50                   	push   %eax
417ebd:	e8 92 26 00 00       	call   0x41a554
417ec2:	59                   	pop    %ecx
417ec3:	85 c0                	test   %eax,%eax
417ec5:	8b 45 fc             	mov    -0x4(%ebp),%eax
417ec8:	59                   	pop    %ecx
417ec9:	74 06                	je     0x417ed1
417ecb:	40                   	inc    %eax
417ecc:	80 38 00             	cmpb   $0x0,(%eax)
417ecf:	74 2c                	je     0x417efd
417ed1:	8b 55 f8             	mov    -0x8(%ebp),%edx
417ed4:	40                   	inc    %eax
417ed5:	89 45 fc             	mov    %eax,-0x4(%ebp)
417ed8:	85 d2                	test   %edx,%edx
417eda:	75 cf                	jne    0x417eab
417edc:	8b 4d 0c             	mov    0xc(%ebp),%ecx
417edf:	53                   	push   %ebx
417ee0:	57                   	push   %edi
417ee1:	2b c1                	sub    %ecx,%eax
417ee3:	50                   	push   %eax
417ee4:	8b 45 e8             	mov    -0x18(%ebp),%eax
417ee7:	51                   	push   %ecx
417ee8:	6a 01                	push   $0x1
417eea:	ff 70 08             	push   0x8(%eax)
417eed:	e8 7d 23 00 00       	call   0x41a26f
417ef2:	83 c4 18             	add    $0x18,%esp
417ef5:	85 c0                	test   %eax,%eax
417ef7:	0f 85 39 ff ff ff    	jne    0x417e36
417efd:	e8 f9 6e ff ff       	call   0x40edfb
417f02:	c7 00 2a 00 00 00    	movl   $0x2a,(%eax)
417f08:	33 c0                	xor    %eax,%eax
417f0a:	66 89 07             	mov    %ax,(%edi)
417f0d:	eb 41                	jmp    0x417f50
417f0f:	39 b0 a8 00 00 00    	cmp    %esi,0xa8(%eax)
417f15:	75 11                	jne    0x417f28
417f17:	8b 75 0c             	mov    0xc(%ebp),%esi
417f1a:	8d 4e 01             	lea    0x1(%esi),%ecx
417f1d:	8a 06                	mov    (%esi),%al
417f1f:	46                   	inc    %esi
417f20:	84 c0                	test   %al,%al
417f22:	75 f9                	jne    0x417f1d
417f24:	2b f1                	sub    %ecx,%esi
417f26:	eb 28                	jmp    0x417f50
417f28:	56                   	push   %esi
417f29:	56                   	push   %esi
417f2a:	83 ce ff             	or     $0xffffffff,%esi
417f2d:	56                   	push   %esi
417f2e:	ff 75 0c             	push   0xc(%ebp)
417f31:	6a 09                	push   $0x9
417f33:	51                   	push   %ecx
417f34:	e8 36 23 00 00       	call   0x41a26f
417f39:	83 c4 18             	add    $0x18,%esp
417f3c:	85 c0                	test   %eax,%eax
417f3e:	75 0d                	jne    0x417f4d
417f40:	e8 b6 6e ff ff       	call   0x40edfb
417f45:	c7 00 2a 00 00 00    	movl   $0x2a,(%eax)
417f4b:	eb 03                	jmp    0x417f50
417f4d:	8d 70 ff             	lea    -0x1(%eax),%esi
417f50:	80 7d f0 00          	cmpb   $0x0,-0x10(%ebp)
417f54:	74 0a                	je     0x417f60
417f56:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
417f59:	83 a1 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%ecx)
417f60:	8b c6                	mov    %esi,%eax
417f62:	5f                   	pop    %edi
417f63:	5e                   	pop    %esi
417f64:	5b                   	pop    %ebx
417f65:	c9                   	leave
417f66:	c3                   	ret
417f67:	8b ff                	mov    %edi,%edi
417f69:	55                   	push   %ebp
417f6a:	8b ec                	mov    %esp,%ebp
417f6c:	83 ec 10             	sub    $0x10,%esp
417f6f:	53                   	push   %ebx
417f70:	8b 5d 10             	mov    0x10(%ebp),%ebx
417f73:	56                   	push   %esi
417f74:	57                   	push   %edi
417f75:	8b 7d 0c             	mov    0xc(%ebp),%edi
417f78:	33 f6                	xor    %esi,%esi
417f7a:	85 ff                	test   %edi,%edi
417f7c:	75 3b                	jne    0x417fb9
417f7e:	85 db                	test   %ebx,%ebx
417f80:	75 3b                	jne    0x417fbd
417f82:	85 ff                	test   %edi,%edi
417f84:	74 05                	je     0x417f8b
417f86:	33 c0                	xor    %eax,%eax
417f88:	66 89 07             	mov    %ax,(%edi)
417f8b:	8b 45 08             	mov    0x8(%ebp),%eax
417f8e:	85 c0                	test   %eax,%eax
417f90:	74 02                	je     0x417f94
417f92:	89 30                	mov    %esi,(%eax)
417f94:	ff 75 1c             	push   0x1c(%ebp)
417f97:	8d 4d f0             	lea    -0x10(%ebp),%ecx
417f9a:	e8 df 3c ff ff       	call   0x40bc7e
417f9f:	8b c3                	mov    %ebx,%eax
417fa1:	39 5d 18             	cmp    %ebx,0x18(%ebp)
417fa4:	77 03                	ja     0x417fa9
417fa6:	8b 45 18             	mov    0x18(%ebp),%eax
417fa9:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
417fae:	76 1e                	jbe    0x417fce
417fb0:	e8 46 6e ff ff       	call   0x40edfb
417fb5:	6a 16                	push   $0x16
417fb7:	eb 58                	jmp    0x418011
417fb9:	85 db                	test   %ebx,%ebx
417fbb:	75 c5                	jne    0x417f82
417fbd:	e8 39 6e ff ff       	call   0x40edfb
417fc2:	6a 16                	push   $0x16
417fc4:	5e                   	pop    %esi
417fc5:	89 30                	mov    %esi,(%eax)
417fc7:	e8 b5 50 ff ff       	call   0x40d081
417fcc:	eb 72                	jmp    0x418040
417fce:	8d 4d f4             	lea    -0xc(%ebp),%ecx
417fd1:	51                   	push   %ecx
417fd2:	50                   	push   %eax
417fd3:	ff 75 14             	push   0x14(%ebp)
417fd6:	57                   	push   %edi
417fd7:	e8 e8 fd ff ff       	call   0x417dc4
417fdc:	83 c4 10             	add    $0x10,%esp
417fdf:	83 f8 ff             	cmp    $0xffffffff,%eax
417fe2:	75 12                	jne    0x417ff6
417fe4:	85 ff                	test   %edi,%edi
417fe6:	74 05                	je     0x417fed
417fe8:	33 c0                	xor    %eax,%eax
417fea:	66 89 07             	mov    %ax,(%edi)
417fed:	e8 09 6e ff ff       	call   0x40edfb
417ff2:	8b 30                	mov    (%eax),%esi
417ff4:	eb 3a                	jmp    0x418030
417ff6:	40                   	inc    %eax
417ff7:	85 ff                	test   %edi,%edi
417ff9:	74 2c                	je     0x418027
417ffb:	3b c3                	cmp    %ebx,%eax
417ffd:	76 21                	jbe    0x418020
417fff:	83 7d 18 ff          	cmpl   $0xffffffff,0x18(%ebp)
418003:	74 16                	je     0x41801b
418005:	33 c0                	xor    %eax,%eax
418007:	66 89 07             	mov    %ax,(%edi)
41800a:	e8 ec 6d ff ff       	call   0x40edfb
41800f:	6a 22                	push   $0x22
418011:	5e                   	pop    %esi
418012:	89 30                	mov    %esi,(%eax)
418014:	e8 68 50 ff ff       	call   0x40d081
418019:	eb 15                	jmp    0x418030
41801b:	6a 50                	push   $0x50
41801d:	8b c3                	mov    %ebx,%eax
41801f:	5e                   	pop    %esi
418020:	33 c9                	xor    %ecx,%ecx
418022:	66 89 4c 47 fe       	mov    %cx,-0x2(%edi,%eax,2)
418027:	8b 4d 08             	mov    0x8(%ebp),%ecx
41802a:	85 c9                	test   %ecx,%ecx
41802c:	74 02                	je     0x418030
41802e:	89 01                	mov    %eax,(%ecx)
418030:	80 7d fc 00          	cmpb   $0x0,-0x4(%ebp)
418034:	74 0a                	je     0x418040
418036:	8b 4d f0             	mov    -0x10(%ebp),%ecx
418039:	83 a1 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%ecx)
418040:	5f                   	pop    %edi
418041:	8b c6                	mov    %esi,%eax
418043:	5e                   	pop    %esi
418044:	5b                   	pop    %ebx
418045:	c9                   	leave
418046:	c3                   	ret
418047:	8b ff                	mov    %edi,%edi
418049:	55                   	push   %ebp
41804a:	8b ec                	mov    %esp,%ebp
41804c:	6a 00                	push   $0x0
41804e:	ff 75 18             	push   0x18(%ebp)
418051:	ff 75 14             	push   0x14(%ebp)
418054:	ff 75 10             	push   0x10(%ebp)
418057:	ff 75 0c             	push   0xc(%ebp)
41805a:	ff 75 08             	push   0x8(%ebp)
41805d:	e8 05 ff ff ff       	call   0x417f67
418062:	83 c4 18             	add    $0x18,%esp
418065:	5d                   	pop    %ebp
418066:	c3                   	ret
418067:	6a 30                	push   $0x30
418069:	b8 bd 2f 42 00       	mov    $0x422fbd,%eax
41806e:	e8 fc fa fe ff       	call   0x407b6f
418073:	8b 7d 08             	mov    0x8(%ebp),%edi
418076:	33 f6                	xor    %esi,%esi
418078:	8b 45 0c             	mov    0xc(%ebp),%eax
41807b:	8b 5d 10             	mov    0x10(%ebp),%ebx
41807e:	89 7d d8             	mov    %edi,-0x28(%ebp)
418081:	89 45 e4             	mov    %eax,-0x1c(%ebp)
418084:	89 75 e0             	mov    %esi,-0x20(%ebp)
418087:	85 ff                	test   %edi,%edi
418089:	74 0b                	je     0x418096
41808b:	85 db                	test   %ebx,%ebx
41808d:	75 07                	jne    0x418096
41808f:	33 c0                	xor    %eax,%eax
418091:	e9 6a 02 00 00       	jmp    0x418300
418096:	85 c0                	test   %eax,%eax
418098:	75 18                	jne    0x4180b2
41809a:	e8 5c 6d ff ff       	call   0x40edfb
41809f:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
4180a5:	e8 d7 4f ff ff       	call   0x40d081
4180aa:	83 c8 ff             	or     $0xffffffff,%eax
4180ad:	e9 4e 02 00 00       	jmp    0x418300
4180b2:	ff 75 14             	push   0x14(%ebp)
4180b5:	8d 4d c4             	lea    -0x3c(%ebp),%ecx
4180b8:	e8 c1 3b ff ff       	call   0x40bc7e
4180bd:	8b 45 c8             	mov    -0x38(%ebp),%eax
4180c0:	89 75 fc             	mov    %esi,-0x4(%ebp)
4180c3:	8b 48 08             	mov    0x8(%eax),%ecx
4180c6:	81 f9 e9 fd 00 00    	cmp    $0xfde9,%ecx
4180cc:	75 1f                	jne    0x4180ed
4180ce:	8d 45 d4             	lea    -0x2c(%ebp),%eax
4180d1:	89 75 d4             	mov    %esi,-0x2c(%ebp)
4180d4:	50                   	push   %eax
4180d5:	53                   	push   %ebx
4180d6:	8d 45 e4             	lea    -0x1c(%ebp),%eax
4180d9:	89 75 d8             	mov    %esi,-0x28(%ebp)
4180dc:	50                   	push   %eax
4180dd:	57                   	push   %edi
4180de:	e8 db 85 00 00       	call   0x4206be
4180e3:	83 c4 10             	add    $0x10,%esp
4180e6:	8b f0                	mov    %eax,%esi
4180e8:	e9 ca 01 00 00       	jmp    0x4182b7
4180ed:	85 ff                	test   %edi,%edi
4180ef:	0f 84 95 01 00 00    	je     0x41828a
4180f5:	39 b0 a8 00 00 00    	cmp    %esi,0xa8(%eax)
4180fb:	75 3a                	jne    0x418137
4180fd:	85 db                	test   %ebx,%ebx
4180ff:	0f 84 b2 01 00 00    	je     0x4182b7
418105:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
418108:	ba ff 00 00 00       	mov    $0xff,%edx
41810d:	66 39 11             	cmp    %dx,(%ecx)
418110:	0f 87 64 01 00 00    	ja     0x41827a
418116:	8a 01                	mov    (%ecx),%al
418118:	88 04 37             	mov    %al,(%edi,%esi,1)
41811b:	0f b7 01             	movzwl (%ecx),%eax
41811e:	83 c1 02             	add    $0x2,%ecx
418121:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
418124:	66 85 c0             	test   %ax,%ax
418127:	0f 84 8a 01 00 00    	je     0x4182b7
41812d:	46                   	inc    %esi
41812e:	3b f3                	cmp    %ebx,%esi
418130:	72 db                	jb     0x41810d
418132:	e9 80 01 00 00       	jmp    0x4182b7
418137:	83 78 04 01          	cmpl   $0x1,0x4(%eax)
41813b:	75 61                	jne    0x41819e
41813d:	85 db                	test   %ebx,%ebx
41813f:	74 23                	je     0x418164
418141:	8b 45 e4             	mov    -0x1c(%ebp),%eax
418144:	8b d3                	mov    %ebx,%edx
418146:	66 39 30             	cmp    %si,(%eax)
418149:	74 08                	je     0x418153
41814b:	83 c0 02             	add    $0x2,%eax
41814e:	83 ea 01             	sub    $0x1,%edx
418151:	75 f3                	jne    0x418146
418153:	85 d2                	test   %edx,%edx
418155:	74 0d                	je     0x418164
418157:	66 39 30             	cmp    %si,(%eax)
41815a:	75 08                	jne    0x418164
41815c:	8b d8                	mov    %eax,%ebx
41815e:	2b 5d e4             	sub    -0x1c(%ebp),%ebx
418161:	d1 fb                	sar    $1,%ebx
418163:	43                   	inc    %ebx
418164:	8d 45 e0             	lea    -0x20(%ebp),%eax
418167:	50                   	push   %eax
418168:	56                   	push   %esi
418169:	53                   	push   %ebx
41816a:	57                   	push   %edi
41816b:	53                   	push   %ebx
41816c:	ff 75 e4             	push   -0x1c(%ebp)
41816f:	56                   	push   %esi
418170:	51                   	push   %ecx
418171:	e8 75 21 00 00       	call   0x41a2eb
418176:	8b f0                	mov    %eax,%esi
418178:	83 c4 20             	add    $0x20,%esp
41817b:	85 f6                	test   %esi,%esi
41817d:	0f 84 f7 00 00 00    	je     0x41827a
418183:	83 7d e0 00          	cmpl   $0x0,-0x20(%ebp)
418187:	0f 85 ed 00 00 00    	jne    0x41827a
41818d:	80 7c 37 ff 00       	cmpb   $0x0,-0x1(%edi,%esi,1)
418192:	0f 85 1f 01 00 00    	jne    0x4182b7
418198:	4e                   	dec    %esi
418199:	e9 19 01 00 00       	jmp    0x4182b7
41819e:	8d 45 e0             	lea    -0x20(%ebp),%eax
4181a1:	50                   	push   %eax
4181a2:	56                   	push   %esi
4181a3:	53                   	push   %ebx
4181a4:	57                   	push   %edi
4181a5:	6a ff                	push   $0xffffffff
4181a7:	ff 75 e4             	push   -0x1c(%ebp)
4181aa:	56                   	push   %esi
4181ab:	51                   	push   %ecx
4181ac:	e8 3a 21 00 00       	call   0x41a2eb
4181b1:	83 c4 20             	add    $0x20,%esp
4181b4:	8b f8                	mov    %eax,%edi
4181b6:	83 7d e0 00          	cmpl   $0x0,-0x20(%ebp)
4181ba:	0f 85 ba 00 00 00    	jne    0x41827a
4181c0:	85 ff                	test   %edi,%edi
4181c2:	74 08                	je     0x4181cc
4181c4:	8d 77 ff             	lea    -0x1(%edi),%esi
4181c7:	e9 eb 00 00 00       	jmp    0x4182b7
4181cc:	ff 15 98 40 42 00    	call   *0x424098
4181d2:	83 f8 7a             	cmp    $0x7a,%eax
4181d5:	0f 85 9f 00 00 00    	jne    0x41827a
4181db:	85 db                	test   %ebx,%ebx
4181dd:	0f 84 0b 01 00 00    	je     0x4182ee
4181e3:	8b 45 e4             	mov    -0x1c(%ebp),%eax
4181e6:	8b 55 c8             	mov    -0x38(%ebp),%edx
4181e9:	8b 4a 04             	mov    0x4(%edx),%ecx
4181ec:	83 f9 05             	cmp    $0x5,%ecx
4181ef:	7e 03                	jle    0x4181f4
4181f1:	6a 05                	push   $0x5
4181f3:	59                   	pop    %ecx
4181f4:	8d 5d e0             	lea    -0x20(%ebp),%ebx
4181f7:	53                   	push   %ebx
4181f8:	56                   	push   %esi
4181f9:	51                   	push   %ecx
4181fa:	8d 4d e8             	lea    -0x18(%ebp),%ecx
4181fd:	51                   	push   %ecx
4181fe:	6a 01                	push   $0x1
418200:	50                   	push   %eax
418201:	56                   	push   %esi
418202:	ff 72 08             	push   0x8(%edx)
418205:	e8 e1 20 00 00       	call   0x41a2eb
41820a:	8b 5d 10             	mov    0x10(%ebp),%ebx
41820d:	8b d0                	mov    %eax,%edx
41820f:	83 c4 20             	add    $0x20,%esp
418212:	85 d2                	test   %edx,%edx