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
4110bd:	db 6d 08             	fldt   0x8(%ebp)
4110c0:	83 c4 f8             	add    $0xfffffff8,%esp
4110c3:	dd 1c 24             	fstpl  (%esp)
4110c6:	9b                   	fwait
4110c7:	8b 45 fc             	mov    -0x4(%ebp),%eax
4110ca:	ff 55 f8             	call   *-0x8(%ebp)
4110cd:	eb 3b                	jmp    0x41110a
4110cf:	66 8b 45 10          	mov    0x10(%ebp),%ax
4110d3:	50                   	push   %eax
4110d4:	ff 75 0c             	push   0xc(%ebp)
4110d7:	ff 75 08             	push   0x8(%ebp)
4110da:	8b 45 fc             	mov    -0x4(%ebp),%eax
4110dd:	ff 55 f8             	call   *-0x8(%ebp)
4110e0:	eb 28                	jmp    0x41110a
4110e2:	db 6d 08             	fldt   0x8(%ebp)
4110e5:	83 c4 f8             	add    $0xfffffff8,%esp
4110e8:	df 3c 24             	fistpll (%esp)
4110eb:	9b                   	fwait
4110ec:	8b 45 fc             	mov    -0x4(%ebp),%eax
4110ef:	ff 55 f8             	call   *-0x8(%ebp)
4110f2:	eb 16                	jmp    0x41110a
4110f4:	db 6d 08             	fldt   0x8(%ebp)
4110f7:	d8 0d 14 11 41 00    	fmuls  0x411114
4110fd:	83 c4 f8             	add    $0xfffffff8,%esp
411100:	df 3c 24             	fistpll (%esp)
411103:	9b                   	fwait
411104:	8b 45 fc             	mov    -0x4(%ebp),%eax
411107:	ff 55 f8             	call   *-0x8(%ebp)
41110a:	5f                   	pop    %edi
41110b:	5e                   	pop    %esi
41110c:	5b                   	pop    %ebx
41110d:	59                   	pop    %ecx
41110e:	59                   	pop    %ecx
41110f:	5d                   	pop    %ebp
411110:	c2 0c 00             	ret    $0xc
411113:	00 00                	add    %al,(%eax)
411115:	40                   	inc    %eax
411116:	1c 46                	sbb    $0x46,%al
411118:	53                   	push   %ebx
411119:	56                   	push   %esi
41111a:	8b f2                	mov    %edx,%esi
41111c:	8b d8                	mov    %eax,%ebx
41111e:	8b c3                	mov    %ebx,%eax
411120:	8b d6                	mov    %esi,%edx
411122:	e8 ed de ff ff       	call   0x40f014
411127:	5e                   	pop    %esi
411128:	5b                   	pop    %ebx
411129:	c3                   	ret
41112a:	8b c0                	mov    %eax,%eax
41112c:	56                   	push   %esi
41112d:	57                   	push   %edi
41112e:	89 d6                	mov    %edx,%esi
411130:	8b 56 10             	mov    0x10(%esi),%edx
411133:	81 fa 00 00 00 80    	cmp    $0x80000000,%edx
411139:	75 02                	jne    0x41113d
41113b:	89 ca                	mov    %ecx,%edx
41113d:	8b 7e 08             	mov    0x8(%esi),%edi
411140:	80 7e 0b fe          	cmpb   $0xfe,0xb(%esi)
411144:	77 11                	ja     0x411157
411146:	72 0a                	jb     0x411152
411148:	0f bf ff             	movswl %di,%edi
41114b:	03 38                	add    (%eax),%edi
41114d:	ff 17                	call   *(%edi)
41114f:	5f                   	pop    %edi
411150:	5e                   	pop    %esi
411151:	c3                   	ret
411152:	ff d7                	call   *%edi
411154:	5f                   	pop    %edi
411155:	5e                   	pop    %esi
411156:	c3                   	ret
411157:	81 e7 ff ff ff 00    	and    $0xffffff,%edi
41115d:	01 f8                	add    %edi,%eax
41115f:	89 ca                	mov    %ecx,%edx
411161:	e8 b2 ff ff ff       	call   0x411118
411166:	5f                   	pop    %edi
411167:	5e                   	pop    %esi
411168:	c3                   	ret
411169:	8d 40 00             	lea    0x0(%eax),%eax
41116c:	53                   	push   %ebx
41116d:	8b 5a 08             	mov    0x8(%edx),%ebx
411170:	80 7a 0b fe          	cmpb   $0xfe,0xb(%edx)
411174:	77 17                	ja     0x41118d
411176:	8b 52 10             	mov    0x10(%edx),%edx
411179:	ff 71 04             	push   0x4(%ecx)
41117c:	ff 31                	push   (%ecx)
41117e:	72 09                	jb     0x411189
411180:	0f bf db             	movswl %bx,%ebx
411183:	03 18                	add    (%eax),%ebx
411185:	ff 13                	call   *(%ebx)
411187:	5b                   	pop    %ebx
411188:	c3                   	ret
411189:	ff d3                	call   *%ebx
41118b:	5b                   	pop    %ebx
41118c:	c3                   	ret
41118d:	81 e3 ff ff ff 00    	and    $0xffffff,%ebx
411193:	01 d8                	add    %ebx,%eax
411195:	8b 11                	mov    (%ecx),%edx
411197:	8b 59 04             	mov    0x4(%ecx),%ebx
41119a:	89 10                	mov    %edx,(%eax)
41119c:	89 58 04             	mov    %ebx,0x4(%eax)
41119f:	5b                   	pop    %ebx
4111a0:	c3                   	ret
4111a1:	8d 40 00             	lea    0x0(%eax),%eax
4111a4:	55                   	push   %ebp
4111a5:	8b ec                	mov    %esp,%ebp
4111a7:	80 7a 0b fe          	cmpb   $0xfe,0xb(%edx)
4111ab:	8b 4a 08             	mov    0x8(%edx),%ecx
4111ae:	77 18                	ja     0x4111c8
4111b0:	8b 52 10             	mov    0x10(%edx),%edx
4111b3:	ff 75 0c             	push   0xc(%ebp)
4111b6:	ff 75 08             	push   0x8(%ebp)
4111b9:	72 09                	jb     0x4111c4
4111bb:	0f bf c9             	movswl %cx,%ecx
4111be:	03 08                	add    (%eax),%ecx
4111c0:	ff 11                	call   *(%ecx)
4111c2:	eb 17                	jmp    0x4111db
4111c4:	ff d1                	call   *%ecx
4111c6:	eb 13                	jmp    0x4111db
4111c8:	81 e1 ff ff ff 00    	and    $0xffffff,%ecx
4111ce:	01 c8                	add    %ecx,%eax
4111d0:	8b 55 08             	mov    0x8(%ebp),%edx
4111d3:	8b 4d 0c             	mov    0xc(%ebp),%ecx
4111d6:	89 10                	mov    %edx,(%eax)
4111d8:	89 48 04             	mov    %ecx,0x4(%eax)
4111db:	5d                   	pop    %ebp
4111dc:	c2 08 00             	ret    $0x8
4111df:	90                   	nop
4111e0:	53                   	push   %ebx
4111e1:	56                   	push   %esi
4111e2:	83 c4 f8             	add    $0xfffffff8,%esp
4111e5:	8b f1                	mov    %ecx,%esi
4111e7:	8b 4a 08             	mov    0x8(%edx),%ecx
4111ea:	8b d9                	mov    %ecx,%ebx
4111ec:	81 e3 00 00 00 ff    	and    $0xff000000,%ebx
4111f2:	81 fb 00 00 00 ff    	cmp    $0xff000000,%ebx
4111f8:	75 15                	jne    0x41120f
4111fa:	8b d9                	mov    %ecx,%ebx
4111fc:	81 e3 ff ff ff 00    	and    $0xffffff,%ebx
411202:	03 d8                	add    %eax,%ebx
411204:	8b c3                	mov    %ebx,%eax
411206:	8b d6                	mov    %esi,%edx
411208:	e8 67 44 ff ff       	call   0x405674
41120d:	eb 3d                	jmp    0x41124c
41120f:	81 fb 00 00 00 fe    	cmp    $0xfe000000,%ebx
411215:	75 0e                	jne    0x411225
411217:	8b 18                	mov    (%eax),%ebx
411219:	0f bf c9             	movswl %cx,%ecx
41121c:	03 d9                	add    %ecx,%ebx
41121e:	8b 0b                	mov    (%ebx),%ecx
411220:	89 0c 24             	mov    %ecx,(%esp)
411223:	eb 03                	jmp    0x411228
411225:	89 0c 24             	mov    %ecx,(%esp)
411228:	89 44 24 04          	mov    %eax,0x4(%esp)
41122c:	8b 42 10             	mov    0x10(%edx),%eax
41122f:	3d 00 00 00 80       	cmp    $0x80000000,%eax
411234:	75 0b                	jne    0x411241
411236:	8b d6                	mov    %esi,%edx
411238:	8b 44 24 04          	mov    0x4(%esp),%eax
41123c:	ff 14 24             	call   *(%esp)
41123f:	eb 0b                	jmp    0x41124c
411241:	8b ce                	mov    %esi,%ecx
411243:	8b d0                	mov    %eax,%edx
411245:	8b 44 24 04          	mov    0x4(%esp),%eax
411249:	ff 14 24             	call   *(%esp)
41124c:	59                   	pop    %ecx
41124d:	5a                   	pop    %edx
41124e:	5e                   	pop    %esi
41124f:	5b                   	pop    %ebx
411250:	c3                   	ret
411251:	8d 40 00             	lea    0x0(%eax),%eax
411254:	55                   	push   %ebp
411255:	8b ec                	mov    %esp,%ebp
411257:	33 c0                	xor    %eax,%eax
411259:	55                   	push   %ebp
41125a:	68 9a 12 41 00       	push   $0x41129a