Function at 0x4032f6
Capabilities:
Create thread
Terminate process

Disassembly:
push 0x134
mov eax, 0x406b39
call fcn.0040652b
mov edi, ecx
call fcn.00403038
test al, al
jne 0x403317
xor al, al
jmp 0x403647
push dword [edi + 4]
lea eax, [ebp - 0x114]
push str.AndroidRendererStopEvent__d
push eax
call fcn.00402a37
add esp, 0xc
cmp dword [edi + 8], 3
jne 0x40347a
xor ebx, ebx
push ebx
push ebx
push 1
push ebx
mov dword [edi + 0x174], ebx
call dword [sym.imp.KERNEL32.dll_CreateEventA]
mov dword [edi + 0x18], eax
lea eax, [ebp - 0x114]
push eax
push ebx
push 0x100000
call dword [sym.imp.KERNEL32.dll_OpenEventA]
push 0x2e0
mov dword [edi + 0x12c], eax
call fcn.0040575b
pop ecx
mov dword [ebp - 0x118], eax
mov dword [ebp - 4], ebx
mov ecx, eax
push dword [edi + 0xc]
push dword [edi + 8]
push dword [edi + 0x160]
push dword [edi + 0x15c]
push dword [edi + 0x158]
push dword [edi + 0x154]
push dword [edi + 0x150]
push dword [edi + 4]
push str.127.0.0.1
call fcn.00401230
or dword [ebp - 4], 0xffffffff
mov ecx, eax
test byte [edi + 0x170], 1
mov dword [edi + 0x10], ecx
je 0x4033cc
mov eax, dword [ecx]
push 1
push str.GL_OES_get_program_binary
call dword [eax + 0x1c]
mov ecx, dword [edi + 0x10]
movzx eax, byte [edi + 0x164]
push eax
mov edx, dword [ecx]
call dword [edx + 0x2c]
mov ecx, dword [edi + 0x10]
push dword [edi + 0x168]
mov eax, dword [ecx]
call dword [eax + 0x30]
mov ecx, dword [edi + 0x10]
movzx eax, byte [edi + 0x16c]
push eax
mov edx, dword [ecx]
call dword [edx + 0x38]
mov ecx, dword [edi + 0x10]
push edi
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, dword [edi + 0x10]
mov eax, dword [ecx]
call dword [eax]
test eax, eax
jne 0x403310
mov eax, dword [edi + 0x18]
mov dword [ebp - 0x124], eax
mov eax, dword [edi + 0x12c]
push 0xffffffffffffffff
mov dword [ebp - 0x120], eax
lea eax, [ebp - 0x124]
push ebx
push eax
push 2
call dword [sym.imp.KERNEL32.dll_WaitForMultipleObjects]
push str.remote_opengl::start
push str._S:_stopping..._n
call fcn.0040105e
mov esi, dword [sym.imp.KERNEL32.dll_CloseHandle]
pop ecx
pop ecx
push dword [edi + 0x12c]
call esi
push dword [edi + 0x18]
call esi
mov ecx, dword [edi + 0x10]
mov eax, dword [ecx]
call dword [eax + 4]
mov ecx, dword [edi + 0x10]
test ecx, ecx
je 0x403473
mov eax, dword [ecx]
push 1
call dword [eax + 0x64]
push ebx
call dword [sym.imp.KERNEL32.dll_ExitProcess]
cmp dword [edi + 8], 2
je 0x40348a
cmp dword [edi + 8], 1
jne 0x403310
mov esi, dword [sym.imp.KERNEL32.dll_CreateEventA]
xor ebx, ebx
push ebx
push ebx
push 1
push ebx
mov dword [edi + 0x24], ebx
mov byte [edi + 0x14], bl
call esi
push ebx
push ebx
push ebx
push ebx
mov dword [edi + 0x18], eax
call esi
push ebx
push ebx
push ebx
push ebx
mov dword [edi + 0x2c], eax
call esi
push ebx
push ebx
push ebx
push ebx
mov dword [edi + 0x30], eax
mov dword [edi + 0x104], ebx
call esi
mov dword [edi + 0x108], eax
lea eax, [edi + 0x114]
push eax
call dword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
lea eax, [ebp - 0x114]
push eax
push ebx
push 1
push ebx
call esi
mov esi, dword [sym.imp.KERNEL32.dll_CreateThread]
push ebx
push ebx
push edi
push 0x40370a
push ebx
push ebx
mov dword [edi + 0x12c], eax
call esi
mov dword [edi + 0x24], eax
test eax, eax
jne 0x403515
push str.remote_opengl::start
push str._S:_Unable_to_create_ui_pipe_thread____n
call fcn.0040105e
pop ecx
pop ecx
jmp 0x403310
cmp dword [edi + 8], 2
jne 0x40353a
push ebx
push ebx
push edi
push 0x403a65
push ebx
push ebx
call esi
mov dword [edi + 0x28], eax
test eax, eax
jne 0x40353a
push str.remote_opengl::start
push str._S:_Unable_to_create_linux_pipe_thread____n
jmp 0x403509
cmp byte [edi + 0x14], bl
jne 0x40363e
mov esi, dword [sym.imp.USER32.dll_GetMessageW]
mov eax, dword [edi + 0x18]
mov dword [ebp - 0x11c], eax
mov eax, dword [edi + 0x2c]
push 0xffffffffffffffff
mov dword [ebp - 0x118], eax
lea eax, [ebp - 0x11c]
push ebx
push eax
push 2
call dword [sym.imp.KERNEL32.dll_WaitForMultipleObjects]
test eax, eax
je 0x40363e
cmp eax, 1
jne 0x403635
push str.remote_opengl::start
push str._S:_creating_opengl_window..._n
call fcn.0040105e
movss xmm0, dword [edi + 0xc6]
pop ecx
pop ecx
push dword [edi + 0xd2]
mov ecx, dword [edi + 0x10]
push dword [edi + 0xce]
push dword [edi + 0xca]
mov eax, dword [ecx]
push ecx
movss dword [esp], xmm0
push dword [edi + 0xbe]
call dword [eax + 8]
mov cl, al
mov edx, str.fail
test cl, cl
mov byte [edi + 0x100], cl
mov eax, str.success
cmove eax, edx
push eax
push str.remote_opengl::start
push str._S:_creating_opengl_window__S__n
call fcn.0040105e
add esp, 0xc
push dword [edi + 0x30]
call dword [sym.imp.KERNEL32.dll_SetEvent]
cmp byte [edi + 0x100], bl
je 0x403635
jmp 0x403614
lea eax, [ebp - 0x140]
push eax
call dword [sym.imp.USER32.dll_TranslateMessage]
lea eax, [ebp - 0x140]
push eax
call dword [sym.imp.USER32.dll_DispatchMessageW]
push ebx
push ebx
push ebx
lea eax, [ebp - 0x140]
push eax
call esi
test eax, eax
jne 0x4035fa
push str.remote_opengl::start
push str._S:_window_destroyed__n
call fcn.0040105e
pop ecx
pop ecx
cmp byte [edi + 0x14], bl
je 0x403549
mov ecx, edi
call fcn.0040364d
mov al, 1
call fcn.004064e6
ret