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
5969bc:	6a 40                	push   $0x40
5969be:	8d 44 24 54          	lea    0x54(%esp),%eax
5969c2:	50                   	push   %eax
5969c3:	57                   	push   %edi
5969c4:	e8 17 39 ff ff       	call   0x58a2e0
5969c9:	83 c4 10             	add    $0x10,%esp
5969cc:	85 c0                	test   %eax,%eax
5969ce:	0f 84 bb 01 00 00    	je     0x596b8f
5969d4:	8b 74 24 10          	mov    0x10(%esp),%esi
5969d8:	81 fb a0 72 66 00    	cmp    $0x6672a0,%ebx
5969de:	75 15                	jne    0x5969f5
5969e0:	56                   	push   %esi
5969e1:	8d 44 24 50          	lea    0x50(%esp),%eax
5969e5:	50                   	push   %eax
5969e6:	8d 87 4c 02 00 00    	lea    0x24c(%edi),%eax
5969ec:	50                   	push   %eax
5969ed:	e8 de c3 03 00       	call   0x5d2dd0
5969f2:	83 c4 0c             	add    $0xc,%esp
5969f5:	81 fb 90 72 66 00    	cmp    $0x667290,%ebx
5969fb:	75 15                	jne    0x596a12
5969fd:	56                   	push   %esi
5969fe:	8d 44 24 50          	lea    0x50(%esp),%eax
596a02:	50                   	push   %eax
596a03:	8d 87 8c 02 00 00    	lea    0x28c(%edi),%eax
596a09:	50                   	push   %eax
596a0a:	e8 c1 c3 03 00       	call   0x5d2dd0
596a0f:	83 c4 0c             	add    $0xc,%esp
596a12:	81 fb 80 72 66 00    	cmp    $0x667280,%ebx
596a18:	75 33                	jne    0x596a4d
596a1a:	6a 01                	push   $0x1
596a1c:	56                   	push   %esi
596a1d:	8d 87 8c 01 00 00    	lea    0x18c(%edi),%eax
596a23:	50                   	push   %eax
596a24:	56                   	push   %esi
596a25:	8d 44 24 5c          	lea    0x5c(%esp),%eax
596a29:	50                   	push   %eax
596a2a:	6a 0a                	push   $0xa
596a2c:	68 bc 72 66 00       	push   $0x6672bc
596a31:	55                   	push   %ebp
596a32:	57                   	push   %edi
596a33:	e8 c8 18 ff ff       	call   0x588300
596a38:	83 c4 04             	add    $0x4,%esp
596a3b:	50                   	push   %eax
596a3c:	57                   	push   %edi
596a3d:	e8 ee 07 00 00       	call   0x597230
596a42:	83 c4 28             	add    $0x28,%esp
596a45:	85 c0                	test   %eax,%eax
596a47:	0f 84 42 01 00 00    	je     0x596b8f
596a4d:	ff 74 24 24          	push   0x24(%esp)
596a51:	8d 84 24 90 00 00 00 	lea    0x90(%esp),%eax
596a58:	ff 74 24 4c          	push   0x4c(%esp)
596a5c:	50                   	push   %eax
596a5d:	ff 74 24 24          	push   0x24(%esp)
596a61:	8b 84 24 e8 00 00 00 	mov    0xe8(%esp),%eax
596a68:	53                   	push   %ebx
596a69:	ff 74 24 3c          	push   0x3c(%esp)
596a6d:	83 e0 02             	and    $0x2,%eax
596a70:	55                   	push   %ebp
596a71:	ff 74 24 48          	push   0x48(%esp)
596a75:	ff 74 24 34          	push   0x34(%esp)
596a79:	50                   	push   %eax
596a7a:	57                   	push   %edi
596a7b:	e8 90 f8 ff ff       	call   0x596310
596a80:	83 c4 2c             	add    $0x2c,%esp
596a83:	85 c0                	test   %eax,%eax
596a85:	0f 84 04 01 00 00    	je     0x596b8f
596a8b:	81 fb a0 72 66 00    	cmp    $0x6672a0,%ebx
596a91:	75 6e                	jne    0x596b01
596a93:	8b 74 24 10          	mov    0x10(%esp),%esi
596a97:	8d 84 24 8c 00 00 00 	lea    0x8c(%esp),%eax
596a9e:	56                   	push   %esi
596a9f:	50                   	push   %eax
596aa0:	8d 87 0c 03 00 00    	lea    0x30c(%edi),%eax
596aa6:	50                   	push   %eax
596aa7:	e8 24 c3 03 00       	call   0x5d2dd0
596aac:	83 c4 0c             	add    $0xc,%esp
596aaf:	8d af 4c 03 00 00    	lea    0x34c(%edi),%ebp
596ab5:	6a 01                	push   $0x1
596ab7:	56                   	push   %esi
596ab8:	55                   	push   %ebp
596ab9:	56                   	push   %esi
596aba:	ff 74 24 38          	push   0x38(%esp)
596abe:	6a 0a                	push   $0xa
596ac0:	68 b0 72 66 00       	push   $0x6672b0
596ac5:	ff 74 24 38          	push   0x38(%esp)
596ac9:	57                   	push   %edi
596aca:	e8 31 18 ff ff       	call   0x588300
596acf:	83 c4 04             	add    $0x4,%esp
596ad2:	50                   	push   %eax
596ad3:	57                   	push   %edi
596ad4:	e8 57 07 00 00       	call   0x597230
596ad9:	83 c4 28             	add    $0x28,%esp
596adc:	85 c0                	test   %eax,%eax
596ade:	0f 84 ab 00 00 00    	je     0x596b8f
596ae4:	ff 74 24 10          	push   0x10(%esp)
596ae8:	55                   	push   %ebp
596ae9:	68 f4 73 66 00       	push   $0x6673f4
596aee:	57                   	push   %edi
596aef:	e8 6c 39 ff ff       	call   0x58a460
596af4:	83 c4 10             	add    $0x10,%esp
596af7:	85 c0                	test   %eax,%eax
596af9:	0f 84 90 00 00 00    	je     0x596b8f
596aff:	eb 23                	jmp    0x596b24
596b01:	81 fb 80 72 66 00    	cmp    $0x667280,%ebx
596b07:	75 1b                	jne    0x596b24
596b09:	ff 74 24 10          	push   0x10(%esp)
596b0d:	8d 84 24 90 00 00 00 	lea    0x90(%esp),%eax
596b14:	50                   	push   %eax
596b15:	8d 87 cc 02 00 00    	lea    0x2cc(%edi),%eax
596b1b:	50                   	push   %eax
596b1c:	e8 af c2 03 00       	call   0x5d2dd0
596b21:	83 c4 0c             	add    $0xc,%esp
596b24:	ff 74 24 10          	push   0x10(%esp)
596b28:	8d 84 24 90 00 00 00 	lea    0x90(%esp),%eax
596b2f:	50                   	push   %eax
596b30:	ff 74 24 28          	push   0x28(%esp)
596b34:	57                   	push   %edi
596b35:	e8 26 39 ff ff       	call   0x58a460
596b3a:	83 c4 10             	add    $0x10,%esp
596b3d:	85 c0                	test   %eax,%eax
596b3f:	74 4e                	je     0x596b8f
596b41:	8b 44 24 30          	mov    0x30(%esp),%eax
596b45:	85 c0                	test   %eax,%eax
596b47:	74 24                	je     0x596b6d
596b49:	ff 74 24 34          	push   0x34(%esp)
596b4d:	50                   	push   %eax
596b4e:	8d 84 24 94 00 00 00 	lea    0x94(%esp),%eax
596b55:	50                   	push   %eax
596b56:	57                   	push   %edi
596b57:	e8 a4 17 ff ff       	call   0x588300
596b5c:	83 c4 04             	add    $0x4,%esp
596b5f:	50                   	push   %eax
596b60:	57                   	push   %edi
596b61:	e8 5a 00 00 00       	call   0x596bc0
596b66:	83 c4 14             	add    $0x14,%esp
596b69:	85 c0                	test   %eax,%eax
596b6b:	74 22                	je     0x596b8f
596b6d:	83 7f 1c 00          	cmpl   $0x0,0x1c(%edi)
596b71:	75 0f                	jne    0x596b82
596b73:	81 fb 64 72 66 00    	cmp    $0x667264,%ebx
596b79:	75 07                	jne    0x596b82
596b7b:	b8 02 00 00 00       	mov    $0x2,%eax
596b80:	eb 02                	jmp    0x596b84
596b82:	33 c0                	xor    %eax,%eax
596b84:	89 47 60             	mov    %eax,0x60(%edi)
596b87:	c7 44 24 38 01 00 00 	movl   $0x1,0x38(%esp)
596b8e:	00
596b8f:	8d 84 24 8c 00 00 00 	lea    0x8c(%esp),%eax
596b96:	6a 40                	push   $0x40
596b98:	50                   	push   %eax
596b99:	e8 42 ae e6 ff       	call   0x4019e0
596b9e:	8b 8c 24 d4 00 00 00 	mov    0xd4(%esp),%ecx
596ba5:	83 c4 08             	add    $0x8,%esp
596ba8:	8b 44 24 38          	mov    0x38(%esp),%eax
596bac:	5f                   	pop    %edi
596bad:	5e                   	pop    %esi
596bae:	5d                   	pop    %ebp
596baf:	5b                   	pop    %ebx
596bb0:	33 cc                	xor    %esp,%ecx
596bb2:	e8 6f ae 03 00       	call   0x5d1a26
596bb7:	81 c4 c0 00 00 00    	add    $0xc0,%esp
596bbd:	c3                   	ret
596bbe:	cc                   	int3
596bbf:	cc                   	int3
596bc0:	6a 01                	push   $0x1
596bc2:	ff 74 24 18          	push   0x18(%esp)
596bc6:	ff 74 24 18          	push   0x18(%esp)
596bca:	6a 00                	push   $0x0
596bcc:	6a 00                	push   $0x0
596bce:	6a 08                	push   $0x8
596bd0:	68 50 72 66 00       	push   $0x667250
596bd5:	ff 74 24 28          	push   0x28(%esp)
596bd9:	ff 74 24 28          	push   0x28(%esp)
596bdd:	ff 74 24 28          	push   0x28(%esp)
596be1:	e8 4a 06 00 00       	call   0x597230