Function at 0x10007eb0
Capabilities:
Allocate or change rwx memory

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x50
lea eax, [ebp - 0x4c]
push eax
push 0x40
push 7
push 0xe4d7a8
call dword [sym.imp.KERNEL32.dll_VirtualProtect]
test eax, eax
je 0x100080fa
cmp dword [ebp + 8], 0
jle 0x10008023
push 7
mov ecx, dword [ebp + 8]
sub ecx, 1
push ecx
lea ecx, [ebp - 0x10]
call fcn.1002f780
mov edx, dword [ebp - 0x10]
mov eax, dword [edx - 0xc]
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
jle 0x1000800d
mov ecx, dword [ebp - 0x1c]
push ecx
push 0xe4d7a8
call fcn.10003a80
test eax, eax
jne 0x1000800d
mov dword [ebp - 8], 0
jmp 0x10007f27
mov edx, dword [ebp - 8]
add edx, 1
mov dword [ebp - 8], edx
mov eax, dword [ebp - 8]
cmp eax, dword [ebp - 0x1c]
jge 0x10008003
mov ecx, dword [ebp - 8]
add ecx, 0xe4d7a8
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x24], 0
push 1
mov edx, dword [ebp - 0x20]
push edx
call fcn.10003990
test eax, eax
jne 0x10007f85
lea eax, [ebp - 0x24]
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x14], 0
jmp 0x10007f6d
mov ecx, dword [ebp - 0x14]
add ecx, 1
mov dword [ebp - 0x14], ecx
cmp dword [ebp - 0x14], 1
jge 0x10007f85
mov edx, dword [ebp - 0x30]
add edx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x20]
add eax, dword [ebp - 0x14]
mov cl, byte [eax]
mov byte [edx], cl
jmp 0x10007f64
mov edx, dword [ebp - 0x24]
mov dword [ebp - 0x38], edx
cmp dword [ebp - 8], 0
jl 0x10007fa2
mov eax, dword [ebp - 0x10]
mov ecx, dword [eax - 0xc]
mov dword [ebp - 0x34], ecx
mov edx, dword [ebp - 8]
cmp edx, dword [ebp - 0x34]
jle 0x10007fac
push 0x80070057
call fcn.10002e80
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 8]
mov dx, word [eax + ecx*2]
mov word [ebp - 2], dx
movzx eax, word [ebp - 2]
cmp dword [ebp - 0x38], eax
je 0x10007ffe
cmp dword [ebp - 8], 0
jl 0x10007fda
mov ecx, dword [ebp - 0x10]
mov edx, dword [ecx - 0xc]
mov dword [ebp - 0x3c], edx
mov eax, dword [ebp - 8]
cmp eax, dword [ebp - 0x3c]
jle 0x10007fe4
push 0x80070057
call fcn.10002e80
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp - 8]
mov ax, word [ecx + edx*2]
mov word [ebp - 4], ax
mov ecx, dword [ebp - 8]
mov dl, byte [ebp - 4]
mov byte [ecx + 0xe4d7a8], dl
jmp 0x10007f1e
mov eax, dword [ebp - 0x1c]
mov byte [eax + 0xe4d7a8], 0
mov ecx, dword [ebp - 0x10]
sub ecx, 0x10
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x40]
call fcn.10003260
jmp 0x100080e5
mov dword [ebp - 0x48], 0
mov edx, 7
test edx, edx
jle 0x100080e5
push 7
push 0xe4d7a8
call fcn.10003a80
test eax, eax
jne 0x100080e5
mov dword [ebp - 0xc], 0
jmp 0x1000805d
mov eax, dword [ebp - 0xc]
add eax, 1
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 7
jge 0x100080de
mov ecx, dword [ebp - 0xc]
add ecx, 0xe4d7a8
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x2c], 0
push 1
mov edx, dword [ebp - 0x28]
push edx
call fcn.10003990
test eax, eax
jne 0x100080b5
lea eax, [ebp - 0x2c]
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x18], 0
jmp 0x1000809d
mov ecx, dword [ebp - 0x18]
add ecx, 1
mov dword [ebp - 0x18], ecx
cmp dword [ebp - 0x18], 1
jge 0x100080b5
mov edx, dword [ebp - 0x44]
add edx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x28]
add eax, dword [ebp - 0x18]
mov cl, byte [eax]
mov byte [edx], cl
jmp 0x10008094
movzx edx, byte [ebp - 0x2c]
mov eax, dword [ebp - 0xc]
movzx ecx, byte [eax + 0x1006ac1c]
cmp edx, ecx
je 0x100080d9
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp - 0xc]
mov cl, byte [eax + 0x1006ac1c]
mov byte [edx + 0xe4d7a8], cl
jmp 0x10008054
mov dword [ebp - 0x48], 1
lea edx, [ebp - 0x50]
push edx
mov eax, dword [ebp - 0x4c]
push eax
push 7
push 0xe4d7a8
call dword [sym.imp.KERNEL32.dll_VirtualProtect]
mov esp, ebp
pop ebp
ret