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

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
sub esp, 0x2c
cmp byte [0xe609e8], 5
push esi
jne 0x100b3c26
push 0x79
mov esi, 0x791050
call esi
add esp, 4
test al, al
je 0x100b3554
cmp dword [0x1054bf58], 0
je 0x100b3554
mov dword [0x1054bf78], 0xffffffff
mov dword [0x1054bf7c], 0xffffffff
push 0x7a
call esi
add esp, 4
test al, al
je 0x100b3564
call fcn.100b2fa0
cmp dword [0x1054bf58], 0
je 0x100b3c26
movss xmm0, dword [0x87933d8]
movss xmm1, dword [0xd27bfc]
mov eax, dword [0x879337c]
movss dword [ebp - 0x18], xmm0
movss xmm0, dword [0xd27b88]
movss dword [ebp - 0x1c], xmm0
movsd xmm0, qword [0xd255a0]
movss dword [ebp - 0x14], xmm1
movsd qword [ebp - 0x28], xmm0
test eax, eax
je 0x100b35fe
movss xmm1, dword [0x1054bf64]
xorps xmm0, xmm0
jle 0x100b35c2
comiss xmm0, xmm1
ja 0x100b35c9
test eax, eax
jns 0x100b35cc
comiss xmm1, xmm0
jbe 0x100b35cc
xorps xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
cvtps2pd xmm1, xmm1
mulsd xmm0, qword [0x10143568]
subsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
movss dword [0x1054bf64], xmm0
mov dword [0x879337c], 0
jmp 0x100b372f
mov eax, dword [0x7bc4f04]
xor dl, dl
xor dh, dh
movzx ecx, word [eax + 0x31a]
mov al, byte [eax + 0xe]
mov byte [ebp - 1], al
cmp ecx, 0xe9
je 0x100b362c
cmp ecx, 0xed
je 0x100b362c
cmp ecx, 0xef
jne 0x100b362e
mov dl, 1
mov eax, dword [0x1054bf7c]
cmp eax, 0xe9
je 0x100b3648
cmp eax, 0xed
je 0x100b3648
cmp eax, 0xef
jne 0x100b364a
mov dh, 1
cmp ecx, eax
je 0x100b372f
mov dword [0x1054bf7c], ecx
test dl, dl
je 0x100b369a
movss xmm2, dword [0x10143bf8]
comiss xmm1, xmm2
jbe 0x100b372f
movaps xmm0, xmm1
sub esp, 8
subss xmm0, xmm2
movss dword [ebp - 0x20], xmm0
fld dword [ebp - 0x20]
fstp qword [esp]
call sub.api_ms_win_crt_math_l1_1_0.dll_floor
fstp dword [ebp - 0x20]
fld dword [ebp - 0x20]
fstp dword [ebp - 0x20]
movss xmm0, dword [ebp - 0x20]
jmp 0x100b371c
test dh, dh
je 0x100b372f
cmp byte [ebp - 1], 0
jne 0x100b36d4
movss xmm0, dword [0x10143c6c]
comiss xmm0, xmm1
jbe 0x100b372f
subss xmm0, xmm1
movss dword [ebp - 0x20], xmm0
fld dword [ebp - 0x20]
sub esp, 8
fstp qword [esp]
call sub.api_ms_win_crt_math_l1_1_0.dll_floor
fstp dword [0x1054bf64]
jmp 0x100b372c
movss xmm2, dword [0x10143c4c]
comiss xmm2, xmm1
jbe 0x100b36ef
subss xmm2, xmm1
movss dword [ebp - 0x20], xmm2
fld dword [ebp - 0x20]
jmp 0x100b36c1
comiss xmm1, xmm2
jbe 0x100b372f
movaps xmm0, xmm1
sub esp, 8
subss xmm0, xmm2
movss dword [ebp - 0x20], xmm0
fld dword [ebp - 0x20]
fstp qword [esp]
call sub.api_ms_win_crt_math_l1_1_0.dll_floor
fstp dword [ebp - 0x20]
fld dword [ebp - 0x20]
fstp dword [ebp - 0x20]
movss xmm0, dword [ebp - 0x20]
mulss xmm0, dword [0x10144184]
movss dword [0x1054bf64], xmm0
add esp, 8
push 4
mov eax, 0x791090
call eax
add esp, 4
test al, al
je 0x100b37bd
cmp byte [0x1054bf70], 0
je 0x100b379c
movsx ecx, word [0x1054bf72]
mov eax, dword [0x879340c]
cmp eax, ecx
je 0x100b3771
sub eax, ecx
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm0, dword [0x1054bf68]
movss dword [0x1054bf68], xmm0
movsx ecx, word [0x1054bf74]
mov eax, dword [0x8793410]
cmp eax, ecx
je 0x100b37a3
sub eax, ecx
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm0, dword [0x1054bf6c]
movss dword [0x1054bf6c], xmm0
jmp 0x100b37a3
mov byte [0x1054bf70], 1
movzx eax, word [0x879340c]
mov word [0x1054bf72], ax
movzx eax, word [0x8793410]
mov word [0x1054bf74], ax
push 4
call esi
add esp, 4
test al, al
je 0x100b37cf
mov byte [0x1054bf70], 0
movss xmm0, dword [0x101441bc]
comiss xmm0, dword [ebp - 0x18]
mov esi, dword [sym.imp.KERNEL32.dll_VirtualProtect]
jbe 0x100b380c
lea eax, [ebp - 0x10]
push eax
push 0x40
push 4
push 0x87933d8
call esi
lea eax, [ebp - 0x10]
mov dword [0x87933d8], 0xc2340000
push eax
push dword [ebp - 0x10]
push 4
push 0x87933d8
call esi
movss xmm2, dword [ebp - 0x1c]
xorps xmm1, xmm1
comiss xmm2, dword [0x101441a8]
jbe 0x100b382a
movss xmm0, dword [0x1054bf6c]
comiss xmm0, xmm1
ja 0x100b3840
movss xmm0, dword [0x101441ac]
comiss xmm0, xmm2
jbe 0x100b384a
comiss xmm1, dword [0x1054bf6c]
jbe 0x100b384a
mov dword [0x1054bf6c], 0
movss xmm0, dword [ebp - 0x14]
comiss xmm0, dword [0x10143c6c]
movss xmm3, dword [0x10143bdc]
movss xmm6, dword [0x1054bf64]
jb 0x100b386d
comiss xmm6, xmm1
ja 0x100b3877
comiss xmm3, xmm0
jb 0x100b3882
comiss xmm1, xmm6
jbe 0x100b3882
xorps xmm6, xmm6
movss dword [0x1054bf64], xmm6
movss xmm5, dword [0x5ef5a18]
movaps xmm0, xmm6
divss xmm5, dword [0x10143c24]
movsd xmm1, qword [0x101432d8]
cvtps2pd xmm2, xmm5
mulss xmm5, xmm3
divsd xmm1, xmm2
divss xmm0, xmm5
movss xmm4, dword [0x10144720]
movsd xmm3, qword [0x10143378]
andps xmm0, xmm4
cvtps2pd xmm0, xmm0
divsd xmm3, xmm2
maxsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
movaps xmm1, xmm3
movss dword [ebp - 8], xmm0
movss xmm0, dword [0x1054bf68]
divss xmm0, xmm5
andps xmm0, xmm4
cvtps2pd xmm0, xmm0
maxsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
movss dword [ebp - 0xc], xmm0
movss xmm0, dword [0x1054bf6c]
divss xmm0, xmm5
andps xmm0, xmm4
cvtps2pd xmm0, xmm0
maxsd xmm3, xmm0
cvtpd2ps xmm0, xmm3
movss dword [ebp - 0x10], xmm0
xorps xmm0, xmm0
comiss xmm6, xmm0
jbe 0x100b3975
lea eax, [ebp - 0x20]
push eax
push 0x40
push 4
push 0xd27bfc
call esi
movss xmm0, dword [ebp - 8]
lea eax, [ebp - 0x20]
addss xmm0, dword [ebp - 0x14]
push eax
movss dword [0xd27bfc], xmm0
push dword [ebp - 0x20]
push 4
push 0xd27bfc
call esi
movss xmm0, dword [0x1054bf64]
subss xmm0, dword [ebp - 8]
movss dword [0x1054bf64], xmm0
call fcn.100b2a60
movss xmm0, dword [ebp - 8]
comiss xmm0, dword [0x1054bf64]
jmp 0x100b39d1
comiss xmm0, xmm6
jbe 0x100b39e0
lea eax, [ebp - 0x20]
push eax
push 0x40
push 4
push 0xd27bfc
call esi
movss xmm0, dword [ebp - 0x14]
lea eax, [ebp - 0x20]
subss xmm0, dword [ebp - 8]
push eax
movss dword [0xd27bfc], xmm0
push dword [ebp - 0x20]
push 4
push 0xd27bfc
call esi
movss xmm0, dword [ebp - 8]
addss xmm0, dword [0x1054bf64]
movss dword [0x1054bf64], xmm0
call fcn.100b2a60
movss xmm0, dword [0x1054bf64]
comiss xmm0, dword [ebp - 8]
xorps xmm0, xmm0
jbe 0x100b39e0
mov dword [0x1054bf64], 0
movss xmm1, dword [0x1054bf68]
comiss xmm1, xmm0
jbe 0x100b3a4e
lea eax, [ebp - 0x20]
push eax
push 0x40
push 4
push 0x87933d8
call esi
movss xmm1, dword [ebp - 0xc]
lea eax, [ebp - 0x20]
addss xmm1, dword [ebp - 0x18]
push eax
movss dword [0x87933d8], xmm1
push dword [ebp - 0x20]
push 4
push 0x87933d8
call esi
movss xmm1, dword [ebp - 0xc]
movss xmm0, dword [0x1054bf68]
addss xmm1, xmm1
subss xmm0, xmm1
movss dword [0x1054bf68], xmm0
call fcn.100b2a60
movss xmm1, dword [ebp - 0xc]
comiss xmm1, dword [0x1054bf68]
jmp 0x100b3aae
comiss xmm0, xmm1
jbe 0x100b3abd
lea eax, [ebp - 0x20]
push eax
push 0x40
push 4
push 0x87933d8
call esi
movss xmm0, dword [ebp - 0x18]
lea eax, [ebp - 0x20]
subss xmm0, dword [ebp - 0xc]
push eax
movss dword [0x87933d8], xmm0
push dword [ebp - 0x20]
push 4
push 0x87933d8
call esi
movss xmm0, dword [ebp - 0xc]
addss xmm0, xmm0
addss xmm0, dword [0x1054bf68]
movss dword [0x1054bf68], xmm0
call fcn.100b2a60
movss xmm0, dword [0x1054bf68]
comiss xmm0, dword [ebp - 0xc]
xorps xmm0, xmm0
jbe 0x100b3abd
mov dword [0x1054bf68], 0
movss xmm1, dword [0x1054bf6c]
comiss xmm1, xmm0
jbe 0x100b3b74
lea eax, [ebp - 0x20]
push eax
push 0x40
push 4
push 0xd27b88
call esi
movss xmm0, dword [ebp - 0x1c]
lea eax, [ebp - 0x20]
cvtps2pd xmm0, xmm0
push eax
addsd xmm0, qword [0x10143370]
cvtpd2ps xmm0, xmm0
movss dword [0xd27b88], xmm0
push dword [ebp - 0x20]
push 4
push 0xd27b88
call esi
lea eax, [ebp - 0x20]
push eax
push 0x40
push 8
push 0xd255a0
call esi
movsd xmm0, qword [ebp - 0x28]
lea eax, [ebp - 0x20]
subsd xmm0, qword [0x10143558]
push eax
movsd qword [0xd255a0], xmm0
push dword [ebp - 0x20]
push 8
push 0xd255a0
call esi
movss xmm1, dword [ebp - 0x10]
mulss xmm1, dword [0x10143660]
movss xmm0, dword [0x1054bf6c]
subss xmm0, xmm1
movss dword [0x1054bf6c], xmm0
call fcn.100b2a60
movss xmm0, dword [ebp - 0x10]
comiss xmm0, dword [0x1054bf6c]
jmp 0x100b3c1a
comiss xmm0, xmm1
jbe 0x100b3c26
lea eax, [ebp - 0x20]
push eax
push 0x40
push 4
push 0xd27b88
call esi
movss xmm0, dword [ebp - 0x1c]
lea eax, [ebp - 0x20]
cvtps2pd xmm0, xmm0
push eax
subsd xmm0, qword [0x10143370]
cvtpd2ps xmm0, xmm0
movss dword [0xd27b88], xmm0
push dword [ebp - 0x20]
push 4
push 0xd27b88
call esi
lea eax, [ebp - 0x20]
push eax
push 0x40
push 8
push 0xd255a0
call esi
movsd xmm0, qword [ebp - 0x28]
lea eax, [ebp - 0x20]
addsd xmm0, qword [0x10143558]
push eax
movsd qword [0xd255a0], xmm0
push dword [ebp - 0x20]
push 8
push 0xd255a0
call esi
movss xmm0, dword [ebp - 0x10]
mulss xmm0, dword [0x10143660]
addss xmm0, dword [0x1054bf6c]
movss dword [0x1054bf6c], xmm0
call fcn.100b2a60
movss xmm0, dword [0x1054bf6c]
comiss xmm0, dword [ebp - 0x10]
jbe 0x100b3c26
mov dword [0x1054bf6c], 0
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret