410d2e:	ac                   	lods   %ds:(%esi),%al
410d2f:	38 c8                	cmp    %cl,%al
410d31:	72 02                	jb     0x410d35
410d33:	88 c8                	mov    %cl,%al
410d35:	aa                   	stos   %al,%es:(%edi)
410d36:	88 c1                	mov    %al,%cl
410d38:	f3 a4                	rep movsb %ds:(%esi),%es:(%edi)
410d3a:	5f                   	pop    %edi
410d3b:	5e                   	pop    %esi
410d3c:	c3                   	ret
410d3d:	8d 40 00             	lea    0x0(%eax),%eax
410d40:	53                   	push   %ebx
410d41:	56                   	push   %esi
410d42:	57                   	push   %edi
410d43:	81 c4 00 ff ff ff    	add    $0xffffff00,%esp
410d49:	8b f9                	mov    %ecx,%edi
410d4b:	8b f2                	mov    %edx,%esi
410d4d:	8b d8                	mov    %eax,%ebx
410d4f:	8b c4                	mov    %esp,%eax
410d51:	8b d7                	mov    %edi,%edx
410d53:	b9 ff 00 00 00       	mov    $0xff,%ecx
410d58:	e8 fb 34 ff ff       	call   0x404258
410d5d:	8b cc                	mov    %esp,%ecx
410d5f:	8b d6                	mov    %esi,%edx
410d61:	8b c3                	mov    %ebx,%eax
410d63:	e8 84 ff ff ff       	call   0x410cec
410d68:	81 c4 00 01 00 00    	add    $0x100,%esp
410d6e:	5f                   	pop    %edi
410d6f:	5e                   	pop    %esi
410d70:	5b                   	pop    %ebx
410d71:	c3                   	ret
410d72:	8b c0                	mov    %eax,%eax
410d74:	53                   	push   %ebx
410d75:	56                   	push   %esi
410d76:	8b f2                	mov    %edx,%esi
410d78:	8b d8                	mov    %eax,%ebx
410d7a:	8b c3                	mov    %ebx,%eax
410d7c:	8b d6                	mov    %esi,%edx
410d7e:	e8 8d 32 ff ff       	call   0x404010
410d83:	5e                   	pop    %esi
410d84:	5b                   	pop    %ebx
410d85:	c3                   	ret
410d86:	8b c0                	mov    %eax,%eax
410d88:	56                   	push   %esi
410d89:	57                   	push   %edi
410d8a:	89 d6                	mov    %edx,%esi
410d8c:	8b 56 10             	mov    0x10(%esi),%edx
410d8f:	81 fa 00 00 00 80    	cmp    $0x80000000,%edx
410d95:	75 02                	jne    0x410d99
410d97:	89 ca                	mov    %ecx,%edx
410d99:	8b 7e 08             	mov    0x8(%esi),%edi
410d9c:	80 7e 0b fe          	cmpb   $0xfe,0xb(%esi)
410da0:	77 11                	ja     0x410db3
410da2:	72 0a                	jb     0x410dae
410da4:	0f bf ff             	movswl %di,%edi
410da7:	03 38                	add    (%eax),%edi
410da9:	ff 17                	call   *(%edi)
410dab:	5f                   	pop    %edi
410dac:	5e                   	pop    %esi
410dad:	c3                   	ret
410dae:	ff d7                	call   *%edi
410db0:	5f                   	pop    %edi
410db1:	5e                   	pop    %esi
410db2:	c3                   	ret
410db3:	81 e7 ff ff ff 00    	and    $0xffffff,%edi
410db9:	01 f8                	add    %edi,%eax
410dbb:	89 ca                	mov    %ecx,%edx
410dbd:	e8 b2 ff ff ff       	call   0x410d74
410dc2:	5f                   	pop    %edi
410dc3:	5e                   	pop    %esi
410dc4:	c3                   	ret
410dc5:	8d 40 00             	lea    0x0(%eax),%eax
410dc8:	55                   	push   %ebp
410dc9:	8b ec                	mov    %esp,%ebp
410dcb:	6a 00                	push   $0x0
410dcd:	53                   	push   %ebx
410dce:	56                   	push   %esi
410dcf:	57                   	push   %edi
410dd0:	8b f9                	mov    %ecx,%edi
410dd2:	8b f2                	mov    %edx,%esi
410dd4:	8b d8                	mov    %eax,%ebx
410dd6:	33 c0                	xor    %eax,%eax
410dd8:	55                   	push   %ebp
410dd9:	68 10 0e 41 00       	push   $0x410e10
410dde:	64 ff 30             	push   %fs:(%eax)
410de1:	64 89 20             	mov    %esp,%fs:(%eax)
410de4:	8d 45 fc             	lea    -0x4(%ebp),%eax
410de7:	8b d7                	mov    %edi,%edx
410de9:	e8 fa 39 ff ff       	call   0x4047e8
410dee:	8b 4d fc             	mov    -0x4(%ebp),%ecx
410df1:	8b d6                	mov    %esi,%edx
410df3:	8b c3                	mov    %ebx,%eax
410df5:	e8 52 00 00 00       	call   0x410e4c
410dfa:	33 c0                	xor    %eax,%eax
410dfc:	5a                   	pop    %edx
410dfd:	59                   	pop    %ecx
410dfe:	59                   	pop    %ecx
410dff:	64 89 10             	mov    %edx,%fs:(%eax)
410e02:	68 17 0e 41 00       	push   $0x410e17
410e07:	8d 45 fc             	lea    -0x4(%ebp),%eax
410e0a:	e8 8d 38 ff ff       	call   0x40469c
410e0f:	c3                   	ret
410e10:	e9 ab 2b ff ff       	jmp    0x4039c0
410e15:	eb f0                	jmp    0x410e07
410e17:	5f                   	pop    %edi
410e18:	5e                   	pop    %esi
410e19:	5b                   	pop    %ebx
410e1a:	59                   	pop    %ecx
410e1b:	5d                   	pop    %ebp
410e1c:	c3                   	ret
410e1d:	8d 40 00             	lea    0x0(%eax),%eax
410e20:	53                   	push   %ebx
410e21:	8b 1a                	mov    (%edx),%ebx
410e23:	8b 1b                	mov    (%ebx),%ebx
410e25:	8a 1b                	mov    (%ebx),%bl
410e27:	80 eb 05             	sub    $0x5,%bl
410e2a:	74 0b                	je     0x410e37
410e2c:	80 eb 05             	sub    $0x5,%bl
410e2f:	74 0d                	je     0x410e3e
410e31:	fe cb                	dec    %bl
410e33:	74 10                	je     0x410e45
410e35:	eb 13                	jmp    0x410e4a
410e37:	e8 04 ff ff ff       	call   0x410d40
410e3c:	5b                   	pop    %ebx
410e3d:	c3                   	ret
410e3e:	e8 45 ff ff ff       	call   0x410d88
410e43:	5b                   	pop    %ebx
410e44:	c3                   	ret
410e45:	e8 7e ff ff ff       	call   0x410dc8
410e4a:	5b                   	pop    %ebx
410e4b:	c3                   	ret
410e4c:	55                   	push   %ebp
410e4d:	8b ec                	mov    %esp,%ebp
410e4f:	83 c4 f4             	add    $0xfffffff4,%esp
410e52:	53                   	push   %ebx
410e53:	56                   	push   %esi
410e54:	57                   	push   %edi
410e55:	33 db                	xor    %ebx,%ebx
410e57:	89 5d f4             	mov    %ebx,-0xc(%ebp)
410e5a:	8b f9                	mov    %ecx,%edi
410e5c:	8b da                	mov    %edx,%ebx
410e5e:	8b f0                	mov    %eax,%esi
410e60:	33 c0                	xor    %eax,%eax
410e62:	55                   	push   %ebp
410e63:	68 12 0f 41 00       	push   $0x410f12
410e68:	64 ff 30             	push   %fs:(%eax)
410e6b:	64 89 20             	mov    %esp,%fs:(%eax)
410e6e:	8b 03                	mov    (%ebx),%eax
410e70:	8b 00                	mov    (%eax),%eax
410e72:	8a 00                	mov    (%eax),%al
410e74:	2c 05                	sub    $0x5,%al
410e76:	74 0a                	je     0x410e82
410e78:	2c 05                	sub    $0x5,%al
410e7a:	74 06                	je     0x410e82
410e7c:	fe c8                	dec    %al
410e7e:	74 1a                	je     0x410e9a
410e80:	eb 7a                	jmp    0x410efc
410e82:	8d 45 f4             	lea    -0xc(%ebp),%eax
410e85:	8b d7                	mov    %edi,%edx
410e87:	e8 b8 33 ff ff       	call   0x404244
410e8c:	8b 4d f4             	mov    -0xc(%ebp),%ecx
410e8f:	8b d3                	mov    %ebx,%edx
410e91:	8b c6                	mov    %esi,%eax
410e93:	e8 88 ff ff ff       	call   0x410e20
410e98:	eb 62                	jmp    0x410efc
410e9a:	8b 43 08             	mov    0x8(%ebx),%eax
410e9d:	8b d0                	mov    %eax,%edx
410e9f:	81 e2 00 00 00 ff    	and    $0xff000000,%edx
410ea5:	81 fa 00 00 00 ff    	cmp    $0xff000000,%edx
410eab:	75 15                	jne    0x410ec2
410ead:	8b d8                	mov    %eax,%ebx
410eaf:	81 e3 ff ff ff 00    	and    $0xffffff,%ebx
410eb5:	03 de                	add    %esi,%ebx
410eb7:	8b c3                	mov    %ebx,%eax
410eb9:	8b d7                	mov    %edi,%edx
410ebb:	e8 18 38 ff ff       	call   0x4046d8
410ec0:	eb 3a                	jmp    0x410efc
410ec2:	81 fa 00 00 00 fe    	cmp    $0xfe000000,%edx
410ec8:	75 0e                	jne    0x410ed8
410eca:	8b 16                	mov    (%esi),%edx
410ecc:	0f bf c0             	movswl %ax,%eax
410ecf:	03 d0                	add    %eax,%edx
410ed1:	8b 02                	mov    (%edx),%eax
410ed3:	89 45 f8             	mov    %eax,-0x8(%ebp)
410ed6:	eb 03                	jmp    0x410edb
410ed8:	89 45 f8             	mov    %eax,-0x8(%ebp)
410edb:	89 75 fc             	mov    %esi,-0x4(%ebp)
410ede:	8b 43 10             	mov    0x10(%ebx),%eax
410ee1:	3d 00 00 00 80       	cmp    $0x80000000,%eax
410ee6:	75 0a                	jne    0x410ef2
410ee8:	8b d7                	mov    %edi,%edx
410eea:	8b 45 fc             	mov    -0x4(%ebp),%eax
410eed:	ff 55 f8             	call   *-0x8(%ebp)
410ef0:	eb 0a                	jmp    0x410efc
410ef2:	8b cf                	mov    %edi,%ecx
410ef4:	8b d0                	mov    %eax,%edx
410ef6:	8b 45 fc             	mov    -0x4(%ebp),%eax
410ef9:	ff 55 f8             	call   *-0x8(%ebp)
410efc:	33 c0                	xor    %eax,%eax
410efe:	5a                   	pop    %edx
410eff:	59                   	pop    %ecx
410f00:	59                   	pop    %ecx
410f01:	64 89 10             	mov    %edx,%fs:(%eax)
410f04:	68 19 0f 41 00       	push   $0x410f19
410f09:	8d 45 f4             	lea    -0xc(%ebp),%eax
410f0c:	e8 ab 30 ff ff       	call   0x403fbc
410f11:	c3                   	ret
410f12:	e9 a9 2a ff ff       	jmp    0x4039c0
410f17:	eb f0                	jmp    0x410f09
410f19:	5f                   	pop    %edi
410f1a:	5e                   	pop    %esi
410f1b:	5b                   	pop    %ebx
410f1c:	8b e5                	mov    %ebp,%esp
410f1e:	5d                   	pop    %ebp
410f1f:	c3                   	ret
410f20:	55                   	push   %ebp
410f21:	8b ec                	mov    %esp,%ebp
410f23:	83 c4 f8             	add    $0xfffffff8,%esp
410f26:	53                   	push   %ebx
410f27:	56                   	push   %esi
410f28:	57                   	push   %edi
410f29:	8b f2                	mov    %edx,%esi
410f2b:	8b f8                	mov    %eax,%edi
410f2d:	8b 5e 08             	mov    0x8(%esi),%ebx
410f30:	8b 06                	mov    (%esi),%eax
410f32:	8b 00                	mov    (%eax),%eax
410f34:	e8 b7 fb ff ff       	call   0x410af0
410f39:	8a 00                	mov    (%eax),%al
410f3b:	8b d3                	mov    %ebx,%edx
410f3d:	81 e2 00 00 00 ff    	and    $0xff000000,%edx
410f43:	81 fa 00 00 00 ff    	cmp    $0xff000000,%edx
410f49:	75 7b                	jne    0x410fc6
410f4b:	8b d3                	mov    %ebx,%edx
410f4d:	81 e2 ff ff ff 00    	and    $0xffffff,%edx
410f53:	03 d7                	add    %edi,%edx
410f55:	83 e0 7f             	and    $0x7f,%eax
410f58:	83 f8 04             	cmp    $0x4,%eax
410f5b:	0f 87 a9 01 00 00    	ja     0x41110a
410f61:	ff 24 85 68 0f 41 00 	jmp    *0x410f68(,%eax,4)
410f68:	7c 0f                	jl     0x410f79
410f6a:	41                   	inc    %ecx
410f6b:	00 87 0f 41 00 92    	add    %al,-0x6dffbef1(%edi)
410f71:	0f 41 00             	cmovno (%eax),%eax
410f74:	aa                   	stos   %al,%es:(%edi)
410f75:	0f 41 00             	cmovno (%eax),%eax
410f78:	b5 0f                	mov    $0xf,%ch
410f7a:	41                   	inc    %ecx
410f7b:	00 db                	add    %bl,%bl
410f7d:	6d                   	insl   (%dx),%es:(%edi)
410f7e:	08 d9                	or     %bl,%cl
410f80:	1a 9b e9 83 01 00    	sbb    0x183e9(%ebx),%bl
410f86:	00 db                	add    %bl,%bl
410f88:	6d                   	insl   (%dx),%es:(%edi)
410f89:	08 dd                	or     %bl,%ch
410f8b:	1a 9b e9 78 01 00    	sbb    0x178e9(%ebx),%bl
410f91:	00 8b 45 08 89 02    	add    %cl,0x2890845(%ebx)
410f97:	8b 45 0c             	mov    0xc(%ebp),%eax
410f9a:	89 42 04             	mov    %eax,0x4(%edx)
410f9d:	66 8b 45 10          	mov    0x10(%ebp),%ax
410fa1:	66 89 42 08          	mov    %ax,0x8(%edx)
410fa5:	e9 60 01 00 00       	jmp    0x41110a
410faa:	db 6d 08             	fldt   0x8(%ebp)
410fad:	df 3a                	fistpll (%edx)
410faf:	9b                   	fwait
410fb0:	e9 55 01 00 00       	jmp    0x41110a
410fb5:	db 6d 08             	fldt   0x8(%ebp)
410fb8:	d8 0d 14 11 41 00    	fmuls  0x411114
410fbe:	df 3a                	fistpll (%edx)
410fc0:	9b                   	fwait
410fc1:	e9 44 01 00 00       	jmp    0x41110a
410fc6:	81 fa 00 00 00 fe    	cmp    $0xfe000000,%edx
410fcc:	75 0e                	jne    0x410fdc
410fce:	8b 17                	mov    (%edi),%edx
410fd0:	0f bf cb             	movswl %bx,%ecx
410fd3:	03 d1                	add    %ecx,%edx
410fd5:	8b 12                	mov    (%edx),%edx
410fd7:	89 55 f8             	mov    %edx,-0x8(%ebp)
410fda:	eb 03                	jmp    0x410fdf
410fdc:	89 5d f8             	mov    %ebx,-0x8(%ebp)
410fdf:	89 7d fc             	mov    %edi,-0x4(%ebp)
410fe2:	8b 56 10             	mov    0x10(%esi),%edx
410fe5:	81 fa 00 00 00 80    	cmp    $0x80000000,%edx
410feb:	0f 85 97 00 00 00    	jne    0x411088
410ff1:	83 e0 7f             	and    $0x7f,%eax
410ff4:	83 f8 04             	cmp    $0x4,%eax
410ff7:	0f 87 0d 01 00 00    	ja     0x41110a
410ffd:	ff 24 85 04 10 41 00 	jmp    *0x411004(,%eax,4)
411004:	18 10                	sbb    %dl,(%eax)
411006:	41                   	inc    %ecx
411007:	00 2d 10 41 00 42    	add    %ch,0x42004110
41100d:	10 41 00             	adc    %al,0x0(%ecx)
411010:	58                   	pop    %eax
411011:	10 41 00             	adc    %al,0x0(%ecx)
411014:	6d                   	insl   (%dx),%es:(%edi)
411015:	10 41 00             	adc    %al,0x0(%ecx)
411018:	db 6d 08             	fldt   0x8(%ebp)
41101b:	83 c4 fc             	add    $0xfffffffc,%esp
41101e:	d9 1c 24             	fstps  (%esp)
411021:	9b                   	fwait
411022:	8b 45 fc             	mov    -0x4(%ebp),%eax
411025:	ff 55 f8             	call   *-0x8(%ebp)
411028:	e9 dd 00 00 00       	jmp    0x41110a
41102d:	db 6d 08             	fldt   0x8(%ebp)
411030:	83 c4 f8             	add    $0xfffffff8,%esp
411033:	dd 1c 24             	fstpl  (%esp)
411036:	9b                   	fwait
411037:	8b 45 fc             	mov    -0x4(%ebp),%eax
41103a:	ff 55 f8             	call   *-0x8(%ebp)
41103d:	e9 c8 00 00 00       	jmp    0x41110a
411042:	66 8b 45 10          	mov    0x10(%ebp),%ax
411046:	50                   	push   %eax
411047:	ff 75 0c             	push   0xc(%ebp)
41104a:	ff 75 08             	push   0x8(%ebp)
41104d:	8b 45 fc             	mov    -0x4(%ebp),%eax
411050:	ff 55 f8             	call   *-0x8(%ebp)
411053:	e9 b2 00 00 00       	jmp    0x41110a
411058:	db 6d 08             	fldt   0x8(%ebp)
41105b:	83 c4 f8             	add    $0xfffffff8,%esp
41105e:	df 3c 24             	fistpll (%esp)
411061:	9b                   	fwait
411062:	8b 45 fc             	mov    -0x4(%ebp),%eax
411065:	ff 55 f8             	call   *-0x8(%ebp)
411068:	e9 9d 00 00 00       	jmp    0x41110a
41106d:	db 6d 08             	fldt   0x8(%ebp)
411070:	d8 0d 14 11 41 00    	fmuls  0x411114
411076:	83 c4 f8             	add    $0xfffffff8,%esp
411079:	df 3c 24             	fistpll (%esp)
41107c:	9b                   	fwait
41107d:	8b 45 fc             	mov    -0x4(%ebp),%eax
411080:	ff 55 f8             	call   *-0x8(%ebp)
411083:	e9 82 00 00 00       	jmp    0x41110a
411088:	83 e0 7f             	and    $0x7f,%eax
41108b:	83 f8 04             	cmp    $0x4,%eax
41108e:	77 7a                	ja     0x41110a
411090:	ff 24 85 97 10 41 00 	jmp    *0x411097(,%eax,4)
411097:	ab                   	stos   %eax,%es:(%edi)
411098:	10 41 00             	adc    %al,0x0(%ecx)
41109b:	bd 10 41 00 cf       	mov    $0xcf004110,%ebp
4110a0:	10 41 00             	adc    %al,0x0(%ecx)
4110a3:	e2 10                	loop   0x4110b5
4110a5:	41                   	inc    %ecx
4110a6:	00 f4                	add    %dh,%ah
4110a8:	10 41 00             	adc    %al,0x0(%ecx)
4110ab:	db 6d 08             	fldt   0x8(%ebp)
4110ae:	83 c4 fc             	add    $0xfffffffc,%esp
4110b1:	d9 1c 24             	fstps  (%esp)
4110b4:	9b                   	fwait
4110b5:	8b 45 fc             	mov    -0x4(%ebp),%eax
4110b8:	ff 55 f8             	call   *-0x8(%ebp)
4110bb:	eb 4d                	jmp    0x41110a