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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xffffffc0
mov eax, dword [0x8128ac8]
sub esp, 0x38
push ebx
mov dword [edi + 0x248], eax
mov ecx, dword [0x7bc4f04]
push esi
mov esi, edi
mov dword [edi + 0x24c], ecx
call fcn.101102c0
mov edx, dword [0x879340c]
mov dword [edi + 0x25c], edx
mov eax, dword [0x8793410]
mov dword [edi + 0x264], eax
mov ecx, dword [0xe61e18]
mov dword [edi + 0x258], ecx
cmp dword [0xe61e18], 0x3e
jne 0x1010ff87
push str.Camera_Restore__DEFAULT_
push 1
call fcn.100bbab0
add esp, 8
cmp dword [0xe609e8], 5
jne 0x1010ff87
mov eax, 0x101513e0
call fcn.1000c350
mov eax, dword [edi + 0x24c]
mov edx, dword [eax + 0xac]
mov dword [edi + 0x204], edx
mov ecx, dword [eax + 0xb0]
mov dword [edi + 0x208], ecx
mov edx, dword [0x10a72398]
movsx ecx, word [edx + 0xe]
mov dword [edi + 0x20c], ecx
movsx edx, word [eax + 0x22c]
mov dword [edi + 0x244], edx
mov al, byte [eax + 0xe]
mov byte [edi + 0x280], al
mov ecx, dword [0x10a72398]
push ecx
lea edx, [edi + 0x214]
push 0x10135e70
push edx
call dword [sym.imp.MSVCR100.dll_sprintf]
mov eax, dword [0x7bc4f04]
movzx ecx, byte [eax + 0x32]
mov edx, dword [0x8128ac8]
movzx eax, word [edx + ecx*2 + 0x78]
mov ecx, 0x105
add esp, 0xc
cmp ax, cx
je 0x1011004a
mov edx, 0x228
cmp ax, dx
je 0x1011004a
mov ecx, 0x22b
cmp ax, cx
je 0x1011004a
fld qword [0x101409c8]
sub esp, 8
mov esi, 0xd27c88
fstp qword [esp]
call fcn.1010d070
fld qword [0x101409c0]
mov esi, 0xd281c0
fstp qword [esp]
call fcn.1010d070
add esp, 8
jmp 0x101100e6
fld qword [0x101409b8]
mov esi, dword [sym.imp.KERNEL32.dll_VirtualProtect]
lea edx, [esp + 0x2c]
fstp qword [esp + 0x38]
push edx
push 0x40
push 8
xor ebx, ebx
push 0xd27c88
mov dword [esp + 0x3c], ebx
call esi
test eax, eax
je 0x10110096
fld qword [esp + 0x38]
mov eax, 0xd27c88
fstp qword [eax]
mov edx, dword [esp + 0x2c]
lea ecx, [esp + 0x30]
push ecx
push edx
push 8
push eax
mov dword [esp + 0x40], ebx
call esi
test eax, eax
jne 0x1011009c
call dword [sym.imp.KERNEL32.dll_GetLastError]
fld qword [0x101409b0]
lea eax, [esp + 0x2c]
push eax
fstp qword [esp + 0x3c]
push 0x40
push 8
push 0xd281c0
mov dword [esp + 0x3c], ebx
call esi
test eax, eax
je 0x101100e0
fld qword [esp + 0x38]
mov ecx, 0xd281c0
fstp qword [ecx]
mov eax, dword [esp + 0x2c]
lea edx, [esp + 0x30]
push edx
push eax
push 8
push ecx
mov dword [esp + 0x40], ebx
call esi
test eax, eax
jne 0x101100e6
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, 1
cmp dword [edi + 0x15ec], ebx
je 0x10110154
cmp dword [edi + 0x15e8], ebx
jne 0x10110154
push ebx
mov esi, 0x8793383
call fcn.1010cec0
add esp, 4
push 0x10950060
push 0xc8
push 0x46
push 0xfffcf224
lea ecx, [ebx + 0x63]
call fcn.100bb860
push 0x10950260
push 0x64
push 0x46
push 0xfffcf224
lea ecx, [ebx + 0x6d]
call fcn.100bb860
push 0x10950460
push 0xc8
push 0x46
push 0xff00ffff
lea ecx, [ebx + 0x77]
call fcn.100bb860
add esp, 0x30
mov ebx, 1
cmp dword [edi + 0x15ec], ebx
jne 0x101102ae
cmp dword [edi + 0x15e8], ebx
jne 0x101102ae
push ebx
mov esi, 0x8793383
call fcn.1010cec0
add esp, 4
push 0x10950060
push 0xc8
push 0x46
push 0xfffcf224
lea ecx, [ebx + 0x63]
call fcn.100bb860
push 0x10950260
push 0x64
push 0x46
push 0xfffcf224
lea ecx, [ebx + 0x6d]
call fcn.100bb860
push 0x10950660
push 0xc8
push 0x46
push 0xff8be100
lea ecx, [ebx + 0x77]
call fcn.100bb860
fild dword [0xe61e58]
add esp, 0x30
fdiv dword [0xe7c3d4]
fmul qword [0x1013f510]
call fcn.1012e5b0
mov dword [0x879340c], eax
fild dword [0xe61e5c]
fdiv dword [0xe7c3d8]
fdiv qword [0x101409a8]
call fcn.1012e5b0
mov dword [0x8793410], eax
mov ecx, dword [0x10151450]
fld dword [ecx]
fcomp qword [0x1013f7b0]
fnstsw ax
fld dword [ecx]
test ah, 0x41
jnp 0x10110227
fcomp qword [0x101405c8]
fnstsw ax
test bl, ah
jne 0x10110238
fld dword [ecx]
fsubr qword [0x1013fa58]
call fcn.1012e5b0
mov dword [esp + 0x2c], eax
jmp 0x10110240
mov dword [esp + 0x2c], 0x6e
fld qword [0x11920f58]
fadd qword [0x10140558]
fstp qword [0x11920f58]
call dword [sym.imp.MSVCR100.dll_rand]
fild dword [esp + 0x2c]
fstp qword [esp + 0x30]
fild dword [0x879340c]
fstp qword [esp + 0x38]
fld qword [0x11920f58]
call sub.MSVCR100.dll__CIcos
fmul qword [esp + 0x30]
fsubr qword [esp + 0x38]
call fcn.1012e5b0
mov dword [0x879340c], eax
fild dword [0x8793410]
fstp qword [esp + 0x38]
fld qword [0x11920f58]
call sub.MSVCR100.dll__CIsin
fmul qword [esp + 0x30]
fsubr qword [esp + 0x38]
call fcn.1012e5b0
mov dword [0x8793410], eax
call fcn.1010fea0
pop esi
pop ebx
mov esp, ebp
pop ebp
ret