5fe2ff:	8b 45 ec             	mov    -0x14(%ebp),%eax
5fe302:	89 0c 06             	mov    %ecx,(%esi,%eax,1)
5fe305:	8b 45 f0             	mov    -0x10(%ebp),%eax
5fe308:	ff 36                	push   (%esi)
5fe30a:	2b c3                	sub    %ebx,%eax
5fe30c:	d1 e8                	shr    $1,%eax
5fe30e:	50                   	push   %eax
5fe30f:	51                   	push   %ecx
5fe310:	e8 ff 83 ff ff       	call   0x5f6714
5fe315:	83 c4 0c             	add    $0xc,%esp
5fe318:	85 c0                	test   %eax,%eax
5fe31a:	0f 85 1b 03 00 00    	jne    0x5fe63b
5fe320:	8b 0e                	mov    (%esi),%ecx
5fe322:	8d 51 02             	lea    0x2(%ecx),%edx
5fe325:	66 8b 01             	mov    (%ecx),%ax
5fe328:	83 c1 02             	add    $0x2,%ecx
5fe32b:	66 3b c7             	cmp    %di,%ax
5fe32e:	75 f5                	jne    0x5fe325
5fe330:	8b 45 e8             	mov    -0x18(%ebp),%eax
5fe333:	2b ca                	sub    %edx,%ecx
5fe335:	d1 f9                	sar    $1,%ecx
5fe337:	83 c6 04             	add    $0x4,%esi
5fe33a:	8d 1c 4b             	lea    (%ebx,%ecx,2),%ebx
5fe33d:	83 c3 02             	add    $0x2,%ebx
5fe340:	40                   	inc    %eax
5fe341:	89 45 e8             	mov    %eax,-0x18(%ebp)
5fe344:	83 f8 07             	cmp    $0x7,%eax
5fe347:	72 a1                	jb     0x5fe2ea
5fe349:	8b 75 fc             	mov    -0x4(%ebp),%esi
5fe34c:	89 7d e8             	mov    %edi,-0x18(%ebp)
5fe34f:	81 c6 ec 00 00 00    	add    $0xec,%esi
5fe355:	eb 01                	jmp    0x5fe358
5fe357:	43                   	inc    %ebx
5fe358:	f6 c3 01             	test   $0x1,%bl
5fe35b:	75 fa                	jne    0x5fe357
5fe35d:	83 7d f8 01          	cmpl   $0x1,-0x8(%ebp)
5fe361:	75 2b                	jne    0x5fe38e
5fe363:	8b 4d f4             	mov    -0xc(%ebp),%ecx
5fe366:	8b c3                	mov    %ebx,%eax
5fe368:	d1 e8                	shr    $1,%eax
5fe36a:	8d 0c 41             	lea    (%ecx,%eax,2),%ecx
5fe36d:	8b 45 ec             	mov    -0x14(%ebp),%eax
5fe370:	89 0c 06             	mov    %ecx,(%esi,%eax,1)
5fe373:	8b 45 f0             	mov    -0x10(%ebp),%eax
5fe376:	ff 36                	push   (%esi)
5fe378:	2b c3                	sub    %ebx,%eax
5fe37a:	d1 e8                	shr    $1,%eax
5fe37c:	50                   	push   %eax
5fe37d:	51                   	push   %ecx
5fe37e:	e8 91 83 ff ff       	call   0x5f6714
5fe383:	83 c4 0c             	add    $0xc,%esp
5fe386:	85 c0                	test   %eax,%eax
5fe388:	0f 85 ad 02 00 00    	jne    0x5fe63b
5fe38e:	8b 0e                	mov    (%esi),%ecx
5fe390:	8d 51 02             	lea    0x2(%ecx),%edx
5fe393:	66 8b 01             	mov    (%ecx),%ax
5fe396:	83 c1 02             	add    $0x2,%ecx
5fe399:	66 3b c7             	cmp    %di,%ax
5fe39c:	75 f5                	jne    0x5fe393
5fe39e:	8b 45 e8             	mov    -0x18(%ebp),%eax
5fe3a1:	2b ca                	sub    %edx,%ecx
5fe3a3:	d1 f9                	sar    $1,%ecx
5fe3a5:	83 c6 04             	add    $0x4,%esi
5fe3a8:	8d 1c 4b             	lea    (%ebx,%ecx,2),%ebx
5fe3ab:	83 c3 02             	add    $0x2,%ebx
5fe3ae:	40                   	inc    %eax
5fe3af:	89 45 e8             	mov    %eax,-0x18(%ebp)
5fe3b2:	83 f8 0c             	cmp    $0xc,%eax
5fe3b5:	72 a1                	jb     0x5fe358
5fe3b7:	8b 75 fc             	mov    -0x4(%ebp),%esi
5fe3ba:	89 7d e8             	mov    %edi,-0x18(%ebp)
5fe3bd:	81 c6 1c 01 00 00    	add    $0x11c,%esi
5fe3c3:	eb 01                	jmp    0x5fe3c6
5fe3c5:	43                   	inc    %ebx
5fe3c6:	f6 c3 01             	test   $0x1,%bl
5fe3c9:	75 fa                	jne    0x5fe3c5
5fe3cb:	83 7d f8 01          	cmpl   $0x1,-0x8(%ebp)
5fe3cf:	75 2b                	jne    0x5fe3fc
5fe3d1:	8b 4d f4             	mov    -0xc(%ebp),%ecx
5fe3d4:	8b c3                	mov    %ebx,%eax
5fe3d6:	d1 e8                	shr    $1,%eax
5fe3d8:	8d 0c 41             	lea    (%ecx,%eax,2),%ecx
5fe3db:	8b 45 ec             	mov    -0x14(%ebp),%eax
5fe3de:	89 0c 06             	mov    %ecx,(%esi,%eax,1)
5fe3e1:	8b 45 f0             	mov    -0x10(%ebp),%eax
5fe3e4:	ff 36                	push   (%esi)
5fe3e6:	2b c3                	sub    %ebx,%eax
5fe3e8:	d1 e8                	shr    $1,%eax
5fe3ea:	50                   	push   %eax
5fe3eb:	51                   	push   %ecx
5fe3ec:	e8 23 83 ff ff       	call   0x5f6714
5fe3f1:	83 c4 0c             	add    $0xc,%esp
5fe3f4:	85 c0                	test   %eax,%eax
5fe3f6:	0f 85 3f 02 00 00    	jne    0x5fe63b
5fe3fc:	8b 0e                	mov    (%esi),%ecx
5fe3fe:	8d 51 02             	lea    0x2(%ecx),%edx
5fe401:	66 8b 01             	mov    (%ecx),%ax
5fe404:	83 c1 02             	add    $0x2,%ecx
5fe407:	66 3b c7             	cmp    %di,%ax
5fe40a:	75 f5                	jne    0x5fe401
5fe40c:	8b 45 e8             	mov    -0x18(%ebp),%eax
5fe40f:	2b ca                	sub    %edx,%ecx
5fe411:	d1 f9                	sar    $1,%ecx
5fe413:	83 c6 04             	add    $0x4,%esi
5fe416:	8d 1c 4b             	lea    (%ebx,%ecx,2),%ebx
5fe419:	83 c3 02             	add    $0x2,%ebx
5fe41c:	40                   	inc    %eax
5fe41d:	89 45 e8             	mov    %eax,-0x18(%ebp)
5fe420:	83 f8 0c             	cmp    $0xc,%eax
5fe423:	72 a1                	jb     0x5fe3c6
5fe425:	8b 75 fc             	mov    -0x4(%ebp),%esi
5fe428:	89 7d e8             	mov    %edi,-0x18(%ebp)
5fe42b:	81 c6 4c 01 00 00    	add    $0x14c,%esi
5fe431:	eb 01                	jmp    0x5fe434
5fe433:	43                   	inc    %ebx
5fe434:	f6 c3 01             	test   $0x1,%bl
5fe437:	75 fa                	jne    0x5fe433
5fe439:	83 7d f8 01          	cmpl   $0x1,-0x8(%ebp)
5fe43d:	75 2b                	jne    0x5fe46a
5fe43f:	8b 4d f4             	mov    -0xc(%ebp),%ecx
5fe442:	8b c3                	mov    %ebx,%eax
5fe444:	d1 e8                	shr    $1,%eax
5fe446:	8d 0c 41             	lea    (%ecx,%eax,2),%ecx
5fe449:	8b 45 ec             	mov    -0x14(%ebp),%eax
5fe44c:	89 0c 06             	mov    %ecx,(%esi,%eax,1)
5fe44f:	8b 45 f0             	mov    -0x10(%ebp),%eax
5fe452:	ff 36                	push   (%esi)
5fe454:	2b c3                	sub    %ebx,%eax
5fe456:	d1 e8                	shr    $1,%eax
5fe458:	50                   	push   %eax
5fe459:	51                   	push   %ecx
5fe45a:	e8 b5 82 ff ff       	call   0x5f6714
5fe45f:	83 c4 0c             	add    $0xc,%esp
5fe462:	85 c0                	test   %eax,%eax
5fe464:	0f 85 d1 01 00 00    	jne    0x5fe63b
5fe46a:	8b 0e                	mov    (%esi),%ecx
5fe46c:	8d 51 02             	lea    0x2(%ecx),%edx
5fe46f:	66 8b 01             	mov    (%ecx),%ax
5fe472:	83 c1 02             	add    $0x2,%ecx
5fe475:	66 3b c7             	cmp    %di,%ax
5fe478:	75 f5                	jne    0x5fe46f
5fe47a:	8b 45 e8             	mov    -0x18(%ebp),%eax
5fe47d:	2b ca                	sub    %edx,%ecx
5fe47f:	d1 f9                	sar    $1,%ecx
5fe481:	83 c6 04             	add    $0x4,%esi
5fe484:	8d 1c 4b             	lea    (%ebx,%ecx,2),%ebx
5fe487:	83 c3 02             	add    $0x2,%ebx
5fe48a:	40                   	inc    %eax
5fe48b:	89 45 e8             	mov    %eax,-0x18(%ebp)
5fe48e:	83 f8 02             	cmp    $0x2,%eax
5fe491:	72 a1                	jb     0x5fe434
5fe493:	eb 01                	jmp    0x5fe496
5fe495:	43                   	inc    %ebx
5fe496:	f6 c3 01             	test   $0x1,%bl
5fe499:	75 fa                	jne    0x5fe495
5fe49b:	83 7d f8 01          	cmpl   $0x1,-0x8(%ebp)
5fe49f:	8b 75 f4             	mov    -0xc(%ebp),%esi
5fe4a2:	75 2f                	jne    0x5fe4d3
5fe4a4:	8b c3                	mov    %ebx,%eax
5fe4a6:	d1 e8                	shr    $1,%eax
5fe4a8:	8d 0c 46             	lea    (%esi,%eax,2),%ecx
5fe4ab:	8b 45 fc             	mov    -0x4(%ebp),%eax
5fe4ae:	89 8e 54 01 00 00    	mov    %ecx,0x154(%esi)
5fe4b4:	ff b0 54 01 00 00    	push   0x154(%eax)
5fe4ba:	8b 45 f0             	mov    -0x10(%ebp),%eax
5fe4bd:	2b c3                	sub    %ebx,%eax
5fe4bf:	d1 e8                	shr    $1,%eax
5fe4c1:	50                   	push   %eax
5fe4c2:	51                   	push   %ecx
5fe4c3:	e8 4c 82 ff ff       	call   0x5f6714
5fe4c8:	83 c4 0c             	add    $0xc,%esp
5fe4cb:	85 c0                	test   %eax,%eax
5fe4cd:	0f 85 68 01 00 00    	jne    0x5fe63b
5fe4d3:	8b 45 fc             	mov    -0x4(%ebp),%eax
5fe4d6:	8b 88 54 01 00 00    	mov    0x154(%eax),%ecx
5fe4dc:	8d 51 02             	lea    0x2(%ecx),%edx
5fe4df:	66 8b 01             	mov    (%ecx),%ax
5fe4e2:	83 c1 02             	add    $0x2,%ecx
5fe4e5:	66 3b c7             	cmp    %di,%ax
5fe4e8:	75 f5                	jne    0x5fe4df
5fe4ea:	2b ca                	sub    %edx,%ecx
5fe4ec:	d1 f9                	sar    $1,%ecx
5fe4ee:	8d 1c 4b             	lea    (%ebx,%ecx,2),%ebx
5fe4f1:	83 c3 02             	add    $0x2,%ebx
5fe4f4:	eb 01                	jmp    0x5fe4f7
5fe4f6:	43                   	inc    %ebx
5fe4f7:	f6 c3 01             	test   $0x1,%bl
5fe4fa:	75 fa                	jne    0x5fe4f6
5fe4fc:	83 7d f8 01          	cmpl   $0x1,-0x8(%ebp)
5fe500:	75 2f                	jne    0x5fe531
5fe502:	8b c3                	mov    %ebx,%eax
5fe504:	d1 e8                	shr    $1,%eax
5fe506:	8d 0c 46             	lea    (%esi,%eax,2),%ecx
5fe509:	8b 45 fc             	mov    -0x4(%ebp),%eax
5fe50c:	89 8e 58 01 00 00    	mov    %ecx,0x158(%esi)
5fe512:	ff b0 58 01 00 00    	push   0x158(%eax)
5fe518:	8b 45 f0             	mov    -0x10(%ebp),%eax
5fe51b:	2b c3                	sub    %ebx,%eax
5fe51d:	d1 e8                	shr    $1,%eax
5fe51f:	50                   	push   %eax
5fe520:	51                   	push   %ecx
5fe521:	e8 ee 81 ff ff       	call   0x5f6714
5fe526:	83 c4 0c             	add    $0xc,%esp
5fe529:	85 c0                	test   %eax,%eax
5fe52b:	0f 85 0a 01 00 00    	jne    0x5fe63b
5fe531:	8b 45 fc             	mov    -0x4(%ebp),%eax
5fe534:	8b 88 58 01 00 00    	mov    0x158(%eax),%ecx
5fe53a:	8d 51 02             	lea    0x2(%ecx),%edx
5fe53d:	66 8b 01             	mov    (%ecx),%ax
5fe540:	83 c1 02             	add    $0x2,%ecx
5fe543:	66 3b c7             	cmp    %di,%ax
5fe546:	75 f5                	jne    0x5fe53d
5fe548:	2b ca                	sub    %edx,%ecx
5fe54a:	d1 f9                	sar    $1,%ecx
5fe54c:	8d 1c 4b             	lea    (%ebx,%ecx,2),%ebx
5fe54f:	83 c3 02             	add    $0x2,%ebx
5fe552:	eb 01                	jmp    0x5fe555
5fe554:	43                   	inc    %ebx
5fe555:	f6 c3 01             	test   $0x1,%bl
5fe558:	75 fa                	jne    0x5fe554
5fe55a:	83 7d f8 01          	cmpl   $0x1,-0x8(%ebp)
5fe55e:	75 2f                	jne    0x5fe58f
5fe560:	8b c3                	mov    %ebx,%eax
5fe562:	d1 e8                	shr    $1,%eax
5fe564:	8d 0c 46             	lea    (%esi,%eax,2),%ecx
5fe567:	8b 45 fc             	mov    -0x4(%ebp),%eax
5fe56a:	89 8e 5c 01 00 00    	mov    %ecx,0x15c(%esi)
5fe570:	ff b0 5c 01 00 00    	push   0x15c(%eax)
5fe576:	8b 45 f0             	mov    -0x10(%ebp),%eax
5fe579:	2b c3                	sub    %ebx,%eax
5fe57b:	d1 e8                	shr    $1,%eax
5fe57d:	50                   	push   %eax
5fe57e:	51                   	push   %ecx
5fe57f:	e8 90 81 ff ff       	call   0x5f6714
5fe584:	83 c4 0c             	add    $0xc,%esp
5fe587:	85 c0                	test   %eax,%eax
5fe589:	0f 85 ac 00 00 00    	jne    0x5fe63b
5fe58f:	8b 45 fc             	mov    -0x4(%ebp),%eax
5fe592:	8b 88 5c 01 00 00    	mov    0x15c(%eax),%ecx
5fe598:	8d 51 02             	lea    0x2(%ecx),%edx
5fe59b:	66 8b 01             	mov    (%ecx),%ax
5fe59e:	83 c1 02             	add    $0x2,%ecx
5fe5a1:	66 3b c7             	cmp    %di,%ax
5fe5a4:	75 f5                	jne    0x5fe59b
5fe5a6:	2b ca                	sub    %edx,%ecx
5fe5a8:	d1 f9                	sar    $1,%ecx
5fe5aa:	8d 1c 4b             	lea    (%ebx,%ecx,2),%ebx
5fe5ad:	83 c3 02             	add    $0x2,%ebx
5fe5b0:	eb 01                	jmp    0x5fe5b3
5fe5b2:	43                   	inc    %ebx
5fe5b3:	f6 c3 01             	test   $0x1,%bl
5fe5b6:	75 fa                	jne    0x5fe5b2
5fe5b8:	83 7d f8 01          	cmpl   $0x1,-0x8(%ebp)
5fe5bc:	75 2b                	jne    0x5fe5e9
5fe5be:	8b c3                	mov    %ebx,%eax
5fe5c0:	d1 e8                	shr    $1,%eax
5fe5c2:	8d 0c 46             	lea    (%esi,%eax,2),%ecx
5fe5c5:	8b 45 fc             	mov    -0x4(%ebp),%eax
5fe5c8:	89 8e 60 01 00 00    	mov    %ecx,0x160(%esi)
5fe5ce:	ff b0 60 01 00 00    	push   0x160(%eax)
5fe5d4:	8b 45 f0             	mov    -0x10(%ebp),%eax
5fe5d7:	2b c3                	sub    %ebx,%eax
5fe5d9:	d1 e8                	shr    $1,%eax
5fe5db:	50                   	push   %eax
5fe5dc:	51                   	push   %ecx
5fe5dd:	e8 32 81 ff ff       	call   0x5f6714
5fe5e2:	83 c4 0c             	add    $0xc,%esp
5fe5e5:	85 c0                	test   %eax,%eax
5fe5e7:	75 52                	jne    0x5fe63b
5fe5e9:	8b 45 fc             	mov    -0x4(%ebp),%eax
5fe5ec:	8b 88 60 01 00 00    	mov    0x160(%eax),%ecx
5fe5f2:	8d 51 02             	lea    0x2(%ecx),%edx
5fe5f5:	66 8b 01             	mov    (%ecx),%ax
5fe5f8:	83 c1 02             	add    $0x2,%ecx
5fe5fb:	66 3b c7             	cmp    %di,%ax
5fe5fe:	75 f5                	jne    0x5fe5f5
5fe600:	2b ca                	sub    %edx,%ecx
5fe602:	8b 55 f8             	mov    -0x8(%ebp),%edx
5fe605:	d1 f9                	sar    $1,%ecx
5fe607:	42                   	inc    %edx
5fe608:	89 55 f8             	mov    %edx,-0x8(%ebp)
5fe60b:	8d 71 01             	lea    0x1(%ecx),%esi
5fe60e:	8d 34 73             	lea    (%ebx,%esi,2),%esi
5fe611:	83 fa 02             	cmp    $0x2,%edx
5fe614:	7d 0b                	jge    0x5fe621
5fe616:	8b 45 f4             	mov    -0xc(%ebp),%eax
5fe619:	8b 4d fc             	mov    -0x4(%ebp),%ecx
5fe61c:	e9 5d f9 ff ff       	jmp    0x5fdf7e
5fe621:	8b 7d f4             	mov    -0xc(%ebp),%edi
5fe624:	80 7d e4 00          	cmpb   $0x0,-0x1c(%ebp)
5fe628:	74 0a                	je     0x5fe634
5fe62a:	8b 4d d8             	mov    -0x28(%ebp),%ecx
5fe62d:	83 a1 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%ecx)
5fe634:	8b c7                	mov    %edi,%eax
5fe636:	5f                   	pop    %edi
5fe637:	5e                   	pop    %esi
5fe638:	5b                   	pop    %ebx
5fe639:	c9                   	leave
5fe63a:	c3                   	ret
5fe63b:	57                   	push   %edi
5fe63c:	57                   	push   %edi
5fe63d:	57                   	push   %edi
5fe63e:	57                   	push   %edi
5fe63f:	57                   	push   %edi
5fe640:	e8 07 e9 fe ff       	call   0x5ecf4c
5fe645:	cc                   	int3
5fe646:	8b ff                	mov    %edi,%edi
5fe648:	55                   	push   %ebp
5fe649:	8b ec                	mov    %esp,%ebp
5fe64b:	6a 00                	push   $0x0
5fe64d:	ff 75 18             	push   0x18(%ebp)
5fe650:	ff 75 14             	push   0x14(%ebp)
5fe653:	ff 75 10             	push   0x10(%ebp)
5fe656:	ff 75 0c             	push   0xc(%ebp)
5fe659:	ff 75 08             	push   0x8(%ebp)
5fe65c:	e8 05 00 00 00       	call   0x5fe666
5fe661:	83 c4 18             	add    $0x18,%esp
5fe664:	5d                   	pop    %ebp
5fe665:	c3                   	ret
5fe666:	8b ff                	mov    %edi,%edi
5fe668:	55                   	push   %ebp
5fe669:	8b ec                	mov    %esp,%ebp
5fe66b:	83 ec 28             	sub    $0x28,%esp
5fe66e:	57                   	push   %edi
5fe66f:	8b 7d 08             	mov    0x8(%ebp),%edi
5fe672:	85 ff                	test   %edi,%edi
5fe674:	75 17                	jne    0x5fe68d
5fe676:	e8 7e e9 fe ff       	call   0x5ecff9
5fe67b:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
5fe681:	e8 99 e8 fe ff       	call   0x5ecf1f
5fe686:	33 c0                	xor    %eax,%eax
5fe688:	e9 59 01 00 00       	jmp    0x5fe7e6
5fe68d:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
5fe691:	74 e3                	je     0x5fe676
5fe693:	56                   	push   %esi
5fe694:	8b 75 10             	mov    0x10(%ebp),%esi
5fe697:	33 c0                	xor    %eax,%eax
5fe699:	66 89 07             	mov    %ax,(%edi)
5fe69c:	85 f6                	test   %esi,%esi
5fe69e:	75 17                	jne    0x5fe6b7
5fe6a0:	e8 54 e9 fe ff       	call   0x5ecff9
5fe6a5:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
5fe6ab:	e8 6f e8 fe ff       	call   0x5ecf1f
5fe6b0:	33 c0                	xor    %eax,%eax
5fe6b2:	e9 2e 01 00 00       	jmp    0x5fe7e5
5fe6b7:	ff 75 1c             	push   0x1c(%ebp)
5fe6ba:	8d 4d d8             	lea    -0x28(%ebp),%ecx
5fe6bd:	e8 cb f4 fe ff       	call   0x5edb8d
5fe6c2:	8b 55 18             	mov    0x18(%ebp),%edx
5fe6c5:	85 d2                	test   %edx,%edx