aba158:	66 8b c2             	mov    %dx,%ax
aba15b:	66 2b 45 f4          	sub    -0xc(%ebp),%ax
aba15f:	66 3b 45 f0          	cmp    -0x10(%ebp),%ax
aba163:	77 18                	ja     0xaba17d
aba165:	66 8b c2             	mov    %dx,%ax
aba168:	66 2b 45 f4          	sub    -0xc(%ebp),%ax
aba16c:	66 3b 45 f0          	cmp    -0x10(%ebp),%ax
aba170:	0f b7 c2             	movzwl %dx,%eax
aba173:	77 03                	ja     0xaba178
aba175:	83 e8 20             	sub    $0x20,%eax
aba178:	83 c0 c9             	add    $0xffffffc9,%eax
aba17b:	eb 03                	jmp    0xaba180
aba17d:	83 c8 ff             	or     $0xffffffff,%eax
aba180:	3b c1                	cmp    %ecx,%eax
aba182:	77 28                	ja     0xaba1ac
aba184:	8b 55 e8             	mov    -0x18(%ebp),%edx
aba187:	b3 01                	mov    $0x1,%bl
aba189:	3b d6                	cmp    %esi,%edx
aba18b:	74 06                	je     0xaba193
aba18d:	88 02                	mov    %al,(%edx)
aba18f:	42                   	inc    %edx
aba190:	89 55 e8             	mov    %edx,-0x18(%ebp)
aba193:	8b 07                	mov    (%edi),%eax
aba195:	ff 45 e0             	incl   -0x20(%ebp)
aba198:	6a 30                	push   $0x30
aba19a:	66 8b 10             	mov    (%eax),%dx
aba19d:	83 c0 02             	add    $0x2,%eax
aba1a0:	89 07                	mov    %eax,(%edi)
aba1a2:	66 89 55 f8          	mov    %dx,-0x8(%ebp)
aba1a6:	58                   	pop    %eax
aba1a7:	e9 89 fd ff ff       	jmp    0xab9f35
aba1ac:	8b 45 08             	mov    0x8(%ebp),%eax
aba1af:	8b 00                	mov    (%eax),%eax
aba1b1:	8b 80 88 00 00 00    	mov    0x88(%eax),%eax
aba1b7:	8b 00                	mov    (%eax),%eax
aba1b9:	0f be 08             	movsbl (%eax),%ecx
aba1bc:	0f b7 c2             	movzwl %dx,%eax
aba1bf:	3b c1                	cmp    %ecx,%eax
aba1c1:	0f 85 bb 02 00 00    	jne    0xaba482
aba1c7:	8b 07                	mov    (%edi),%eax
aba1c9:	8b 55 10             	mov    0x10(%ebp),%edx
aba1cc:	8b 75 e4             	mov    -0x1c(%ebp),%esi
aba1cf:	83 c2 08             	add    $0x8,%edx
aba1d2:	66 8b 08             	mov    (%eax),%cx
aba1d5:	83 c0 02             	add    $0x2,%eax
aba1d8:	66 89 4d f8          	mov    %cx,-0x8(%ebp)
aba1dc:	89 07                	mov    %eax,(%edi)
aba1de:	39 55 e8             	cmp    %edx,-0x18(%ebp)
aba1e1:	75 25                	jne    0xaba208
aba1e3:	6a 30                	push   $0x30
aba1e5:	5a                   	pop    %edx
aba1e6:	66 3b ca             	cmp    %dx,%cx
aba1e9:	75 1d                	jne    0xaba208
aba1eb:	8b 75 e0             	mov    -0x20(%ebp),%esi
aba1ee:	b3 01                	mov    $0x1,%bl
aba1f0:	66 8b 08             	mov    (%eax),%cx
aba1f3:	4e                   	dec    %esi
aba1f4:	83 c0 02             	add    $0x2,%eax
aba1f7:	66 89 4d f8          	mov    %cx,-0x8(%ebp)
aba1fb:	89 07                	mov    %eax,(%edi)
aba1fd:	66 3b ca             	cmp    %dx,%cx
aba200:	74 ee                	je     0xaba1f0
aba202:	89 75 e0             	mov    %esi,-0x20(%ebp)
aba205:	8b 75 e4             	mov    -0x1c(%ebp),%esi
aba208:	8b 95 44 ff ff ff    	mov    -0xbc(%ebp),%edx
aba20e:	6a 30                	push   $0x30
aba210:	58                   	pop    %eax
aba211:	66 3b c8             	cmp    %ax,%cx
aba214:	0f 82 08 02 00 00    	jb     0xaba422
aba21a:	66 3b 4d 9c          	cmp    -0x64(%ebp),%cx
aba21e:	73 0b                	jae    0xaba22b
aba220:	0f b7 c1             	movzwl %cx,%eax
aba223:	83 e8 30             	sub    $0x30,%eax
aba226:	e9 f2 01 00 00       	jmp    0xaba41d
aba22b:	66 3b 8d 64 ff ff ff 	cmp    -0x9c(%ebp),%cx
aba232:	0f 83 cf 01 00 00    	jae    0xaba407
aba238:	66 3b 4d cc          	cmp    -0x34(%ebp),%cx
aba23c:	0f 82 e0 01 00 00    	jb     0xaba422
aba242:	66 3b 4d 84          	cmp    -0x7c(%ebp),%cx
aba246:	73 0d                	jae    0xaba255
aba248:	0f b7 c1             	movzwl %cx,%eax
aba24b:	2d 60 06 00 00       	sub    $0x660,%eax
aba250:	e9 c8 01 00 00       	jmp    0xaba41d
aba255:	66 3b 4d c4          	cmp    -0x3c(%ebp),%cx
aba259:	0f 82 c3 01 00 00    	jb     0xaba422
aba25f:	66 3b 8d 48 ff ff ff 	cmp    -0xb8(%ebp),%cx
aba266:	73 0d                	jae    0xaba275
aba268:	0f b7 c1             	movzwl %cx,%eax
aba26b:	2d f0 06 00 00       	sub    $0x6f0,%eax
aba270:	e9 a8 01 00 00       	jmp    0xaba41d
aba275:	66 3b 4d bc          	cmp    -0x44(%ebp),%cx
aba279:	0f 82 a3 01 00 00    	jb     0xaba422
aba27f:	66 3b 8d 7c ff ff ff 	cmp    -0x84(%ebp),%cx
aba286:	73 0d                	jae    0xaba295
aba288:	0f b7 c1             	movzwl %cx,%eax
aba28b:	2d 66 09 00 00       	sub    $0x966,%eax
aba290:	e9 88 01 00 00       	jmp    0xaba41d
aba295:	66 3b 4d b4          	cmp    -0x4c(%ebp),%cx
aba299:	0f 82 83 01 00 00    	jb     0xaba422
aba29f:	66 3b 8d 5c ff ff ff 	cmp    -0xa4(%ebp),%cx
aba2a6:	73 0d                	jae    0xaba2b5
aba2a8:	0f b7 c1             	movzwl %cx,%eax
aba2ab:	2d e6 09 00 00       	sub    $0x9e6,%eax
aba2b0:	e9 68 01 00 00       	jmp    0xaba41d
aba2b5:	66 3b 4d ac          	cmp    -0x54(%ebp),%cx
aba2b9:	0f 82 63 01 00 00    	jb     0xaba422
aba2bf:	66 3b 8d 74 ff ff ff 	cmp    -0x8c(%ebp),%cx
aba2c6:	73 0d                	jae    0xaba2d5
aba2c8:	0f b7 c1             	movzwl %cx,%eax
aba2cb:	2d 66 0a 00 00       	sub    $0xa66,%eax
aba2d0:	e9 48 01 00 00       	jmp    0xaba41d
aba2d5:	66 3b 4d a4          	cmp    -0x5c(%ebp),%cx
aba2d9:	0f 82 43 01 00 00    	jb     0xaba422
aba2df:	66 3b 8d 4c ff ff ff 	cmp    -0xb4(%ebp),%cx
aba2e6:	73 0d                	jae    0xaba2f5
aba2e8:	0f b7 c1             	movzwl %cx,%eax
aba2eb:	2d e6 0a 00 00       	sub    $0xae6,%eax
aba2f0:	e9 28 01 00 00       	jmp    0xaba41d
aba2f5:	66 3b 4d d8          	cmp    -0x28(%ebp),%cx
aba2f9:	0f 82 23 01 00 00    	jb     0xaba422
aba2ff:	66 3b 8d 6c ff ff ff 	cmp    -0x94(%ebp),%cx
aba306:	73 0d                	jae    0xaba315
aba308:	0f b7 c1             	movzwl %cx,%eax
aba30b:	2d 66 0b 00 00       	sub    $0xb66,%eax
aba310:	e9 08 01 00 00       	jmp    0xaba41d
aba315:	66 3b 4d 94          	cmp    -0x6c(%ebp),%cx
aba319:	0f 82 03 01 00 00    	jb     0xaba422
aba31f:	66 3b 8d 54 ff ff ff 	cmp    -0xac(%ebp),%cx
aba326:	73 0d                	jae    0xaba335
aba328:	0f b7 c1             	movzwl %cx,%eax
aba32b:	2d 66 0c 00 00       	sub    $0xc66,%eax
aba330:	e9 e8 00 00 00       	jmp    0xaba41d
aba335:	66 3b 4d 8c          	cmp    -0x74(%ebp),%cx
aba339:	0f 82 e3 00 00 00    	jb     0xaba422
aba33f:	66 3b 4d d4          	cmp    -0x2c(%ebp),%cx
aba343:	73 0d                	jae    0xaba352
aba345:	0f b7 c1             	movzwl %cx,%eax
aba348:	2d e6 0c 00 00       	sub    $0xce6,%eax
aba34d:	e9 cb 00 00 00       	jmp    0xaba41d
aba352:	66 3b 4d d0          	cmp    -0x30(%ebp),%cx
aba356:	0f 82 c6 00 00 00    	jb     0xaba422
aba35c:	66 3b 4d c8          	cmp    -0x38(%ebp),%cx
aba360:	73 0d                	jae    0xaba36f
aba362:	0f b7 c1             	movzwl %cx,%eax
aba365:	2d 66 0d 00 00       	sub    $0xd66,%eax
aba36a:	e9 ae 00 00 00       	jmp    0xaba41d
aba36f:	66 3b 4d c0          	cmp    -0x40(%ebp),%cx
aba373:	0f 82 a9 00 00 00    	jb     0xaba422
aba379:	66 3b 4d b8          	cmp    -0x48(%ebp),%cx
aba37d:	73 0d                	jae    0xaba38c
aba37f:	0f b7 c1             	movzwl %cx,%eax
aba382:	2d 50 0e 00 00       	sub    $0xe50,%eax
aba387:	e9 91 00 00 00       	jmp    0xaba41d
aba38c:	66 3b 4d b0          	cmp    -0x50(%ebp),%cx
aba390:	0f 82 8c 00 00 00    	jb     0xaba422
aba396:	66 3b 4d a8          	cmp    -0x58(%ebp),%cx
aba39a:	73 0a                	jae    0xaba3a6
aba39c:	0f b7 c1             	movzwl %cx,%eax
aba39f:	2d d0 0e 00 00       	sub    $0xed0,%eax
aba3a4:	eb 77                	jmp    0xaba41d
aba3a6:	66 3b 4d a0          	cmp    -0x60(%ebp),%cx
aba3aa:	72 76                	jb     0xaba422
aba3ac:	66 3b 4d 98          	cmp    -0x68(%ebp),%cx
aba3b0:	73 0a                	jae    0xaba3bc
aba3b2:	0f b7 c1             	movzwl %cx,%eax
aba3b5:	2d 20 0f 00 00       	sub    $0xf20,%eax
aba3ba:	eb 61                	jmp    0xaba41d
aba3bc:	66 3b 4d 90          	cmp    -0x70(%ebp),%cx
aba3c0:	72 60                	jb     0xaba422
aba3c2:	66 3b 4d 88          	cmp    -0x78(%ebp),%cx
aba3c6:	73 0a                	jae    0xaba3d2
aba3c8:	0f b7 c1             	movzwl %cx,%eax
aba3cb:	2d 40 10 00 00       	sub    $0x1040,%eax
aba3d0:	eb 4b                	jmp    0xaba41d
aba3d2:	66 3b 4d 80          	cmp    -0x80(%ebp),%cx
aba3d6:	72 4a                	jb     0xaba422
aba3d8:	66 3b 8d 78 ff ff ff 	cmp    -0x88(%ebp),%cx
aba3df:	73 0a                	jae    0xaba3eb
aba3e1:	0f b7 c1             	movzwl %cx,%eax
aba3e4:	2d e0 17 00 00       	sub    $0x17e0,%eax
aba3e9:	eb 32                	jmp    0xaba41d
aba3eb:	66 3b 8d 70 ff ff ff 	cmp    -0x90(%ebp),%cx
aba3f2:	72 2e                	jb     0xaba422
aba3f4:	66 3b 8d 68 ff ff ff 	cmp    -0x98(%ebp),%cx
aba3fb:	73 25                	jae    0xaba422
aba3fd:	0f b7 c1             	movzwl %cx,%eax
aba400:	2d 10 18 00 00       	sub    $0x1810,%eax
aba405:	eb 16                	jmp    0xaba41d
aba407:	66 3b 8d 60 ff ff ff 	cmp    -0xa0(%ebp),%cx
aba40e:	73 0a                	jae    0xaba41a
aba410:	0f b7 c1             	movzwl %cx,%eax
aba413:	2d 10 ff 00 00       	sub    $0xff10,%eax
aba418:	eb 03                	jmp    0xaba41d
aba41a:	83 c8 ff             	or     $0xffffffff,%eax
aba41d:	83 f8 ff             	cmp    $0xffffffff,%eax
aba420:	75 3a                	jne    0xaba45c
aba422:	66 39 8d 58 ff ff ff 	cmp    %cx,-0xa8(%ebp)
aba429:	77 09                	ja     0xaba434
aba42b:	66 3b 8d 50 ff ff ff 	cmp    -0xb0(%ebp),%cx
aba432:	76 0d                	jbe    0xaba441
aba434:	66 8b c1             	mov    %cx,%ax
aba437:	66 2b 45 f4          	sub    -0xc(%ebp),%ax
aba43b:	66 3b 45 f0          	cmp    -0x10(%ebp),%ax
aba43f:	77 18                	ja     0xaba459
aba441:	66 8b c1             	mov    %cx,%ax
aba444:	66 2b 45 f4          	sub    -0xc(%ebp),%ax
aba448:	66 3b 45 f0          	cmp    -0x10(%ebp),%ax
aba44c:	0f b7 c1             	movzwl %cx,%eax
aba44f:	77 03                	ja     0xaba454
aba451:	83 e8 20             	sub    $0x20,%eax
aba454:	83 c0 c9             	add    $0xffffffc9,%eax
aba457:	eb 03                	jmp    0xaba45c
aba459:	83 c8 ff             	or     $0xffffffff,%eax
aba45c:	3b c2                	cmp    %edx,%eax
aba45e:	77 22                	ja     0xaba482
aba460:	8b 4d e8             	mov    -0x18(%ebp),%ecx
aba463:	b3 01                	mov    $0x1,%bl
aba465:	3b ce                	cmp    %esi,%ecx
aba467:	74 06                	je     0xaba46f
aba469:	88 01                	mov    %al,(%ecx)
aba46b:	41                   	inc    %ecx
aba46c:	89 4d e8             	mov    %ecx,-0x18(%ebp)
aba46f:	8b 07                	mov    (%edi),%eax
aba471:	66 8b 08             	mov    (%eax),%cx
aba474:	83 c0 02             	add    $0x2,%eax
aba477:	66 89 4d f8          	mov    %cx,-0x8(%ebp)
aba47b:	89 07                	mov    %eax,(%edi)
aba47d:	e9 8c fd ff ff       	jmp    0xaba20e
aba482:	84 db                	test   %bl,%bl
aba484:	75 26                	jne    0xaba4ac
aba486:	8d 8d 38 ff ff ff    	lea    -0xc8(%ebp),%ecx
aba48c:	e8 8e 11 00 00       	call   0xabb61f
aba491:	84 c0                	test   %al,%al
aba493:	0f 84 0b 06 00 00    	je     0xabaaa4
aba499:	33 c0                	xor    %eax,%eax
aba49b:	84 ff                	test   %bh,%bh
aba49d:	0f 94 c0             	sete   %al
aba4a0:	48                   	dec    %eax
aba4a1:	83 e0 fb             	and    $0xfffffffb,%eax
aba4a4:	83 c0 07             	add    $0x7,%eax
aba4a7:	e9 39 06 00 00       	jmp    0xabaae5
aba4ac:	ff 75 f8             	push   -0x8(%ebp)
aba4af:	8b cf                	mov    %edi,%ecx
aba4b1:	e8 3e 66 96 ff       	call   0x420af4
aba4b6:	8b 07                	mov    (%edi),%eax
aba4b8:	33 db                	xor    %ebx,%ebx
aba4ba:	89 45 dc             	mov    %eax,-0x24(%ebp)
aba4bd:	8a d3                	mov    %bl,%dl
aba4bf:	66 8b 08             	mov    (%eax),%cx
aba4c2:	8d 70 02             	lea    0x2(%eax),%esi
aba4c5:	0f b7 c1             	movzwl %cx,%eax
aba4c8:	66 89 4d f8          	mov    %cx,-0x8(%ebp)
aba4cc:	89 37                	mov    %esi,(%edi)
aba4ce:	83 f8 45             	cmp    $0x45,%eax
aba4d1:	74 14                	je     0xaba4e7
aba4d3:	83 f8 50             	cmp    $0x50,%eax
aba4d6:	74 0a                	je     0xaba4e2
aba4d8:	83 f8 65             	cmp    $0x65,%eax
aba4db:	74 0a                	je     0xaba4e7
aba4dd:	83 f8 70             	cmp    $0x70,%eax
aba4e0:	75 0b                	jne    0xaba4ed
aba4e2:	8a 55 ff             	mov    -0x1(%ebp),%dl
aba4e5:	eb 06                	jmp    0xaba4ed
aba4e7:	38 5d ff             	cmp    %bl,-0x1(%ebp)
aba4ea:	0f 94 c2             	sete   %dl
aba4ed:	84 d2                	test   %dl,%dl
aba4ef:	0f 84 59 05 00 00    	je     0xabaa4e
aba4f5:	66 8b 0e             	mov    (%esi),%cx
aba4f8:	8d 46 02             	lea    0x2(%esi),%eax
aba4fb:	6a 2d                	push   $0x2d
aba4fd:	5a                   	pop    %edx
aba4fe:	66 3b ca             	cmp    %dx,%cx
aba501:	66 89 4d f8          	mov    %cx,-0x8(%ebp)
aba505:	6a 2b                	push   $0x2b
aba507:	5e                   	pop    %esi
aba508:	0f 94 c3             	sete   %bl
aba50b:	89 07                	mov    %eax,(%edi)
aba50d:	66 3b ce             	cmp    %si,%cx
aba510:	74 05                	je     0xaba517
aba512:	66 3b ca             	cmp    %dx,%cx
aba515:	75 0c                	jne    0xaba523
aba517:	66 8b 08             	mov    (%eax),%cx
aba51a:	83 c0 02             	add    $0x2,%eax
aba51d:	66 89 4d f8          	mov    %cx,-0x8(%ebp)
aba521:	89 07                	mov    %eax,(%edi)
aba523:	6a 30                	push   $0x30
aba525:	5e                   	pop    %esi
aba526:	32 d2                	xor    %dl,%dl
aba528:	66 3b ce             	cmp    %si,%cx
aba52b:	75 18                	jne    0xaba545
aba52d:	fe c2                	inc    %dl
aba52f:	8b 07                	mov    (%edi),%eax
aba531:	66 8b 08             	mov    (%eax),%cx
aba534:	83 c0 02             	add    $0x2,%eax
aba537:	66 89 4d f8          	mov    %cx,-0x8(%ebp)
aba53b:	89 07                	mov    %eax,(%edi)
aba53d:	66 3b ce             	cmp    %si,%cx
aba540:	74 ed                	je     0xaba52f
aba542:	66 3b ce             	cmp    %si,%cx
aba545:	0f 82 07 02 00 00    	jb     0xaba752
aba54b:	66 3b 4d 9c          	cmp    -0x64(%ebp),%cx
aba54f:	73 0a                	jae    0xaba55b
aba551:	0f b7 c1             	movzwl %cx,%eax
aba554:	2b c6                	sub    %esi,%eax
aba556:	e9 f2 01 00 00       	jmp    0xaba74d
aba55b:	66 3b 8d 64 ff ff ff 	cmp    -0x9c(%ebp),%cx
aba562:	0f 83 cf 01 00 00    	jae    0xaba737
aba568:	66 3b 4d cc          	cmp    -0x34(%ebp),%cx
aba56c:	0f 82 e0 01 00 00    	jb     0xaba752
aba572:	66 3b 4d 84          	cmp    -0x7c(%ebp),%cx
aba576:	73 0d                	jae    0xaba585
aba578:	0f b7 c1             	movzwl %cx,%eax
aba57b:	2d 60 06 00 00       	sub    $0x660,%eax
aba580:	e9 c8 01 00 00       	jmp    0xaba74d
aba585:	66 3b 4d c4          	cmp    -0x3c(%ebp),%cx
aba589:	0f 82 c3 01 00 00    	jb     0xaba752
aba58f:	66 3b 8d 48 ff ff ff 	cmp    -0xb8(%ebp),%cx
aba596:	73 0d                	jae    0xaba5a5
aba598:	0f b7 c1             	movzwl %cx,%eax
aba59b:	2d f0 06 00 00       	sub    $0x6f0,%eax
aba5a0:	e9 a8 01 00 00       	jmp    0xaba74d
aba5a5:	66 3b 4d bc          	cmp    -0x44(%ebp),%cx
aba5a9:	0f 82 a3 01 00 00    	jb     0xaba752
aba5af:	66 3b 8d 7c ff ff ff 	cmp    -0x84(%ebp),%cx
aba5b6:	73 0d                	jae    0xaba5c5
aba5b8:	0f b7 c1             	movzwl %cx,%eax
aba5bb:	2d 66 09 00 00       	sub    $0x966,%eax
aba5c0:	e9 88 01 00 00       	jmp    0xaba74d
aba5c5:	66 3b 4d b4          	cmp    -0x4c(%ebp),%cx
aba5c9:	0f 82 83 01 00 00    	jb     0xaba752
aba5cf:	66 3b 8d 5c ff ff ff 	cmp    -0xa4(%ebp),%cx
aba5d6:	73 0d                	jae    0xaba5e5
aba5d8:	0f b7 c1             	movzwl %cx,%eax
aba5db:	2d e6 09 00 00       	sub    $0x9e6,%eax
aba5e0:	e9 68 01 00 00       	jmp    0xaba74d
aba5e5:	66 3b 4d ac          	cmp    -0x54(%ebp),%cx
aba5e9:	0f 82 63 01 00 00    	jb     0xaba752
aba5ef:	66 3b 8d 74 ff ff ff 	cmp    -0x8c(%ebp),%cx
aba5f6:	73 0d                	jae    0xaba605
aba5f8:	0f b7 c1             	movzwl %cx,%eax
aba5fb:	2d 66 0a 00 00       	sub    $0xa66,%eax
aba600:	e9 48 01 00 00       	jmp    0xaba74d
aba605:	66 3b 4d a4          	cmp    -0x5c(%ebp),%cx
aba609:	0f 82 43 01 00 00    	jb     0xaba752
aba60f:	66 3b 8d 4c ff ff ff 	cmp    -0xb4(%ebp),%cx
aba616:	73 0d                	jae    0xaba625
aba618:	0f b7 c1             	movzwl %cx,%eax
aba61b:	2d e6 0a 00 00       	sub    $0xae6,%eax
aba620:	e9 28 01 00 00       	jmp    0xaba74d
aba625:	66 3b 4d d8          	cmp    -0x28(%ebp),%cx