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

Disassembly:
push ebp
mov ebp, esp
push ecx
cmp byte [0x100a053c], 0
push ebx
push esi
mov esi, dword [sym.imp.KERNEL32.dll_VirtualProtect]
push edi
je 0x100021fd
lea eax, [ebp - 4]
push eax
push 0x40
push 1
push 0x628f96
call esi
lea ecx, [ebp - 4]
push ecx
mov byte [0x628f96], 0x20
mov edx, dword [ebp - 4]
push edx
push 1
push 0x628f96
call esi
lea eax, [ebp - 4]
push eax
push 0x40
push 4
push 0x61f3da
call esi
mov edi, 0xff
lea ecx, [ebp - 4]
push ecx
mov dword [0x61f3da], edi
mov edx, dword [ebp - 4]
push edx
push 4
push 0x61f3da
call esi
lea eax, [ebp - 4]
push eax
push 0x40
push 4
push 0x61f3e0
call esi
lea ecx, [ebp - 4]
push ecx
mov dword [0x61f3e0], edi
mov edx, dword [ebp - 4]
push edx
push 4
push 0x61f3e0
call esi
lea eax, [ebp - 4]
push eax
push 0x40
push 4
push 0x61f431
call esi
lea ecx, [ebp - 4]
push ecx
mov dword [0x61f431], 0x120
mov edx, dword [ebp - 4]
push edx
push 4
push 0x61f431
call esi
lea eax, [ebp - 4]
push eax
push 0x40
push 1
push 0x61f463
call esi
lea ecx, [ebp - 4]
push ecx
mov byte [0x61f463], 0x4c
mov edx, dword [ebp - 4]
push edx
push 1
push 0x61f463
call esi
lea eax, [ebp - 4]
push eax
push 0x40
push 4
push 0x61f7e0
call esi
lea ecx, [ebp - 4]
push ecx
mov dword [0x61f7e0], 0xfc
mov edx, dword [ebp - 4]
push edx
push 4
push 0x61f7e0
call esi
lea eax, [ebp - 4]
push eax
push 0x40
push 4
push 0x61f814
call esi
lea ecx, [ebp - 4]
mov dword [0x61f814], 0x16d
mov edx, dword [ebp - 4]
push ecx
push edx
push 4
push 0x61f814
call esi
lea eax, [ebp - 4]
push eax
push 0x40
push 4
push 0x61f81f
call esi
lea ecx, [ebp - 4]
push ecx
mov dword [0x61f81f], 0x1f3
mov edx, dword [ebp - 4]
push edx
push 4
push 0x61f81f
call esi
lea eax, [ebp - 4]
push eax
push 0x40
push 4
push 0x61fe1d
call esi
lea ecx, [ebp - 4]
push ecx
mov dword [0x61fe1d], edi
mov edx, dword [ebp - 4]
push edx
push 4
push 0x61fe1d
call esi
lea eax, [ebp - 4]
push eax
push 0x40
push 4
push 0x61fe24
call esi
lea ecx, [ebp - 4]
push ecx
mov dword [0x61fe24], edi
mov edx, dword [ebp - 4]
push edx
push 4
push 0x61fe24
call esi
lea eax, [ebp - 4]
push eax
push 0x40
push 4
push 0x61fe8f
call esi
lea ecx, [ebp - 4]
push ecx
mov dword [0x61fe8f], 0x118
mov edx, dword [ebp - 4]
push edx
push 4
push 0x61fe8f
call esi
lea eax, [ebp - 4]
push eax
push 0x40
push 4
push 0x61fe9e
call esi
mov edi, 0x127
lea ecx, [ebp - 4]
push ecx
mov dword [0x61fe9e], edi
mov edx, dword [ebp - 4]
push edx
push 4
push 0x61fe9e
call esi
lea eax, [ebp - 4]
push eax
push 0x40
push 4
push 0x61fec7
call esi
lea ecx, [ebp - 4]
push ecx
mov dword [0x61fec7], edi
mov edx, dword [ebp - 4]
push edx
push 4
push 0x61fec7
call esi
lea eax, [ebp - 4]
push eax
push 0x40
push 4
push 0x61fe8f
call esi
lea ecx, [ebp - 4]
push ecx
mov dword [0x61fe8f], 0x11d
mov edx, dword [ebp - 4]
push edx
push 4
push 0x61fe8f
call esi
lea eax, [ebp - 4]
push eax
push 0x40
push 4
push 0x61ff12
call esi
mov edi, 0x3f700000
lea ecx, [ebp - 4]
push ecx
mov dword [0x61ff12], edi
mov edx, dword [ebp - 4]
push edx
push 4
push 0x61ff12
call esi
lea eax, [ebp - 4]
push eax
push 0x40
push 4
push 0x6201b7
call esi
lea ecx, [ebp - 4]
push ecx
mov dword [0x6201b7], edi
mov edx, dword [ebp - 4]
push edx
push 4
push 0x6201b7
call esi
lea eax, [ebp - 4]
push eax
push 0x40
push 4
push 0x6201d6
call esi
lea ecx, [ebp - 4]
push ecx
mov dword [0x6201d6], 0x43b68000
mov edx, dword [ebp - 4]
push edx
push 4
push 0x6201d6
call esi
lea eax, [ebp - 4]
push eax
push 0x40
push 4
push 0x620251
call esi
lea ecx, [ebp - 4]
push ecx
mov dword [0x620251], 0x1b0
mov edx, dword [ebp - 4]
push edx
push 4
push 0x620251
call esi
lea eax, [ebp - 4]
push eax
push 0x40
push 4
push 0x6a9788
call esi
fld dword [0x10014cf8]
lea ecx, [ebp - 4]
fstp dword [0x6a9788]
mov edx, dword [ebp - 4]
push ecx
push edx
push 4
push 0x6a9788
call esi
lea eax, [ebp - 4]
push eax
push 0x40
push 1
push 0x42fb81
call esi
lea ecx, [ebp - 4]
push ecx
mov byte [0x42fb81], 0xeb
mov edx, dword [ebp - 4]
push edx
push 1
push 0x42fb81
call esi
lea eax, [ebp - 4]
push eax
push 0x40
push 1
push 0x42fb82
call esi
lea ecx, [ebp - 4]
push ecx
mov byte [0x42fb82], 0x41
mov edx, dword [ebp - 4]
push edx
push 1
push 0x42fb82
call esi
lea eax, [ebp - 4]
push eax
push 0x40
push 1
push 0x42fb83
call esi
mov bl, 0x90
lea ecx, [ebp - 4]
push ecx
mov byte [0x42fb83], bl
mov edx, dword [ebp - 4]
push edx
push 1
push 0x42fb83
call esi
lea eax, [ebp - 4]
push eax
push 0x40
push 1
push 0x42fb84
call esi
lea ecx, [ebp - 4]
push ecx
mov byte [0x42fb84], bl
mov edx, dword [ebp - 4]
push edx
push 1
push 0x42fb84
call esi
lea eax, [ebp - 4]
push eax
push 0x40
push 1
push 0x42fb85
call esi
lea ecx, [ebp - 4]
mov byte [0x42fb85], bl
mov edx, dword [ebp - 4]
push ecx
push edx
push 1
push 0x42fb85
call esi
lea eax, [ebp - 4]
push eax
push 0x40
push 1
push 0x42fb86
call esi
lea ecx, [ebp - 4]
push ecx
mov byte [0x42fb86], bl
mov edx, dword [ebp - 4]
push edx
push 1
push 0x42fb86
call esi
lea eax, [ebp - 4]
push eax
push 0x40
push 1
push 0x42fb87
call esi
lea ecx, [ebp - 4]
push ecx
mov byte [0x42fb87], bl
mov edx, dword [ebp - 4]
push edx
push 1
push 0x42fb87
call esi
push 0x10002650
push 0x60ef9c
mov bl, 0xe8
call fcn.10011cc0
push 0x10002680
push 0x62814c
call fcn.10011cc0
push 0x100027a0
push 0x623441
mov bl, 0xe9
call fcn.10011cc0
push 0x100027c0
push 0x54d93f
call fcn.10011cc0
push 0x100027e0
push 0x628f99
call fcn.10011cc0
add esp, 0x28
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret