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

Disassembly:
push ebp
mov ebp, esp
sub esp, 8
mov eax, dword [0x1014200c]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
push 0x100106e0
push 0x40b154
push 0xe9
call fcn.10075a00
push 0x10010760
push 0x64a79a
push 0xff
call fcn.10075a00
push 0x10010760
push 0x64a85f
push 0xff
call fcn.10075a00
push 0x10010760
push 0x656e03
push 0xff
call fcn.10075a00
push 0x10010760
push 0x64ab3d
push 0xff
call fcn.10075a00
push 0x10010760
push 0x64ac02
push 0xff
call fcn.10075a00
add esp, 0x48
push 0x10010760
push 0x63ddf2
push 0xff
call fcn.10075a00
push 0x10010760
push 0x63df89
push 0xff
call fcn.10075a00
push 0x10010760
push 0x63ea4c
push 0xff
call fcn.10075a00
push 0x10010760
push 0x64ca0c
push 0xff
call fcn.10075a00
push 0x10010760
push 0x77faf9
push 0xff
call fcn.10075a00
push 0x10010760
push 0x81071b
push 0xff
call fcn.10075a00
add esp, 0x48
push 0x10010760
push 0x81079b
push 0xff
call fcn.10075a00
push 0x10010660
push 0x47fe31
push 0xff
call fcn.10075a00
push 0x10010660
push 0x59890d
push 0xff
call fcn.10075a00
push 0x10010660
push 0x59a399
push 0xff
call fcn.10075a00
push 0x10010660
push 0x59a93c
push 0xff
call fcn.10075a00
push 0x10010660
push 0x59b13b
push 0xff
call fcn.10075a00
add esp, 0x48
push 0x10010660
push 0x5a4261
push 0xff
call fcn.10075a00
push 0x10010660
push 0x5a4d52
push 0xff
call fcn.10075a00
push 0x10010660
push 0x5b6117
push 0xff
call fcn.10075a00
push 0x10010660
push 0x65a6ce
push 0xff
call fcn.10075a00
push 0x10010660
push 0x727987
push 0xff
call fcn.10075a00
push 0x10010660
push 0x7861f1
push 0xff
call fcn.10075a00
add esp, 0x48
push 0x10010660
push 0x7d32fa
push 0xff
call fcn.10075a00
push 0x10010660
push 0x7d3b0d
push 0xff
call fcn.10075a00
push 0x10010790
push 0x8317bd
push 0xe9
call fcn.10075a00
push 0x1000fcc0
push 0x772459
push 0xe9
call fcn.10075a00
push 0x1000fce0
push 0x614ae8
push 0xe9
call fcn.10075a00
push 0x1000fd00
push 0x55179f
push 0xe8
call fcn.10075a00
add esp, 0x48
push 0x1000fd00
push 0x551911
push 0xe8
call fcn.10075a00
push 0x1000fd00
push 0x55272f
push 0xe8
call fcn.10075a00
push 0x1000fd00
push 0x59c2de
push 0xe8
call fcn.10075a00
push 0x1000fd00
push 0x59d02e
push 0xe8
call fcn.10075a00
push 0x1000fd00
push 0x59e6a9
push 0xe8
call fcn.10075a00
push 0x1000fd00
push 0x5ac570
push 0xe8
call fcn.10075a00
add esp, 0x48
push 0x1000fd00
push 0x5ad840
push 0xe8
call fcn.10075a00
push 0x1000fd00
push 0x5adae8
push 0xe8
call fcn.10075a00
push 0x1000fd00
push 0x5ade42
push 0xe8
call fcn.10075a00
push 0x1000fd00
push 0x5ae1d1
push 0xe8
call fcn.10075a00
push 0x1000fd00
push 0x5ae870
push 0xe8
call fcn.10075a00
push 0x1000fd00
push 0x5aeb93
push 0xe8
call fcn.10075a00
add esp, 0x48
push 0x1000fd00
push 0x5af1cd
push 0xe8
call fcn.10075a00
push 0x1000fd00
push 0x5af522
push 0xe8
call fcn.10075a00
push 0x1000fd00
push 0x5b05e7
push 0xe8
call fcn.10075a00
push 0x1000fd00
push 0x5b073e
push 0xe8
call fcn.10075a00
push 0x1000fd00
push 0x5b0c23
push 0xe8
call fcn.10075a00
push 0x1000fd00
push 0x5b0da8
push 0xe8
call fcn.10075a00
add esp, 0x48
push 0x1000fd00
push 0x5b1898
push 0xe8
call fcn.10075a00
push 0x1000fd00
push 0x5b22b3
push 0xe8
call fcn.10075a00
push 0x1000fd00
push 0x5b2cb4
push 0xe8
call fcn.10075a00
push 0x1000fd00
push 0x5b3870
push 0xe8
call fcn.10075a00
push 0x1000fd00
push 0x616a1a
push 0xe8
call fcn.10075a00
push 0x1000fd00
push 0x63f4a7
push 0xe8
call fcn.10075a00
add esp, 0x48
push 0x1000fd00
push 0x645712
push 0xe8
call fcn.10075a00
push 0x1000fd00
push 0x647503
push 0xe8
call fcn.10075a00
push 0x1000fd00
push 0x647594
push 0xe8
call fcn.10075a00
push 0x1000fd00
push 0x647bdc
push 0xe8
call fcn.10075a00
push 0x1000fd00
push 0x749b83
push 0xe8
call fcn.10075a00
push 0x1000fd00
push 0x749c03
push 0xe8
call fcn.10075a00
mov esi, dword [sym.imp.KERNEL32.dll_VirtualProtect]
lea eax, [ebp - 8]
add esp, 0x48
push eax
push 0x40
push 1
push 0x8553d0
call esi
lea eax, [ebp - 8]
mov byte [0x8553d0], 0xc3
push eax
push dword [ebp - 8]
push 1
push 0x8553d0
call esi
push 0x58811f
push 0x5880f0
push 0xe9
call fcn.10075a00
add esp, 0xc
lea eax, [ebp - 8]
push eax
push 0x40
push 4
push 0x588447
call esi
lea eax, [ebp - 8]
mov dword [0x588447], 0xfff
push eax
push dword [ebp - 8]
push 4
push 0x588447
call esi
lea eax, [ebp - 8]
push eax
push 0x40
push 1
push 0x59a8d0
call esi
lea eax, [ebp - 8]
mov byte [0x59a8d0], 0xeb
push eax
push dword [ebp - 8]
push 1
push 0x59a8d0
call esi
lea eax, [ebp - 8]
push eax
push 0x40
push 1
push 0x59b001
call esi
lea eax, [ebp - 8]
mov byte [0x59b001], 0xeb
push eax
push dword [ebp - 8]
push 1
push 0x59b001
call esi
lea eax, [ebp - 8]
push eax
push 0x40
push 1
push 0x597695
call esi
lea eax, [ebp - 8]
mov byte [0x597695], 0x30
push eax
push dword [ebp - 8]
push 1
push 0x597695
call esi
cmp byte [0x101511d9], 1
jne 0x1001064f
lea eax, [ebp - 8]
push eax
push 0x40
push 0xa
push 0x59ca3c
call esi
mov eax, 0x59ca3c
mov ecx, 0x90909090
mov dword [eax], ecx
mov dword [eax + 4], ecx
mov word [eax + 8], cx
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 0xa
push 0x59ca3c
call esi
push 0x10010000
push 0x59ca3c
push 0xe9
call fcn.10075a00
add esp, 0xc
mov ecx, dword [ebp - 4]
xor ecx, ebp
pop esi
call fcn.10078509
mov esp, ebp
pop ebp
ret