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

Disassembly:
push ecx
push ebx
push esi
push edi
call fcn.10008190
cmp byte [0x100b3434], 0
mov ebx, dword [sym.imp.KERNEL32.dll_VirtualProtect]
je 0x100082b2
mov esi, dword [0x100b3420]
lea eax, [esp + 0xc]
mov edi, dword [0x100b3414]
push eax
push 0x40
push esi
push edi
call ebx
push esi
push 0x100b3424
push edi
call fcn.10052c90
add esp, 0xc
lea eax, [esp + 0xc]
push eax
push dword [esp + 0x10]
push esi
push edi
call ebx
mov byte [0x100b3434], 0
cmp byte [0x100b3380], 0
je 0x100082f5
mov esi, dword [0x100b336c]
lea eax, [esp + 0xc]
mov edi, dword [0x100b3360]
push eax
push 0x40
push esi
push edi
call ebx
push esi
push 0x100b3370
push edi
call fcn.10052c90
add esp, 0xc
lea eax, [esp + 0xc]
push eax
push dword [esp + 0x10]
push esi
push edi
call ebx
mov byte [0x100b3380], 0
cmp byte [0x100b33a4], 0
je 0x10008338
mov esi, dword [0x100b3390]
lea eax, [esp + 0xc]
mov edi, dword [0x100b3384]
push eax
push 0x40
push esi
push edi
call ebx
push esi
push 0x100b3394
push edi
call fcn.10052c90
add esp, 0xc
lea eax, [esp + 0xc]
push eax
push dword [esp + 0x10]
push esi
push edi
call ebx
mov byte [0x100b33a4], 0
call fcn.10008190
cmp byte [0x100b347c], 0
je 0x10008380
mov esi, dword [0x100b3468]
lea eax, [esp + 0xc]
mov edi, dword [0x100b345c]
push eax
push 0x40
push esi
push edi
call ebx
push esi
push 0x100b346c
push edi
call fcn.10052c90
add esp, 0xc
lea eax, [esp + 0xc]
push eax
push dword [esp + 0x10]
push esi
push edi
call ebx
mov byte [0x100b347c], 0
cmp byte [0x100b3458], 0
je 0x100083c3
mov esi, dword [0x100b3444]
lea eax, [esp + 0xc]
mov edi, dword [0x100b3438]
push eax
push 0x40
push esi
push edi
call ebx
push esi
push 0x100b3448
push edi
call fcn.10052c90
add esp, 0xc
lea eax, [esp + 0xc]
push eax
push dword [esp + 0x10]
push esi
push edi
call ebx
mov byte [0x100b3458], 0
cmp byte [0x100b3410], 0
je 0x10008406
mov esi, dword [0x100b33fc]
lea eax, [esp + 0xc]
mov edi, dword [0x100b33f0]
push eax
push 0x40
push esi
push edi
call ebx
push esi
push 0x100b3400
push edi
call fcn.10052c90
add esp, 0xc
lea eax, [esp + 0xc]
push eax
push dword [esp + 0x10]
push esi
push edi
call ebx
mov byte [0x100b3410], 0
call fcn.10008190
cmp byte [0x100b33ec], 0
je 0x1000844e
mov esi, dword [0x100b33d8]
lea eax, [esp + 0xc]
mov edi, dword [0x100b33cc]
push eax
push 0x40
push esi
push edi
call ebx
push esi
push 0x100b33dc
push edi
call fcn.10052c90
add esp, 0xc
lea eax, [esp + 0xc]
push eax
push dword [esp + 0x10]
push esi
push edi
call ebx
mov byte [0x100b33ec], 0
cmp byte [0x100b33c8], 0
je 0x10008491
mov esi, dword [0x100b33b4]
lea eax, [esp + 0xc]
mov edi, dword [0x100b33a8]
push eax
push 0x40
push esi
push edi
call ebx
push esi
push 0x100b33b8
push edi
call fcn.10052c90
add esp, 0xc
lea eax, [esp + 0xc]
push eax
push dword [esp + 0x10]
push esi
push edi
call ebx
mov byte [0x100b33c8], 0
cmp byte [0x100b32f0], 0
je 0x100084d4
mov esi, dword [0x100b32dc]
lea eax, [esp + 0xc]
mov edi, dword [0x100b32d0]
push eax
push 0x40
push esi
push edi
call ebx
push esi
push 0x100b32e0
push edi
call fcn.10052c90
add esp, 0xc
lea eax, [esp + 0xc]
push eax
push dword [esp + 0x10]
push esi
push edi
call ebx
mov byte [0x100b32f0], 0
cmp byte [0x100b3338], 0
je 0x10008517
mov esi, dword [0x100b3324]
lea eax, [esp + 0xc]
mov edi, dword [0x100b3318]
push eax
push 0x40
push esi
push edi
call ebx
push esi
push 0x100b3328
push edi
call fcn.10052c90
add esp, 0xc
lea eax, [esp + 0xc]
push eax
push dword [esp + 0x10]
push esi
push edi
call ebx
mov byte [0x100b3338], 0
cmp byte [0x100b335c], 0
je 0x1000855a
mov esi, dword [0x100b3348]
lea eax, [esp + 0xc]
mov edi, dword [0x100b333c]
push eax
push 0x40
push esi
push edi
call ebx
push esi
push 0x100b334c
push edi
call fcn.10052c90
add esp, 0xc
lea eax, [esp + 0xc]
push eax
push dword [esp + 0x10]
push esi
push edi
call ebx
mov byte [0x100b335c], 0
call fcn.1000a1a0
call fcn.100080b0
mov ecx, dword [0x100b1fbc]
test ecx, ecx
je 0x10008575
mov al, byte [0x100b0947]
mov byte [ecx], al
mov ecx, dword [0x100b1fb8]
test ecx, ecx
je 0x10008586
mov al, byte [0x100b0946]
mov byte [ecx], al
mov eax, dword [0x100b1e04]
test eax, eax
je 0x100085aa
mov eax, dword [eax]
test eax, eax
je 0x100085aa
mov eax, dword [eax + 0x68]
test eax, eax
je 0x100085aa
mov eax, dword [eax + 0x54]
test eax, eax
je 0x100085aa
mov dword [eax + 0x28], 0x3f800000
cmp byte [0x100b3510], 0
je 0x100085ed
mov esi, dword [0x100b34fc]
lea eax, [esp + 0xc]
mov edi, dword [0x100b34f0]
push eax
push 0x40
push esi
push edi
call ebx
push esi
push 0x100b3500
push edi
call fcn.10052c90
add esp, 0xc
lea eax, [esp + 0xc]
push eax
push dword [esp + 0x10]
push esi
push edi
call ebx
mov byte [0x100b3510], 0
cmp byte [0x100b34a0], 0
je 0x10008630
mov esi, dword [0x100b348c]
lea eax, [esp + 0xc]
mov edi, dword [0x100b3480]
push eax
push 0x40
push esi
push edi
call ebx
push esi
push 0x100b3490
push edi
call fcn.10052c90
add esp, 0xc
lea eax, [esp + 0xc]
push eax
push dword [esp + 0x10]
push esi
push edi
call ebx
mov byte [0x100b34a0], 0
call fcn.1000a3b0
call fcn.10009d10
mov eax, dword [0x100b1ec8]
test eax, eax
je 0x10008677
cmp dword [0x100b1e74], 0
je 0x10008677
lea ecx, [esp + 0xc]
push ecx
push 0x40
push 5
push eax
call ebx
mov ecx, dword [0x100b1ec8]
mov eax, dword [0x100b1e74]
mov byte [ecx], 0xe9
mov dword [ecx + 1], eax
lea eax, [esp + 0xc]
push eax
push dword [esp + 0x10]
push 5
push ecx
call ebx
pop edi
pop esi
pop ebx
pop ecx
ret