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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x18
mov eax, dword [0x10132018]
xor eax, ebp
mov dword [ebp - 8], eax
cmp dword [0x10132f14], 0
push ebx
push esi
push edi
je 0x10007aa1
cmp dword [0x10132f18], 0
je 0x10007aa1
cmp dword [0xe609e8], 5
jne 0x10007aa1
mov ebx, dword [ebp + 8]
mov eax, dword [0x10132f1c]
movss xmm2, dword [0x10127c50]
mov edi, dword [sym.imp.KERNEL32.dll_VirtualProtect]
cmp eax, dword [ebx]
jge 0x10007922
mov esi, dword [0x10132f3c]
lea eax, [ebp - 0xc]
push eax
push 0x40
push 4
movss xmm0, dword [esi]
comiss xmm0, dword [0x10127d14]
push esi
jbe 0x100078fa
call edi
mov dword [esi], 0xc2340000
jmp 0x1000790e
addss xmm0, xmm2
movss dword [ebp - 0x10], xmm0
call edi
movss xmm0, dword [ebp - 0x10]
movss dword [esi], xmm0
lea eax, [ebp - 0xc]
push eax
push dword [ebp - 0xc]
push 4
push esi
call edi
movss xmm2, dword [0x10127c50]
mov eax, dword [0x10132f1c]
cmp eax, dword [ebx]
jle 0x10007975
mov esi, dword [0x10132f3c]
lea eax, [ebp - 0xc]
movss xmm0, dword [0x10127d88]
push eax
push 0x40
movss xmm1, dword [esi]
comiss xmm0, xmm1
push 4
push esi
jbe 0x10007955
call edi
mov dword [esi], 0xc2340000
jmp 0x10007969
subss xmm1, xmm2
movss dword [ebp - 0x10], xmm1
call edi
movss xmm0, dword [ebp - 0x10]
movss dword [esi], xmm0
lea eax, [ebp - 0xc]
push eax
push dword [ebp - 0xc]
push 4
push esi
call edi
mov eax, dword [ebx + 4]
mov ecx, dword [0x10132f20]
movss xmm2, dword [0x10127ba0]
cmp ecx, eax
jge 0x10007a18
mov esi, dword [0x10132f40]
movss xmm1, dword [0x10127d80]
movss xmm0, dword [esi]
comiss xmm1, xmm0
jbe 0x10007a16
lea eax, [ebp - 0xc]
push eax
addss xmm0, xmm2
push 0x40
push 4
push esi
movss dword [ebp - 0x10], xmm0
call edi
movss xmm0, dword [ebp - 0x10]
lea eax, [ebp - 0xc]
push eax
push dword [ebp - 0xc]
movss dword [esi], xmm0
push 4
push esi
call edi
mov esi, dword [0x10132f44]
lea eax, [ebp - 0xc]
push eax
push 0x40
push 8
movsd xmm0, qword [esi]
subsd xmm0, qword [0x10127bd0]
push esi
movsd qword [ebp - 0x14], xmm0
call edi
movsd xmm0, qword [ebp - 0x14]
lea eax, [ebp - 0xc]
push eax
push dword [ebp - 0xc]
movsd qword [esi], xmm0
push 8
push esi
call edi
mov eax, dword [ebx + 4]
mov ecx, dword [0x10132f20]
movss xmm2, dword [0x10127ba0]
cmp ecx, eax
jle 0x10007a8d
mov esi, dword [0x10132f40]
movss xmm0, dword [esi]
comiss xmm0, dword [0x10127d84]
jbe 0x10007a8d
lea eax, [ebp - 0xc]
push eax
subss xmm0, xmm2
push 0x40
push 4
push esi
movss dword [ebp - 0x10], xmm0
call edi
movss xmm0, dword [ebp - 0x10]
lea eax, [ebp - 0xc]
push eax
push dword [ebp - 0xc]
movss dword [esi], xmm0
push 4
push esi
call edi
mov esi, dword [0x10132f44]
lea eax, [ebp - 0xc]
push eax
push 0x40
push 8
movsd xmm0, qword [esi]
addsd xmm0, qword [0x10127bd0]
push esi
movsd qword [ebp - 0x14], xmm0
call edi
movsd xmm0, qword [ebp - 0x14]
lea eax, [ebp - 0xc]
push eax
push dword [ebp - 0xc]
movsd qword [esi], xmm0
push 8
push esi
call edi
mov eax, dword [ebx]
mov dword [0x10132f1c], eax
mov eax, dword [ebx + 4]
mov dword [0x10132f20], eax
call fcn.10007ac0
mov ecx, dword [ebp - 8]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.10082d8f
mov esp, ebp
pop ebp
ret 4