5ef314:	56                   	push   %esi
5ef315:	8b f1                	mov    %ecx,%esi
5ef317:	57                   	push   %edi
5ef318:	8d 4e 40             	lea    0x40(%esi),%ecx
5ef31b:	8b b9 04 04 00 00    	mov    0x404(%ecx),%edi
5ef321:	85 ff                	test   %edi,%edi
5ef323:	75 02                	jne    0x5ef327
5ef325:	8b f9                	mov    %ecx,%edi
5ef327:	e8 a6 fc ff ff       	call   0x5eefd2
5ef32c:	8b 5d 0c             	mov    0xc(%ebp),%ebx
5ef32f:	8d 3c 47             	lea    (%edi,%eax,2),%edi
5ef332:	83 c7 fe             	add    $0xfffffffe,%edi
5ef335:	89 7d fc             	mov    %edi,-0x4(%ebp)
5ef338:	8b cf                	mov    %edi,%ecx
5ef33a:	89 7e 34             	mov    %edi,0x34(%esi)
5ef33d:	8b 7d 08             	mov    0x8(%ebp),%edi
5ef340:	8b 56 28             	mov    0x28(%esi),%edx
5ef343:	85 d2                	test   %edx,%edx
5ef345:	7f 06                	jg     0x5ef34d
5ef347:	8b c7                	mov    %edi,%eax
5ef349:	0b c3                	or     %ebx,%eax
5ef34b:	74 4b                	je     0x5ef398
5ef34d:	53                   	push   %ebx
5ef34e:	6a 00                	push   $0x0
5ef350:	ff 75 10             	push   0x10(%ebp)
5ef353:	8d 42 ff             	lea    -0x1(%edx),%eax
5ef356:	53                   	push   %ebx
5ef357:	57                   	push   %edi
5ef358:	89 46 28             	mov    %eax,0x28(%esi)
5ef35b:	e8 20 2b ff ff       	call   0x5e1e80
5ef360:	89 5d f8             	mov    %ebx,-0x8(%ebp)
5ef363:	5b                   	pop    %ebx
5ef364:	90                   	nop
5ef365:	83 c1 30             	add    $0x30,%ecx
5ef368:	8b f8                	mov    %eax,%edi
5ef36a:	0f b7 c9             	movzwl %cx,%ecx
5ef36d:	8b da                	mov    %edx,%ebx
5ef36f:	83 f9 39             	cmp    $0x39,%ecx
5ef372:	76 11                	jbe    0x5ef385
5ef374:	8a 45 14             	mov    0x14(%ebp),%al
5ef377:	34 01                	xor    $0x1,%al
5ef379:	c0 e0 05             	shl    $0x5,%al
5ef37c:	04 07                	add    $0x7,%al
5ef37e:	02 c1                	add    %cl,%al
5ef380:	66 98                	cbtw
5ef382:	0f b7 c8             	movzwl %ax,%ecx
5ef385:	8b 46 34             	mov    0x34(%esi),%eax
5ef388:	66 0f be c9          	movsbw %cl,%cx
5ef38c:	66 89 08             	mov    %cx,(%eax)
5ef38f:	83 46 34 fe          	addl   $0xfffffffe,0x34(%esi)
5ef393:	8b 4e 34             	mov    0x34(%esi),%ecx
5ef396:	eb a8                	jmp    0x5ef340
5ef398:	8b 7d fc             	mov    -0x4(%ebp),%edi
5ef39b:	2b f9                	sub    %ecx,%edi
5ef39d:	d1 ff                	sar    $1,%edi
5ef39f:	89 7e 38             	mov    %edi,0x38(%esi)
5ef3a2:	83 46 34 02          	addl   $0x2,0x34(%esi)
5ef3a6:	5f                   	pop    %edi
5ef3a7:	5e                   	pop    %esi
5ef3a8:	5b                   	pop    %ebx
5ef3a9:	c9                   	leave
5ef3aa:	c2 10 00             	ret    $0x10
5ef3ad:	8b ff                	mov    %edi,%edi
5ef3af:	55                   	push   %ebp
5ef3b0:	8b ec                	mov    %esp,%ebp
5ef3b2:	56                   	push   %esi
5ef3b3:	33 f6                	xor    %esi,%esi
5ef3b5:	39 75 10             	cmp    %esi,0x10(%ebp)
5ef3b8:	7e 2b                	jle    0x5ef3e5
5ef3ba:	57                   	push   %edi
5ef3bb:	8b 7d 14             	mov    0x14(%ebp),%edi
5ef3be:	ff 75 0c             	push   0xc(%ebp)
5ef3c1:	8b 4d 08             	mov    0x8(%ebp),%ecx
5ef3c4:	e8 ca 23 00 00       	call   0x5f1793
5ef3c9:	84 c0                	test   %al,%al
5ef3cb:	74 06                	je     0x5ef3d3
5ef3cd:	ff 07                	incl   (%edi)
5ef3cf:	8b 07                	mov    (%edi),%eax
5ef3d1:	eb 06                	jmp    0x5ef3d9
5ef3d3:	83 0f ff             	orl    $0xffffffff,(%edi)
5ef3d6:	83 c8 ff             	or     $0xffffffff,%eax
5ef3d9:	83 f8 ff             	cmp    $0xffffffff,%eax
5ef3dc:	74 06                	je     0x5ef3e4
5ef3de:	46                   	inc    %esi
5ef3df:	3b 75 10             	cmp    0x10(%ebp),%esi
5ef3e2:	7c da                	jl     0x5ef3be
5ef3e4:	5f                   	pop    %edi
5ef3e5:	5e                   	pop    %esi
5ef3e6:	5d                   	pop    %ebp
5ef3e7:	c3                   	ret
5ef3e8:	8b ff                	mov    %edi,%edi
5ef3ea:	55                   	push   %ebp
5ef3eb:	8b ec                	mov    %esp,%ebp
5ef3ed:	56                   	push   %esi
5ef3ee:	33 f6                	xor    %esi,%esi
5ef3f0:	39 75 10             	cmp    %esi,0x10(%ebp)
5ef3f3:	7e 1c                	jle    0x5ef411
5ef3f5:	57                   	push   %edi
5ef3f6:	8b 7d 14             	mov    0x14(%ebp),%edi
5ef3f9:	8b 4d 08             	mov    0x8(%ebp),%ecx
5ef3fc:	57                   	push   %edi
5ef3fd:	ff 75 0c             	push   0xc(%ebp)
5ef400:	e8 07 23 00 00       	call   0x5f170c
5ef405:	83 3f ff             	cmpl   $0xffffffff,(%edi)
5ef408:	74 06                	je     0x5ef410
5ef40a:	46                   	inc    %esi
5ef40b:	3b 75 10             	cmp    0x10(%ebp),%esi
5ef40e:	7c e9                	jl     0x5ef3f9
5ef410:	5f                   	pop    %edi
5ef411:	5e                   	pop    %esi
5ef412:	5d                   	pop    %ebp
5ef413:	c3                   	ret
5ef414:	8b ff                	mov    %edi,%edi
5ef416:	55                   	push   %ebp
5ef417:	8b ec                	mov    %esp,%ebp
5ef419:	56                   	push   %esi
5ef41a:	33 f6                	xor    %esi,%esi
5ef41c:	39 75 10             	cmp    %esi,0x10(%ebp)
5ef41f:	7e 21                	jle    0x5ef442
5ef421:	53                   	push   %ebx
5ef422:	66 0f be 5d 0c       	movsbw 0xc(%ebp),%bx
5ef427:	57                   	push   %edi
5ef428:	8b 7d 14             	mov    0x14(%ebp),%edi
5ef42b:	8b 4d 08             	mov    0x8(%ebp),%ecx
5ef42e:	57                   	push   %edi
5ef42f:	53                   	push   %ebx
5ef430:	e8 19 23 00 00       	call   0x5f174e
5ef435:	83 3f ff             	cmpl   $0xffffffff,(%edi)
5ef438:	74 06                	je     0x5ef440
5ef43a:	46                   	inc    %esi
5ef43b:	3b 75 10             	cmp    0x10(%ebp),%esi
5ef43e:	7c eb                	jl     0x5ef42b
5ef440:	5f                   	pop    %edi
5ef441:	5b                   	pop    %ebx
5ef442:	5e                   	pop    %esi
5ef443:	5d                   	pop    %ebp
5ef444:	c3                   	ret
5ef445:	8b ff                	mov    %edi,%edi
5ef447:	55                   	push   %ebp
5ef448:	8b ec                	mov    %esp,%ebp
5ef44a:	51                   	push   %ecx
5ef44b:	33 c0                	xor    %eax,%eax
5ef44d:	89 4d fc             	mov    %ecx,-0x4(%ebp)
5ef450:	89 01                	mov    %eax,(%ecx)
5ef452:	89 41 04             	mov    %eax,0x4(%ecx)
5ef455:	89 41 08             	mov    %eax,0x8(%ecx)
5ef458:	89 41 0c             	mov    %eax,0xc(%ecx)
5ef45b:	89 41 10             	mov    %eax,0x10(%ecx)
5ef45e:	89 41 14             	mov    %eax,0x14(%ecx)
5ef461:	89 41 18             	mov    %eax,0x18(%ecx)
5ef464:	89 41 1c             	mov    %eax,0x1c(%ecx)
5ef467:	89 41 20             	mov    %eax,0x20(%ecx)
5ef46a:	89 41 24             	mov    %eax,0x24(%ecx)
5ef46d:	89 41 28             	mov    %eax,0x28(%ecx)
5ef470:	66 89 41 30          	mov    %ax,0x30(%ecx)
5ef474:	89 41 38             	mov    %eax,0x38(%ecx)
5ef477:	88 41 3c             	mov    %al,0x3c(%ecx)
5ef47a:	89 81 40 04 00 00    	mov    %eax,0x440(%ecx)
5ef480:	89 81 44 04 00 00    	mov    %eax,0x444(%ecx)
5ef486:	8b c1                	mov    %ecx,%eax
5ef488:	c9                   	leave
5ef489:	c3                   	ret
5ef48a:	8b ff                	mov    %edi,%edi
5ef48c:	55                   	push   %ebp
5ef48d:	8b ec                	mov    %esp,%ebp
5ef48f:	51                   	push   %ecx
5ef490:	33 d2                	xor    %edx,%edx
5ef492:	89 4d fc             	mov    %ecx,-0x4(%ebp)
5ef495:	89 11                	mov    %edx,(%ecx)
5ef497:	33 c0                	xor    %eax,%eax
5ef499:	89 51 04             	mov    %edx,0x4(%ecx)
5ef49c:	89 51 08             	mov    %edx,0x8(%ecx)
5ef49f:	89 51 0c             	mov    %edx,0xc(%ecx)
5ef4a2:	66 89 41 32          	mov    %ax,0x32(%ecx)
5ef4a6:	8b c1                	mov    %ecx,%eax
5ef4a8:	89 51 10             	mov    %edx,0x10(%ecx)
5ef4ab:	89 51 14             	mov    %edx,0x14(%ecx)
5ef4ae:	89 51 18             	mov    %edx,0x18(%ecx)
5ef4b1:	89 51 1c             	mov    %edx,0x1c(%ecx)
5ef4b4:	89 51 20             	mov    %edx,0x20(%ecx)
5ef4b7:	89 51 24             	mov    %edx,0x24(%ecx)
5ef4ba:	89 51 28             	mov    %edx,0x28(%ecx)
5ef4bd:	88 51 30             	mov    %dl,0x30(%ecx)
5ef4c0:	89 51 38             	mov    %edx,0x38(%ecx)
5ef4c3:	88 51 3c             	mov    %dl,0x3c(%ecx)
5ef4c6:	89 91 40 04 00 00    	mov    %edx,0x440(%ecx)
5ef4cc:	89 91 44 04 00 00    	mov    %edx,0x444(%ecx)
5ef4d2:	c9                   	leave
5ef4d3:	c3                   	ret
5ef4d4:	8b ff                	mov    %edi,%edi
5ef4d6:	55                   	push   %ebp
5ef4d7:	8b ec                	mov    %esp,%ebp
5ef4d9:	56                   	push   %esi
5ef4da:	8b f1                	mov    %ecx,%esi
5ef4dc:	e8 64 ff ff ff       	call   0x5ef445
5ef4e1:	8b 45 08             	mov    0x8(%ebp),%eax
5ef4e4:	8b 00                	mov    (%eax),%eax
5ef4e6:	89 86 48 04 00 00    	mov    %eax,0x448(%esi)
5ef4ec:	8b 45 0c             	mov    0xc(%ebp),%eax
5ef4ef:	89 06                	mov    %eax,(%esi)
5ef4f1:	8b 45 10             	mov    0x10(%ebp),%eax
5ef4f4:	89 46 04             	mov    %eax,0x4(%esi)
5ef4f7:	8b 45 18             	mov    0x18(%ebp),%eax
5ef4fa:	89 46 08             	mov    %eax,0x8(%esi)
5ef4fd:	8b 45 14             	mov    0x14(%ebp),%eax
5ef500:	89 46 10             	mov    %eax,0x10(%esi)
5ef503:	8b 45 1c             	mov    0x1c(%ebp),%eax
5ef506:	89 46 14             	mov    %eax,0x14(%esi)
5ef509:	8b c6                	mov    %esi,%eax
5ef50b:	5e                   	pop    %esi
5ef50c:	5d                   	pop    %ebp
5ef50d:	c2 18 00             	ret    $0x18
5ef510:	8b ff                	mov    %edi,%edi
5ef512:	55                   	push   %ebp
5ef513:	8b ec                	mov    %esp,%ebp
5ef515:	56                   	push   %esi
5ef516:	8b f1                	mov    %ecx,%esi
5ef518:	e8 6d ff ff ff       	call   0x5ef48a
5ef51d:	8b 45 08             	mov    0x8(%ebp),%eax
5ef520:	8b 00                	mov    (%eax),%eax
5ef522:	89 86 48 04 00 00    	mov    %eax,0x448(%esi)
5ef528:	8b 45 0c             	mov    0xc(%ebp),%eax
5ef52b:	89 06                	mov    %eax,(%esi)
5ef52d:	8b 45 10             	mov    0x10(%ebp),%eax
5ef530:	89 46 04             	mov    %eax,0x4(%esi)
5ef533:	8b 45 18             	mov    0x18(%ebp),%eax
5ef536:	89 46 08             	mov    %eax,0x8(%esi)
5ef539:	8b 45 14             	mov    0x14(%ebp),%eax
5ef53c:	89 46 10             	mov    %eax,0x10(%esi)
5ef53f:	8b 45 1c             	mov    0x1c(%ebp),%eax
5ef542:	89 46 14             	mov    %eax,0x14(%esi)
5ef545:	8b c6                	mov    %esi,%eax
5ef547:	5e                   	pop    %esi
5ef548:	5d                   	pop    %ebp
5ef549:	c2 18 00             	ret    $0x18
5ef54c:	8b ff                	mov    %edi,%edi
5ef54e:	56                   	push   %esi
5ef54f:	8b f1                	mov    %ecx,%esi
5ef551:	ff b6 04 04 00 00    	push   0x404(%esi)
5ef557:	e8 cc 52 01 00       	call   0x604828
5ef55c:	83 a6 04 04 00 00 00 	andl   $0x0,0x404(%esi)
5ef563:	59                   	pop    %ecx
5ef564:	5e                   	pop    %esi
5ef565:	c3                   	ret
5ef566:	8b ff                	mov    %edi,%edi
5ef568:	55                   	push   %ebp
5ef569:	8b ec                	mov    %esp,%ebp
5ef56b:	56                   	push   %esi
5ef56c:	8b f1                	mov    %ecx,%esi
5ef56e:	ff 36                	push   (%esi)
5ef570:	e8 b3 52 01 00       	call   0x604828
5ef575:	8b 55 08             	mov    0x8(%ebp),%edx
5ef578:	83 26 00             	andl   $0x0,(%esi)
5ef57b:	59                   	pop    %ecx
5ef57c:	8b 02                	mov    (%edx),%eax
5ef57e:	89 06                	mov    %eax,(%esi)
5ef580:	8b c6                	mov    %esi,%eax
5ef582:	83 22 00             	andl   $0x0,(%edx)
5ef585:	5e                   	pop    %esi
5ef586:	5d                   	pop    %ebp
5ef587:	c2 04 00             	ret    $0x4
5ef58a:	8b ff                	mov    %edi,%edi
5ef58c:	55                   	push   %ebp
5ef58d:	8b ec                	mov    %esp,%ebp
5ef58f:	81 ec 74 04 00 00    	sub    $0x474,%esp
5ef595:	a1 d4 89 72 00       	mov    0x7289d4,%eax
5ef59a:	33 c5                	xor    %ebp,%eax
5ef59c:	89 45 fc             	mov    %eax,-0x4(%ebp)
5ef59f:	56                   	push   %esi
5ef5a0:	8b f1                	mov    %ecx,%esi
5ef5a2:	57                   	push   %edi
5ef5a3:	8b 06                	mov    (%esi),%eax
5ef5a5:	8b 38                	mov    (%eax),%edi
5ef5a7:	57                   	push   %edi
5ef5a8:	e8 05 75 01 00       	call   0x606ab2
5ef5ad:	88 85 9c fb ff ff    	mov    %al,-0x464(%ebp)
5ef5b3:	8b 46 04             	mov    0x4(%esi),%eax
5ef5b6:	59                   	pop    %ecx
5ef5b7:	8d 8d 8c fb ff ff    	lea    -0x474(%ebp),%ecx
5ef5bd:	ff 30                	push   (%eax)
5ef5bf:	e8 c9 e5 ff ff       	call   0x5edb8d
5ef5c4:	8b 06                	mov    (%esi),%eax
5ef5c6:	8d 8d a4 fb ff ff    	lea    -0x45c(%ebp),%ecx
5ef5cc:	8b 00                	mov    (%eax),%eax
5ef5ce:	89 85 a0 fb ff ff    	mov    %eax,-0x460(%ebp)
5ef5d4:	8b 46 10             	mov    0x10(%esi),%eax
5ef5d7:	ff 30                	push   (%eax)
5ef5d9:	8d 85 90 fb ff ff    	lea    -0x470(%ebp),%eax
5ef5df:	50                   	push   %eax
5ef5e0:	8b 46 0c             	mov    0xc(%esi),%eax
5ef5e3:	ff 30                	push   (%eax)
5ef5e5:	8b 46 08             	mov    0x8(%esi),%eax
5ef5e8:	ff 70 04             	push   0x4(%eax)
5ef5eb:	ff 30                	push   (%eax)
5ef5ed:	8d 85 a0 fb ff ff    	lea    -0x460(%ebp),%eax
5ef5f3:	50                   	push   %eax
5ef5f4:	e8 db fe ff ff       	call   0x5ef4d4
5ef5f9:	83 65 f4 00          	andl   $0x0,-0xc(%ebp)
5ef5fd:	8d 8d a4 fb ff ff    	lea    -0x45c(%ebp),%ecx
5ef603:	e8 89 04 00 00       	call   0x5efa91
5ef608:	8d 8d e4 fb ff ff    	lea    -0x41c(%ebp),%ecx
5ef60e:	8b f0                	mov    %eax,%esi
5ef610:	e8 37 ff ff ff       	call   0x5ef54c
5ef615:	80 bd 98 fb ff ff 00 	cmpb   $0x0,-0x468(%ebp)
5ef61c:	74 0d                	je     0x5ef62b
5ef61e:	8b 8d 8c fb ff ff    	mov    -0x474(%ebp),%ecx
5ef624:	83 a1 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%ecx)
5ef62b:	57                   	push   %edi
5ef62c:	ff b5 9c fb ff ff    	push   -0x464(%ebp)
5ef632:	e8 2e 75 01 00       	call   0x606b65
5ef637:	59                   	pop    %ecx
5ef638:	59                   	pop    %ecx
5ef639:	8b 4d fc             	mov    -0x4(%ebp),%ecx
5ef63c:	8b c6                	mov    %esi,%eax
5ef63e:	5f                   	pop    %edi
5ef63f:	33 cd                	xor    %ebp,%ecx
5ef641:	5e                   	pop    %esi
5ef642:	e8 93 1e ff ff       	call   0x5e14da
5ef647:	c9                   	leave
5ef648:	c3                   	ret
5ef649:	8b ff                	mov    %edi,%edi
5ef64b:	55                   	push   %ebp
5ef64c:	8b ec                	mov    %esp,%ebp
5ef64e:	81 ec 74 04 00 00    	sub    $0x474,%esp
5ef654:	a1 d4 89 72 00       	mov    0x7289d4,%eax
5ef659:	33 c5                	xor    %ebp,%eax
5ef65b:	89 45 fc             	mov    %eax,-0x4(%ebp)
5ef65e:	56                   	push   %esi
5ef65f:	8b f1                	mov    %ecx,%esi
5ef661:	57                   	push   %edi
5ef662:	8b 06                	mov    (%esi),%eax
5ef664:	8b 38                	mov    (%eax),%edi
5ef666:	57                   	push   %edi
5ef667:	e8 46 74 01 00       	call   0x606ab2
5ef66c:	88 85 9c fb ff ff    	mov    %al,-0x464(%ebp)
5ef672:	8b 46 04             	mov    0x4(%esi),%eax
5ef675:	59                   	pop    %ecx
5ef676:	8d 8d 8c fb ff ff    	lea    -0x474(%ebp),%ecx
5ef67c:	ff 30                	push   (%eax)
5ef67e:	e8 0a e5 ff ff       	call   0x5edb8d
5ef683:	8b 06                	mov    (%esi),%eax
5ef685:	8d 8d a4 fb ff ff    	lea    -0x45c(%ebp),%ecx
5ef68b:	8b 00                	mov    (%eax),%eax
5ef68d:	89 85 a0 fb ff ff    	mov    %eax,-0x460(%ebp)
5ef693:	8b 46 10             	mov    0x10(%esi),%eax
5ef696:	ff 30                	push   (%eax)
5ef698:	8d 85 90 fb ff ff    	lea    -0x470(%ebp),%eax
5ef69e:	50                   	push   %eax
5ef69f:	8b 46 0c             	mov    0xc(%esi),%eax
5ef6a2:	ff 30                	push   (%eax)