44e058:	eb e8                	jmp    0x44e042
44e05a:	8b 45 fc             	mov    -0x4(%ebp),%eax
44e05d:	8a 50 5b             	mov    0x5b(%eax),%dl
44e060:	8b c2                	mov    %edx,%eax
44e062:	84 c0                	test   %al,%al
44e064:	74 06                	je     0x44e06c
44e066:	04 fd                	add    $0xfd,%al
44e068:	2c 02                	sub    $0x2,%al
44e06a:	73 37                	jae    0x44e0a3
44e06c:	8b 45 e0             	mov    -0x20(%ebp),%eax
44e06f:	2b 45 d8             	sub    -0x28(%ebp),%eax
44e072:	85 c0                	test   %eax,%eax
44e074:	7e 26                	jle    0x44e09c
44e076:	8b 4d fc             	mov    -0x4(%ebp),%ecx
44e079:	03 41 48             	add    0x48(%ecx),%eax
44e07c:	8b 4d d0             	mov    -0x30(%ebp),%ecx
44e07f:	2b 4d c8             	sub    -0x38(%ebp),%ecx
44e082:	2b c1                	sub    %ecx,%eax
44e084:	8b 4d f8             	mov    -0x8(%ebp),%ecx
44e087:	89 01                	mov    %eax,(%ecx)
44e089:	80 fa 04             	cmp    $0x4,%dl
44e08c:	75 15                	jne    0x44e0a3
44e08e:	8b 45 fc             	mov    -0x4(%ebp),%eax
44e091:	66 be d0 ff          	mov    $0xffd0,%si
44e095:	e8 22 54 fb ff       	call   0x4034bc
44e09a:	eb 07                	jmp    0x44e0a3
44e09c:	8b 45 f8             	mov    -0x8(%ebp),%eax
44e09f:	33 d2                	xor    %edx,%edx
44e0a1:	89 10                	mov    %edx,(%eax)
44e0a3:	8b 45 fc             	mov    -0x4(%ebp),%eax
44e0a6:	8a 50 5b             	mov    0x5b(%eax),%dl
44e0a9:	8b c2                	mov    %edx,%eax
44e0ab:	2c 03                	sub    $0x3,%al
44e0ad:	73 37                	jae    0x44e0e6
44e0af:	8b 45 e4             	mov    -0x1c(%ebp),%eax
44e0b2:	2b 45 dc             	sub    -0x24(%ebp),%eax
44e0b5:	85 c0                	test   %eax,%eax
44e0b7:	7e 26                	jle    0x44e0df
44e0b9:	8b 4d fc             	mov    -0x4(%ebp),%ecx
44e0bc:	03 41 4c             	add    0x4c(%ecx),%eax
44e0bf:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
44e0c2:	2b 4d cc             	sub    -0x34(%ebp),%ecx
44e0c5:	2b c1                	sub    %ecx,%eax
44e0c7:	8b 4d f4             	mov    -0xc(%ebp),%ecx
44e0ca:	89 01                	mov    %eax,(%ecx)
44e0cc:	80 fa 02             	cmp    $0x2,%dl
44e0cf:	75 15                	jne    0x44e0e6
44e0d1:	8b 45 fc             	mov    -0x4(%ebp),%eax
44e0d4:	66 be d0 ff          	mov    $0xffd0,%si
44e0d8:	e8 df 53 fb ff       	call   0x4034bc
44e0dd:	eb 07                	jmp    0x44e0e6
44e0df:	8b 45 f4             	mov    -0xc(%ebp),%eax
44e0e2:	33 d2                	xor    %edx,%edx
44e0e4:	89 10                	mov    %edx,(%eax)
44e0e6:	8a 45 f3             	mov    -0xd(%ebp),%al
44e0e9:	5f                   	pop    %edi
44e0ea:	5e                   	pop    %esi
44e0eb:	5b                   	pop    %ebx
44e0ec:	8b e5                	mov    %ebp,%esp
44e0ee:	5d                   	pop    %ebp
44e0ef:	c3                   	ret
44e0f0:	83 ea 01             	sub    $0x1,%edx
44e0f3:	72 04                	jb     0x44e0f9
44e0f5:	74 1f                	je     0x44e116
44e0f7:	eb 39                	jmp    0x44e132
44e0f9:	3a 88 63 01 00 00    	cmp    0x163(%eax),%cl
44e0ff:	74 31                	je     0x44e132
44e101:	88 88 63 01 00 00    	mov    %cl,0x163(%eax)
44e107:	6a 00                	push   $0x0
44e109:	33 c9                	xor    %ecx,%ecx
44e10b:	ba 3b b0 00 00       	mov    $0xb03b,%edx
44e110:	e8 93 9c ff ff       	call   0x447da8
44e115:	c3                   	ret
44e116:	3a 88 64 01 00 00    	cmp    0x164(%eax),%cl
44e11c:	74 14                	je     0x44e132
44e11e:	88 88 64 01 00 00    	mov    %cl,0x164(%eax)
44e124:	6a 00                	push   $0x0
44e126:	33 c9                	xor    %ecx,%ecx
44e128:	ba 3b b0 00 00       	mov    $0xb03b,%edx
44e12d:	e8 76 9c ff ff       	call   0x447da8
44e132:	c3                   	ret
44e133:	90                   	nop
44e134:	53                   	push   %ebx
44e135:	51                   	push   %ecx
44e136:	88 14 24             	mov    %dl,(%esp)
44e139:	8b d8                	mov    %eax,%ebx
44e13b:	8a 83 62 01 00 00    	mov    0x162(%ebx),%al
44e141:	3a 04 24             	cmp    (%esp),%al
44e144:	74 19                	je     0x44e15f
44e146:	8a 04 24             	mov    (%esp),%al
44e149:	88 83 62 01 00 00    	mov    %al,0x162(%ebx)
44e14f:	6a 00                	push   $0x0
44e151:	33 c9                	xor    %ecx,%ecx
44e153:	ba 3b b0 00 00       	mov    $0xb03b,%edx
44e158:	8b c3                	mov    %ebx,%eax
44e15a:	e8 49 9c ff ff       	call   0x447da8
44e15f:	5a                   	pop    %edx
44e160:	5b                   	pop    %ebx
44e161:	c3                   	ret
44e162:	8b c0                	mov    %eax,%eax
44e164:	3a 90 65 01 00 00    	cmp    0x165(%eax),%dl
44e16a:	74 14                	je     0x44e180
44e16c:	88 90 65 01 00 00    	mov    %dl,0x165(%eax)
44e172:	6a 00                	push   $0x0
44e174:	33 c9                	xor    %ecx,%ecx
44e176:	ba 3b b0 00 00       	mov    $0xb03b,%edx
44e17b:	e8 28 9c ff ff       	call   0x447da8
44e180:	c3                   	ret
44e181:	8d 40 00             	lea    0x0(%eax),%eax
44e184:	3b 90 68 01 00 00    	cmp    0x168(%eax),%edx
44e18a:	74 14                	je     0x44e1a0
44e18c:	89 90 68 01 00 00    	mov    %edx,0x168(%eax)
44e192:	6a 00                	push   $0x0
44e194:	33 c9                	xor    %ecx,%ecx
44e196:	ba 3b b0 00 00       	mov    $0xb03b,%edx
44e19b:	e8 08 9c ff ff       	call   0x447da8
44e1a0:	c3                   	ret
44e1a1:	8d 40 00             	lea    0x0(%eax),%eax
44e1a4:	53                   	push   %ebx
44e1a5:	56                   	push   %esi
44e1a6:	57                   	push   %edi
44e1a7:	8b f2                	mov    %edx,%esi
44e1a9:	8b d8                	mov    %eax,%ebx
44e1ab:	8b d6                	mov    %esi,%edx
44e1ad:	8b c3                	mov    %ebx,%eax
44e1af:	8b 08                	mov    (%eax),%ecx
44e1b1:	ff 51 f0             	call   *-0x10(%ecx)
44e1b4:	8b 46 08             	mov    0x8(%esi),%eax
44e1b7:	8b f0                	mov    %eax,%esi
44e1b9:	8b 83 6c 01 00 00    	mov    0x16c(%ebx),%eax
44e1bf:	f7 d8                	neg    %eax
44e1c1:	50                   	push   %eax
44e1c2:	8b 93 6c 01 00 00    	mov    0x16c(%ebx),%edx
44e1c8:	f7 da                	neg    %edx
44e1ca:	50                   	push   %eax
44e1cb:	8b fe                	mov    %esi,%edi
44e1cd:	57                   	push   %edi
44e1ce:	e8 b9 87 fb ff       	call   0x40698c
44e1d3:	80 bb 65 01 00 00 00 	cmpb   $0x0,0x165(%ebx)
44e1da:	74 51                	je     0x44e22d
44e1dc:	33 c0                	xor    %eax,%eax
44e1de:	80 bb 63 01 00 00 00 	cmpb   $0x0,0x163(%ebx)
44e1e5:	74 06                	je     0x44e1ed
44e1e7:	03 83 68 01 00 00    	add    0x168(%ebx),%eax
44e1ed:	80 bb 64 01 00 00 00 	cmpb   $0x0,0x164(%ebx)
44e1f4:	74 06                	je     0x44e1fc
44e1f6:	03 83 68 01 00 00    	add    0x168(%ebx),%eax
44e1fc:	8b f7                	mov    %edi,%esi
44e1fe:	f6 83 62 01 00 00 01 	testb  $0x1,0x162(%ebx)
44e205:	74 02                	je     0x44e209
44e207:	01 06                	add    %eax,(%esi)
44e209:	f6 83 62 01 00 00 02 	testb  $0x2,0x162(%ebx)
44e210:	74 03                	je     0x44e215
44e212:	01 46 04             	add    %eax,0x4(%esi)
44e215:	f6 83 62 01 00 00 04 	testb  $0x4,0x162(%ebx)
44e21c:	74 03                	je     0x44e221
44e21e:	29 46 08             	sub    %eax,0x8(%esi)
44e221:	f6 83 62 01 00 00 08 	testb  $0x8,0x162(%ebx)
44e228:	74 03                	je     0x44e22d
44e22a:	29 46 0c             	sub    %eax,0xc(%esi)
44e22d:	5f                   	pop    %edi
44e22e:	5e                   	pop    %esi
44e22f:	5b                   	pop    %ebx
44e230:	c3                   	ret
44e231:	8d 40 00             	lea    0x0(%eax),%eax
44e234:	55                   	push   %ebp
44e235:	8b ec                	mov    %esp,%ebp
44e237:	83 c4 c4             	add    $0xffffffc4,%esp
44e23a:	53                   	push   %ebx
44e23b:	56                   	push   %esi
44e23c:	57                   	push   %edi
44e23d:	89 55 f8             	mov    %edx,-0x8(%ebp)
44e240:	89 45 fc             	mov    %eax,-0x4(%ebp)
44e243:	8b 45 fc             	mov    -0x4(%ebp),%eax
44e246:	80 b8 65 01 00 00 00 	cmpb   $0x0,0x165(%eax)
44e24d:	75 10                	jne    0x44e25f
44e24f:	8b 45 fc             	mov    -0x4(%ebp),%eax
44e252:	83 b8 6c 01 00 00 00 	cmpl   $0x0,0x16c(%eax)
44e259:	0f 86 42 02 00 00    	jbe    0x44e4a1
44e25f:	8b 45 fc             	mov    -0x4(%ebp),%eax
44e262:	e8 75 f1 ff ff       	call   0x44d3dc
44e267:	50                   	push   %eax
44e268:	e8 e7 86 fb ff       	call   0x406954
44e26d:	89 45 f4             	mov    %eax,-0xc(%ebp)
44e270:	33 d2                	xor    %edx,%edx
44e272:	55                   	push   %ebp
44e273:	68 9a e4 44 00       	push   $0x44e49a
44e278:	64 ff 32             	push   %fs:(%edx)
44e27b:	64 89 22             	mov    %esp,%fs:(%edx)
44e27e:	8d 45 e4             	lea    -0x1c(%ebp),%eax
44e281:	50                   	push   %eax
44e282:	8b 45 fc             	mov    -0x4(%ebp),%eax
44e285:	e8 52 f1 ff ff       	call   0x44d3dc
44e28a:	50                   	push   %eax
44e28b:	e8 9c 85 fb ff       	call   0x40682c
44e290:	8d 45 d4             	lea    -0x2c(%ebp),%eax
44e293:	50                   	push   %eax
44e294:	8b 45 fc             	mov    -0x4(%ebp),%eax
44e297:	e8 40 f1 ff ff       	call   0x44d3dc
44e29c:	50                   	push   %eax
44e29d:	e8 ca 86 fb ff       	call   0x40696c
44e2a2:	6a 02                	push   $0x2
44e2a4:	8d 45 d4             	lea    -0x2c(%ebp),%eax
44e2a7:	50                   	push   %eax
44e2a8:	8b 45 fc             	mov    -0x4(%ebp),%eax
44e2ab:	e8 2c f1 ff ff       	call   0x44d3dc
44e2b0:	50                   	push   %eax
44e2b1:	6a 00                	push   $0x0
44e2b3:	e8 74 87 fb ff       	call   0x406a2c
44e2b8:	8b 45 d8             	mov    -0x28(%ebp),%eax
44e2bb:	f7 d8                	neg    %eax
44e2bd:	50                   	push   %eax
44e2be:	8b 45 d4             	mov    -0x2c(%ebp),%eax
44e2c1:	f7 d8                	neg    %eax
44e2c3:	50                   	push   %eax
44e2c4:	8d 45 e4             	lea    -0x1c(%ebp),%eax
44e2c7:	50                   	push   %eax
44e2c8:	e8 77 87 fb ff       	call   0x406a44
44e2cd:	8b 45 f0             	mov    -0x10(%ebp),%eax
44e2d0:	50                   	push   %eax
44e2d1:	8b 45 ec             	mov    -0x14(%ebp),%eax
44e2d4:	50                   	push   %eax
44e2d5:	8b 45 e8             	mov    -0x18(%ebp),%eax
44e2d8:	50                   	push   %eax
44e2d9:	8b 45 e4             	mov    -0x1c(%ebp),%eax
44e2dc:	50                   	push   %eax
44e2dd:	8b 45 f4             	mov    -0xc(%ebp),%eax
44e2e0:	50                   	push   %eax
44e2e1:	e8 5e 82 fb ff       	call   0x406544
44e2e6:	8d 75 d4             	lea    -0x2c(%ebp),%esi
44e2e9:	8d 7d c4             	lea    -0x3c(%ebp),%edi
44e2ec:	a5                   	movsl  %ds:(%esi),%es:(%edi)
44e2ed:	a5                   	movsl  %ds:(%esi),%es:(%edi)
44e2ee:	a5                   	movsl  %ds:(%esi),%es:(%edi)
44e2ef:	a5                   	movsl  %ds:(%esi),%es:(%edi)
44e2f0:	8b 45 fc             	mov    -0x4(%ebp),%eax
44e2f3:	8b 80 6c 01 00 00    	mov    0x16c(%eax),%eax
44e2f9:	50                   	push   %eax
44e2fa:	50                   	push   %eax
44e2fb:	8d 45 e4             	lea    -0x1c(%ebp),%eax
44e2fe:	50                   	push   %eax
44e2ff:	e8 88 86 fb ff       	call   0x40698c
44e304:	8d 75 e4             	lea    -0x1c(%ebp),%esi
44e307:	8d 7d d4             	lea    -0x2c(%ebp),%edi
44e30a:	a5                   	movsl  %ds:(%esi),%es:(%edi)
44e30b:	a5                   	movsl  %ds:(%esi),%es:(%edi)
44e30c:	a5                   	movsl  %ds:(%esi),%es:(%edi)
44e30d:	a5                   	movsl  %ds:(%esi),%es:(%edi)
44e30e:	8b 45 fc             	mov    -0x4(%ebp),%eax
44e311:	80 b8 65 01 00 00 00 	cmpb   $0x0,0x165(%eax)
44e318:	0f 84 08 01 00 00    	je     0x44e426
44e31e:	33 db                	xor    %ebx,%ebx
44e320:	8b 45 fc             	mov    -0x4(%ebp),%eax
44e323:	80 b8 63 01 00 00 00 	cmpb   $0x0,0x163(%eax)
44e32a:	74 09                	je     0x44e335
44e32c:	8b 45 fc             	mov    -0x4(%ebp),%eax
44e32f:	03 98 68 01 00 00    	add    0x168(%eax),%ebx
44e335:	8b 45 fc             	mov    -0x4(%ebp),%eax
44e338:	80 b8 64 01 00 00 00 	cmpb   $0x0,0x164(%eax)
44e33f:	74 09                	je     0x44e34a
44e341:	8b 45 fc             	mov    -0x4(%ebp),%eax
44e344:	03 98 68 01 00 00    	add    0x168(%eax),%ebx
44e34a:	6a f0                	push   $0xfffffff0
44e34c:	8b 45 fc             	mov    -0x4(%ebp),%eax
44e34f:	e8 88 f0 ff ff       	call   0x44d3dc
44e354:	50                   	push   %eax
44e355:	e8 02 86 fb ff       	call   0x40695c
44e35a:	8b f0                	mov    %eax,%esi
44e35c:	8b 45 fc             	mov    -0x4(%ebp),%eax
44e35f:	f6 80 62 01 00 00 01 	testb  $0x1,0x162(%eax)
44e366:	74 03                	je     0x44e36b
44e368:	29 5d d4             	sub    %ebx,-0x2c(%ebp)
44e36b:	8b 45 fc             	mov    -0x4(%ebp),%eax
44e36e:	f6 80 62 01 00 00 02 	testb  $0x2,0x162(%eax)
44e375:	74 03                	je     0x44e37a
44e377:	29 5d d8             	sub    %ebx,-0x28(%ebp)
44e37a:	8b 45 fc             	mov    -0x4(%ebp),%eax
44e37d:	f6 80 62 01 00 00 04 	testb  $0x4,0x162(%eax)
44e384:	74 03                	je     0x44e389
44e386:	01 5d dc             	add    %ebx,-0x24(%ebp)
44e389:	f7 c6 00 00 20 00    	test   $0x200000,%esi
44e38f:	74 0e                	je     0x44e39f
44e391:	6a 14                	push   $0x14
44e393:	a1 0c 46 47 00       	mov    0x47460c,%eax
44e398:	8b 00                	mov    (%eax),%eax
44e39a:	ff d0                	call   *%eax
44e39c:	01 45 dc             	add    %eax,-0x24(%ebp)
44e39f:	8b 45 fc             	mov    -0x4(%ebp),%eax
44e3a2:	f6 80 62 01 00 00 08 	testb  $0x8,0x162(%eax)
44e3a9:	74 03                	je     0x44e3ae
44e3ab:	01 5d e0             	add    %ebx,-0x20(%ebp)
44e3ae:	f7 c6 00 00 10 00    	test   $0x100000,%esi
44e3b4:	74 0e                	je     0x44e3c4
44e3b6:	6a 15                	push   $0x15
44e3b8:	a1 0c 46 47 00       	mov    0x47460c,%eax
44e3bd:	8b 00                	mov    (%eax),%eax
44e3bf:	ff d0                	call   *%eax
44e3c1:	01 45 e0             	add    %eax,-0x20(%ebp)
44e3c4:	8b 45 fc             	mov    -0x4(%ebp),%eax
44e3c7:	0f b6 80 62 01 00 00 	movzbl 0x162(%eax),%eax
44e3ce:	8b 55 fc             	mov    -0x4(%ebp),%edx
44e3d1:	0f b6 92 65 01 00 00 	movzbl 0x165(%edx),%edx
44e3d8:	0b 04 95 5c 9c 46 00 	or     0x469c5c(,%edx,4),%eax
44e3df:	8b 55 fc             	mov    -0x4(%ebp),%edx
44e3e2:	0f b6 92 a5 01 00 00 	movzbl 0x1a5(%edx),%edx
44e3e9:	0b 04 95 6c 9c 46 00 	or     0x469c6c(,%edx,4),%eax
44e3f0:	0d 00 20 00 00       	or     $0x2000,%eax
44e3f5:	50                   	push   %eax
44e3f6:	8b 45 fc             	mov    -0x4(%ebp),%eax
44e3f9:	0f b6 80 63 01 00 00 	movzbl 0x163(%eax),%eax
44e400:	8b 04 85 3c 9c 46 00 	mov    0x469c3c(,%eax,4),%eax
44e407:	8b 55 fc             	mov    -0x4(%ebp),%edx
44e40a:	0f b6 92 64 01 00 00 	movzbl 0x164(%edx),%edx
44e411:	0b 04 95 4c 9c 46 00 	or     0x469c4c(,%edx,4),%eax
44e418:	50                   	push   %eax
44e419:	8d 45 d4             	lea    -0x2c(%ebp),%eax
44e41c:	50                   	push   %eax
44e41d:	8b 45 f4             	mov    -0xc(%ebp),%eax
44e420:	50                   	push   %eax
44e421:	e8 66 83 fb ff       	call   0x40678c
44e426:	8b 45 e0             	mov    -0x20(%ebp),%eax
44e429:	50                   	push   %eax
44e42a:	8b 45 dc             	mov    -0x24(%ebp),%eax
44e42d:	50                   	push   %eax
44e42e:	8b 45 d8             	mov    -0x28(%ebp),%eax
44e431:	50                   	push   %eax
44e432:	8b 45 d4             	mov    -0x2c(%ebp),%eax
44e435:	50                   	push   %eax
44e436:	8b 45 f4             	mov    -0xc(%ebp),%eax
44e439:	50                   	push   %eax
44e43a:	e8 ad 81 fb ff       	call   0x4065ec
44e43f:	8d 75 c4             	lea    -0x3c(%ebp),%esi
44e442:	8d 7d d4             	lea    -0x2c(%ebp),%edi
44e445:	a5                   	movsl  %ds:(%esi),%es:(%edi)
44e446:	a5                   	movsl  %ds:(%esi),%es:(%edi)
44e447:	a5                   	movsl  %ds:(%esi),%es:(%edi)
44e448:	a5                   	movsl  %ds:(%esi),%es:(%edi)
44e449:	8b 45 d8             	mov    -0x28(%ebp),%eax
44e44c:	f7 d8                	neg    %eax
44e44e:	50                   	push   %eax
44e44f:	8b 45 d4             	mov    -0x2c(%ebp),%eax
44e452:	f7 d8                	neg    %eax
44e454:	50                   	push   %eax
44e455:	8d 45 d4             	lea    -0x2c(%ebp),%eax
44e458:	50                   	push   %eax
44e459:	e8 e6 85 fb ff       	call   0x406a44
44e45e:	8b 45 fc             	mov    -0x4(%ebp),%eax
44e461:	8b 80 70 01 00 00    	mov    0x170(%eax),%eax
44e467:	e8 d8 61 fd ff       	call   0x424644
44e46c:	50                   	push   %eax