Function at 0x1001ab50
Capabilities:
Allocate or change rwx memory
Check for unmoving mouse cursor
Check http status code
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, 0x20
mov eax, dword [0x10070080]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
push edi
mov edi, ecx
mov dword [ebp - 0x18], edi
cmp byte [edi + 0x24], 0
jne 0x1001aba5
cmp dword [edi + 0x6c], 0
je 0x1001aeb9
lea ecx, [edi + 0x64]
call fcn.10015bc0
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10030080
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov eax, dword [0x7f94cc]
mov dword [ebp - 0x1c], eax
mov eax, dword [0x10070bc8]
mov eax, dword [eax]
mov dword [ebp - 0x14], eax
test eax, eax
jne 0x1001ac5f
lea eax, [ebp - 8]
mov dword [ebp - 8], 0x13
push eax
lea eax, [ebp - 0x10]
push eax
lea ecx, [edi + 0x64]
call fcn.1001e570
mov eax, dword [eax]
cmp byte [eax + 0xc], 0
je 0x1001ac5c
mov eax, dword [0x10070bc8]
mov eax, dword [eax]
test eax, eax
jne 0x1001abf4
push 1
mov ecx, edi
call fcn.1001a230
jmp 0x1001abf9
cmp eax, 5
jne 0x1001ac5c
movss xmm0, dword [edi + 0x3c]
movss xmm1, dword [edi + 8]
movss dword [ebp - 8], xmm0
addss xmm0, dword [edi + 0x40]
comiss xmm0, xmm1
movss dword [edi + 0x40], xmm0
jbe 0x1001ac1f
movss dword [edi + 0x40], xmm1
movaps xmm0, xmm1
xorps xmm1, xmm1
comiss xmm1, xmm0
jbe 0x1001ac2e
mov dword [edi + 0x40], 0
mov ecx, edi
call fcn.10019d20
test al, al
je 0x1001ac5c
movss xmm1, dword [ebp - 8]
comiss xmm1, dword [0x10064534]
jbe 0x1001ac5c
movss xmm0, dword [edi + 0x40]
mov ecx, edi
subss xmm0, xmm1
movss dword [edi + 0x40], xmm0
call fcn.10019d20
mov eax, dword [ebp - 0x14]
cmp byte [0x7985ea], 0
jne 0x1001ad65
cmp byte [0x798614], 0
je 0x1001ad65
cmp eax, 5
jne 0x1001ad65
mov eax, 0xe6ff
cmp word [0x798582], ax
jae 0x1001ad65
mov eax, dword [0x809db4]
test eax, eax
je 0x1001aca7
cmp dword [eax + 0x3c], 0
jne 0x1001ad65
mov eax, dword [edi + 0x48]
or eax, dword [edi + 0x4c]
mov esi, dword [sym.imp.KERNEL32.dll_GetTickCount64]
jne 0x1001acc1
mov byte [edi + 0x58], 1
call esi
mov dword [edi + 0x48], eax
mov dword [edi + 0x4c], edx
call esi
sub eax, dword [edi + 0x48]
sbb edx, dword [edi + 0x4c]
mov dword [ebp - 0xc], edx
jne 0x1001acd9
cmp eax, 0xc8
jbe 0x1001ada7
push str.eqw.dll
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test eax, eax
je 0x1001acf0
mov esi, dword [eax + 0x97a4]
jmp 0x1001acf2
xor esi, esi
lea eax, [ebp - 0x10]
push eax
call dword [sym.imp.USER32.dll_GetCursorPos]
push dword [ebp - 0xc]
push dword [ebp - 0x10]
call dword [sym.imp.USER32.dll_WindowFromPoint]
cmp esi, eax
jne 0x1001ada7
cmp byte [edi + 0x58], 0
je 0x1001ad50
lea eax, [edi + 0x50]
push eax
call dword [sym.imp.USER32.dll_GetCursorPos]
mov esi, dword [sym.imp.KERNEL32.dll_VirtualProtect]
lea eax, [ebp - 8]
push eax
push 0x40
push 1
push 0x53edef
call esi
lea eax, [ebp - 8]
mov byte [0x53edef], 0xeb
push eax
push dword [ebp - 8]
push 1
push 0x53edef
call esi
mov byte [edi + 0x58], 0
mov ecx, edi
call fcn.1001a4b0
push dword [edi + 0x54]
push dword [edi + 0x50]
call dword [sym.imp.USER32.dll_SetCursorPos]
jmp 0x1001ada7
mov eax, dword [edi + 0x48]
or eax, dword [edi + 0x4c]
je 0x1001ad99
mov esi, dword [sym.imp.KERNEL32.dll_VirtualProtect]
lea eax, [ebp - 8]
push eax
push 0x40
push 1
push 0x53edef
call esi
lea eax, [ebp - 8]
mov byte [0x53edef], 0x75
push eax
push dword [ebp - 8]
push 1
push 0x53edef
call esi
mov dword [edi + 0x48], 0
mov dword [edi + 0x4c], 0
mov edi, dword [edi + 0x68]
mov esi, dword [edi]
cmp esi, edi
je 0x1001aeb9
movss xmm4, dword [0x10064600]
movss xmm3, dword [0x10064548]
cmp byte [esi + 0xc], 0
je case.0x1001ade4.7
mov eax, dword [esi + 8]
add eax, 0xfffffffb
cmp eax, 0xe
ja case.0x1001ade4.7
movzx eax, byte [eax + 0x1001aedc]
jmp dword [eax*4 + 0x1001aecc]
call fcn.100146e0
test al, al
je case.0x1001ade4.7
cmp dword [ebp - 0x14], 5
jne case.0x1001ade4.7
mov ecx, dword [ebp - 0x1c]
mov al, byte [ecx + 0xb1]
cmp al, 0x64
je 0x1001ae17
cmp al, 0x6f
jne case.0x1001ade4.7
mov edx, dword [ebp - 0x18]
movss xmm2, dword [ecx + 0x54]
mov ecx, 0x200
movss xmm1, dword [edx + 0x34]
movaps xmm0, xmm1
subss xmm0, xmm2
andps xmm0, xmm4
cvttss2si eax, xmm0
sub ecx, eax
cmp eax, 0x100
cmovle ecx, eax
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
andps xmm0, xmm4
comiss xmm0, dword [0x10064588]
jbe 0x1001ae6c
movss xmm0, dword [edx + 0x2c]
comiss xmm0, dword [0x10064598]
jbe 0x1001ae6c
mov eax, dword [ebp - 0x1c]
movss dword [eax + 0x54], xmm1
jmp case.0x1001ade4.7
movss dword [edx + 0x34], xmm2
jmp case.0x1001ade4.7
mov edx, dword [ebp - 0x18]
movss xmm0, dword [edx + 0x40]
comiss xmm0, dword [0x10064534]
jbe case.0x1001ade4.7
subss xmm0, xmm3
movss dword [edx + 0x40], xmm0
jmp case.0x1001ade4.7
mov edx, dword [ebp - 0x18]
movss xmm0, dword [edx + 0x40]
movss xmm1, dword [edx + 8]
addss xmm0, xmm3
comiss xmm0, xmm1
movss dword [edx + 0x40], xmm0
jbe case.0x1001ade4.7
movss dword [edx + 0x40], xmm1
mov esi, dword [esi]
cmp esi, edi
jne 0x1001adc4
mov ecx, dword [ebp - 4]
pop edi
xor ecx, ebp
pop esi
call fcn.10030080
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret