[Android Q&A, Help & Troubleshooting] celozaga:
Hello, I would like to know how I can disable device verification in the GameActivity file below, I am trying to play the game Star Wars: Hunters on an Android emulator Open GL ES 3.1, but the game requires Open GL ES 3.2 support, I would like to disable this requirement, as technically the The game doesn't need that API level, the devs just put it to stop installation on older devices while the game is still poorly optimized (I did it with the GLTools test).

I'm a layman on this subject, so I'm here looking for help, I used APKEasyTool to decompile the APK file, you can check the GameActivity content below, which I believe is where the Open GL ES version verification is being done.

https://gist.github.com/celozaga/1f5efbcd8bee41612b887ae64b497967

.method private V()V
.locals 15

.line 1
invoke-static {}, Landroid/opengl/EGL14;->eglGetError()I

move-result v0

const-string v1, ""

const-string v2, " "

const/16 v3, 0x3000

if-ne v0, v3, :cond_0

move-object v0, v1

goto :goto_0

.line 2
:cond_0
new-instance v3, Ljava/lang/StringBuilder;

invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V

const-string v4, "InitialEGLError = "

invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

move-result-object v0

:goto_0
iput-object v0, p0, Lcom/epicgames/ue4/GameActivity;->r0:Ljava/lang/String;

const/4 v0, 0x0

.line 3
invoke-static {v0}, Landroid/opengl/EGL14;->eglGetDisplay(I)Landroid/opengl/EGLDisplay;

move-result-object v11

.line 4
new-instance v3, Ljava/lang/StringBuilder;

invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V

iget-object v4, p0, Lcom/epicgames/ue4/GameActivity;->r0:Ljava/lang/String;

invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

sget-object v4, Landroid/opengl/EGL14;->EGL_NO_DISPLAY:Landroid/opengl/EGLDisplay;

if-eq v11, v4, :cond_1

move-object v4, v1

goto :goto_1

:cond_1
new-instance v4, Ljava/lang/StringBuilder;

invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V

const-string v5, "eglGetDisplay = "

invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

invoke-static {}, Landroid/opengl/EGL14;->eglGetError()I

move-result v5

invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

invoke-virtual {v4, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

move-result-object v4

:goto_1
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

move-result-object v3

iput-object v3, p0, Lcom/epicgames/ue4/GameActivity;->r0:Ljava/lang/String;

const/4 v3, 0x2

new-array v3, v3, [I

const/4 v12, 0x1

.line 5
invoke-static {v11, v3, v0, v3, v12}, Landroid/opengl/EGL14;->eglInitialize(Landroid/opengl/EGLDisplay;[II[II)Z

move-result v3

.line 6
new-instance v4, Ljava/lang/StringBuilder;

invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V

iget-object v5, p0, Lcom/epicgames/ue4/GameActivity;->r0:Ljava/lang/String;

invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

if-eqz v3, :cond_2

move-object v3, v1

goto :goto_2

:cond_2
new-instance v3, Ljava/lang/StringBuilder;

invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V

const-string v5, "eglInitialize = "

invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

invoke-static {}, Landroid/opengl/EGL14;->eglGetError()I

move-result v5

invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

move-result-object v3

:goto_2
invoke-virtual {v4, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

move-result-object v3

iput-object v3, p0, Lcom/epicgames/ue4/GameActivity;->r0:Ljava/lang/String;

const/16 v3, 0x9

new-array v4, v3, [I

.line 7
fill-array-data v4, :array_0

new-array v13, v12, [Landroid/opengl/EGLConfig;

new-array v14, v12, [I

const/4 v5, 0x0

const/4 v7, 0x0

const/4 v8, 0x1

const/4 v10, 0x0

move-object v3, v11

move-object v6, v13

move-object v9, v14

.line 8
invoke-static/range {v3 .. v10}, Landroid/opengl/EGL14;->eglChooseConfig(Landroid/opengl/EGLDisplay;[II[Landroid/opengl/EGLConfig;II[II)Z

.line 9
aget v3, v14, v0

if-nez v3, :cond_3

.line 10
new-instance v0, Ljava/lang/StringBuilder;

invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V

iget-object v1, p0, Lcom/epicgames/ue4/GameActivity;->r0:Ljava/lang/String;

invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

const-string v1, "eglChooseConfig = "

invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

invoke-static {}, Landroid/opengl/EGL14;->eglGetError()I

move-result v1

invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

move-result-object v0

iput-object v0, p0, Lcom/epicgames/ue4/GameActivity;->r0:Ljava/lang/String;

.line 11
sget-object v0, Lcom/epicgames/ue4/GameActivity;->Log:Lcom/epicgames/ue4/d;

const-string v1, "Did not find an EGL config"

invoke-virtual {v0, v1}, Lcom/epicgames/ue4/d;->c(Ljava/lang/String;)V

return-void

.line 12
:cond_3
aget-object v3, v13, v0

const/4 v4, 0x5

new-array v4, v4, [I

.line 13
fill-array-data v4, :array_1

.line 14
invoke-static {v11, v3, v4, v0}, Landroid/opengl/EGL14;->eglCreatePbufferSurface(Landroid/opengl/EGLDisplay;Landroid/opengl/EGLConfig;[II)Landroid/opengl/EGLSurface;

move-result-object v4

.line 15
new-instance v5, Ljava/lang/StringBuilder;

invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V

iget-object v6, p0, Lcom/epicgames/ue4/GameActivity;->r0:Ljava/lang/String;

invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

sget-object v6, Landroid/opengl/EGL14;->EGL_NO_SURFACE:Landroid/opengl/EGLSurface;

if-eq v4, v6, :cond_4

move-object v6, v1

goto :goto_3

:cond_4
new-instance v6, Ljava/lang/StringBuilder;

invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V

const-string v7, "eglCreatePbufferSurface = "

invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

invoke-static {}, Landroid/opengl/EGL14;->eglGetError()I

move-result v7

invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

invoke-virtual {v6, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

move-result-object v6

:goto_3
invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

move-result-object v5

iput-object v5, p0, Lcom/epicgames/ue4/GameActivity;->r0:Ljava/lang/String;

const/4 v5, 0x3

new-array v5, v5, [I

.line 16
fill-array-data v5, :array_2

.line 17
sget-object v6, Landroid/opengl/EGL14;->EGL_NO_CONTEXT:Landroid/opengl/EGLContext;

invoke-static {v11, v3, v6, v5, v0}, Landroid/opengl/EGL14;->eglCreateContext(Landroid/opengl/EGLDisplay;Landroid/opengl/EGLConfig;Landroid/opengl/EGLContext;[II)Landroid/opengl/EGLContext;

move-result-object v3

.line 18
new-instance v5, Ljava/lang/StringBuilder;

invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V

iget-object v6, p0, Lcom/epicgames/ue4/GameActivity;->r0:Ljava/lang/String;

invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

sget-object v6, Landroid/opengl/EGL14;->EGL_NO_CONTEXT:Landroid/opengl/EGLContext;

if-eq v3, v6, :cond_5

move-object v6, v1

goto :goto_4

:cond_5
new-instance v6, Ljava/lang/StringBuilder;

invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V

const-string v7, "eglCreateContext = "

invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

invoke-static {}, Landroid/opengl/EGL14;->eglGetError()I

move-result v7

invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

invoke-virtual {v6, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

move-result-object v6

:goto_4
invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

move-result-object v5

iput-object v5, p0, Lcom/epicgames/ue4/GameActivity;->r0:Ljava/lang/String;

.line 19
invoke-static {v11, v4, v4, v3}, Landroid/opengl/EGL14;->eglMakeCurrent(Landroid/opengl/EGLDisplay;Landroid/opengl/EGLSurface;Landroid/opengl/EGLSurface;Landroid/opengl/EGLContext;)Z

move-result v5

.line 20
new-instance v6, Ljava/lang/StringBuilder;

invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V

iget-object v7, p0, Lcom/epicgames/ue4/GameActivity;->r0:Ljava/lang/String;

invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

if-eqz v5, :cond_6

move-object v5, v1

goto :goto_5

:cond_6
new-instance v5, Ljava/lang/StringBuilder;

invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V

const-string v7, "eglMakeCurrent = "

invoke-virtual {v5, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

invoke-static {}, Landroid/opengl/EGL14;->eglGetError()I

move-result v7

invoke-virtual {v5, v7}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

invoke-virtual {v5, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

move-result-object v5

:goto_5
invoke-virtual {v6, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

move-result-object v5

iput-object v5, p0, Lcom/epicgames/ue4/GameActivity;->r0:Ljava/lang/String;

const/16 v5, 0x1f03

.line 21
invoke-static {v5}, Landroid/opengl/GLES20;->glGetString(I)Ljava/lang/String;

move-result-object v5

const/16 v6, 0x1f00

.line 22
invoke-static {v6}, Landroid/opengl/GLES20;->glGetString(I)Ljava/lang/String;

move-result-object v6

iput-object v6, p0, Lcom/epicgames/ue4/GameActivity;->OpenGLVendor:Ljava/lang/String;

const/16 v6, 0x1f01

.line 23
invoke-static {v6}, Landroid/opengl/GLES20;->glGetString(I)Ljava/lang/String;

move-result-object v6

iput-object v6, p0, Lcom/epicgames/ue4/GameActivity;->OpenGLDevice:Ljava/lang/String;

const/16 v6, 0x1f02

.line 24
invoke-static {v6}, Landroid/opengl/GLES20;->glGetString(I)Ljava/lang/String;

move-result-object v6

iput-object v6, p0, Lcom/epicgames/ue4/GameActivity;->OpenGLDriver:Ljava/lang/String;

const-string v7, "OpenGL ES 3."

.line 25
invoke-virtual {v6, v7}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z

move-result v6

.line 26
invoke-static {}, Landroid/opengl/GLES20;->glGetError()I

move-result v7

.line 27
new-instance v8, Ljava/lang/StringBuilder;

invoke-direct {v8}, Ljava/lang/StringBuilder;-><init>()V

iget-object v9, p0, Lcom/epicgames/ue4/GameActivity;->r0:Ljava/lang/String;

invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

if-nez v7, :cond_7

const-string v7, "getGraphicsInformation completed. "

goto :goto_6

:cond_7
new-instance v9, Ljava/lang/StringBuilder;

invoke-direct {v9}, Ljava/lang/StringBuilder;-><init>()V

const-string v10, "gl error = "

invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

invoke-virtual {v9, v7}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

invoke-virtual {v9}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

move-result-object v7

:goto_6
invoke-virtual {v8, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

move-result-object v7

iput-object v7, p0, Lcom/epicgames/ue4/GameActivity;->r0:Ljava/lang/String;

.line 28
sget-object v7, Landroid/opengl/EGL14;->EGL_NO_SURFACE:Landroid/opengl/EGLSurface;

sget-object v8, Landroid/opengl/EGL14;->EGL_NO_CONTEXT:Landroid/opengl/EGLContext;

invoke-static {v11, v7, v7, v8}, Landroid/opengl/EGL14;->eglMakeCurrent(Landroid/opengl/EGLDisplay;Landroid/opengl/EGLSurface;Landroid/opengl/EGLSurface;Landroid/opengl/EGLContext;)Z

.line 29
invoke-static {v11, v4}, Landroid/opengl/EGL14;->eglDestroySurface(Landroid/opengl/EGLDisplay;Landroid/opengl/EGLSurface;)Z

.line 30
invoke-static {v11, v3}, Landroid/opengl/EGL14;->eglDestroyContext(Landroid/opengl/EGLDisplay;Landroid/opengl/EGLContext;)Z

.line 31
invoke-static {v11}, Landroid/opengl/EGL14;->eglTerminate(Landroid/opengl/EGLDisplay;)Z

.line 32
iget-object v3, p0, Lcom/epicgames/ue4/GameActivity;->OpenGLDevice:Ljava/lang/String;

const-string v4, "NVIDIA"

invoke-virtual {v3, v4}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z

.line 33
iget-object v3, p0, Lcom/epicgames/ue4/GameActivity;->OpenGLDevice:Ljava/lang/String;

const-string v4, "PowerVR"

invoke-virtual {v3, v4}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z

.line 34
iget-object v3, p0, Lcom/epicgames/ue4/GameActivity;->OpenGLDevice:Ljava/lang/String;

const-string v4, "Adreno"

invoke-virtual {v3, v4}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z

.line 35
iget-object v3, p0, Lcom/epicgames/ue4/GameActivity;->OpenGLDevice:Ljava/lang/String;

const-string v4, "Mali"

invoke-virtual {v3, v4}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z

.line 36
iget-object v3, p0, Lcom/epicgames/ue4/GameActivity;->OpenGLDevice:Ljava/lang/String;

const-string v4, "VideoCore"

invoke-virtual {v3, v4}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z

.line 37
iput-object v1, p0, Lcom/epicgames/ue4/GameActivity;->OpenGLVersion:Ljava/lang/String;

.line 38
iget-object v3, p0, Lcom/epicgames/ue4/GameActivity;->OpenGLDriver:Ljava/lang/String;

const-string v4, "OpenGL ES "

invoke-virtual {v3, v4}, Ljava/lang/String;->indexOf(Ljava/lang/String;)I

move-result v3

if-ltz v3, :cond_8

.line 39
iget-object v4, p0, Lcom/epicgames/ue4/GameActivity;->OpenGLDriver:Ljava/lang/String;

add-int/lit8 v3, v3, 0xa

invoke-virtual {v4, v3}, Ljava/lang/String;->substring(I)Ljava/lang/String;

move-result-object v3

iput-object v3, p0, Lcom/epicgames/ue4/GameActivity;->OpenGLVersion:Ljava/lang/String;

.line 40
invoke-virtual {v3, v2}, Ljava/lang/String;->indexOf(Ljava/lang/String;)I

move-result v2

if-lez v2, :cond_8

.line 41
iget-object v3, p0, Lcom/epicgames/ue4/GameActivity;->OpenGLVersion:Ljava/lang/String;

invoke-virtual {v3, v0, v2}, Ljava/lang/String;->substring(II)Ljava/lang/String;

move-result-object v2

iput-object v2, p0, Lcom/epicgames/ue4/GameActivity;->OpenGLVersion:Ljava/lang/String;

:cond_8
const-string v2, "GL_EXT_color_buffer_half_float"

.line 42
invoke-virtual {v5, v2}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z

move-result v2

if-nez v2, :cond_a

if-eqz v6, :cond_9

const-string v2, "GL_EXT_color_buffer_float"

.line 43
invoke-virtual {v5, v2}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z

move-result v2

if-eqz v2, :cond_9

goto :goto_7

:cond_9
move v12, v0

:cond_a
:goto_7
iput-boolean v12, p0, Lcom/epicgames/ue4/GameActivity;->bSupportsFloatingPointRenderTargets:Z

.line 44
iput-object v1, p0, Lcom/epicgames/ue4/GameActivity;->TextureFormats:Ljava/lang/String;

const-string v1, "GL_KHR_texture_compression_astc_ldr"

.line 45
invoke-virtual {v5, v1}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z

move-result v1

if-eqz v1, :cond_b

.line 46
new-instance v1, Ljava/lang/StringBuilder;

invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V

iget-object v2, p0, Lcom/epicgames/ue4/GameActivity;->TextureFormats:Ljava/lang/String;

invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

const-string v2, "ASTC,"

invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

move-result-object v1

iput-object v1, p0, Lcom/epicgames/ue4/GameActivity;->TextureFormats:Ljava/lang/String;

:cond_b
const-string v1, "GL_IMG_texture_compression_pvrtc"

.line 47
invoke-virtual {v5, v1}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z

move-result v1

if-eqz v1, :cond_c

.line 48
new-instance v1, Ljava/lang/StringBuilder;

invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V

iget-object v2, p0, Lcom/epicgames/ue4/GameActivity;->TextureFormats:Ljava/lang/String;

invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

const-string v2, "PVRTC,"

invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

move-result-object v1

iput-object v1, p0, Lcom/epicgames/ue4/GameActivity;->TextureFormats:Ljava/lang/String;

:cond_c
const-string v1, "GL_NV_texture_compression_s3tc"

.line 49
invoke-virtual {v5, v1}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z

move-result v1

if-nez v1, :cond_d

const-string v1, "GL_EXT_texture_compression_s3tc"

invoke-virtual {v5, v1}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z

move-result v1

if-eqz v1, :cond_e

.line 50
:cond_d
new-instance v1, Ljava/lang/StringBuilder;

invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V

iget-object v2, p0, Lcom/epicgames/ue4/GameActivity;->TextureFormats:Ljava/lang/String;

invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

const-string v2, "DXT,"

invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

move-result-object v1

iput-object v1, p0, Lcom/epicgames/ue4/GameActivity;->TextureFormats:Ljava/lang/String;

:cond_e
const-string v1, "GL_ATI_texture_compression_atitc"

.line 51
invoke-virtual {v5, v1}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z

move-result v1

if-nez v1, :cond_f

const-string v1, "GL_AMD_compressed_ATC_texture"

invoke-virtual {v5, v1}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z

move-result v1

if-eqz v1, :cond_10

.line 52
:cond_f
new-instance v1, Ljava/lang/StringBuilder;

invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V

iget-object v2, p0, Lcom/epicgames/ue4/GameActivity;->TextureFormats:Ljava/lang/String;

invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

const-string v2, "ATC,"

invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

move-result-object v1

iput-object v1, p0, Lcom/epicgames/ue4/GameActivity;->TextureFormats:Ljava/lang/String;

.line 53
:cond_10
iget-object v1, p0, Lcom/epicgames/ue4/GameActivity;->OpenGLVersion:Ljava/lang/String;

invoke-virtual {v1, v0}, Ljava/lang/String;->charAt(I)C

move-result v0

const/16 v1, 0x33

if-lt v0, v1, :cond_11

.line 54
new-instance v0, Ljava/lang/StringBuilder;

invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V

iget-object v1, p0, Lcom/epicgames/ue4/GameActivity;->TextureFormats:Ljava/lang/String;

invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

const-string v1, "ETC2,"

invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

move-result-object v0

iput-object v0, p0, Lcom/epicgames/ue4/GameActivity;->TextureFormats:Ljava/lang/String;

.line 55
:cond_11
new-instance v0, Ljava/lang/StringBuilder;

invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V

iget-object v1, p0, Lcom/epicgames/ue4/GameActivity;->TextureFormats:Ljava/lang/String;

invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

const-string v1, "ETC1"

invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

move-result-object v0

iput-object v0, p0, Lcom/epicgames/ue4/GameActivity;->TextureFormats:Ljava/lang/String;

return-void

nop

:array_0
.array-data 4
0x303f
0x308e
0x3029
0x0
0x3040
0x4
0x3033
0x1
0x3038
.end array-data

:array_1
.array-data 4
0x3057
0x8
0x3056
0x8
0x3038
.end array-data

:array_2
.array-data 4
0x3098
0x2
0x3038
.end array-data
.end method