410ea4:	50                   	push   %eax
410ea5:	53                   	push   %ebx
410ea6:	e8 fc 39 00 00       	call   0x4148a7
410eab:	83 c4 10             	add    $0x10,%esp
410eae:	85 c0                	test   %eax,%eax
410eb0:	74 05                	je     0x410eb7
410eb2:	c6 07 00             	movb   $0x0,(%edi)
410eb5:	eb 53                	jmp    0x410f0a
410eb7:	8b 45 d4             	mov    -0x2c(%ebp),%eax
410eba:	48                   	dec    %eax
410ebb:	39 45 e0             	cmp    %eax,-0x20(%ebp)
410ebe:	0f 9c c1             	setl   %cl
410ec1:	83 f8 fc             	cmp    $0xfffffffc,%eax
410ec4:	7c 2b                	jl     0x410ef1
410ec6:	3b 45 14             	cmp    0x14(%ebp),%eax
410ec9:	7d 26                	jge    0x410ef1
410ecb:	84 c9                	test   %cl,%cl
410ecd:	74 0a                	je     0x410ed9
410ecf:	8a 03                	mov    (%ebx),%al
410ed1:	43                   	inc    %ebx
410ed2:	84 c0                	test   %al,%al
410ed4:	75 f9                	jne    0x410ecf
410ed6:	88 43 fe             	mov    %al,-0x2(%ebx)
410ed9:	ff 75 1c             	push   0x1c(%ebp)
410edc:	8d 45 d0             	lea    -0x30(%ebp),%eax
410edf:	6a 01                	push   $0x1
410ee1:	50                   	push   %eax
410ee2:	ff 75 14             	push   0x14(%ebp)
410ee5:	56                   	push   %esi
410ee6:	57                   	push   %edi
410ee7:	e8 87 fd ff ff       	call   0x410c73
410eec:	83 c4 18             	add    $0x18,%esp
410eef:	eb 19                	jmp    0x410f0a
410ef1:	ff 75 1c             	push   0x1c(%ebp)
410ef4:	8d 45 d0             	lea    -0x30(%ebp),%eax
410ef7:	6a 01                	push   $0x1
410ef9:	50                   	push   %eax
410efa:	ff 75 18             	push   0x18(%ebp)
410efd:	ff 75 14             	push   0x14(%ebp)
410f00:	56                   	push   %esi
410f01:	57                   	push   %edi
410f02:	e8 51 fb ff ff       	call   0x410a58
410f07:	83 c4 1c             	add    $0x1c,%esp
410f0a:	5e                   	pop    %esi
410f0b:	8b 4d fc             	mov    -0x4(%ebp),%ecx
410f0e:	5f                   	pop    %edi
410f0f:	33 cd                	xor    %ebp,%ecx
410f11:	5b                   	pop    %ebx
410f12:	e8 22 38 ff ff       	call   0x404739
410f17:	c9                   	leave
410f18:	c3                   	ret
410f19:	55                   	push   %ebp
410f1a:	8b ec                	mov    %esp,%ebp
410f1c:	6a 00                	push   $0x0
410f1e:	ff 75 08             	push   0x8(%ebp)
410f21:	e8 04 00 00 00       	call   0x410f2a
410f26:	59                   	pop    %ecx
410f27:	59                   	pop    %ecx
410f28:	5d                   	pop    %ebp
410f29:	c3                   	ret
410f2a:	55                   	push   %ebp
410f2b:	8b ec                	mov    %esp,%ebp
410f2d:	83 ec 10             	sub    $0x10,%esp
410f30:	57                   	push   %edi
410f31:	ff 75 0c             	push   0xc(%ebp)
410f34:	8d 4d f0             	lea    -0x10(%ebp),%ecx
410f37:	e8 c1 42 ff ff       	call   0x4051fd
410f3c:	8b 55 08             	mov    0x8(%ebp),%edx
410f3f:	8b 7d f0             	mov    -0x10(%ebp),%edi
410f42:	8a 0a                	mov    (%edx),%cl
410f44:	84 c9                	test   %cl,%cl
410f46:	74 15                	je     0x410f5d
410f48:	8b 87 84 00 00 00    	mov    0x84(%edi),%eax
410f4e:	8b 00                	mov    (%eax),%eax
410f50:	8a 00                	mov    (%eax),%al
410f52:	3a c8                	cmp    %al,%cl
410f54:	74 07                	je     0x410f5d
410f56:	42                   	inc    %edx
410f57:	8a 0a                	mov    (%edx),%cl
410f59:	84 c9                	test   %cl,%cl
410f5b:	75 f5                	jne    0x410f52
410f5d:	8a 02                	mov    (%edx),%al
410f5f:	42                   	inc    %edx
410f60:	84 c0                	test   %al,%al
410f62:	74 34                	je     0x410f98
410f64:	eb 09                	jmp    0x410f6f
410f66:	3c 65                	cmp    $0x65,%al
410f68:	74 0b                	je     0x410f75
410f6a:	3c 45                	cmp    $0x45,%al
410f6c:	74 07                	je     0x410f75
410f6e:	42                   	inc    %edx
410f6f:	8a 02                	mov    (%edx),%al
410f71:	84 c0                	test   %al,%al
410f73:	75 f1                	jne    0x410f66
410f75:	56                   	push   %esi
410f76:	8b f2                	mov    %edx,%esi
410f78:	4a                   	dec    %edx
410f79:	80 3a 30             	cmpb   $0x30,(%edx)
410f7c:	74 fa                	je     0x410f78
410f7e:	8b 87 84 00 00 00    	mov    0x84(%edi),%eax
410f84:	8b 08                	mov    (%eax),%ecx
410f86:	8a 02                	mov    (%edx),%al
410f88:	3a 01                	cmp    (%ecx),%al
410f8a:	75 01                	jne    0x410f8d
410f8c:	4a                   	dec    %edx
410f8d:	8a 06                	mov    (%esi),%al
410f8f:	42                   	inc    %edx
410f90:	46                   	inc    %esi
410f91:	88 02                	mov    %al,(%edx)
410f93:	84 c0                	test   %al,%al
410f95:	75 f6                	jne    0x410f8d
410f97:	5e                   	pop    %esi
410f98:	80 7d fc 00          	cmpb   $0x0,-0x4(%ebp)
410f9c:	5f                   	pop    %edi
410f9d:	74 07                	je     0x410fa6
410f9f:	8b 45 f8             	mov    -0x8(%ebp),%eax
410fa2:	83 60 70 fd          	andl   $0xfffffffd,0x70(%eax)
410fa6:	c9                   	leave
410fa7:	c3                   	ret
410fa8:	55                   	push   %ebp
410fa9:	8b ec                	mov    %esp,%ebp
410fab:	6a 00                	push   $0x0
410fad:	ff 75 10             	push   0x10(%ebp)
410fb0:	ff 75 0c             	push   0xc(%ebp)
410fb3:	ff 75 08             	push   0x8(%ebp)
410fb6:	e8 05 00 00 00       	call   0x410fc0
410fbb:	83 c4 10             	add    $0x10,%esp
410fbe:	5d                   	pop    %ebp
410fbf:	c3                   	ret
410fc0:	55                   	push   %ebp
410fc1:	8b ec                	mov    %esp,%ebp
410fc3:	51                   	push   %ecx
410fc4:	51                   	push   %ecx
410fc5:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
410fc9:	ff 75 14             	push   0x14(%ebp)
410fcc:	ff 75 10             	push   0x10(%ebp)
410fcf:	74 19                	je     0x410fea
410fd1:	8d 45 f8             	lea    -0x8(%ebp),%eax
410fd4:	50                   	push   %eax
410fd5:	e8 7d 39 00 00       	call   0x414957
410fda:	8b 4d 0c             	mov    0xc(%ebp),%ecx
410fdd:	8b 45 f8             	mov    -0x8(%ebp),%eax
410fe0:	89 01                	mov    %eax,(%ecx)
410fe2:	8b 45 fc             	mov    -0x4(%ebp),%eax
410fe5:	89 41 04             	mov    %eax,0x4(%ecx)
410fe8:	eb 11                	jmp    0x410ffb
410fea:	8d 45 08             	lea    0x8(%ebp),%eax
410fed:	50                   	push   %eax
410fee:	e8 f0 39 00 00       	call   0x4149e3
410ff3:	8b 4d 0c             	mov    0xc(%ebp),%ecx
410ff6:	8b 45 08             	mov    0x8(%ebp),%eax
410ff9:	89 01                	mov    %eax,(%ecx)
410ffb:	83 c4 0c             	add    $0xc,%esp
410ffe:	c9                   	leave
410fff:	c3                   	ret
411000:	55                   	push   %ebp
411001:	8b ec                	mov    %esp,%ebp
411003:	6a 00                	push   $0x0
411005:	ff 75 08             	push   0x8(%ebp)
411008:	e8 04 00 00 00       	call   0x411011
41100d:	59                   	pop    %ecx
41100e:	59                   	pop    %ecx
41100f:	5d                   	pop    %ebp
411010:	c3                   	ret
411011:	55                   	push   %ebp
411012:	8b ec                	mov    %esp,%ebp
411014:	83 ec 10             	sub    $0x10,%esp
411017:	8d 4d f0             	lea    -0x10(%ebp),%ecx
41101a:	56                   	push   %esi
41101b:	ff 75 0c             	push   0xc(%ebp)
41101e:	e8 da 41 ff ff       	call   0x4051fd
411023:	8b 75 08             	mov    0x8(%ebp),%esi
411026:	0f be 06             	movsbl (%esi),%eax
411029:	50                   	push   %eax
41102a:	e8 ce 7d ff ff       	call   0x408dfd
41102f:	83 f8 65             	cmp    $0x65,%eax
411032:	eb 0c                	jmp    0x411040
411034:	46                   	inc    %esi
411035:	0f b6 06             	movzbl (%esi),%eax
411038:	50                   	push   %eax
411039:	e8 fb 76 ff ff       	call   0x408739
41103e:	85 c0                	test   %eax,%eax
411040:	59                   	pop    %ecx
411041:	75 f1                	jne    0x411034
411043:	0f be 06             	movsbl (%esi),%eax
411046:	50                   	push   %eax
411047:	e8 b1 7d ff ff       	call   0x408dfd
41104c:	59                   	pop    %ecx
41104d:	83 f8 78             	cmp    $0x78,%eax
411050:	75 03                	jne    0x411055
411052:	83 c6 02             	add    $0x2,%esi
411055:	8b 45 f0             	mov    -0x10(%ebp),%eax
411058:	8a 0e                	mov    (%esi),%cl
41105a:	8b 80 84 00 00 00    	mov    0x84(%eax),%eax
411060:	8b 00                	mov    (%eax),%eax
411062:	8a 00                	mov    (%eax),%al
411064:	88 06                	mov    %al,(%esi)
411066:	46                   	inc    %esi
411067:	8a 06                	mov    (%esi),%al
411069:	88 0e                	mov    %cl,(%esi)
41106b:	8a c8                	mov    %al,%cl
41106d:	8a 06                	mov    (%esi),%al
41106f:	46                   	inc    %esi
411070:	84 c0                	test   %al,%al
411072:	75 f3                	jne    0x411067
411074:	5e                   	pop    %esi
411075:	38 45 fc             	cmp    %al,-0x4(%ebp)
411078:	74 07                	je     0x411081
41107a:	8b 45 f8             	mov    -0x8(%ebp),%eax
41107d:	83 60 70 fd          	andl   $0xfffffffd,0x70(%eax)
411081:	c9                   	leave
411082:	c3                   	ret
411083:	55                   	push   %ebp
411084:	8b ec                	mov    %esp,%ebp
411086:	8b 45 08             	mov    0x8(%ebp),%eax
411089:	d9 ee                	fldz
41108b:	dc 18                	fcompl (%eax)
41108d:	df e0                	fnstsw %ax
41108f:	f6 c4 41             	test   $0x41,%ah
411092:	7a 05                	jp     0x411099
411094:	33 c0                	xor    %eax,%eax
411096:	40                   	inc    %eax
411097:	5d                   	pop    %ebp
411098:	c3                   	ret
411099:	33 c0                	xor    %eax,%eax
41109b:	5d                   	pop    %ebp
41109c:	c3                   	ret
41109d:	55                   	push   %ebp
41109e:	8b ec                	mov    %esp,%ebp
4110a0:	57                   	push   %edi
4110a1:	8b 7d 0c             	mov    0xc(%ebp),%edi
4110a4:	85 ff                	test   %edi,%edi
4110a6:	74 1a                	je     0x4110c2
4110a8:	56                   	push   %esi
4110a9:	8b 75 08             	mov    0x8(%ebp),%esi
4110ac:	56                   	push   %esi
4110ad:	e8 3e 4c ff ff       	call   0x405cf0
4110b2:	40                   	inc    %eax
4110b3:	50                   	push   %eax
4110b4:	8d 04 3e             	lea    (%esi,%edi,1),%eax
4110b7:	56                   	push   %esi
4110b8:	50                   	push   %eax
4110b9:	e8 92 36 ff ff       	call   0x404750
4110be:	83 c4 10             	add    $0x10,%esp
4110c1:	5e                   	pop    %esi
4110c2:	5f                   	pop    %edi
4110c3:	5d                   	pop    %ebp
4110c4:	c3                   	ret
4110c5:	56                   	push   %esi
4110c6:	68 00 00 03 00       	push   $0x30000
4110cb:	68 00 00 01 00       	push   $0x10000
4110d0:	33 f6                	xor    %esi,%esi
4110d2:	56                   	push   %esi
4110d3:	e8 f7 3b 00 00       	call   0x414ccf
4110d8:	83 c4 0c             	add    $0xc,%esp
4110db:	85 c0                	test   %eax,%eax
4110dd:	75 02                	jne    0x4110e1
4110df:	5e                   	pop    %esi
4110e0:	c3                   	ret
4110e1:	56                   	push   %esi
4110e2:	56                   	push   %esi
4110e3:	56                   	push   %esi
4110e4:	56                   	push   %esi
4110e5:	56                   	push   %esi
4110e6:	e8 1a a5 ff ff       	call   0x40b605
4110eb:	cc                   	int3
4110ec:	56                   	push   %esi
4110ed:	33 f6                	xor    %esi,%esi
4110ef:	ff b6 9c 11 42 00    	push   0x42119c(%esi)
4110f5:	ff 15 58 90 41 00    	call   *0x419058
4110fb:	89 86 9c 11 42 00    	mov    %eax,0x42119c(%esi)
411101:	83 c6 04             	add    $0x4,%esi
411104:	83 fe 28             	cmp    $0x28,%esi
411107:	72 e6                	jb     0x4110ef
411109:	5e                   	pop    %esi
41110a:	c3                   	ret
41110b:	55                   	push   %ebp
41110c:	8b ec                	mov    %esp,%ebp
41110e:	83 3d 74 27 42 00 00 	cmpl   $0x0,0x422774
411115:	75 75                	jne    0x41118c
411117:	8b 55 08             	mov    0x8(%ebp),%edx
41111a:	85 d2                	test   %edx,%edx
41111c:	75 17                	jne    0x411135
41111e:	e8 5a 70 ff ff       	call   0x40817d
411123:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
411129:	e8 c7 a4 ff ff       	call   0x40b5f5
41112e:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
411133:	5d                   	pop    %ebp
411134:	c3                   	ret
411135:	8b 4d 0c             	mov    0xc(%ebp),%ecx
411138:	85 c9                	test   %ecx,%ecx
41113a:	74 e2                	je     0x41111e
41113c:	53                   	push   %ebx
41113d:	56                   	push   %esi
41113e:	57                   	push   %edi
41113f:	6a 41                	push   $0x41
411141:	5f                   	pop    %edi
411142:	6a 5a                	push   $0x5a
411144:	2b d1                	sub    %ecx,%edx
411146:	5b                   	pop    %ebx
411147:	0f b7 04 0a          	movzwl (%edx,%ecx,1),%eax
41114b:	66 3b c7             	cmp    %di,%ax
41114e:	72 0d                	jb     0x41115d
411150:	66 3b c3             	cmp    %bx,%ax
411153:	77 08                	ja     0x41115d
411155:	83 c0 20             	add    $0x20,%eax
411158:	0f b7 f0             	movzwl %ax,%esi
41115b:	eb 02                	jmp    0x41115f
41115d:	8b f0                	mov    %eax,%esi
41115f:	0f b7 01             	movzwl (%ecx),%eax
411162:	66 3b c7             	cmp    %di,%ax
411165:	72 0b                	jb     0x411172
411167:	66 3b c3             	cmp    %bx,%ax
41116a:	77 06                	ja     0x411172
41116c:	83 c0 20             	add    $0x20,%eax
41116f:	0f b7 c0             	movzwl %ax,%eax
411172:	83 c1 02             	add    $0x2,%ecx
411175:	66 85 f6             	test   %si,%si
411178:	74 05                	je     0x41117f
41117a:	66 3b f0             	cmp    %ax,%si
41117d:	74 c8                	je     0x411147
41117f:	0f b7 c8             	movzwl %ax,%ecx
411182:	0f b7 c6             	movzwl %si,%eax
411185:	5f                   	pop    %edi
411186:	5e                   	pop    %esi
411187:	2b c1                	sub    %ecx,%eax
411189:	5b                   	pop    %ebx
41118a:	5d                   	pop    %ebp
41118b:	c3                   	ret
41118c:	6a 00                	push   $0x0
41118e:	ff 75 0c             	push   0xc(%ebp)
411191:	ff 75 08             	push   0x8(%ebp)
411194:	e8 05 00 00 00       	call   0x41119e
411199:	83 c4 0c             	add    $0xc,%esp
41119c:	5d                   	pop    %ebp
41119d:	c3                   	ret
41119e:	55                   	push   %ebp
41119f:	8b ec                	mov    %esp,%ebp
4111a1:	83 ec 10             	sub    $0x10,%esp
4111a4:	8d 4d f0             	lea    -0x10(%ebp),%ecx
4111a7:	53                   	push   %ebx
4111a8:	56                   	push   %esi
4111a9:	ff 75 10             	push   0x10(%ebp)
4111ac:	e8 4c 40 ff ff       	call   0x4051fd
4111b1:	8b 5d 08             	mov    0x8(%ebp),%ebx
4111b4:	85 db                	test   %ebx,%ebx
4111b6:	74 07                	je     0x4111bf
4111b8:	8b 75 0c             	mov    0xc(%ebp),%esi
4111bb:	85 f6                	test   %esi,%esi
4111bd:	75 1a                	jne    0x4111d9