5ab48d:	0f b6 10             	movzbl (%eax),%edx
5ab490:	8d 68 01             	lea    0x1(%eax),%ebp
5ab493:	49                   	dec    %ecx
5ab494:	89 4c 24 14          	mov    %ecx,0x14(%esp)
5ab498:	3b ca                	cmp    %edx,%ecx
5ab49a:	0f 82 fe 00 00 00    	jb     0x5ab59e
5ab4a0:	8d 04 2a             	lea    (%edx,%ebp,1),%eax
5ab4a3:	89 6c 24 10          	mov    %ebp,0x10(%esp)
5ab4a7:	89 07                	mov    %eax,(%edi)
5ab4a9:	2b ca                	sub    %edx,%ecx
5ab4ab:	8d 86 00 06 00 00    	lea    0x600(%esi),%eax
5ab4b1:	89 4f 04             	mov    %ecx,0x4(%edi)
5ab4b4:	50                   	push   %eax
5ab4b5:	8d 44 24 14          	lea    0x14(%esp),%eax
5ab4b9:	89 54 24 18          	mov    %edx,0x18(%esp)
5ab4bd:	53                   	push   %ebx
5ab4be:	50                   	push   %eax
5ab4bf:	e8 cc d3 ff ff       	call   0x5a8890
5ab4c4:	83 c4 0c             	add    $0xc,%esp
5ab4c7:	85 c0                	test   %eax,%eax
5ab4c9:	0f 84 cf 00 00 00    	je     0x5ab59e
5ab4cf:	8d 44 24 18          	lea    0x18(%esp),%eax
5ab4d3:	50                   	push   %eax
5ab4d4:	57                   	push   %edi
5ab4d5:	e8 36 00 ff ff       	call   0x59b510
5ab4da:	83 c4 08             	add    $0x8,%esp
5ab4dd:	85 c0                	test   %eax,%eax
5ab4df:	75 14                	jne    0x5ab4f5
5ab4e1:	68 ae 09 00 00       	push   $0x9ae
5ab4e6:	68 18 81 66 00       	push   $0x668118
5ab4eb:	68 0f 01 00 00       	push   $0x10f
5ab4f0:	e9 64 02 00 00       	jmp    0x5ab759
5ab4f5:	6a 01                	push   $0x1
5ab4f7:	6a 00                	push   $0x0
5ab4f9:	8d 44 24 2c          	lea    0x2c(%esp),%eax
5ab4fd:	50                   	push   %eax
5ab4fe:	68 00 40 00 00       	push   $0x4000
5ab503:	8d 44 24 28          	lea    0x28(%esp),%eax
5ab507:	50                   	push   %eax
5ab508:	56                   	push   %esi
5ab509:	e8 f2 9f ff ff       	call   0x5a5500
5ab50e:	83 c4 18             	add    $0x18,%esp
5ab511:	85 c0                	test   %eax,%eax
5ab513:	74 69                	je     0x5ab57e
5ab515:	6a 01                	push   $0x1
5ab517:	6a 00                	push   $0x0
5ab519:	6a 00                	push   $0x0
5ab51b:	ff 74 24 30          	push   0x30(%esp)
5ab51f:	68 00 40 00 00       	push   $0x4000
5ab524:	56                   	push   %esi
5ab525:	e8 56 a5 ff ff       	call   0x5a5a80
5ab52a:	83 c4 18             	add    $0x18,%esp
5ab52d:	85 c0                	test   %eax,%eax
5ab52f:	74 4d                	je     0x5ab57e
5ab531:	68 ba 09 00 00       	push   $0x9ba
5ab536:	68 18 81 66 00       	push   $0x668118
5ab53b:	ff 74 24 2c          	push   0x2c(%esp)
5ab53f:	e8 3c 52 f3 ff       	call   0x4e0780
5ab544:	56                   	push   %esi
5ab545:	e8 66 e7 fe ff       	call   0x599cb0
5ab54a:	83 c4 10             	add    $0x10,%esp
5ab54d:	85 c0                	test   %eax,%eax
5ab54f:	0f 85 9c 01 00 00    	jne    0x5ab6f1
5ab555:	68 be 09 00 00       	push   $0x9be
5ab55a:	68 18 81 66 00       	push   $0x668118
5ab55f:	68 0f 01 00 00       	push   $0x10f
5ab564:	68 69 01 00 00       	push   $0x169
5ab569:	6a 50                	push   $0x50
5ab56b:	56                   	push   %esi
5ab56c:	e8 9f 3b fe ff       	call   0x58f110
5ab571:	83 c4 18             	add    $0x18,%esp
5ab574:	33 c0                	xor    %eax,%eax
5ab576:	5f                   	pop    %edi
5ab577:	5e                   	pop    %esi
5ab578:	5d                   	pop    %ebp
5ab579:	5b                   	pop    %ebx
5ab57a:	83 c4 10             	add    $0x10,%esp
5ab57d:	c3                   	ret
5ab57e:	68 b7 09 00 00       	push   $0x9b7
5ab583:	68 18 81 66 00       	push   $0x668118
5ab588:	ff 74 24 2c          	push   0x2c(%esp)
5ab58c:	e8 ef 51 f3 ff       	call   0x4e0780
5ab591:	83 c4 0c             	add    $0xc,%esp
5ab594:	33 c0                	xor    %eax,%eax
5ab596:	5f                   	pop    %edi
5ab597:	5e                   	pop    %esi
5ab598:	5d                   	pop    %ebp
5ab599:	5b                   	pop    %ebx
5ab59a:	83 c4 10             	add    $0x10,%esp
5ab59d:	c3                   	ret
5ab59e:	68 a7 09 00 00       	push   $0x9a7
5ab5a3:	e9 a7 01 00 00       	jmp    0x5ab74f
5ab5a8:	8b 7c 24 28          	mov    0x28(%esp),%edi
5ab5ac:	8b 4f 04             	mov    0x4(%edi),%ecx
5ab5af:	8b 07                	mov    (%edi),%eax
5ab5b1:	85 c9                	test   %ecx,%ecx
5ab5b3:	0f 84 91 01 00 00    	je     0x5ab74a
5ab5b9:	0f b6 10             	movzbl (%eax),%edx
5ab5bc:	8d 58 01             	lea    0x1(%eax),%ebx
5ab5bf:	49                   	dec    %ecx
5ab5c0:	3b ca                	cmp    %edx,%ecx
5ab5c2:	0f 82 82 01 00 00    	jb     0x5ab74a
5ab5c8:	8d 04 13             	lea    (%ebx,%edx,1),%eax
5ab5cb:	89 5c 24 10          	mov    %ebx,0x10(%esp)
5ab5cf:	2b ca                	sub    %edx,%ecx
5ab5d1:	89 07                	mov    %eax,(%edi)
5ab5d3:	89 4f 04             	mov    %ecx,0x4(%edi)
5ab5d6:	8b 4e 7c             	mov    0x7c(%esi),%ecx
5ab5d9:	89 54 24 14          	mov    %edx,0x14(%esp)
5ab5dd:	8d 81 20 02 00 00    	lea    0x220(%ecx),%eax
5ab5e3:	50                   	push   %eax
5ab5e4:	8d 81 1c 02 00 00    	lea    0x21c(%ecx),%eax
5ab5ea:	50                   	push   %eax
5ab5eb:	8d 44 24 18          	lea    0x18(%esp),%eax
5ab5ef:	50                   	push   %eax
5ab5f0:	e8 9b d2 ff ff       	call   0x5a8890
5ab5f5:	83 c4 0c             	add    $0xc,%esp
5ab5f8:	85 c0                	test   %eax,%eax
5ab5fa:	75 26                	jne    0x5ab622
5ab5fc:	68 cf 09 00 00       	push   $0x9cf
5ab601:	68 18 81 66 00       	push   $0x668118
5ab606:	6a 44                	push   $0x44
5ab608:	68 69 01 00 00       	push   $0x169
5ab60d:	6a 50                	push   $0x50
5ab60f:	56                   	push   %esi
5ab610:	e8 fb 3a fe ff       	call   0x58f110
5ab615:	83 c4 18             	add    $0x18,%esp
5ab618:	33 c0                	xor    %eax,%eax
5ab61a:	5f                   	pop    %edi
5ab61b:	5e                   	pop    %esi
5ab61c:	5d                   	pop    %ebp
5ab61d:	5b                   	pop    %ebx
5ab61e:	83 c4 10             	add    $0x10,%esp
5ab621:	c3                   	ret
5ab622:	8b 46 04             	mov    0x4(%esi),%eax
5ab625:	8b 40 64             	mov    0x64(%eax),%eax
5ab628:	f6 40 30 02          	testb  $0x2,0x30(%eax)
5ab62c:	0f 84 b1 00 00 00    	je     0x5ab6e3
5ab632:	8b 5f 04             	mov    0x4(%edi),%ebx
5ab635:	8b 17                	mov    (%edi),%edx
5ab637:	83 fb 02             	cmp    $0x2,%ebx
5ab63a:	0f 82 9c 00 00 00    	jb     0x5ab6dc
5ab640:	0f b6 0a             	movzbl (%edx),%ecx
5ab643:	8d 6a 02             	lea    0x2(%edx),%ebp
5ab646:	0f b6 42 01          	movzbl 0x1(%edx),%eax
5ab64a:	8d 53 fe             	lea    -0x2(%ebx),%edx
5ab64d:	c1 e1 08             	shl    $0x8,%ecx
5ab650:	0b c8                	or     %eax,%ecx
5ab652:	3b d1                	cmp    %ecx,%edx
5ab654:	0f 82 82 00 00 00    	jb     0x5ab6dc
5ab65a:	8d 04 29             	lea    (%ecx,%ebp,1),%eax
5ab65d:	89 6c 24 10          	mov    %ebp,0x10(%esp)
5ab661:	89 07                	mov    %eax,(%edi)
5ab663:	2b d1                	sub    %ecx,%edx
5ab665:	6a 00                	push   $0x0
5ab667:	8d 44 24 14          	lea    0x14(%esp),%eax
5ab66b:	89 57 04             	mov    %edx,0x4(%edi)
5ab66e:	50                   	push   %eax
5ab66f:	56                   	push   %esi
5ab670:	89 4c 24 20          	mov    %ecx,0x20(%esp)
5ab674:	e8 57 e8 fe ff       	call   0x599ed0
5ab679:	83 c4 0c             	add    $0xc,%esp
5ab67c:	85 c0                	test   %eax,%eax
5ab67e:	75 29                	jne    0x5ab6a9
5ab680:	68 e4 09 00 00       	push   $0x9e4
5ab685:	68 18 81 66 00       	push   $0x668118
5ab68a:	68 68 01 00 00       	push   $0x168
5ab68f:	68 69 01 00 00       	push   $0x169
5ab694:	6a 50                	push   $0x50
5ab696:	56                   	push   %esi
5ab697:	e8 74 3a fe ff       	call   0x58f110
5ab69c:	83 c4 18             	add    $0x18,%esp
5ab69f:	33 c0                	xor    %eax,%eax
5ab6a1:	5f                   	pop    %edi
5ab6a2:	5e                   	pop    %esi
5ab6a3:	5d                   	pop    %ebp
5ab6a4:	5b                   	pop    %ebx
5ab6a5:	83 c4 10             	add    $0x10,%esp
5ab6a8:	c3                   	ret
5ab6a9:	56                   	push   %esi
5ab6aa:	e8 01 e6 fe ff       	call   0x599cb0
5ab6af:	83 c4 04             	add    $0x4,%esp
5ab6b2:	85 c0                	test   %eax,%eax
5ab6b4:	75 2d                	jne    0x5ab6e3
5ab6b6:	68 ea 09 00 00       	push   $0x9ea
5ab6bb:	68 18 81 66 00       	push   $0x668118
5ab6c0:	6a 41                	push   $0x41
5ab6c2:	68 69 01 00 00       	push   $0x169
5ab6c7:	6a 50                	push   $0x50
5ab6c9:	56                   	push   %esi
5ab6ca:	e8 41 3a fe ff       	call   0x58f110
5ab6cf:	83 c4 18             	add    $0x18,%esp
5ab6d2:	33 c0                	xor    %eax,%eax
5ab6d4:	5f                   	pop    %edi
5ab6d5:	5e                   	pop    %esi
5ab6d6:	5d                   	pop    %ebp
5ab6d7:	5b                   	pop    %ebx
5ab6d8:	83 c4 10             	add    $0x10,%esp
5ab6db:	c3                   	ret
5ab6dc:	68 d9 09 00 00       	push   $0x9d9
5ab6e1:	eb 6c                	jmp    0x5ab74f
5ab6e3:	57                   	push   %edi
5ab6e4:	56                   	push   %esi
5ab6e5:	e8 36 83 fe ff       	call   0x593a20
5ab6ea:	83 c4 08             	add    $0x8,%esp
5ab6ed:	85 c0                	test   %eax,%eax
5ab6ef:	74 78                	je     0x5ab769
5ab6f1:	83 7f 04 00          	cmpl   $0x0,0x4(%edi)
5ab6f5:	74 07                	je     0x5ab6fe
5ab6f7:	68 f9 09 00 00       	push   $0x9f9
5ab6fc:	eb 51                	jmp    0x5ab74f
5ab6fe:	8b 46 7c             	mov    0x7c(%esi),%eax
5ab701:	c7 80 18 02 00 00 01 	movl   $0x1,0x218(%eax)
5ab708:	00 00 00
5ab70b:	8b 4e 04             	mov    0x4(%esi),%ecx
5ab70e:	8b 41 64             	mov    0x64(%ecx),%eax
5ab711:	f6 40 30 08          	testb  $0x8,0x30(%eax)
5ab715:	75 26                	jne    0x5ab73d
5ab717:	8b 01                	mov    (%ecx),%eax
5ab719:	3d 04 03 00 00       	cmp    $0x304,%eax
5ab71e:	7c 1d                	jl     0x5ab73d
5ab720:	3d 00 00 01 00       	cmp    $0x10000,%eax
5ab725:	74 16                	je     0x5ab73d
5ab727:	83 be f4 05 00 00 04 	cmpl   $0x4,0x5f4(%esi)
5ab72e:	74 0d                	je     0x5ab73d
5ab730:	5f                   	pop    %edi
5ab731:	5e                   	pop    %esi
5ab732:	5d                   	pop    %ebp
5ab733:	b8 03 00 00 00       	mov    $0x3,%eax
5ab738:	5b                   	pop    %ebx
5ab739:	83 c4 10             	add    $0x10,%esp
5ab73c:	c3                   	ret
5ab73d:	5f                   	pop    %edi
5ab73e:	5e                   	pop    %esi
5ab73f:	5d                   	pop    %ebp
5ab740:	b8 02 00 00 00       	mov    $0x2,%eax
5ab745:	5b                   	pop    %ebx
5ab746:	83 c4 10             	add    $0x10,%esp
5ab749:	c3                   	ret
5ab74a:	68 c8 09 00 00       	push   $0x9c8
5ab74f:	68 18 81 66 00       	push   $0x668118
5ab754:	68 9f 00 00 00       	push   $0x9f
5ab759:	68 69 01 00 00       	push   $0x169
5ab75e:	6a 32                	push   $0x32
5ab760:	56                   	push   %esi
5ab761:	e8 aa 39 fe ff       	call   0x58f110
5ab766:	83 c4 18             	add    $0x18,%esp
5ab769:	5f                   	pop    %edi
5ab76a:	5e                   	pop    %esi
5ab76b:	5d                   	pop    %ebp
5ab76c:	33 c0                	xor    %eax,%eax
5ab76e:	5b                   	pop    %ebx
5ab76f:	83 c4 10             	add    $0x10,%esp
5ab772:	c3                   	ret
5ab773:	cc                   	int3
5ab774:	cc                   	int3
5ab775:	cc                   	int3
5ab776:	cc                   	int3
5ab777:	cc                   	int3
5ab778:	cc                   	int3
5ab779:	cc                   	int3
5ab77a:	cc                   	int3
5ab77b:	cc                   	int3
5ab77c:	cc                   	int3
5ab77d:	cc                   	int3
5ab77e:	cc                   	int3
5ab77f:	cc                   	int3
5ab780:	56                   	push   %esi
5ab781:	8b 74 24 08          	mov    0x8(%esp),%esi
5ab785:	56                   	push   %esi
5ab786:	e8 05 e7 ff ff       	call   0x5a9e90
5ab78b:	83 c4 04             	add    $0x4,%esp
5ab78e:	85 c0                	test   %eax,%eax
5ab790:	74 48                	je     0x5ab7da
5ab792:	83 be 3c 05 00 00 ff 	cmpl   $0xffffffff,0x53c(%esi)
5ab799:	74 65                	je     0x5ab800
5ab79b:	8b 86 d0 04 00 00    	mov    0x4d0(%esi),%eax
5ab7a1:	8b 88 50 01 00 00    	mov    0x150(%eax),%ecx
5ab7a7:	85 c9                	test   %ecx,%ecx
5ab7a9:	74 55                	je     0x5ab800
5ab7ab:	ff b0 54 01 00 00    	push   0x154(%eax)
5ab7b1:	56                   	push   %esi
5ab7b2:	ff d1                	call   *%ecx
5ab7b4:	83 c4 08             	add    $0x8,%esp
5ab7b7:	85 c0                	test   %eax,%eax
5ab7b9:	75 23                	jne    0x5ab7de
5ab7bb:	68 0d 0b 00 00       	push   $0xb0d
5ab7c0:	68 18 81 66 00       	push   $0x668118
5ab7c5:	68 48 01 00 00       	push   $0x148
5ab7ca:	68 ba 01 00 00       	push   $0x1ba
5ab7cf:	6a 71                	push   $0x71
5ab7d1:	56                   	push   %esi
5ab7d2:	e8 39 39 fe ff       	call   0x58f110
5ab7d7:	83 c4 18             	add    $0x18,%esp
5ab7da:	33 c0                	xor    %eax,%eax
5ab7dc:	5e                   	pop    %esi
5ab7dd:	c3                   	ret
5ab7de:	79 20                	jns    0x5ab800
5ab7e0:	68 13 0b 00 00       	push   $0xb13
5ab7e5:	68 18 81 66 00       	push   $0x668118
5ab7ea:	6a 41                	push   $0x41
5ab7ec:	68 ba 01 00 00       	push   $0x1ba
5ab7f1:	6a 50                	push   $0x50
5ab7f3:	56                   	push   %esi
5ab7f4:	e8 17 39 fe ff       	call   0x58f110
5ab7f9:	83 c4 18             	add    $0x18,%esp
5ab7fc:	33 c0                	xor    %eax,%eax
5ab7fe:	5e                   	pop    %esi
5ab7ff:	c3                   	ret
5ab800:	83 be d0 05 00 00 00 	cmpl   $0x0,0x5d0(%esi)
5ab807:	74 16                	je     0x5ab81f
5ab809:	56                   	push   %esi
5ab80a:	e8 31 f0 fd ff       	call   0x58a840
5ab80f:	83 c4 04             	add    $0x4,%esp
5ab812:	85 c0                	test   %eax,%eax
5ab814:	75 09                	jne    0x5ab81f
5ab816:	f6 86 ac 04 00 00 01 	testb  $0x1,0x4ac(%esi)
5ab81d:	75 bb                	jne    0x5ab7da
5ab81f:	b8 01 00 00 00       	mov    $0x1,%eax
5ab824:	5e                   	pop    %esi
5ab825:	c3                   	ret
5ab826:	cc                   	int3
5ab827:	cc                   	int3
5ab828:	cc                   	int3
5ab829:	cc                   	int3
5ab82a:	cc                   	int3
5ab82b:	cc                   	int3
5ab82c:	cc                   	int3
5ab82d:	cc                   	int3
5ab82e:	cc                   	int3
5ab82f:	cc                   	int3
5ab830:	b8 1c 00 00 00       	mov    $0x1c,%eax
5ab835:	e8 76 5f 02 00       	call   0x5d17b0
5ab83a:	53                   	push   %ebx
5ab83b:	55                   	push   %ebp
5ab83c:	56                   	push   %esi
5ab83d:	8b 74 24 30          	mov    0x30(%esp),%esi
5ab841:	57                   	push   %edi
5ab842:	8b 7c 24 30          	mov    0x30(%esp),%edi
5ab846:	c7 44 24 14 00 00 00 	movl   $0x0,0x14(%esp)
5ab84d:	00
5ab84e:	c7 44 24 10 00 00 00 	movl   $0x0,0x10(%esp)
5ab855:	00
5ab856:	8b 4f 7c             	mov    0x7c(%edi),%ecx
5ab859:	8b 81 10 02 00 00    	mov    0x210(%ecx),%eax
5ab85f:	ff b1 58 03 00 00    	push   0x358(%ecx)
5ab865:	8b 58 10             	mov    0x10(%eax),%ebx
5ab868:	8b 06                	mov    (%esi),%eax
5ab86a:	89 44 24 2c          	mov    %eax,0x2c(%esp)
5ab86e:	8b 46 04             	mov    0x4(%esi),%eax