41e070:	75 73                	jne    0x41e0e5
41e072:	c7 45 e0 60 20 49 00 	movl   $0x492060,-0x20(%ebp)
41e079:	eb 28                	jmp    0x41e0a3
41e07b:	c7 45 e0 80 20 49 00 	movl   $0x492080,-0x20(%ebp)
41e082:	8b 45 08             	mov    0x8(%ebp),%eax
41e085:	8b 75 10             	mov    0x10(%ebp),%esi
41e088:	eb 23                	jmp    0x41e0ad
41e08a:	c7 45 e0 58 20 49 00 	movl   $0x492058,-0x20(%ebp)
41e091:	eb 10                	jmp    0x41e0a3
41e093:	c7 45 e0 50 20 49 00 	movl   $0x492050,-0x20(%ebp)
41e09a:	eb 07                	jmp    0x41e0a3
41e09c:	c7 45 e0 48 20 49 00 	movl   $0x492048,-0x20(%ebp)
41e0a3:	8b 45 08             	mov    0x8(%ebp),%eax
41e0a6:	dd 00                	fldl   (%eax)
41e0a8:	8b 75 10             	mov    0x10(%ebp),%esi
41e0ab:	dd 1e                	fstpl  (%esi)
41e0ad:	dd 00                	fldl   (%eax)
41e0af:	8b 45 0c             	mov    0xc(%ebp),%eax
41e0b2:	dd 5d e4             	fstpl  -0x1c(%ebp)
41e0b5:	c7 45 dc 01 00 00 00 	movl   $0x1,-0x24(%ebp)
41e0bc:	dd 00                	fldl   (%eax)
41e0be:	8d 45 dc             	lea    -0x24(%ebp),%eax
41e0c1:	dd 5d ec             	fstpl  -0x14(%ebp)
41e0c4:	50                   	push   %eax
41e0c5:	dd 06                	fldl   (%esi)
41e0c7:	dd 5d f4             	fstpl  -0xc(%ebp)
41e0ca:	ff 15 c0 8f 4a 00    	call   *0x4a8fc0
41e0d0:	85 c0                	test   %eax,%eax
41e0d2:	59                   	pop    %ecx
41e0d3:	75 0b                	jne    0x41e0e0
41e0d5:	e8 4c b1 ff ff       	call   0x419226
41e0da:	c7 00 21 00 00 00    	movl   $0x21,(%eax)
41e0e0:	dd 45 f4             	fldl   -0xc(%ebp)
41e0e3:	dd 1e                	fstpl  (%esi)
41e0e5:	8b 4d fc             	mov    -0x4(%ebp),%ecx
41e0e8:	5e                   	pop    %esi
41e0e9:	e8 f0 9a ff ff       	call   0x417bde
41e0ee:	c9                   	leave
41e0ef:	c3                   	ret
41e0f0:	6a 0c                	push   $0xc
41e0f2:	68 98 20 49 00       	push   $0x492098
41e0f7:	e8 ec a0 ff ff       	call   0x4181e8
41e0fc:	83 65 e4 00          	andl   $0x0,-0x1c(%ebp)
41e100:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
41e104:	66 0f 28 c1          	movapd %xmm1,%xmm0
41e108:	c7 45 e4 01 00 00 00 	movl   $0x1,-0x1c(%ebp)
41e10f:	eb 07                	jmp    0x41e118
41e111:	33 c0                	xor    %eax,%eax
41e113:	40                   	inc    %eax
41e114:	c3                   	ret
41e115:	8b 65 e8             	mov    -0x18(%ebp),%esp
41e118:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
41e11c:	8b 45 e4             	mov    -0x1c(%ebp),%eax
41e11f:	e8 ff a0 ff ff       	call   0x418223
41e124:	c3                   	ret
41e125:	55                   	push   %ebp
41e126:	8b ec                	mov    %esp,%ebp
41e128:	83 ec 20             	sub    $0x20,%esp
41e12b:	a1 40 8b 4a 00       	mov    0x4a8b40,%eax
41e130:	89 45 fc             	mov    %eax,-0x4(%ebp)
41e133:	33 c0                	xor    %eax,%eax
41e135:	53                   	push   %ebx
41e136:	56                   	push   %esi
41e137:	89 45 e4             	mov    %eax,-0x1c(%ebp)
41e13a:	89 45 e8             	mov    %eax,-0x18(%ebp)
41e13d:	88 45 ec             	mov    %al,-0x14(%ebp)
41e140:	53                   	push   %ebx
41e141:	9c                   	pushf
41e142:	58                   	pop    %eax
41e143:	8b c8                	mov    %eax,%ecx
41e145:	35 00 00 20 00       	xor    $0x200000,%eax
41e14a:	50                   	push   %eax
41e14b:	9d                   	popf
41e14c:	9c                   	pushf
41e14d:	5a                   	pop    %edx
41e14e:	2b d1                	sub    %ecx,%edx
41e150:	74 1f                	je     0x41e171
41e152:	51                   	push   %ecx
41e153:	9d                   	popf
41e154:	33 c0                	xor    %eax,%eax
41e156:	0f a2                	cpuid
41e158:	89 45 e0             	mov    %eax,-0x20(%ebp)
41e15b:	89 5d ec             	mov    %ebx,-0x14(%ebp)
41e15e:	89 55 f0             	mov    %edx,-0x10(%ebp)
41e161:	89 4d f4             	mov    %ecx,-0xc(%ebp)
41e164:	b8 01 00 00 00       	mov    $0x1,%eax
41e169:	0f a2                	cpuid
41e16b:	89 55 e4             	mov    %edx,-0x1c(%ebp)
41e16e:	89 45 e8             	mov    %eax,-0x18(%ebp)
41e171:	5b                   	pop    %ebx
41e172:	83 25 14 e1 4a 00 00 	andl   $0x0,0x4ae114
41e179:	83 25 04 e1 4a 00 00 	andl   $0x0,0x4ae104
41e180:	f6 45 e7 04          	testb  $0x4,-0x19(%ebp)
41e184:	74 5f                	je     0x41e1e5
41e186:	e8 65 ff ff ff       	call   0x41e0f0
41e18b:	85 c0                	test   %eax,%eax
41e18d:	74 56                	je     0x41e1e5
41e18f:	6a 0c                	push   $0xc
41e191:	8d 45 ec             	lea    -0x14(%ebp),%eax
41e194:	33 f6                	xor    %esi,%esi
41e196:	50                   	push   %eax
41e197:	46                   	inc    %esi
41e198:	68 a4 20 49 00       	push   $0x4920a4
41e19d:	89 35 14 e1 4a 00    	mov    %esi,0x4ae114
41e1a3:	e8 58 56 00 00       	call   0x423800
41e1a8:	83 c4 0c             	add    $0xc,%esp
41e1ab:	85 c0                	test   %eax,%eax
41e1ad:	75 30                	jne    0x41e1df
41e1af:	8b 4d e8             	mov    -0x18(%ebp),%ecx
41e1b2:	8b c1                	mov    %ecx,%eax
41e1b4:	c1 f8 08             	sar    $0x8,%eax
41e1b7:	83 e0 0f             	and    $0xf,%eax
41e1ba:	c1 f9 14             	sar    $0x14,%ecx
41e1bd:	8b d0                	mov    %eax,%edx
41e1bf:	83 ea 0f             	sub    $0xf,%edx
41e1c2:	81 e1 ff 00 00 00    	and    $0xff,%ecx
41e1c8:	f7 da                	neg    %edx
41e1ca:	1b d2                	sbb    %edx,%edx
41e1cc:	f7 d2                	not    %edx
41e1ce:	23 d1                	and    %ecx,%edx
41e1d0:	03 d0                	add    %eax,%edx
41e1d2:	83 ea 0f             	sub    $0xf,%edx
41e1d5:	f7 da                	neg    %edx
41e1d7:	1b d2                	sbb    %edx,%edx
41e1d9:	42                   	inc    %edx
41e1da:	89 55 e0             	mov    %edx,-0x20(%ebp)
41e1dd:	75 06                	jne    0x41e1e5
41e1df:	89 35 04 e1 4a 00    	mov    %esi,0x4ae104
41e1e5:	8b 4d fc             	mov    -0x4(%ebp),%ecx
41e1e8:	33 c0                	xor    %eax,%eax
41e1ea:	e8 ef 99 ff ff       	call   0x417bde
41e1ef:	5e                   	pop    %esi
41e1f0:	5b                   	pop    %ebx
41e1f1:	c9                   	leave
41e1f2:	c3                   	ret
41e1f3:	8b 44 24 04          	mov    0x4(%esp),%eax
41e1f7:	f7 d8                	neg    %eax
41e1f9:	1b c0                	sbb    %eax,%eax
41e1fb:	23 05 14 e1 4a 00    	and    0x4ae114,%eax
41e201:	a3 04 e1 4a 00       	mov    %eax,0x4ae104
41e206:	c3                   	ret
41e207:	55                   	push   %ebp
41e208:	8b ec                	mov    %esp,%ebp
41e20a:	51                   	push   %ecx
41e20b:	51                   	push   %ecx
41e20c:	53                   	push   %ebx
41e20d:	56                   	push   %esi
41e20e:	be ff ff 00 00       	mov    $0xffff,%esi
41e213:	56                   	push   %esi
41e214:	ff 35 c4 8f 4a 00    	push   0x4a8fc4
41e21a:	e8 34 6b 00 00       	call   0x424d53
41e21f:	dd 45 08             	fldl   0x8(%ebp)
41e222:	59                   	pop    %ecx
41e223:	59                   	pop    %ecx
41e224:	8b d8                	mov    %eax,%ebx
41e226:	8b 45 0e             	mov    0xe(%ebp),%eax
41e229:	51                   	push   %ecx
41e22a:	66 25 f0 7f          	and    $0x7ff0,%ax
41e22e:	66 3d f0 7f          	cmp    $0x7ff0,%ax
41e232:	51                   	push   %ecx
41e233:	dd 1c 24             	fstpl  (%esp)
41e236:	75 55                	jne    0x41e28d
41e238:	e8 e8 69 00 00       	call   0x424c25
41e23d:	85 c0                	test   %eax,%eax
41e23f:	59                   	pop    %ecx
41e240:	59                   	pop    %ecx
41e241:	7e 2d                	jle    0x41e270
41e243:	83 f8 02             	cmp    $0x2,%eax
41e246:	7e 1a                	jle    0x41e262
41e248:	83 f8 03             	cmp    $0x3,%eax
41e24b:	75 23                	jne    0x41e270
41e24d:	dd 45 08             	fldl   0x8(%ebp)
41e250:	53                   	push   %ebx
41e251:	51                   	push   %ecx
41e252:	51                   	push   %ecx
41e253:	dd 1c 24             	fstpl  (%esp)
41e256:	6a 0c                	push   $0xc
41e258:	e8 f6 66 00 00       	call   0x424953
41e25d:	83 c4 10             	add    $0x10,%esp
41e260:	eb 74                	jmp    0x41e2d6
41e262:	56                   	push   %esi
41e263:	53                   	push   %ebx
41e264:	e8 ea 6a 00 00       	call   0x424d53
41e269:	dd 45 08             	fldl   0x8(%ebp)
41e26c:	59                   	pop    %ecx
41e26d:	59                   	pop    %ecx
41e26e:	eb 66                	jmp    0x41e2d6
41e270:	dd 45 08             	fldl   0x8(%ebp)
41e273:	53                   	push   %ebx
41e274:	dc 05 28 1f 49 00    	faddl  0x491f28
41e27a:	83 ec 10             	sub    $0x10,%esp
41e27d:	dd 5c 24 08          	fstpl  0x8(%esp)
41e281:	dd 45 08             	fldl   0x8(%ebp)
41e284:	dd 1c 24             	fstpl  (%esp)
41e287:	6a 0c                	push   $0xc
41e289:	6a 08                	push   $0x8
41e28b:	eb 41                	jmp    0x41e2ce
41e28d:	e8 f4 68 00 00       	call   0x424b86
41e292:	dd 5d f8             	fstpl  -0x8(%ebp)
41e295:	dd 45 08             	fldl   0x8(%ebp)
41e298:	59                   	pop    %ecx
41e299:	dd 45 f8             	fldl   -0x8(%ebp)
41e29c:	59                   	pop    %ecx
41e29d:	da e9                	fucompp
41e29f:	df e0                	fnstsw %ax
41e2a1:	f6 c4 44             	test   $0x44,%ah
41e2a4:	7a 0e                	jp     0x41e2b4
41e2a6:	56                   	push   %esi
41e2a7:	53                   	push   %ebx
41e2a8:	e8 a6 6a 00 00       	call   0x424d53
41e2ad:	dd 45 f8             	fldl   -0x8(%ebp)
41e2b0:	59                   	pop    %ecx
41e2b1:	59                   	pop    %ecx
41e2b2:	eb 22                	jmp    0x41e2d6
41e2b4:	f6 c3 20             	test   $0x20,%bl
41e2b7:	75 ed                	jne    0x41e2a6
41e2b9:	dd 45 f8             	fldl   -0x8(%ebp)
41e2bc:	53                   	push   %ebx
41e2bd:	83 ec 10             	sub    $0x10,%esp
41e2c0:	dd 5c 24 08          	fstpl  0x8(%esp)
41e2c4:	dd 45 08             	fldl   0x8(%ebp)
41e2c7:	dd 1c 24             	fstpl  (%esp)
41e2ca:	6a 0c                	push   $0xc
41e2cc:	6a 10                	push   $0x10
41e2ce:	e8 32 67 00 00       	call   0x424a05
41e2d3:	83 c4 1c             	add    $0x1c,%esp
41e2d6:	5e                   	pop    %esi
41e2d7:	5b                   	pop    %ebx
41e2d8:	c9                   	leave
41e2d9:	c3                   	ret
41e2da:	55                   	push   %ebp
41e2db:	8b ec                	mov    %esp,%ebp
41e2dd:	53                   	push   %ebx
41e2de:	56                   	push   %esi
41e2df:	8b 75 0c             	mov    0xc(%ebp),%esi
41e2e2:	8b 46 0c             	mov    0xc(%esi),%eax
41e2e5:	a8 82                	test   $0x82,%al
41e2e7:	8b 5e 10             	mov    0x10(%esi),%ebx
41e2ea:	0f 84 f6 00 00 00    	je     0x41e3e6
41e2f0:	a8 40                	test   $0x40,%al
41e2f2:	0f 85 ee 00 00 00    	jne    0x41e3e6
41e2f8:	a8 01                	test   $0x1,%al
41e2fa:	74 17                	je     0x41e313
41e2fc:	83 66 04 00          	andl   $0x0,0x4(%esi)
41e300:	a8 10                	test   $0x10,%al
41e302:	0f 84 de 00 00 00    	je     0x41e3e6
41e308:	8b 4e 08             	mov    0x8(%esi),%ecx
41e30b:	83 e0 fe             	and    $0xfffffffe,%eax
41e30e:	89 0e                	mov    %ecx,(%esi)
41e310:	89 46 0c             	mov    %eax,0xc(%esi)
41e313:	8b 46 0c             	mov    0xc(%esi),%eax
41e316:	83 66 04 00          	andl   $0x0,0x4(%esi)
41e31a:	83 65 0c 00          	andl   $0x0,0xc(%ebp)
41e31e:	83 e0 ef             	and    $0xffffffef,%eax
41e321:	83 c8 02             	or     $0x2,%eax
41e324:	66 a9 0c 01          	test   $0x10c,%ax
41e328:	89 46 0c             	mov    %eax,0xc(%esi)
41e32b:	75 22                	jne    0x41e34f
41e32d:	81 fe f0 8f 4a 00    	cmp    $0x4a8ff0,%esi
41e333:	74 08                	je     0x41e33d
41e335:	81 fe 10 90 4a 00    	cmp    $0x4a9010,%esi
41e33b:	75 0b                	jne    0x41e348
41e33d:	53                   	push   %ebx
41e33e:	e8 ce 6a 00 00       	call   0x424e11
41e343:	85 c0                	test   %eax,%eax
41e345:	59                   	pop    %ecx
41e346:	75 07                	jne    0x41e34f
41e348:	56                   	push   %esi
41e349:	e8 7f 6a 00 00       	call   0x424dcd
41e34e:	59                   	pop    %ecx
41e34f:	66 f7 46 0c 08 01    	testw  $0x108,0xc(%esi)
41e355:	57                   	push   %edi
41e356:	74 64                	je     0x41e3bc
41e358:	8b 46 08             	mov    0x8(%esi),%eax
41e35b:	8b 3e                	mov    (%esi),%edi
41e35d:	8d 48 01             	lea    0x1(%eax),%ecx
41e360:	89 0e                	mov    %ecx,(%esi)
41e362:	8b 4e 18             	mov    0x18(%esi),%ecx
41e365:	2b f8                	sub    %eax,%edi
41e367:	49                   	dec    %ecx
41e368:	85 ff                	test   %edi,%edi
41e36a:	89 4e 04             	mov    %ecx,0x4(%esi)
41e36d:	7e 0d                	jle    0x41e37c
41e36f:	57                   	push   %edi
41e370:	50                   	push   %eax
41e371:	53                   	push   %ebx
41e372:	e8 3e 48 00 00       	call   0x422bb5
41e377:	89 45 0c             	mov    %eax,0xc(%ebp)
41e37a:	eb 33                	jmp    0x41e3af
41e37c:	83 fb ff             	cmp    $0xffffffff,%ebx
41e37f:	74 19                	je     0x41e39a
41e381:	8b cb                	mov    %ebx,%ecx
41e383:	c1 f9 05             	sar    $0x5,%ecx
41e386:	8b 0c 8d c0 cc 4a 00 	mov    0x4accc0(,%ecx,4),%ecx
41e38d:	8b c3                	mov    %ebx,%eax
41e38f:	83 e0 1f             	and    $0x1f,%eax
41e392:	8d 04 c0             	lea    (%eax,%eax,8),%eax
41e395:	8d 04 81             	lea    (%ecx,%eax,4),%eax
41e398:	eb 05                	jmp    0x41e39f
41e39a:	b8 70 93 4a 00       	mov    $0x4a9370,%eax
41e39f:	f6 40 04 20          	testb  $0x20,0x4(%eax)
41e3a3:	74 0d                	je     0x41e3b2
41e3a5:	6a 02                	push   $0x2
41e3a7:	6a 00                	push   $0x0
41e3a9:	53                   	push   %ebx
41e3aa:	e8 25 49 00 00       	call   0x422cd4
41e3af:	83 c4 0c             	add    $0xc,%esp
41e3b2:	8b 46 08             	mov    0x8(%esi),%eax
41e3b5:	8a 4d 08             	mov    0x8(%ebp),%cl
41e3b8:	88 08                	mov    %cl,(%eax)
41e3ba:	eb 14                	jmp    0x41e3d0
41e3bc:	33 ff                	xor    %edi,%edi
41e3be:	47                   	inc    %edi
41e3bf:	57                   	push   %edi
41e3c0:	8d 45 08             	lea    0x8(%ebp),%eax
41e3c3:	50                   	push   %eax
41e3c4:	53                   	push   %ebx
41e3c5:	e8 eb 47 00 00       	call   0x422bb5
41e3ca:	83 c4 0c             	add    $0xc,%esp
41e3cd:	89 45 0c             	mov    %eax,0xc(%ebp)
41e3d0:	39 7d 0c             	cmp    %edi,0xc(%ebp)
41e3d3:	5f                   	pop    %edi
41e3d4:	74 06                	je     0x41e3dc
41e3d6:	83 4e 0c 20          	orl    $0x20,0xc(%esi)
41e3da:	eb 10                	jmp    0x41e3ec
41e3dc:	8b 45 08             	mov    0x8(%ebp),%eax
41e3df:	25 ff 00 00 00       	and    $0xff,%eax
41e3e4:	eb 09                	jmp    0x41e3ef
41e3e6:	83 c8 20             	or     $0x20,%eax
41e3e9:	89 46 0c             	mov    %eax,0xc(%esi)
41e3ec:	83 c8 ff             	or     $0xffffffff,%eax
41e3ef:	5e                   	pop    %esi
41e3f0:	5b                   	pop    %ebx
41e3f1:	5d                   	pop    %ebp
41e3f2:	c3                   	ret
41e3f3:	f6 41 0c 40          	testb  $0x40,0xc(%ecx)
41e3f7:	74 06                	je     0x41e3ff
41e3f9:	83 79 08 00          	cmpl   $0x0,0x8(%ecx)
41e3fd:	74 24                	je     0x41e423
41e3ff:	ff 49 04             	decl   0x4(%ecx)
41e402:	78 0b                	js     0x41e40f
41e404:	8b 11                	mov    (%ecx),%edx
41e406:	88 02                	mov    %al,(%edx)
41e408:	ff 01                	incl   (%ecx)
41e40a:	0f b6 c0             	movzbl %al,%eax
41e40d:	eb 0c                	jmp    0x41e41b
41e40f:	0f be c0             	movsbl %al,%eax
41e412:	51                   	push   %ecx
41e413:	50                   	push   %eax
41e414:	e8 c1 fe ff ff       	call   0x41e2da