59650f:	6a 06                	push   $0x6
596511:	68 02 02 00 00       	push   $0x202
596516:	6a 50                	push   $0x50
596518:	57                   	push   %edi
596519:	e8 f2 8b ff ff       	call   0x58f110
59651e:	83 c4 18             	add    $0x18,%esp
596521:	8d 44 24 2c          	lea    0x2c(%esp),%eax
596525:	6a 40                	push   $0x40
596527:	50                   	push   %eax
596528:	e8 b3 b4 e6 ff       	call   0x4019e0
59652d:	8b 4c 24 74          	mov    0x74(%esp),%ecx
596531:	83 c4 08             	add    $0x8,%esp
596534:	33 c0                	xor    %eax,%eax
596536:	5f                   	pop    %edi
596537:	5e                   	pop    %esi
596538:	5d                   	pop    %ebp
596539:	5b                   	pop    %ebx
59653a:	33 cc                	xor    %esp,%ecx
59653c:	e8 e5 b4 03 00       	call   0x5d1a26
596541:	83 c4 60             	add    $0x60,%esp
596544:	c3                   	ret
596545:	cc                   	int3
596546:	cc                   	int3
596547:	cc                   	int3
596548:	cc                   	int3
596549:	cc                   	int3
59654a:	cc                   	int3
59654b:	cc                   	int3
59654c:	cc                   	int3
59654d:	cc                   	int3
59654e:	cc                   	int3
59654f:	cc                   	int3
596550:	8b 44 24 04          	mov    0x4(%esp),%eax
596554:	83 f8 6d             	cmp    $0x6d,%eax
596557:	74 0e                	je     0x596567
596559:	83 f8 74             	cmp    $0x74,%eax
59655c:	74 09                	je     0x596567
59655e:	89 44 24 04          	mov    %eax,0x4(%esp)
596562:	e9 59 94 01 00       	jmp    0x5af9c0
596567:	c3                   	ret
596568:	cc                   	int3
596569:	cc                   	int3
59656a:	cc                   	int3
59656b:	cc                   	int3
59656c:	cc                   	int3
59656d:	cc                   	int3
59656e:	cc                   	int3
59656f:	cc                   	int3
596570:	b8 c0 00 00 00       	mov    $0xc0,%eax
596575:	e8 36 b2 03 00       	call   0x5d17b0
59657a:	a1 c0 14 69 00       	mov    0x6914c0,%eax
59657f:	33 c4                	xor    %esp,%eax
596581:	89 84 24 bc 00 00 00 	mov    %eax,0xbc(%esp)
596588:	53                   	push   %ebx
596589:	8b 9c 24 cc 00 00 00 	mov    0xcc(%esp),%ebx
596590:	c7 44 24 24 00 00 00 	movl   $0x0,0x24(%esp)
596597:	00
596598:	c7 44 24 28 00 00 00 	movl   $0x0,0x28(%esp)
59659f:	00
5965a0:	c7 44 24 04 00 00 00 	movl   $0x0,0x4(%esp)
5965a7:	00
5965a8:	c7 44 24 2c 00 00 00 	movl   $0x0,0x2c(%esp)
5965af:	00
5965b0:	c7 44 24 08 00 00 00 	movl   $0x0,0x8(%esp)
5965b7:	00
5965b8:	c7 44 24 20 00 00 00 	movl   $0x0,0x20(%esp)
5965bf:	00
5965c0:	55                   	push   %ebp
5965c1:	56                   	push   %esi
5965c2:	8d 74 24 48          	lea    0x48(%esp),%esi
5965c6:	89 74 24 24          	mov    %esi,0x24(%esp)
5965ca:	57                   	push   %edi
5965cb:	8b bc 24 d4 00 00 00 	mov    0xd4(%esp),%edi
5965d2:	f6 c3 01             	test   $0x1,%bl
5965d5:	74 66                	je     0x59663d
5965d7:	8b 87 cc 03 00 00    	mov    0x3cc(%edi),%eax
5965dd:	85 c0                	test   %eax,%eax
5965df:	74 26                	je     0x596607
5965e1:	50                   	push   %eax
5965e2:	e8 e9 5e f4 ff       	call   0x4dc4d0
5965e7:	8b 87 cc 03 00 00    	mov    0x3cc(%edi),%eax
5965ed:	83 c4 04             	add    $0x4,%esp
5965f0:	89 44 24 24          	mov    %eax,0x24(%esp)
5965f4:	8d 87 50 06 00 00    	lea    0x650(%edi),%eax
5965fa:	50                   	push   %eax
5965fb:	e8 e0 ad ff ff       	call   0x5913e0
596600:	b8 d0 03 00 00       	mov    $0x3d0,%eax
596605:	eb 6f                	jmp    0x596676
596607:	e8 64 5e f4 ff       	call   0x4dc470
59660c:	8b e8                	mov    %eax,%ebp
59660e:	89 87 cc 03 00 00    	mov    %eax,0x3cc(%edi)
596614:	89 6c 24 24          	mov    %ebp,0x24(%esp)
596618:	85 ed                	test   %ebp,%ebp
59661a:	75 d8                	jne    0x5965f4
59661c:	68 e0 01 00 00       	push   $0x1e0
596621:	68 40 73 66 00       	push   $0x667340
596626:	6a 41                	push   $0x41
596628:	68 b8 01 00 00       	push   $0x1b8
59662d:	6a 50                	push   $0x50
59662f:	57                   	push   %edi
596630:	e8 db 8a ff ff       	call   0x58f110
596635:	83 c4 18             	add    $0x18,%esp
596638:	e9 52 05 00 00       	jmp    0x596b8f
59663d:	8b 87 ec 03 00 00    	mov    0x3ec(%edi),%eax
596643:	c7 47 60 01 00 00 00 	movl   $0x1,0x60(%edi)
59664a:	85 c0                	test   %eax,%eax
59664c:	0f 84 84 00 00 00    	je     0x5966d6
596652:	50                   	push   %eax
596653:	e8 78 5e f4 ff       	call   0x4dc4d0
596658:	8b 87 ec 03 00 00    	mov    0x3ec(%edi),%eax
59665e:	83 c4 04             	add    $0x4,%esp
596661:	89 44 24 24          	mov    %eax,0x24(%esp)
596665:	8d 87 50 06 00 00    	lea    0x650(%edi),%eax
59666b:	50                   	push   %eax
59666c:	e8 7f ad ff ff       	call   0x5913f0
596671:	b8 f0 03 00 00       	mov    $0x3f0,%eax
596676:	03 c7                	add    %edi,%eax
596678:	83 c4 04             	add    $0x4,%esp
59667b:	89 44 24 48          	mov    %eax,0x48(%esp)
59667f:	8b c3                	mov    %ebx,%eax
596681:	83 e0 12             	and    $0x12,%eax
596684:	3c 12                	cmp    $0x12,%al
596686:	0f 84 96 00 00 00    	je     0x596722
59668c:	8b c3                	mov    %ebx,%eax
59668e:	83 e0 21             	and    $0x21,%eax
596691:	3c 21                	cmp    $0x21,%al
596693:	0f 84 89 00 00 00    	je     0x596722
596699:	84 db                	test   %bl,%bl
59669b:	79 73                	jns    0x596710
59669d:	8d af 0c 01 00 00    	lea    0x10c(%edi),%ebp
5966a3:	8d b7 0c 02 00 00    	lea    0x20c(%edi),%esi
5966a9:	89 6c 24 1c          	mov    %ebp,0x1c(%esp)
5966ad:	57                   	push   %edi
5966ae:	89 74 24 34          	mov    %esi,0x34(%esp)
5966b2:	e8 49 1c ff ff       	call   0x588300
5966b7:	50                   	push   %eax
5966b8:	e8 03 a2 f5 ff       	call   0x4f08c0
5966bd:	83 c4 08             	add    $0x8,%esp
5966c0:	89 44 24 34          	mov    %eax,0x34(%esp)
5966c4:	bb 90 72 66 00       	mov    $0x667290,%ebx
5966c9:	c7 44 24 20 bc 73 66 	movl   $0x6673bc,0x20(%esp)
5966d0:	00
5966d1:	e9 a5 02 00 00       	jmp    0x59697b
5966d6:	e8 95 5d f4 ff       	call   0x4dc470
5966db:	8b e8                	mov    %eax,%ebp
5966dd:	89 87 ec 03 00 00    	mov    %eax,0x3ec(%edi)
5966e3:	89 6c 24 24          	mov    %ebp,0x24(%esp)
5966e7:	85 ed                	test   %ebp,%ebp
5966e9:	0f 85 76 ff ff ff    	jne    0x596665
5966ef:	68 f0 01 00 00       	push   $0x1f0
5966f4:	68 40 73 66 00       	push   $0x667340
5966f9:	6a 41                	push   $0x41
5966fb:	68 b8 01 00 00       	push   $0x1b8
596700:	6a 50                	push   $0x50
596702:	57                   	push   %edi
596703:	e8 08 8a ff ff       	call   0x58f110
596708:	83 c4 18             	add    $0x18,%esp
59670b:	e9 7f 04 00 00       	jmp    0x596b8f
596710:	bb a0 72 66 00       	mov    $0x6672a0,%ebx
596715:	c7 44 24 20 dc 73 66 	movl   $0x6673dc,0x20(%esp)
59671c:	00
59671d:	e9 4f 02 00 00       	jmp    0x596971
596722:	f6 c3 40             	test   $0x40,%bl
596725:	0f 84 e3 01 00 00    	je     0x59690e
59672b:	ff b7 74 04 00 00    	push   0x474(%edi)
596731:	e8 ba 99 ff ff       	call   0x5900f0
596736:	8b f0                	mov    %eax,%esi
596738:	c7 44 24 1c 0b 00 00 	movl   $0xb,0x1c(%esp)
59673f:	00
596740:	8d 44 24 44          	lea    0x44(%esp),%eax
596744:	89 74 24 18          	mov    %esi,0x18(%esp)
596748:	50                   	push   %eax
596749:	8b 47 7c             	mov    0x7c(%edi),%eax
59674c:	8d af cc 00 00 00    	lea    0xcc(%edi),%ebp
596752:	6a 00                	push   $0x0
596754:	6a 03                	push   $0x3
596756:	89 6c 24 2c          	mov    %ebp,0x2c(%esp)
59675a:	bb 64 72 66 00       	mov    $0x667264,%ebx
59675f:	ff b0 d4 00 00 00    	push   0xd4(%eax)
596765:	c7 44 24 34 50 73 66 	movl   $0x667350,0x34(%esp)
59676c:	00
59676d:	e8 be 23 f6 ff       	call   0x4f8b30
596772:	83 c4 14             	add    $0x14,%esp
596775:	89 44 24 3c          	mov    %eax,0x3c(%esp)
596779:	85 c0                	test   %eax,%eax
59677b:	7f 14                	jg     0x596791
59677d:	68 0c 02 00 00       	push   $0x20c
596782:	68 40 73 66 00       	push   $0x667340
596787:	68 4c 01 00 00       	push   $0x14c
59678c:	e9 97 fe ff ff       	jmp    0x596628
596791:	83 7f 68 02          	cmpl   $0x2,0x68(%edi)
596795:	75 3a                	jne    0x5967d1
596797:	8b 8f 50 0f 00 00    	mov    0xf50(%edi),%ecx
59679d:	85 c9                	test   %ecx,%ecx
59679f:	74 30                	je     0x5967d1
5967a1:	8b 87 74 04 00 00    	mov    0x474(%edi),%eax
5967a7:	83 b8 e4 01 00 00 00 	cmpl   $0x0,0x1e4(%eax)
5967ae:	75 21                	jne    0x5967d1
5967b0:	8b 87 78 04 00 00    	mov    0x478(%edi),%eax
5967b6:	85 c0                	test   %eax,%eax
5967b8:	74 2f                	je     0x5967e9
5967ba:	3b 88 e4 01 00 00    	cmp    0x1e4(%eax),%ecx
5967c0:	75 27                	jne    0x5967e9
5967c2:	50                   	push   %eax
5967c3:	e8 28 99 ff ff       	call   0x5900f0
5967c8:	8b f0                	mov    %eax,%esi
5967ca:	83 c4 04             	add    $0x4,%esp
5967cd:	89 74 24 14          	mov    %esi,0x14(%esp)
5967d1:	85 f6                	test   %esi,%esi
5967d3:	75 25                	jne    0x5967fa
5967d5:	68 24 02 00 00       	push   $0x224
5967da:	68 40 73 66 00       	push   $0x667340
5967df:	68 db 00 00 00       	push   $0xdb
5967e4:	e9 3f fe ff ff       	jmp    0x596628
5967e9:	68 1d 02 00 00       	push   $0x21d
5967ee:	68 40 73 66 00       	push   $0x667340
5967f3:	6a 44                	push   $0x44
5967f5:	e9 2e fe ff ff       	jmp    0x596628
5967fa:	e8 11 49 f8 ff       	call   0x51b110
5967ff:	8b f0                	mov    %eax,%esi
596801:	85 f6                	test   %esi,%esi
596803:	75 0a                	jne    0x59680f
596805:	68 30 02 00 00       	push   $0x230
59680a:	e9 12 fe ff ff       	jmp    0x596621
59680f:	ff 74 24 14          	push   0x14(%esp)
596813:	e8 98 ff fe ff       	call   0x5867b0
596818:	50                   	push   %eax
596819:	e8 52 8d f5 ff       	call   0x4ef570
59681e:	50                   	push   %eax
59681f:	e8 9c a1 f5 ff       	call   0x4f09c0
596824:	89 44 24 38          	mov    %eax,0x38(%esp)
596828:	8b 44 24 20          	mov    0x20(%esp),%eax
59682c:	ff 70 34             	push   0x34(%eax)
59682f:	e8 2c 1e ff ff       	call   0x588660
596834:	83 c4 10             	add    $0x10,%esp
596837:	89 44 24 14          	mov    %eax,0x14(%esp)
59683b:	85 c0                	test   %eax,%eax
59683d:	0f 84 a4 00 00 00    	je     0x5968e7
596843:	6a 00                	push   $0x0
596845:	50                   	push   %eax
596846:	56                   	push   %esi
596847:	e8 d4 43 f8 ff       	call   0x51ac20
59684c:	83 c4 0c             	add    $0xc,%esp
59684f:	85 c0                	test   %eax,%eax
596851:	0f 84 90 00 00 00    	je     0x5968e7
596857:	ff 74 24 3c          	push   0x3c(%esp)
59685b:	ff 74 24 44          	push   0x44(%esp)
59685f:	56                   	push   %esi
596860:	e8 6b 45 f8 ff       	call   0x51add0
596865:	83 c4 0c             	add    $0xc,%esp
596868:	85 c0                	test   %eax,%eax
59686a:	74 7b                	je     0x5968e7
59686c:	8d 44 24 44          	lea    0x44(%esp),%eax
596870:	50                   	push   %eax
596871:	8d 44 24 50          	lea    0x50(%esp),%eax
596875:	50                   	push   %eax
596876:	56                   	push   %esi
596877:	e8 04 43 f8 ff       	call   0x51ab80
59687c:	83 c4 0c             	add    $0xc,%esp
59687f:	85 c0                	test   %eax,%eax
596881:	74 64                	je     0x5968e7
596883:	8b 44 24 44          	mov    0x44(%esp),%eax
596887:	56                   	push   %esi
596888:	89 44 24 14          	mov    %eax,0x14(%esp)
59688c:	e8 5f 48 f8 ff       	call   0x51b0f0
596891:	8b 44 24 14          	mov    0x14(%esp),%eax
596895:	8d b7 8c 03 00 00    	lea    0x38c(%edi),%esi
59689b:	6a 01                	push   $0x1
59689d:	50                   	push   %eax
59689e:	56                   	push   %esi
59689f:	50                   	push   %eax
5968a0:	8d 44 24 60          	lea    0x60(%esp),%eax
5968a4:	50                   	push   %eax
5968a5:	6a 0c                	push   $0xc
5968a7:	68 c8 72 66 00       	push   $0x6672c8
5968ac:	55                   	push   %ebp
5968ad:	ff 74 24 38          	push   0x38(%esp)
5968b1:	57                   	push   %edi
5968b2:	e8 79 09 00 00       	call   0x597230
5968b7:	83 c4 2c             	add    $0x2c,%esp
5968ba:	85 c0                	test   %eax,%eax
5968bc:	75 11                	jne    0x5968cf
5968be:	68 47 02 00 00       	push   $0x247
5968c3:	68 40 73 66 00       	push   $0x667340
5968c8:	6a 44                	push   $0x44
5968ca:	e9 59 fd ff ff       	jmp    0x596628
5968cf:	ff 74 24 10          	push   0x10(%esp)
5968d3:	56                   	push   %esi
5968d4:	68 6c 73 66 00       	push   $0x66736c
5968d9:	57                   	push   %edi
5968da:	e8 81 3b ff ff       	call   0x58a460
5968df:	83 c4 10             	add    $0x10,%esp
5968e2:	e9 5e 01 00 00       	jmp    0x596a45
5968e7:	68 39 02 00 00       	push   $0x239
5968ec:	68 40 73 66 00       	push   $0x667340
5968f1:	6a 44                	push   $0x44
5968f3:	68 b8 01 00 00       	push   $0x1b8
5968f8:	6a 50                	push   $0x50
5968fa:	57                   	push   %edi
5968fb:	e8 10 88 ff ff       	call   0x58f110
596900:	56                   	push   %esi
596901:	e8 ea 47 f8 ff       	call   0x51b0f0
596906:	83 c4 1c             	add    $0x1c,%esp
596909:	e9 81 02 00 00       	jmp    0x596b8f
59690e:	84 db                	test   %bl,%bl
596910:	79 48                	jns    0x59695a
596912:	8d 87 cc 01 00 00    	lea    0x1cc(%edi),%eax
596918:	8d af 0c 01 00 00    	lea    0x10c(%edi),%ebp
59691e:	89 44 24 30          	mov    %eax,0x30(%esp)
596922:	57                   	push   %edi
596923:	89 6c 24 20          	mov    %ebp,0x20(%esp)
596927:	e8 d4 19 ff ff       	call   0x588300
59692c:	50                   	push   %eax
59692d:	e8 8e 9f f5 ff       	call   0x4f08c0
596932:	8d b7 8c 02 00 00    	lea    0x28c(%edi),%esi
596938:	89 44 24 3c          	mov    %eax,0x3c(%esp)
59693c:	83 c4 08             	add    $0x8,%esp
59693f:	c7 44 24 18 0c 00 00 	movl   $0xc,0x18(%esp)
596946:	00
596947:	bb 70 72 66 00       	mov    $0x667270,%ebx
59694c:	c7 44 24 20 84 73 66 	movl   $0x667384,0x20(%esp)
596953:	00
596954:	89 74 24 28          	mov    %esi,0x28(%esp)
596958:	eb 33                	jmp    0x59698d
59695a:	8d 87 4c 02 00 00    	lea    0x24c(%edi),%eax
596960:	c7 44 24 20 a4 73 66 	movl   $0x6673a4,0x20(%esp)
596967:	00
596968:	bb 80 72 66 00       	mov    $0x667280,%ebx
59696d:	89 44 24 28          	mov    %eax,0x28(%esp)
596971:	8d af 4c 01 00 00    	lea    0x14c(%edi),%ebp
596977:	89 6c 24 1c          	mov    %ebp,0x1c(%esp)
59697b:	f6 84 24 d8 00 00 00 	testb  $0x40,0xd8(%esp)
596982:	40
596983:	c7 44 24 18 0c 00 00 	movl   $0xc,0x18(%esp)
59698a:	00
59698b:	75 47                	jne    0x5969d4
59698d:	57                   	push   %edi
59698e:	e8 6d 19 ff ff       	call   0x588300
596993:	89 44 24 18          	mov    %eax,0x18(%esp)
596997:	8b 47 7c             	mov    0x7c(%edi),%eax
59699a:	6a 01                	push   $0x1
59699c:	57                   	push   %edi
59699d:	8b 80 30 02 00 00    	mov    0x230(%eax),%eax
5969a3:	89 44 24 38          	mov    %eax,0x38(%esp)
5969a7:	e8 d4 c7 00 00       	call   0x5a3180
5969ac:	83 c4 0c             	add    $0xc,%esp
5969af:	85 c0                	test   %eax,%eax
5969b1:	0f 84 d8 01 00 00    	je     0x596b8f
5969b7:	8d 44 24 10          	lea    0x10(%esp),%eax
5969bb:	50                   	push   %eax