View Single Post
Old 01-11-2017, 04:42 PM   #45
Analogus
Fanatic
Analogus ought to be getting tired of karma fortunes by now.Analogus ought to be getting tired of karma fortunes by now.Analogus ought to be getting tired of karma fortunes by now.Analogus ought to be getting tired of karma fortunes by now.Analogus ought to be getting tired of karma fortunes by now.Analogus ought to be getting tired of karma fortunes by now.Analogus ought to be getting tired of karma fortunes by now.Analogus ought to be getting tired of karma fortunes by now.Analogus ought to be getting tired of karma fortunes by now.Analogus ought to be getting tired of karma fortunes by now.Analogus ought to be getting tired of karma fortunes by now.
 
Analogus's Avatar
 
Posts: 568
Karma: 2170348
Join Date: Apr 2011
Device: 2x Sony PRS-350; PRS-300 (†), Paperwhite (†), Voyage
Thanks you both

Amazon obviously has done its job well. The decompiled code doesn't look comparable:
File:
Voyage firmware 5.8.7 (3095600028)

Code:
package com.amazon.ebook.booklet.yjreader.impl;

import com.amazon.ebook.booklet.reader.sdk.BookCacher;
import com.amazon.ebook.booklet.reader.sdk.ReaderContentSDK;
import com.amazon.ebook.booklet.reader.sdk.ReaderSDK;
import com.amazon.ebook.booklet.reader.sdk.Registry;
import com.amazon.ebook.booklet.reader.sdk.action.IFooterDrawActionHandler;
import com.amazon.ebook.booklet.reader.sdk.content.Book;
import com.amazon.ebook.booklet.reader.sdk.content.H;
import com.amazon.ebook.booklet.reader.sdk.content.ITableViewer;
import com.amazon.ebook.booklet.reader.sdk.content.PositionFactory;
import com.amazon.ebook.booklet.reader.sdk.content.annotation.AnnotationProvider;
import com.amazon.ebook.booklet.reader.sdk.content.util.DataStoreFactory;
import com.amazon.ebook.booklet.reader.sdk.content.util.DataStoreObject;
import com.amazon.ebook.booklet.reader.sdk.event.ReaderGlobalStateHandler;
import com.amazon.ebook.booklet.reader.sdk.internal.A;
import com.amazon.ebook.booklet.reader.sdk.internal.ScreenImage;
import com.amazon.ebook.booklet.reader.sdk.ui.ReaderUI;
import com.amazon.ebook.booklet.reader.sdk.ui.element.Element;
import com.amazon.ebook.booklet.reader.sdk.ui.element.Link;
import com.amazon.ebook.booklet.reader.sdk.ui.element.Viewport;
import com.amazon.ebook.util.log.e;
import com.amazon.kindle.profile.Profile;
import java.io.File;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.ResourceBundle;

public class YJBookController
  extends com.amazon.ebook.booklet.reader.sdk.internal.L
  implements DataStoreFactory, ReaderGlobalStateHandler
{
  public Book CpD(String c, A b, Profile a)
    throws com.amazon.ebook.booklet.reader.sdk.m
  {
    return new cA(b, d, a, c);
  }
  
  public void YpD(Y a) { b.d = a; }
  private static final e j = e.TwA("YJBookController");
  
  private cA E;
  
  private Y d;
  
  private V D;
  
  public BookCacher gqD(String b, ReaderSDK a)
  {
    return new IA(b, a);
  }
  
  public com.amazon.ebook.booklet.reader.sdk.L OPD()
  {
    if (a.A == null)
    {
      a;a.<init>(a.f, a.E, a);a.A = a;
    }
    return a.A;
  }
  
  public synchronized ITableViewer VpD()
  {
    if (a.J == null)
    {
      a;a.<init>(a.XPD());a.J = a;
    }
    return a.J; }
  public DataStoreObject ex(Object a) { return new H(); }
  
  public PositionFactory TqD()
  {
    return a.m;
  }
  
  public String XC()
  {
    return "font.prefs";
  }
  
  public HashMap tX()
  {
    return null;
  }
  
  public ReaderContentSDK ICA()
  {
    return a.I;
  }
  
  public com.amazon.ebook.booklet.reader.sdk.B QEA()
  {
    return a.d;
  }
  
  public int[] VCA()
  {
    if (a.b == null)
    {
      a.b = com.amazon.ebook.booklet.reader.utils.m.yrD((int[][])ResourceBundle.getBundle("com.amazon.ebook.booklet.yjreader.impl.resources.YJReaderImplResources").getObject("font.menu.size.list"));
    }
    
    return a.b;
  }
  
  public void srD(Link d)
  {
    com.amazon.ebook.booklet.reader.sdk.content.f c = null;
    
    try
    {
      Element a;
      
      c = (a = e.L.DEA().WeA()[0]).D();
    }
    catch (ArrayIndexOutOfBoundsException b) {}
    j.AQd("Exception while trying to get first element of the page", b);
    
    e.G = new Z(e.f, d, c);
  }
  
  public void hOD(String a)
  {
    YJRenderer.hJD(a);
  }
  
  private void rOD()
  {
    if (a.A != null)
    {
      a.A.a();
      
      a.A = null;
    }
  }
  
  public eA GPD()
  {
    return a.K;
  }
  
  public int JDd()
  {
    return 4;
  }
  
  public ReaderSDK XPD()
  {
    return a.f;
  }
  
  public AnnotationProvider AQD()
  {
    return a.g;
  }
  
  public YJBookController()
  {
    a;a.<init>();new com/amazon/ebook/booklet/yjreader/impl/J.g = a;
    
    
    
      0.c = a;a.D = new V(a);a.m = new h();
  }
  
  com.amazon.ebook.booklet.mobireader.impl.b.E epD()
  {
    return a.i;
  }
  
  public com.amazon.ebook.booklet.reader.sdk.internal.f GEA()
  {
    if ((a.E != null) && (a.E.hT().syd()))
    {
      if (a.C == null)
      {
        a;a.<init>(a);a.C = a;
      }
      
      return a.C;new com/amazon/ebook/booklet/yjreader/impl/O;
    }
    
    return a.D; }
  public Book zs() { return a.E; }
  
  public com.amazon.ebook.booklet.reader.sdk.internal.B VQD()
  {
    return a.L;
  }
  
  public ScreenImage XOD(Viewport a)
  {
    return null;
  }
  
  public boolean NPD(Book d, String c, com.amazon.ebook.booklet.reader.sdk.content.f b)
    throws com.amazon.ebook.booklet.reader.sdk.m
  {
    e.E = ((cA)d);e;e.<init>((cA)d, e);new com/amazon/ebook/booklet/yjreader/impl/kA.L = e;
    if (b == null)
    {
      com.amazon.ebook.booklet.reader.sdk.content.E a;
      
      if ((a = d.Jv()) != null)
      {
        b = a.mLD();
      }
    }
    if (b == null) {
      b = d.hX();
    }
    
    e.rOD();
    if (
    
      e.E.hT().syd())
    {
      e.d = ((Y)e.OPD().QEA());e.OPD().sND(b.EXd());
      
      return true;e;
    }
    e.d = new Y(d, e);e.L.nMD(e.f.ODA().mbA(), true);
    
    e.L.CoD(e.f.ODA().bcA(), true);e.L.VMD(e.f.ODA().yBA(), true);e.d.HoD(com.amazon.ebook.booklet.reader.utils.O.uRD(e.f), b);return true;
  }
  
  public List nrD(String e)
  {
    List d = new ArrayList();
    
    if (com.amazon.kindle.apps.util.O.IS(e))
    {
      d.add(e);
    }
    
    File c;
    
    String b;
    
    if (com.amazon.kindle.apps.util.O.IS(b = com.amazon.ebook.booklet.reader.impl.todo.f.SeE(c = new File(e)))) {
      d.add(b);
    }
    String a;
    if (com.amazon.kindle.apps.util.O.IS(
    
      a = com.amazon.ebook.booklet.reader.impl.todo.f.yfE(c))) {
      d.add(a);
    }
    
    List tmp77_76 = d;tmp77_76.addAll(com.amazon.ebook.booklet.reader.impl.todo.f.UDE(c));
    
    return tmp77_76;
  }
  
  public IFooterDrawActionHandler DOD()
  {
    return new z();
  }
  
  private O C = null;
  
  private kA L;
  
  private h m;
  
  private eA K;
  
  private Z G;
  
  private ReaderSDK f;
  
  private ReaderContentSDK I;
  
  private com.amazon.ebook.booklet.mobireader.impl.b.E i;
  
  private final AnnotationProvider g;
  
  private static final String M = "com.amazon.ebook.booklet.yjreader.impl.resources.YJReaderImplResources";
  
  private ITableViewer J;
  
  private com.amazon.ebook.booklet.reader.sdk.L A;
  
  private int[] b;
  
  private boolean c;
  
  private static final String l = "/mnt/us/CONTENT_FONT_RAMP";
  
  private static final String B = "/mnt/us/CONTENT_INDIC_FONT_RAMP";
  
  private com.amazon.ebook.booklet.reader.sdk.content.a.B H;
  
  public com.amazon.ebook.booklet.reader.sdk.content.a.B DQD()
  {
    return a.H;
  }
  
  public Z LqD()
  {
    return a.G;
  }
  
  public void cqD(ReaderSDK arg1, ReaderContentSDK localReaderContentSDK1)
  {
    ;
    
    
      ((ReaderSDK)???).XDA().FDA(???);(
    
      ???.f = ???).XDA().iCA(???);???.I = localReaderContentSDK1;
    
    ReaderContentSDK a;
    
    ReaderSDK b;
    
    c;c.<init>(c);new com/amazon/ebook/booklet/yjreader/impl/eA.K = c;???.i = new com.amazon.ebook.booklet.mobireader.impl.b.E();
  }
  
  /* Error */
  public void nJA()
  {
    // Byte code:
    //   0: aload_0
    //   1: dup
    //   2: getfield 106	com/amazon/ebook/booklet/yjreader/impl/YJBookController:L	Lcom/amazon/ebook/booklet/yjreader/impl/kA;
    //   5: invokevirtual 212	com/amazon/ebook/booklet/yjreader/impl/kA:a	()V
    //   8: getfield 99	com/amazon/ebook/booklet/yjreader/impl/YJBookController:E	Lcom/amazon/ebook/booklet/yjreader/impl/cA;
    //   11: invokevirtual 128	com/amazon/ebook/booklet/yjreader/impl/cA:hT	()Lcom/amazon/ebook/booklet/reader/sdk/content/L;
    //   14: invokevirtual 134	com/amazon/ebook/booklet/reader/sdk/content/L:syd	()Z
    //   17: ifeq +15 -> 32
    //   20: aload_0
    //   21: dup
    //   22: invokevirtual 138	com/amazon/ebook/booklet/yjreader/impl/YJBookController:OPD	()Lcom/amazon/ebook/booklet/reader/sdk/L;
    //   25: invokevirtual 210	com/amazon/ebook/booklet/reader/sdk/L:a	()V
    //   28: goto +12 -> 40
    //   31: pop
    //   32: aload_0
    //   33: dup
    //   34: getfield 148	com/amazon/ebook/booklet/yjreader/impl/YJBookController:d	Lcom/amazon/ebook/booklet/yjreader/impl/Y;
    //   37: invokevirtual 213	com/amazon/ebook/booklet/yjreader/impl/Y:a	()V
    //   40: aconst_null
    //   41: putfield 99	com/amazon/ebook/booklet/yjreader/impl/YJBookController:E	Lcom/amazon/ebook/booklet/yjreader/impl/cA;
    //   44: aconst_null
    //   45: aload_0
    //   46: dup
    //   47: dup_x2
    //   48: aconst_null
    //   49: dup
    //   50: aload_0
    //   51: dup_x1
    //   52: aconst_null
    //   53: putfield 148	com/amazon/ebook/booklet/yjreader/impl/YJBookController:d	Lcom/amazon/ebook/booklet/yjreader/impl/Y;
    //   56: putfield 106	com/amazon/ebook/booklet/yjreader/impl/YJBookController:L	Lcom/amazon/ebook/booklet/yjreader/impl/kA;
    //   59: putfield 208	com/amazon/ebook/booklet/yjreader/impl/YJBookController:A	Lcom/amazon/ebook/booklet/reader/sdk/L;
    //   62: getfield 215	com/amazon/ebook/booklet/yjreader/impl/YJBookController:J	Lcom/amazon/ebook/booklet/reader/sdk/content/ITableViewer;
    //   65: invokeinterface 220 1 0
    //   70: putfield 215	com/amazon/ebook/booklet/yjreader/impl/YJBookController:J	Lcom/amazon/ebook/booklet/reader/sdk/content/ITableViewer;
    //   73: return
    // Line number table:
    //   Java source line #1164	-> byte code offset #0
    //   Java source line #529	-> byte code offset #8
    //   Java source line #1371	-> byte code offset #20
    //   Java source line #574	-> byte code offset #32
    //   Java source line #1330	-> byte code offset #40
    //   Java source line #1020	-> byte code offset #44
    //   Java source line #332	-> byte code offset #56
    //   Java source line #406	-> byte code offset #59
    //   Java source line #961	-> byte code offset #62
    //   Java source line #1704	-> byte code offset #70
    //   Java source line #770	-> byte code offset #73
    // Local variable table:
    //   start	length	slot	name	signature
    //   0	74	0	a	YJBookController
  }
  
  /* Error */
  public void mv(com.amazon.ebook.booklet.reader.sdk.content.util.e b)
  {
    // Byte code:
    //   0: aload_1
    //   1: ifnonnull +14 -> 15
    //   4: getstatic 254	com/amazon/ebook/booklet/yjreader/impl/YJBookController:j	Lcom/amazon/ebook/util/log/e;
    //   7: ldc_w 256
    //   10: invokevirtual 261	com/amazon/ebook/util/log/e:J	(Ljava/lang/String;)V
    //   13: return
    //   14: pop
    //   15: aload_1
    //   16: ldc_w 263
    //   19: invokevirtual 269	com/amazon/ebook/booklet/reader/sdk/content/util/e:zc	(Ljava/lang/String;)Lcom/amazon/ebook/booklet/reader/sdk/content/util/DataStoreObject;
    //   22: checkcast 271	com/amazon/ebook/booklet/reader/sdk/content/a/L
    //   25: dup
    //   26: astore_2
    //   27: ifnull +41 -> 68
    //   30: aload_2
    //   31: new 273	com/amazon/ebook/booklet/reader/sdk/content/a/B
    //   34: aload_0
    //   35: dup_x1
    //   36: dup_x2
    //   37: dup
    //   38: pop2
    //   39: dup
    //   40: aload_2
    //   41: invokespecial 276	com/amazon/ebook/booklet/reader/sdk/content/a/B:<init>	(Lcom/amazon/ebook/booklet/reader/sdk/content/a/L;)V
    //   44: putfield 278	com/amazon/ebook/booklet/yjreader/impl/YJBookController:H	Lcom/amazon/ebook/booklet/reader/sdk/content/a/B;
    //   47: getfield 278	com/amazon/ebook/booklet/yjreader/impl/YJBookController:H	Lcom/amazon/ebook/booklet/reader/sdk/content/a/B;
    //   50: iconst_1
    //   51: invokevirtual 282	com/amazon/ebook/booklet/reader/sdk/content/a/B:aG	(Z)V
    //   54: aload_1
    //   55: dup_x1
    //   56: aload_0
    //   57: getfield 278	com/amazon/ebook/booklet/yjreader/impl/YJBookController:H	Lcom/amazon/ebook/booklet/reader/sdk/content/a/B;
    //   60: invokevirtual 286	com/amazon/ebook/booklet/reader/sdk/content/util/e:eGE	(Lcom/amazon/ebook/booklet/reader/sdk/content/util/DataStoreObject;)V
    //   63: invokevirtual 289	com/amazon/ebook/booklet/reader/sdk/content/util/e:ugE	(Lcom/amazon/ebook/booklet/reader/sdk/content/util/DataStoreObject;)V
    //   66: return
    //   67: iconst_0
    //   68: aload_0
    //   69: aload_1
    //   70: ldc_w 291
    //   73: invokevirtual 269	com/amazon/ebook/booklet/reader/sdk/content/util/e:zc	(Ljava/lang/String;)Lcom/amazon/ebook/booklet/reader/sdk/content/util/DataStoreObject;
    //   76: checkcast 273	com/amazon/ebook/booklet/reader/sdk/content/a/B
    //   79: putfield 278	com/amazon/ebook/booklet/yjreader/impl/YJBookController:H	Lcom/amazon/ebook/booklet/reader/sdk/content/a/B;
    //   82: aload_0
    //   83: getfield 278	com/amazon/ebook/booklet/yjreader/impl/YJBookController:H	Lcom/amazon/ebook/booklet/reader/sdk/content/a/B;
    //   86: ifnonnull +30 -> 116
    //   89: aload_1
    //   90: aload_0
    //   91: dup
    //   92: dup_x1
    //   93: new 273	com/amazon/ebook/booklet/reader/sdk/content/a/B
    //   96: dup
    //   97: invokespecial 292	com/amazon/ebook/booklet/reader/sdk/content/a/B:<init>	()V
    //   100: putfield 278	com/amazon/ebook/booklet/yjreader/impl/YJBookController:H	Lcom/amazon/ebook/booklet/reader/sdk/content/a/B;
    //   103: getfield 278	com/amazon/ebook/booklet/yjreader/impl/YJBookController:H	Lcom/amazon/ebook/booklet/reader/sdk/content/a/B;
    //   106: iconst_1
    //   107: invokevirtual 282	com/amazon/ebook/booklet/reader/sdk/content/a/B:aG	(Z)V
    //   110: getfield 278	com/amazon/ebook/booklet/yjreader/impl/YJBookController:H	Lcom/amazon/ebook/booklet/reader/sdk/content/a/B;
    //   113: invokevirtual 286	com/amazon/ebook/booklet/reader/sdk/content/util/e:eGE	(Lcom/amazon/ebook/booklet/reader/sdk/content/util/DataStoreObject;)V
    //   116: return
    // Line number table:
    //   Java source line #175	-> byte code offset #0
    //   Java source line #342	-> byte code offset #4
    //   Java source line #1438	-> byte code offset #13
    //   Java source line #37	-> byte code offset #15
    //   Java source line #592	-> byte code offset #27
    //   Java source line #1520	-> byte code offset #31
    //   Java source line #354	-> byte code offset #47
    //   Java source line #1263	-> byte code offset #54
    //   Java source line #920	-> byte code offset #63
    //   Java source line #183	-> byte code offset #66
    //   Java source line #1486	-> byte code offset #68
    //   Java source line #1334	-> byte code offset #82
    //   Java source line #157	-> byte code offset #89
    //   Java source line #1463	-> byte code offset #103
    //   Java source line #414	-> byte code offset #110
    //   Java source line #232	-> byte code offset #116
    // Local variable table:
    //   start	length	slot	name	signature
    //   0	117	0	c	YJBookController
    //   0	117	1	b	com.amazon.ebook.booklet.reader.sdk.content.util.e
    //   26	91	2	a	com.amazon.ebook.booklet.reader.sdk.content.a.L
  }
  
  public void wOD() {}
  
  public void GpD() {}
  
  public void MqD() {}
  
  public void frD(boolean a) {}
  
  public void Lx(HashMap a) {}
  
  /* Error */
  public float[] SID()
  {
    // Byte code:
    //   0: aload_0
    //   1: getfield 99	com/amazon/ebook/booklet/yjreader/impl/YJBookController:E	Lcom/amazon/ebook/booklet/yjreader/impl/cA;
    //   4: ifnull +32 -> 36
    //   7: aload_0
    //   8: getfield 99	com/amazon/ebook/booklet/yjreader/impl/YJBookController:E	Lcom/amazon/ebook/booklet/yjreader/impl/cA;
    //   11: invokevirtual 128	com/amazon/ebook/booklet/yjreader/impl/cA:hT	()Lcom/amazon/ebook/booklet/reader/sdk/content/L;
    //   14: ifnull +22 -> 36
    //   17: aload_0
    //   18: getfield 99	com/amazon/ebook/booklet/yjreader/impl/YJBookController:E	Lcom/amazon/ebook/booklet/yjreader/impl/cA;
    //   21: invokevirtual 128	com/amazon/ebook/booklet/yjreader/impl/cA:hT	()Lcom/amazon/ebook/booklet/reader/sdk/content/L;
    //   24: invokevirtual 365	com/amazon/ebook/booklet/reader/sdk/content/L:aqD	()Z
    //   27: ifeq +9 -> 36
    //   30: aload_0
    //   31: invokevirtual 368	com/amazon/ebook/booklet/yjreader/impl/YJBookController:gpD	()[F
    //   34: areturn
    //   35: pop
    //   36: aload_0
    //   37: invokevirtual 371	com/amazon/ebook/booklet/yjreader/impl/YJBookController:TPD	()[F
    //   40: areturn
    // Line number table:
    //   Java source line #428	-> byte code offset #0
    //   Java source line #949	-> byte code offset #21
    //   Java source line #889	-> byte code offset #30
    //   Java source line #389	-> byte code offset #36
    // Local variable table:
    //   start	length	slot	name	signature
    //   0	41	0	a	YJBookController
  }
  
  /* Error */
  public float[] TPD()
  {
    // Byte code:
    //   0: aload_0
    //   1: getfield 70	com/amazon/ebook/booklet/yjreader/impl/YJBookController:c	Z
    //   4: ifeq +26 -> 30
    //   7: ldc 52
    //   9: aload_0
    //   10: invokevirtual 373	com/amazon/ebook/booklet/yjreader/impl/YJBookController:VCA	()[I
    //   13: arraylength
    //   14: invokestatic 379	com/amazon/ebook/booklet/reader/utils/j:XRD	(Ljava/lang/String;I)[F
    //   17: dup
    //   18: astore_1
    //   19: ifnull +11 -> 30
    //   22: aload_1
    //   23: arraylength
    //   24: ifle +6 -> 30
    //   27: aload_1
    //   28: areturn
    //   29: pop
    //   30: ldc 41
    //   32: invokestatic 346	java/util/ResourceBundle:getBundle	(Ljava/lang/String;)Ljava/util/ResourceBundle;
    //   35: ldc_w 381
    //   38: invokevirtual 352	java/util/ResourceBundle:getObject	(Ljava/lang/String;)Ljava/lang/Object;
    //   41: checkcast 383	[F
    //   44: checkcast 383	[F
    //   47: areturn
    // Line number table:
    //   Java source line #422	-> byte code offset #0
    //   Java source line #1431	-> byte code offset #7
    //   Java source line #511	-> byte code offset #19
    //   Java source line #1752	-> byte code offset #27
    //   Java source line #1355	-> byte code offset #30
    // Local variable table:
    //   start	length	slot	name	signature
    //   0	48	0	b	YJBookController
    //   18	23	1	a	float[]
  }
  
  /* Error */
  public float[] gpD()
  {
    // Byte code:
    //   0: aload_0
    //   1: getfield 70	com/amazon/ebook/booklet/yjreader/impl/YJBookController:c	Z
    //   4: ifeq +26 -> 30
    //   7: ldc 55
    //   9: aload_0
    //   10: invokevirtual 373	com/amazon/ebook/booklet/yjreader/impl/YJBookController:VCA	()[I
    //   13: arraylength
    //   14: invokestatic 379	com/amazon/ebook/booklet/reader/utils/j:XRD	(Ljava/lang/String;I)[F
    //   17: dup
    //   18: astore_1
    //   19: ifnull +11 -> 30
    //   22: aload_1
    //   23: arraylength
    //   24: ifle +6 -> 30
    //   27: aload_1
    //   28: areturn
    //   29: pop
    //   30: ldc 41
    //   32: invokestatic 346	java/util/ResourceBundle:getBundle	(Ljava/lang/String;)Ljava/util/ResourceBundle;
    //   35: ldc_w 385
    //   38: invokevirtual 352	java/util/ResourceBundle:getObject	(Ljava/lang/String;)Ljava/lang/Object;
    //   41: checkcast 383	[F
    //   44: checkcast 383	[F
    //   47: areturn
    // Line number table:
    //   Java source line #1172	-> byte code offset #0
    //   Java source line #129	-> byte code offset #7
    //   Java source line #899	-> byte code offset #19
    //   Java source line #371	-> byte code offset #27
    //   Java source line #303	-> byte code offset #30
    // Local variable table:
    //   start	length	slot	name	signature
    //   0	48	0	b	YJBookController
    //   18	23	1	a	float[]
  }
  
  /* Error */
  public List zpD(List i)
  {
    // Byte code:
    //   0: new 440	java/util/ArrayList
    //   3: dup
    //   4: invokespecial 441	java/util/ArrayList:<init>	()V
    //   7: astore_2
    //   8: iconst_m1
    //   9: istore_3
    //   10: aconst_null
    //   11: astore 4
    //   13: aconst_null
    //   14: astore 5
    //   16: aconst_null
    //   17: astore 6
    //   19: iconst_0
    //   20: dup
    //   21: istore 7
    //   23: aload_1
    //   24: invokeinterface 446 1 0
    //   29: if_icmpge +219 -> 248
    //   32: aload_1
    //   33: iload 7
    //   35: invokeinterface 450 2 0
    //   40: checkcast 11	com/amazon/ebook/booklet/reader/sdk/internal/E
    //   43: dup
    //   44: astore 8
    //   46: getfield 452	com/amazon/ebook/booklet/reader/sdk/internal/E:B	Lcom/amazon/ebook/booklet/reader/sdk/ui/element/Element;
    //   49: dup
    //   50: astore 6
    //   52: iconst_0
    //   53: invokeinterface 456 2 0
    //   58: astore 9
    //   60: aload 5
    //   62: ifnonnull +21 -> 83
    //   65: aload 6
    //   67: aload 8
    //   69: getfield 458	com/amazon/ebook/booklet/reader/sdk/internal/E:H	I
    //   72: istore_3
    //   73: astore 5
    //   75: aload 9
    //   77: astore 4
    //   79: goto +161 -> 240
    //   82: pop
    //   83: iload_3
    //   84: iconst_1
    //   85: iadd
    //   86: aload 8
    //   88: getfield 458	com/amazon/ebook/booklet/reader/sdk/internal/E:H	I
    //   91: if_icmpne +126 -> 217
    //   94: aload 5
    //   96: iconst_0
    //   97: invokeinterface 462 2 0
    //   102: aload 6
    //   104: iconst_0
    //   105: invokeinterface 462 2 0
    //   110: if_icmpne +107 -> 217
    //   113: aload_0
    //   114: getfield 163	com/amazon/ebook/booklet/yjreader/impl/YJBookController:f	Lcom/amazon/ebook/booklet/reader/sdk/ReaderSDK;
    //   117: invokeinterface 464 1 0
    //   122: invokeinterface 467 1 0
    //   127: ifeq +78 -> 205
    //   130: aload_0
    //   131: getfield 163	com/amazon/ebook/booklet/yjreader/impl/YJBookController:f	Lcom/amazon/ebook/booklet/reader/sdk/ReaderSDK;
    //   134: invokeinterface 464 1 0
    //   139: invokeinterface 470 1 0
    //   144: ifeq +61 -> 205
    //   147: aload 5
    //   149: invokeinterface 418 1 0
    //   154: aload 6
    //   156: invokeinterface 418 1 0
    //   161: invokevirtual 474	com/amazon/ebook/booklet/reader/sdk/content/f:compareTo	(Ljava/lang/Object;)I
    //   164: ifne +41 -> 205
    //   167: aload_2
    //   168: aload 9
    //   170: getfield 479	java/awt/Rectangle:x	I
    //   173: aload 4
    //   175: dup_x1
    //   176: dup_x2
    //   177: getfield 479	java/awt/Rectangle:x	I
    //   180: isub
    //   181: aload 4
    //   183: getfield 482	java/awt/Rectangle:height	I
    //   186: invokevirtual 486	java/awt/Rectangle:setSize	(II)V
    //   189: invokeinterface 490 2 0
    //   194: aload 9
    //   196: astore 4
    //   198: pop
    //   199: aload 8
    //   201: goto +31 -> 232
    //   204: iconst_0
    //   205: aload 4
    //   207: aload 9
    //   209: invokevirtual 493	java/awt/Rectangle:add	(Ljava/awt/Rectangle;)V
    //   212: aload 8
    //   214: goto +18 -> 232
    //   217: aload_2
    //   218: aload 4
    //   220: invokeinterface 490 2 0
    //   225: aload 9
    //   227: astore 4
    //   229: pop
    //   230: aload 8
    //   232: getfield 458	com/amazon/ebook/booklet/reader/sdk/internal/E:H	I
    //   235: istore_3
    //   236: aload 6
    //   238: astore 5
    //   240: iinc 7 1
    //   243: iload 7
    //   245: goto -222 -> 23
    //   248: aload 4
    //   250: ifnull +12 -> 262
    //   253: aload_2
    //   254: aload 4
    //   256: invokeinterface 490 2 0
    //   261: pop
    //   262: aload_2
    //   263: areturn
    // Line number table:
    //   Java source line #1262	-> byte code offset #0
    //   Java source line #273	-> byte code offset #8
    //   Java source line #1216	-> byte code offset #10
    //   Java source line #1638	-> byte code offset #13
    //   Java source line #382	-> byte code offset #16
    //   Java source line #901	-> byte code offset #19
    //   Java source line #1445	-> byte code offset #32
    //   Java source line #1695	-> byte code offset #46
    //   Java source line #345	-> byte code offset #52
    //   Java source line #1608	-> byte code offset #60
    //   Java source line #1771	-> byte code offset #67
    //   Java source line #595	-> byte code offset #73
    //   Java source line #415	-> byte code offset #75
    //   Java source line #219	-> byte code offset #79
    //   Java source line #596	-> byte code offset #83
    //   Java source line #1363	-> byte code offset #113
    //   Java source line #1368	-> byte code offset #134
    //   Java source line #133	-> byte code offset #149
    //   Java source line #417	-> byte code offset #168
    //   Java source line #1189	-> byte code offset #189
    //   Java source line #1332	-> byte code offset #194
    //   Java source line #340	-> byte code offset #205
    //   Java source line #1468	-> byte code offset #217
    //   Java source line #897	-> byte code offset #225
    //   Java source line #995	-> byte code offset #230
    //   Java source line #510	-> byte code offset #236
    //   Java source line #901	-> byte code offset #240
    //   Java source line #1193	-> byte code offset #248
    //   Java source line #1669	-> byte code offset #253
    //   Java source line #497	-> byte code offset #262
    // Local variable table:
    //   start	length	slot	name	signature
    //   0	264	0	j	YJBookController
    //   0	264	1	i	List
    //   8	256	2	h	List
    //   10	254	3	g	int
    //   13	251	4	f	java.awt.Rectangle
    //   16	248	5	e	Element
    //   19	245	6	d	Element
    //   21	235	7	c	int
    //   44	209	8	b	com.amazon.ebook.booklet.reader.sdk.internal.E
    //   60	193	9	a	java.awt.Rectangle
  }
}

But anyway - for me work is done. I'll use AZW3 in future (no problem with CALIBRE) to get the result I want.

Last edited by Analogus; 01-11-2017 at 04:48 PM.
Analogus is offline   Reply With Quote