5ab29f:	0b 0c 85 88 d4 6c 00 	or     0x6cd488(,%eax,4),%ecx
5ab2a6:	8b c2                	mov    %edx,%eax
5ab2a8:	c1 e8 04             	shr    $0x4,%eax
5ab2ab:	83 e2 0f             	and    $0xf,%edx
5ab2ae:	83 e0 0f             	and    $0xf,%eax
5ab2b1:	c1 e1 08             	shl    $0x8,%ecx
5ab2b4:	0b 0c 85 88 d4 6c 00 	or     0x6cd488(,%eax,4),%ecx
5ab2bb:	8b 07                	mov    (%edi),%eax
5ab2bd:	c1 e1 08             	shl    $0x8,%ecx
5ab2c0:	0b 0c 95 88 d4 6c 00 	or     0x6cd488(,%edx,4),%ecx
5ab2c7:	89 0c d8             	mov    %ecx,(%eax,%ebx,8)
5ab2ca:	83 eb 01             	sub    $0x1,%ebx
5ab2cd:	0f 89 60 ff ff ff    	jns    0x5ab233
5ab2d3:	33 f6                	xor    %esi,%esi
5ab2d5:	8b 45 04             	mov    0x4(%ebp),%eax
5ab2d8:	03 c0                	add    %eax,%eax
5ab2da:	89 47 04             	mov    %eax,0x4(%edi)
5ab2dd:	85 c0                	test   %eax,%eax
5ab2df:	7e 20                	jle    0x5ab301
5ab2e1:	8b 0f                	mov    (%edi),%ecx
5ab2e3:	8d 50 ff             	lea    -0x1(%eax),%edx
5ab2e6:	8d 14 91             	lea    (%ecx,%edx,4),%edx
5ab2e9:	0f 1f 80 00 00 00 00 	nopl   0x0(%eax)
5ab2f0:	8b 0a                	mov    (%edx),%ecx
5ab2f2:	8d 52 fc             	lea    -0x4(%edx),%edx
5ab2f5:	85 c9                	test   %ecx,%ecx
5ab2f7:	75 05                	jne    0x5ab2fe
5ab2f9:	48                   	dec    %eax
5ab2fa:	85 c0                	test   %eax,%eax
5ab2fc:	7f f2                	jg     0x5ab2f0
5ab2fe:	89 47 04             	mov    %eax,0x4(%edi)
5ab301:	83 7f 04 00          	cmpl   $0x0,0x4(%edi)
5ab305:	75 07                	jne    0x5ab30e
5ab307:	c7 47 0c 00 00 00 00 	movl   $0x0,0xc(%edi)
5ab30e:	ff 74 24 1c          	push   0x1c(%esp)
5ab312:	57                   	push   %edi
5ab313:	ff 74 24 1c          	push   0x1c(%esp)
5ab317:	e8 24 ef ff ff       	call   0x5aa240
5ab31c:	8b 5c 24 2c          	mov    0x2c(%esp),%ebx
5ab320:	83 c4 0c             	add    $0xc,%esp
5ab323:	85 c0                	test   %eax,%eax
5ab325:	b9 01 00 00 00       	mov    $0x1,%ecx
5ab32a:	0f 45 f1             	cmovne %ecx,%esi
5ab32d:	5d                   	pop    %ebp
5ab32e:	53                   	push   %ebx
5ab32f:	e8 1c ca f2 ff       	call   0x4d7d50
5ab334:	83 c4 04             	add    $0x4,%esp
5ab337:	8b c6                	mov    %esi,%eax
5ab339:	5f                   	pop    %edi
5ab33a:	5e                   	pop    %esi
5ab33b:	5b                   	pop    %ebx
5ab33c:	c3                   	ret
5ab33d:	cc                   	int3
5ab33e:	cc                   	int3
5ab33f:	cc                   	int3
5ab340:	55                   	push   %ebp
5ab341:	57                   	push   %edi
5ab342:	8b 7c 24 14          	mov    0x14(%esp),%edi
5ab346:	33 ed                	xor    %ebp,%ebp
5ab348:	39 2f                	cmp    %ebp,(%edi)
5ab34a:	75 13                	jne    0x5ab35f
5ab34c:	55                   	push   %ebp
5ab34d:	ff 74 24 10          	push   0x10(%esp)
5ab351:	e8 9a 81 f0 ff       	call   0x4b34f0
5ab356:	83 c4 08             	add    $0x8,%esp
5ab359:	8d 45 01             	lea    0x1(%ebp),%eax
5ab35c:	5f                   	pop    %edi
5ab35d:	5d                   	pop    %ebp
5ab35e:	c3                   	ret
5ab35f:	53                   	push   %ebx
5ab360:	56                   	push   %esi
5ab361:	8b 74 24 20          	mov    0x20(%esp),%esi
5ab365:	56                   	push   %esi
5ab366:	e8 35 cb f2 ff       	call   0x4d7ea0
5ab36b:	56                   	push   %esi
5ab36c:	e8 4f ca f2 ff       	call   0x4d7dc0
5ab371:	8b d8                	mov    %eax,%ebx
5ab373:	83 c4 08             	add    $0x8,%esp
5ab376:	85 db                	test   %ebx,%ebx
5ab378:	74 26                	je     0x5ab3a0
5ab37a:	8b 07                	mov    (%edi),%eax
5ab37c:	48                   	dec    %eax
5ab37d:	50                   	push   %eax
5ab37e:	53                   	push   %ebx
5ab37f:	e8 ac 80 f0 ff       	call   0x4b3430
5ab384:	83 c4 08             	add    $0x8,%esp
5ab387:	85 c0                	test   %eax,%eax
5ab389:	74 15                	je     0x5ab3a0
5ab38b:	56                   	push   %esi
5ab38c:	57                   	push   %edi
5ab38d:	53                   	push   %ebx
5ab38e:	ff 74 24 24          	push   0x24(%esp)
5ab392:	ff 74 24 24          	push   0x24(%esp)
5ab396:	e8 75 f1 ff ff       	call   0x5aa510
5ab39b:	83 c4 14             	add    $0x14,%esp
5ab39e:	8b e8                	mov    %eax,%ebp
5ab3a0:	56                   	push   %esi
5ab3a1:	e8 aa c9 f2 ff       	call   0x4d7d50
5ab3a6:	83 c4 04             	add    $0x4,%esp
5ab3a9:	8b c5                	mov    %ebp,%eax
5ab3ab:	5e                   	pop    %esi
5ab3ac:	5b                   	pop    %ebx
5ab3ad:	5f                   	pop    %edi
5ab3ae:	5d                   	pop    %ebp
5ab3af:	c3                   	ret
5ab3b0:	53                   	push   %ebx
5ab3b1:	55                   	push   %ebp
5ab3b2:	8b 6c 24 0c          	mov    0xc(%esp),%ebp
5ab3b6:	33 c0                	xor    %eax,%eax
5ab3b8:	8b 5d 04             	mov    0x4(%ebp),%ebx
5ab3bb:	85 db                	test   %ebx,%ebx
5ab3bd:	75 03                	jne    0x5ab3c2
5ab3bf:	5d                   	pop    %ebp
5ab3c0:	5b                   	pop    %ebx
5ab3c1:	c3                   	ret
5ab3c2:	83 c3 ff             	add    $0xffffffff,%ebx
5ab3c5:	78 4b                	js     0x5ab412
5ab3c7:	56                   	push   %esi
5ab3c8:	57                   	push   %edi
5ab3c9:	8b fb                	mov    %ebx,%edi
5ab3cb:	c1 e7 05             	shl    $0x5,%edi
5ab3ce:	66 90                	xchg   %ax,%ax
5ab3d0:	8b 4d 00             	mov    0x0(%ebp),%ecx
5ab3d3:	83 3c 99 00          	cmpl   $0x0,(%ecx,%ebx,4)
5ab3d7:	74 2f                	je     0x5ab408
5ab3d9:	ba 00 00 00 80       	mov    $0x80000000,%edx
5ab3de:	be 1f 00 00 00       	mov    $0x1f,%esi
5ab3e3:	8b 4d 00             	mov    0x0(%ebp),%ecx
5ab3e6:	85 14 99             	test   %edx,(%ecx,%ebx,4)
5ab3e9:	74 16                	je     0x5ab401
5ab3eb:	3b 44 24 1c          	cmp    0x1c(%esp),%eax
5ab3ef:	7d 0f                	jge    0x5ab400
5ab3f1:	8b 6c 24 18          	mov    0x18(%esp),%ebp
5ab3f5:	8d 0c 37             	lea    (%edi,%esi,1),%ecx
5ab3f8:	89 4c 85 00          	mov    %ecx,0x0(%ebp,%eax,4)
5ab3fc:	8b 6c 24 14          	mov    0x14(%esp),%ebp
5ab400:	40                   	inc    %eax
5ab401:	d1 ea                	shr    $1,%edx
5ab403:	83 ee 01             	sub    $0x1,%esi
5ab406:	79 db                	jns    0x5ab3e3
5ab408:	83 ef 20             	sub    $0x20,%edi
5ab40b:	83 eb 01             	sub    $0x1,%ebx
5ab40e:	79 c0                	jns    0x5ab3d0
5ab410:	5f                   	pop    %edi
5ab411:	5e                   	pop    %esi
5ab412:	3b 44 24 14          	cmp    0x14(%esp),%eax
5ab416:	7d 0c                	jge    0x5ab424
5ab418:	8b 4c 24 10          	mov    0x10(%esp),%ecx
5ab41c:	c7 04 81 ff ff ff ff 	movl   $0xffffffff,(%ecx,%eax,4)
5ab423:	40                   	inc    %eax
5ab424:	5d                   	pop    %ebp
5ab425:	5b                   	pop    %ebx
5ab426:	c3                   	ret
5ab427:	cc                   	int3
5ab428:	cc                   	int3
5ab429:	cc                   	int3
5ab42a:	cc                   	int3
5ab42b:	cc                   	int3
5ab42c:	cc                   	int3
5ab42d:	cc                   	int3
5ab42e:	cc                   	int3
5ab42f:	cc                   	int3
5ab430:	b8 28 00 00 00       	mov    $0x28,%eax
5ab435:	e8 b6 60 03 00       	call   0x5e14f0
5ab43a:	a1 d4 89 72 00       	mov    0x7289d4,%eax
5ab43f:	33 c4                	xor    %esp,%eax
5ab441:	89 44 24 24          	mov    %eax,0x24(%esp)
5ab445:	53                   	push   %ebx
5ab446:	55                   	push   %ebp
5ab447:	56                   	push   %esi
5ab448:	8b 74 24 40          	mov    0x40(%esp),%esi
5ab44c:	8b c6                	mov    %esi,%eax
5ab44e:	c1 e8 1e             	shr    $0x1e,%eax
5ab451:	81 e6 ff ff ff 3f    	and    $0x3fffffff,%esi
5ab457:	89 44 24 0c          	mov    %eax,0xc(%esp)
5ab45b:	89 74 24 14          	mov    %esi,0x14(%esp)
5ab45f:	57                   	push   %edi
5ab460:	8b 7c 24 48          	mov    0x48(%esp),%edi
5ab464:	8d 0c 36             	lea    (%esi,%esi,1),%ecx
5ab467:	8b c1                	mov    %ecx,%eax
5ab469:	89 4c 24 1c          	mov    %ecx,0x1c(%esp)
5ab46d:	33 c6                	xor    %esi,%eax
5ab46f:	c7 44 24 14 00 00 00 	movl   $0x0,0x14(%esp)
5ab476:	00
5ab477:	89 44 24 20          	mov    %eax,0x20(%esp)
5ab47b:	8d 14 09             	lea    (%ecx,%ecx,1),%edx
5ab47e:	8b c2                	mov    %edx,%eax
5ab480:	89 54 24 24          	mov    %edx,0x24(%esp)
5ab484:	33 c6                	xor    %esi,%eax
5ab486:	8b 5c 24 3c          	mov    0x3c(%esp),%ebx
5ab48a:	89 44 24 28          	mov    %eax,0x28(%esp)
5ab48e:	33 d1                	xor    %ecx,%edx
5ab490:	89 54 24 2c          	mov    %edx,0x2c(%esp)
5ab494:	8b c7                	mov    %edi,%eax
5ab496:	c1 e8 03             	shr    $0x3,%eax
5ab499:	33 d6                	xor    %esi,%edx
5ab49b:	83 e0 07             	and    $0x7,%eax
5ab49e:	89 54 24 30          	mov    %edx,0x30(%esp)
5ab4a2:	8b 6c 24 40          	mov    0x40(%esp),%ebp
5ab4a6:	8b 54 84 14          	mov    0x14(%esp,%eax,4),%edx
5ab4aa:	8b c7                	mov    %edi,%eax
5ab4ac:	83 e0 07             	and    $0x7,%eax
5ab4af:	8d 34 d5 00 00 00 00 	lea    0x0(,%edx,8),%esi
5ab4b6:	c1 ea 1d             	shr    $0x1d,%edx
5ab4b9:	33 74 84 14          	xor    0x14(%esp,%eax,4),%esi
5ab4bd:	8b c7                	mov    %edi,%eax
5ab4bf:	c1 e8 06             	shr    $0x6,%eax
5ab4c2:	83 e0 07             	and    $0x7,%eax
5ab4c5:	8b 4c 84 14          	mov    0x14(%esp,%eax,4),%ecx
5ab4c9:	8b c1                	mov    %ecx,%eax
5ab4cb:	c1 e0 06             	shl    $0x6,%eax
5ab4ce:	33 f0                	xor    %eax,%esi
5ab4d0:	c1 e9 1a             	shr    $0x1a,%ecx
5ab4d3:	33 d1                	xor    %ecx,%edx
5ab4d5:	8b c7                	mov    %edi,%eax
5ab4d7:	c1 e8 09             	shr    $0x9,%eax
5ab4da:	83 e0 07             	and    $0x7,%eax
5ab4dd:	8b 4c 84 14          	mov    0x14(%esp,%eax,4),%ecx
5ab4e1:	8b c1                	mov    %ecx,%eax
5ab4e3:	c1 e0 09             	shl    $0x9,%eax
5ab4e6:	33 f0                	xor    %eax,%esi
5ab4e8:	c1 e9 17             	shr    $0x17,%ecx
5ab4eb:	8b c7                	mov    %edi,%eax
5ab4ed:	33 d1                	xor    %ecx,%edx
5ab4ef:	c1 e8 0c             	shr    $0xc,%eax
5ab4f2:	83 e0 07             	and    $0x7,%eax
5ab4f5:	8b 4c 84 14          	mov    0x14(%esp,%eax,4),%ecx
5ab4f9:	8b c1                	mov    %ecx,%eax
5ab4fb:	c1 e0 0c             	shl    $0xc,%eax
5ab4fe:	33 f0                	xor    %eax,%esi
5ab500:	c1 e9 14             	shr    $0x14,%ecx
5ab503:	8b c7                	mov    %edi,%eax
5ab505:	33 d1                	xor    %ecx,%edx
5ab507:	c1 e8 0f             	shr    $0xf,%eax
5ab50a:	83 e0 07             	and    $0x7,%eax
5ab50d:	8b 4c 84 14          	mov    0x14(%esp,%eax,4),%ecx
5ab511:	8b c1                	mov    %ecx,%eax
5ab513:	c1 e0 0f             	shl    $0xf,%eax
5ab516:	33 f0                	xor    %eax,%esi
5ab518:	c1 e9 11             	shr    $0x11,%ecx
5ab51b:	8b c7                	mov    %edi,%eax
5ab51d:	33 d1                	xor    %ecx,%edx
5ab51f:	c1 e8 12             	shr    $0x12,%eax
5ab522:	83 e0 07             	and    $0x7,%eax
5ab525:	8b 4c 84 14          	mov    0x14(%esp,%eax,4),%ecx
5ab529:	8b c1                	mov    %ecx,%eax
5ab52b:	c1 e0 12             	shl    $0x12,%eax
5ab52e:	33 f0                	xor    %eax,%esi
5ab530:	c1 e9 0e             	shr    $0xe,%ecx
5ab533:	33 d1                	xor    %ecx,%edx
5ab535:	8b c7                	mov    %edi,%eax
5ab537:	c1 e8 15             	shr    $0x15,%eax
5ab53a:	83 e0 07             	and    $0x7,%eax
5ab53d:	8b 4c 84 14          	mov    0x14(%esp,%eax,4),%ecx
5ab541:	8b c1                	mov    %ecx,%eax
5ab543:	c1 e0 15             	shl    $0x15,%eax
5ab546:	33 f0                	xor    %eax,%esi
5ab548:	c1 e9 0b             	shr    $0xb,%ecx
5ab54b:	33 d1                	xor    %ecx,%edx
5ab54d:	8b c7                	mov    %edi,%eax
5ab54f:	c1 e8 18             	shr    $0x18,%eax
5ab552:	83 e0 07             	and    $0x7,%eax
5ab555:	8b 4c 84 14          	mov    0x14(%esp,%eax,4),%ecx
5ab559:	8b c1                	mov    %ecx,%eax
5ab55b:	c1 e0 18             	shl    $0x18,%eax
5ab55e:	33 f0                	xor    %eax,%esi
5ab560:	c1 e9 08             	shr    $0x8,%ecx
5ab563:	8b c7                	mov    %edi,%eax
5ab565:	33 d1                	xor    %ecx,%edx
5ab567:	c1 e8 1b             	shr    $0x1b,%eax
5ab56a:	83 e0 07             	and    $0x7,%eax
5ab56d:	8b 4c 84 14          	mov    0x14(%esp,%eax,4),%ecx
5ab571:	8b c1                	mov    %ecx,%eax
5ab573:	c1 e0 1b             	shl    $0x1b,%eax
5ab576:	33 f0                	xor    %eax,%esi
5ab578:	c1 e9 05             	shr    $0x5,%ecx
5ab57b:	8b c7                	mov    %edi,%eax
5ab57d:	33 d1                	xor    %ecx,%edx
5ab57f:	c1 e8 1e             	shr    $0x1e,%eax
5ab582:	8b 4c 84 14          	mov    0x14(%esp,%eax,4),%ecx
5ab586:	8b c1                	mov    %ecx,%eax
5ab588:	c1 e9 02             	shr    $0x2,%ecx
5ab58b:	c1 e0 1e             	shl    $0x1e,%eax
5ab58e:	33 d1                	xor    %ecx,%edx
5ab590:	8b 4c 24 10          	mov    0x10(%esp),%ecx
5ab594:	33 f0                	xor    %eax,%esi
5ab596:	f6 c1 01             	test   $0x1,%cl
5ab599:	74 0e                	je     0x5ab5a9
5ab59b:	8b c7                	mov    %edi,%eax
5ab59d:	c1 e0 1e             	shl    $0x1e,%eax
5ab5a0:	33 f0                	xor    %eax,%esi
5ab5a2:	8b c7                	mov    %edi,%eax
5ab5a4:	c1 e8 02             	shr    $0x2,%eax
5ab5a7:	33 d0                	xor    %eax,%edx
5ab5a9:	f6 c1 02             	test   $0x2,%cl
5ab5ac:	74 0b                	je     0x5ab5b9
5ab5ae:	8b c7                	mov    %edi,%eax
5ab5b0:	d1 ef                	shr    $1,%edi
5ab5b2:	c1 e0 1f             	shl    $0x1f,%eax
5ab5b5:	33 f0                	xor    %eax,%esi
5ab5b7:	33 d7                	xor    %edi,%edx
5ab5b9:	8b 4c 24 34          	mov    0x34(%esp),%ecx
5ab5bd:	5f                   	pop    %edi
5ab5be:	89 13                	mov    %edx,(%ebx)
5ab5c0:	89 75 00             	mov    %esi,0x0(%ebp)
5ab5c3:	5e                   	pop    %esi
5ab5c4:	5d                   	pop    %ebp
5ab5c5:	5b                   	pop    %ebx
5ab5c6:	33 cc                	xor    %esp,%ecx
5ab5c8:	e8 0d 5f 03 00       	call   0x5e14da
5ab5cd:	83 c4 28             	add    $0x28,%esp
5ab5d0:	c3                   	ret
5ab5d1:	cc                   	int3
5ab5d2:	cc                   	int3
5ab5d3:	cc                   	int3
5ab5d4:	cc                   	int3
5ab5d5:	cc                   	int3
5ab5d6:	cc                   	int3
5ab5d7:	cc                   	int3
5ab5d8:	cc                   	int3
5ab5d9:	cc                   	int3
5ab5da:	cc                   	int3
5ab5db:	cc                   	int3
5ab5dc:	cc                   	int3
5ab5dd:	cc                   	int3
5ab5de:	cc                   	int3
5ab5df:	cc                   	int3
5ab5e0:	8b 4c 24 08          	mov    0x8(%esp),%ecx
5ab5e4:	53                   	push   %ebx
5ab5e5:	8b 5c 24 08          	mov    0x8(%esp),%ebx
5ab5e9:	56                   	push   %esi
5ab5ea:	83 f9 ff             	cmp    $0xffffffff,%ecx
5ab5ed:	75 0e                	jne    0x5ab5fd
5ab5ef:	8b cb                	mov    %ebx,%ecx
5ab5f1:	8d 51 01             	lea    0x1(%ecx),%edx
5ab5f4:	8a 01                	mov    (%ecx),%al
5ab5f6:	41                   	inc    %ecx
5ab5f7:	84 c0                	test   %al,%al
5ab5f9:	75 f9                	jne    0x5ab5f4
5ab5fb:	2b ca                	sub    %edx,%ecx
5ab5fd:	6a 4a                	push   $0x4a
5ab5ff:	8d 34 4d 02 00 00 00 	lea    0x2(,%ecx,2),%esi
5ab606:	68 e0 d4 6c 00       	push   $0x6cd4e0
5ab60b:	56                   	push   %esi
5ab60c:	e8 9f 4b ef ff       	call   0x4a01b0
5ab611:	8b d0                	mov    %eax,%edx
5ab613:	83 c4 0c             	add    $0xc,%esp
5ab616:	85 d2                	test   %edx,%edx
5ab618:	75 03                	jne    0x5ab61d
5ab61a:	5e                   	pop    %esi