Function at 0x10068230
Capabilities:
Allocate or change rwx memory
Execute shellcode via indirect call

Disassembly:
push ecx
push esi
mov esi, dword [0x10405e60]
lea eax, [esp + 4]
push edi
mov edi, dword [sym.imp.KERNEL32.dll_VirtualProtect]
push eax
push 0x40
push 5
push esi
call edi
mov ecx, dword [0x103f7d4c]
movzx eax, byte [esi]
mov byte [esi], 0xe9
mov dword [ecx*4 + 0x104042e0], eax
mov eax, dword [esi + 1]
mov dword [ecx*4 + 0x104042e4], eax
lea eax, [ecx + 3]
mov dword [0x103f7d4c], eax
mov eax, 0x10068520
sub eax, esi
mov dword [ecx*4 + 0x104042e8], esi
sub eax, 5
mov dword [esi + 1], eax
lea eax, [esp + 8]
mov esi, dword [0x10405e64]
push eax
push 0x40
push 5
push esi
call edi
mov ecx, dword [0x103f7d4c]
movzx eax, byte [esi]
mov byte [esi], 0xe9
mov dword [ecx*4 + 0x104042e0], eax
mov eax, dword [esi + 1]
mov dword [ecx*4 + 0x104042e4], eax
lea eax, [ecx + 3]
mov dword [0x103f7d4c], eax
mov eax, fcn.10068790
sub eax, esi
mov dword [ecx*4 + 0x104042e8], esi
sub eax, 5
mov dword [esi + 1], eax
lea eax, [esp + 8]
mov esi, dword [0x10405e68]
push eax
push 0x40
push 5
push esi
call edi
mov ecx, dword [0x103f7d4c]
movzx eax, byte [esi]
mov byte [esi], 0xe9
mov dword [ecx*4 + 0x104042e0], eax
mov eax, dword [esi + 1]
mov dword [ecx*4 + 0x104042e4], eax
lea eax, [ecx + 3]
mov dword [0x103f7d4c], eax
mov eax, 0x10068810
sub eax, esi
mov dword [ecx*4 + 0x104042e8], esi
sub eax, 5
mov dword [esi + 1], eax
lea eax, [esp + 8]
mov esi, dword [0x10405e6c]
push eax
push 0x40
push 5
push esi
call edi
mov ecx, dword [0x103f7d4c]
movzx eax, byte [esi]
mov byte [esi], 0xe9
mov dword [ecx*4 + 0x104042e0], eax
mov eax, dword [esi + 1]
mov dword [ecx*4 + 0x104042e4], eax
lea eax, [ecx + 3]
mov dword [0x103f7d4c], eax
mov eax, fcn.100688b0
mov dword [ecx*4 + 0x104042e8], esi
sub eax, esi
sub eax, 5
mov dword [esi + 1], eax
lea eax, [esp + 8]
mov esi, dword [0x10405e70]
push eax
push 0x40
push 5
push esi
call edi
mov ecx, dword [0x103f7d4c]
movzx eax, byte [esi]
mov byte [esi], 0xe9
mov dword [ecx*4 + 0x104042e0], eax
mov eax, dword [esi + 1]
mov dword [ecx*4 + 0x104042e4], eax
lea eax, [ecx + 3]
mov dword [0x103f7d4c], eax
mov eax, 0x10068860
sub eax, esi
mov dword [ecx*4 + 0x104042e8], esi
sub eax, 5
mov dword [esi + 1], eax
lea eax, [esp + 8]
mov esi, dword [0x10405e74]
push eax
push 0x40
push 5
push esi
call edi
mov ecx, dword [0x103f7d4c]
movzx eax, byte [esi]
push 0x1c
push 1
mov dword [ecx*4 + 0x104042e0], eax
mov eax, dword [esi + 1]
mov dword [ecx*4 + 0x104042e4], eax
lea eax, [ecx + 3]
mov dword [0x103f7d4c], eax
mov eax, 0x10068940
sub eax, esi
mov dword [ecx*4 + 0x104042e8], esi
sub eax, 5
mov byte [esi], 0xe9
mov dword [esi + 1], eax
call fcn.10093169
add esp, 8
mov dword [0x10405ae0], eax
test eax, eax
jne 0x10068423
push eax
push eax
push eax
push 0xf00ba5
call dword [sym.imp.KERNEL32.dll_RaiseException]
mov esi, dword [0x10405e3c]
mov dword [eax], 0x10089100
mov dword [eax + 4], 0x100892c0
mov dword [eax + 8], fcn.100891c0
mov dword [eax + 0xc], 0x10089da0
mov dword [eax + 0x10], 0x1008a8e0
mov dword [eax + 0x14], 0x100899b0
mov dword [eax + 0x18], 0x1008a910
call fcn.101aae65
cmp dword [0x103f7cc0], 0
je 0x1006847e
push 0x28
call fcn.101cec13
add esp, 4
push 0x10088fb0
call fcn.101cec06
add esp, 4
push str.FFmpeg_movie_player_plugin_loaded_n
push dword [0x104072bc]
mov dword [0x103fb394], 0x100654e0
push 0
push str.INFO
mov dword [0x103fb3c8], 0x10065540
mov dword [0x103fb37c], esi
call fcn.10067cf0
add esp, 0x10
call fcn.10080ae0
mov esi, dword [sym.imp.OPENGL32.dll_glGetIntegerv]
push 0x102d9544
push 0x8b4d
call esi
mov eax, dword [0x102d9544]
cmp eax, 3
jae 0x100684f0
push eax
push str.No_multitexturing__codecs_with_YUV_output_will_be_slow.__texture_units:__i__n
push dword [0x104072bc]
push 0
push str.INFO
call fcn.10067cf0
add esp, 0x14
jmp 0x100684fa
mov dword [0x103fb368], 1
push 0x103fb354
push 0xd33
call esi
push 0x103fb370
call dword [sym.imp.KERNEL32.dll_QueryPerformanceFrequency]
pop edi
pop esi
pop ecx
ret