5942e5:	85 c0                	test   %eax,%eax
5942e7:	74 04                	je     0x5942ed
5942e9:	3b 17                	cmp    (%edi),%edx
5942eb:	74 33                	je     0x594320
5942ed:	83 c7 0c             	add    $0xc,%edi
5942f0:	83 3f 00             	cmpl   $0x0,(%edi)
5942f3:	75 ed                	jne    0x5942e2
5942f5:	68 cd 07 00 00       	push   $0x7cd
5942fa:	68 e0 71 66 00       	push   $0x6671e0
5942ff:	68 02 01 00 00       	push   $0x102
594304:	68 5f 02 00 00       	push   $0x25f
594309:	6a 46                	push   $0x46
59430b:	56                   	push   %esi
59430c:	89 1e                	mov    %ebx,(%esi)
59430e:	e8 fd ad ff ff       	call   0x58f110
594313:	83 c4 18             	add    $0x18,%esp
594316:	33 c0                	xor    %eax,%eax
594318:	5d                   	pop    %ebp
594319:	5f                   	pop    %edi
59431a:	5e                   	pop    %esi
59431b:	5b                   	pop    %ebx
59431c:	83 c4 08             	add    $0x8,%esp
59431f:	c3                   	ret
594320:	ff d0                	call   *%eax
594322:	5d                   	pop    %ebp
594323:	5f                   	pop    %edi
594324:	89 46 04             	mov    %eax,0x4(%esi)
594327:	b8 01 00 00 00       	mov    $0x1,%eax
59432c:	5e                   	pop    %esi
59432d:	5b                   	pop    %ebx
59432e:	83 c4 08             	add    $0x8,%esp
594331:	c3                   	ret
594332:	cc                   	int3
594333:	cc                   	int3
594334:	cc                   	int3
594335:	cc                   	int3
594336:	cc                   	int3
594337:	cc                   	int3
594338:	cc                   	int3
594339:	cc                   	int3
59433a:	cc                   	int3
59433b:	cc                   	int3
59433c:	cc                   	int3
59433d:	cc                   	int3
59433e:	cc                   	int3
59433f:	cc                   	int3
594340:	b8 10 00 00 00       	mov    $0x10,%eax
594345:	e8 66 d4 03 00       	call   0x5d17b0
59434a:	8b 4c 24 18          	mov    0x18(%esp),%ecx
59434e:	53                   	push   %ebx
59434f:	55                   	push   %ebp
594350:	56                   	push   %esi
594351:	8b 69 04             	mov    0x4(%ecx),%ebp
594354:	33 db                	xor    %ebx,%ebx
594356:	57                   	push   %edi
594357:	8b 7c 24 24          	mov    0x24(%esp),%edi
59435b:	89 5c 24 28          	mov    %ebx,0x28(%esp)
59435f:	8b 57 04             	mov    0x4(%edi),%edx
594362:	8b 02                	mov    (%edx),%eax
594364:	89 af 04 05 00 00    	mov    %ebp,0x504(%edi)
59436a:	3d 00 00 01 00       	cmp    $0x10000,%eax
59436f:	74 54                	je     0x5943c5
594371:	3d ff ff 01 00       	cmp    $0x1ffff,%eax
594376:	74 46                	je     0x5943be
594378:	8b 42 64             	mov    0x64(%edx),%eax
59437b:	f6 40 30 08          	testb  $0x8,0x30(%eax)
59437f:	75 10                	jne    0x594391
594381:	8b 02                	mov    (%edx),%eax
594383:	3d 04 03 00 00       	cmp    $0x304,%eax
594388:	7c 07                	jl     0x594391
59438a:	3d 00 00 01 00       	cmp    $0x10000,%eax
59438f:	75 34                	jne    0x5943c5
594391:	ff 37                	push   (%edi)
594393:	55                   	push   %ebp
594394:	57                   	push   %edi
594395:	e8 16 1f 00 00       	call   0x5962b0
59439a:	83 c4 0c             	add    $0xc,%esp
59439d:	85 c0                	test   %eax,%eax
59439f:	79 0d                	jns    0x5943ae
5943a1:	5f                   	pop    %edi
5943a2:	5e                   	pop    %esi
5943a3:	5d                   	pop    %ebp
5943a4:	b8 0a 01 00 00       	mov    $0x10a,%eax
5943a9:	5b                   	pop    %ebx
5943aa:	83 c4 10             	add    $0x10,%esp
5943ad:	c3                   	ret
5943ae:	8b 44 24 2c          	mov    0x2c(%esp),%eax
5943b2:	5f                   	pop    %edi
5943b3:	5e                   	pop    %esi
5943b4:	5d                   	pop    %ebp
5943b5:	89 18                	mov    %ebx,(%eax)
5943b7:	33 c0                	xor    %eax,%eax
5943b9:	5b                   	pop    %ebx
5943ba:	83 c4 10             	add    $0x10,%esp
5943bd:	c3                   	ret
5943be:	be 90 71 66 00       	mov    $0x667190,%esi
5943c3:	eb 05                	jmp    0x5943ca
5943c5:	be 48 71 66 00       	mov    $0x667148,%esi
5943ca:	8b 89 68 02 00 00    	mov    0x268(%ecx),%ecx
5943d0:	81 c1 98 01 00 00    	add    $0x198,%ecx
5943d6:	89 4c 24 14          	mov    %ecx,0x14(%esp)
5943da:	39 59 08             	cmp    %ebx,0x8(%ecx)
5943dd:	75 19                	jne    0x5943f8
5943df:	39 9f 4c 04 00 00    	cmp    %ebx,0x44c(%edi)
5943e5:	0f 84 5f 01 00 00    	je     0x59454a
5943eb:	5f                   	pop    %edi
5943ec:	5e                   	pop    %esi
5943ed:	5d                   	pop    %ebp
5943ee:	b8 02 01 00 00       	mov    $0x102,%eax
5943f3:	5b                   	pop    %ebx
5943f4:	83 c4 10             	add    $0x10,%esp
5943f7:	c3                   	ret
5943f8:	8b 42 64             	mov    0x64(%edx),%eax
5943fb:	f6 40 30 08          	testb  $0x8,0x30(%eax)
5943ff:	0f 85 45 01 00 00    	jne    0x59454a
594405:	c7 41 0c 01 00 00 00 	movl   $0x1,0xc(%ecx)
59440c:	33 db                	xor    %ebx,%ebx
59440e:	8b 71 04             	mov    0x4(%ecx),%esi
594411:	8b 11                	mov    (%ecx),%edx
594413:	89 5c 24 10          	mov    %ebx,0x10(%esp)
594417:	85 f6                	test   %esi,%esi
594419:	0f 84 1e 01 00 00    	je     0x59453d
59441f:	0f b6 0a             	movzbl (%edx),%ecx
594422:	4e                   	dec    %esi
594423:	42                   	inc    %edx
594424:	3b f1                	cmp    %ecx,%esi
594426:	0f 82 11 01 00 00    	jb     0x59453d
59442c:	2b f1                	sub    %ecx,%esi
59442e:	0f 85 09 01 00 00    	jne    0x59453d
594434:	8b 44 24 14          	mov    0x14(%esp),%eax
594438:	8d 3c 0a             	lea    (%edx,%ecx,1),%edi
59443b:	89 38                	mov    %edi,(%eax)
59443d:	8b 7c 24 24          	mov    0x24(%esp),%edi
594441:	89 70 04             	mov    %esi,0x4(%eax)
594444:	81 fd 00 03 00 00    	cmp    $0x300,%ebp
59444a:	7f 0d                	jg     0x594459
59444c:	5f                   	pop    %edi
59444d:	5e                   	pop    %esi
59444e:	5d                   	pop    %ebp
59444f:	b8 24 01 00 00       	mov    $0x124,%eax
594454:	5b                   	pop    %ebx
594455:	83 c4 10             	add    $0x10,%esp
594458:	c3                   	ret
594459:	bd 00 ff 00 00       	mov    $0xff00,%ebp
59445e:	66 90                	xchg   %ax,%ax
594460:	83 f9 02             	cmp    $0x2,%ecx
594463:	0f 82 89 00 00 00    	jb     0x5944f2
594469:	0f b6 32             	movzbl (%edx),%esi
59446c:	83 e9 02             	sub    $0x2,%ecx
59446f:	0f b6 42 01          	movzbl 0x1(%edx),%eax
594473:	83 c2 02             	add    $0x2,%edx
594476:	c1 e6 08             	shl    $0x8,%esi
594479:	0b f0                	or     %eax,%esi
59447b:	89 54 24 28          	mov    %edx,0x28(%esp)
59447f:	89 4c 24 24          	mov    %ecx,0x24(%esp)
594483:	3b f3                	cmp    %ebx,%esi
594485:	74 d9                	je     0x594460
594487:	8b 47 04             	mov    0x4(%edi),%eax
59448a:	8b 40 64             	mov    0x64(%eax),%eax
59448d:	f6 40 30 08          	testb  $0x8,0x30(%eax)
594491:	75 09                	jne    0x59449c
594493:	33 d2                	xor    %edx,%edx
594495:	3b f3                	cmp    %ebx,%esi
594497:	0f 9d c2             	setge  %dl
59449a:	eb 21                	jmp    0x5944bd
59449c:	81 fe 00 01 00 00    	cmp    $0x100,%esi
5944a2:	8b ce                	mov    %esi,%ecx
5944a4:	8b c3                	mov    %ebx,%eax
5944a6:	0f 44 cd             	cmove  %ebp,%ecx
5944a9:	81 fb 00 01 00 00    	cmp    $0x100,%ebx
5944af:	0f 44 c5             	cmove  %ebp,%eax
5944b2:	33 d2                	xor    %edx,%edx
5944b4:	3b c8                	cmp    %eax,%ecx
5944b6:	8b 4c 24 24          	mov    0x24(%esp),%ecx
5944ba:	0f 9e c2             	setle  %dl
5944bd:	8d 14 55 ff ff ff ff 	lea    -0x1(,%edx,2),%edx
5944c4:	85 d2                	test   %edx,%edx
5944c6:	8b 54 24 28          	mov    0x28(%esp),%edx
5944ca:	7e 94                	jle    0x594460
5944cc:	8d 44 24 10          	lea    0x10(%esp),%eax
5944d0:	50                   	push   %eax
5944d1:	56                   	push   %esi
5944d2:	57                   	push   %edi
5944d3:	e8 b8 04 00 00       	call   0x594990
5944d8:	8b 4c 24 30          	mov    0x30(%esp),%ecx
5944dc:	83 c4 0c             	add    $0xc,%esp
5944df:	8b 54 24 28          	mov    0x28(%esp),%edx
5944e3:	85 c0                	test   %eax,%eax
5944e5:	0f 84 75 ff ff ff    	je     0x594460
5944eb:	8b de                	mov    %esi,%ebx
5944ed:	e9 6e ff ff ff       	jmp    0x594460
5944f2:	85 c9                	test   %ecx,%ecx
5944f4:	75 47                	jne    0x59453d
5944f6:	85 db                	test   %ebx,%ebx
5944f8:	0f 84 ed fe ff ff    	je     0x5943eb
5944fe:	39 8f 4c 04 00 00    	cmp    %ecx,0x44c(%edi)
594504:	74 16                	je     0x59451c
594506:	81 fb 04 03 00 00    	cmp    $0x304,%ebx
59450c:	0f 85 d9 fe ff ff    	jne    0x5943eb
594512:	5f                   	pop    %edi
594513:	5e                   	pop    %esi
594514:	5d                   	pop    %ebp
594515:	33 c0                	xor    %eax,%eax
594517:	5b                   	pop    %ebx
594518:	83 c4 10             	add    $0x10,%esp
59451b:	c3                   	ret
59451c:	ff 74 24 2c          	push   0x2c(%esp)
594520:	53                   	push   %ebx
594521:	57                   	push   %edi
594522:	e8 e9 ef ff ff       	call   0x593510
594527:	8b 44 24 1c          	mov    0x1c(%esp),%eax
59452b:	83 c4 0c             	add    $0xc,%esp
59452e:	89 1f                	mov    %ebx,(%edi)
594530:	89 47 04             	mov    %eax,0x4(%edi)
594533:	33 c0                	xor    %eax,%eax
594535:	5f                   	pop    %edi
594536:	5e                   	pop    %esi
594537:	5d                   	pop    %ebp
594538:	5b                   	pop    %ebx
594539:	83 c4 10             	add    $0x10,%esp
59453c:	c3                   	ret
59453d:	5f                   	pop    %edi
59453e:	5e                   	pop    %esi
59453f:	5d                   	pop    %ebp
594540:	b8 9f 00 00 00       	mov    $0x9f,%eax
594545:	5b                   	pop    %ebx
594546:	83 c4 10             	add    $0x10,%esp
594549:	c3                   	ret
59454a:	b9 00 ff 00 00       	mov    $0xff00,%ecx
59454f:	81 fd 04 03 00 00    	cmp    $0x304,%ebp
594555:	74 36                	je     0x59458d
594557:	8b 42 64             	mov    0x64(%edx),%eax
59455a:	f6 40 30 08          	testb  $0x8,0x30(%eax)
59455e:	75 0d                	jne    0x59456d
594560:	33 c9                	xor    %ecx,%ecx
594562:	81 fd 04 03 00 00    	cmp    $0x304,%ebp
594568:	0f 9d c1             	setge  %cl
59456b:	eb 15                	jmp    0x594582
59456d:	81 fd 00 01 00 00    	cmp    $0x100,%ebp
594573:	8b c5                	mov    %ebp,%eax
594575:	0f 44 c1             	cmove  %ecx,%eax
594578:	33 c9                	xor    %ecx,%ecx
59457a:	3d 04 03 00 00       	cmp    $0x304,%eax
59457f:	0f 9e c1             	setle  %cl
594582:	8d 0c 4d ff ff ff ff 	lea    -0x1(,%ecx,2),%ecx
594589:	85 c9                	test   %ecx,%ecx
59458b:	78 05                	js     0x594592
59458d:	bd 03 03 00 00       	mov    $0x303,%ebp
594592:	39 1e                	cmp    %ebx,(%esi)
594594:	74 76                	je     0x59460c
594596:	8b 5e 08             	mov    0x8(%esi),%ebx
594599:	85 db                	test   %ebx,%ebx
59459b:	74 63                	je     0x594600
59459d:	8b 16                	mov    (%esi),%edx
59459f:	3b ea                	cmp    %edx,%ebp
5945a1:	74 40                	je     0x5945e3
5945a3:	8b 47 04             	mov    0x4(%edi),%eax
5945a6:	8b 40 64             	mov    0x64(%eax),%eax
5945a9:	f6 40 30 08          	testb  $0x8,0x30(%eax)
5945ad:	75 09                	jne    0x5945b8
5945af:	33 c9                	xor    %ecx,%ecx
5945b1:	3b ea                	cmp    %edx,%ebp
5945b3:	0f 9d c1             	setge  %cl
5945b6:	eb 20                	jmp    0x5945d8
5945b8:	81 fa 00 01 00 00    	cmp    $0x100,%edx
5945be:	b9 00 ff 00 00       	mov    $0xff00,%ecx
5945c3:	8b c5                	mov    %ebp,%eax
5945c5:	0f 44 d1             	cmove  %ecx,%edx
5945c8:	81 fd 00 01 00 00    	cmp    $0x100,%ebp
5945ce:	0f 44 c1             	cmove  %ecx,%eax
5945d1:	33 c9                	xor    %ecx,%ecx
5945d3:	3b c2                	cmp    %edx,%eax
5945d5:	0f 9e c1             	setle  %cl
5945d8:	8d 0c 4d ff ff ff ff 	lea    -0x1(,%ecx,2),%ecx
5945df:	85 c9                	test   %ecx,%ecx
5945e1:	78 1d                	js     0x594600
5945e3:	ff d3                	call   *%ebx
5945e5:	8b d8                	mov    %eax,%ebx
5945e7:	53                   	push   %ebx
5945e8:	57                   	push   %edi
5945e9:	e8 22 02 00 00       	call   0x594810
5945ee:	83 c4 08             	add    $0x8,%esp
5945f1:	85 c0                	test   %eax,%eax
5945f3:	74 2e                	je     0x594623
5945f5:	bb 01 00 00 00       	mov    $0x1,%ebx
5945fa:	89 5c 24 28          	mov    %ebx,0x28(%esp)
5945fe:	eb 04                	jmp    0x594604
594600:	8b 5c 24 28          	mov    0x28(%esp),%ebx
594604:	83 c6 0c             	add    $0xc,%esi
594607:	83 3e 00             	cmpl   $0x0,(%esi)
59460a:	75 8a                	jne    0x594596
59460c:	5f                   	pop    %edi
59460d:	5e                   	pop    %esi
59460e:	85 db                	test   %ebx,%ebx
594610:	b8 8c 01 00 00       	mov    $0x18c,%eax
594615:	b9 02 01 00 00       	mov    $0x102,%ecx
59461a:	5d                   	pop    %ebp
59461b:	0f 45 c1             	cmovne %ecx,%eax
59461e:	5b                   	pop    %ebx
59461f:	83 c4 10             	add    $0x10,%esp
594622:	c3                   	ret
594623:	ff 74 24 2c          	push   0x2c(%esp)
594627:	ff 36                	push   (%esi)
594629:	57                   	push   %edi
59462a:	e8 e1 ee ff ff       	call   0x593510
59462f:	8b 06                	mov    (%esi),%eax
594631:	83 c4 0c             	add    $0xc,%esp
594634:	89 07                	mov    %eax,(%edi)
594636:	33 c0                	xor    %eax,%eax
594638:	89 5f 04             	mov    %ebx,0x4(%edi)
59463b:	5f                   	pop    %edi
59463c:	5e                   	pop    %esi
59463d:	5d                   	pop    %ebp
59463e:	5b                   	pop    %ebx
59463f:	83 c4 10             	add    $0x10,%esp
594642:	c3                   	ret
594643:	cc                   	int3
594644:	cc                   	int3
594645:	cc                   	int3
594646:	cc                   	int3
594647:	cc                   	int3
594648:	cc                   	int3
594649:	cc                   	int3
59464a:	cc                   	int3
59464b:	cc                   	int3
59464c:	cc                   	int3
59464d:	cc                   	int3
59464e:	cc                   	int3
59464f:	cc                   	int3
594650:	b8 08 00 00 00       	mov    $0x8,%eax
594655:	e8 56 d1 03 00       	call   0x5d17b0
59465a:	55                   	push   %ebp
59465b:	56                   	push   %esi
59465c:	8b 74 24 14          	mov    0x14(%esp),%esi
594660:	8b 46 04             	mov    0x4(%esi),%eax
594663:	8b 00                	mov    (%eax),%eax
594665:	3d 00 00 01 00       	cmp    $0x10000,%eax
59466a:	74 32                	je     0x59469e
59466c:	3d ff ff 01 00       	cmp    $0x1ffff,%eax
594671:	74 24                	je     0x594697
594673:	83 7c 24 20 00       	cmpl   $0x0,0x20(%esp)
594678:	8b 44 24 1c          	mov    0x1c(%esp),%eax
59467c:	8b 0e                	mov    (%esi),%ecx
59467e:	89 08                	mov    %ecx,(%eax)
594680:	8b 44 24 18          	mov    0x18(%esp),%eax
594684:	89 08                	mov    %ecx,(%eax)
594686:	0f 84 7c 01 00 00    	je     0x594808
59468c:	5e                   	pop    %esi
59468d:	b8 44 00 00 00       	mov    $0x44,%eax
594692:	5d                   	pop    %ebp