Function at 0x100271e0
Capabilities:
Allocate or change rwx memory

Disassembly:
push ebp
mov ebp, esp
push 0xfffffffffffffffe
push 0x1005e810
push 0x1003a7b0
mov eax, dword fs:[0]
push eax
add esp, 0xfffffecc
mov eax, dword [0x100668d8]
xor dword [ebp - 8], eax
xor eax, ebp
mov dword [ebp - 0x24], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0x10]
mov dword fs:[0], eax
mov dword [ebp - 0x18], esp
cmp dword [0x10068314], 0
jne 0x1002722b
call fcn.100180e0
test eax, eax
jne 0x10027230
jmp 0x10027443
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 4], 0
push 0x104
lea eax, [ebp - 0x130]
push eax
push 0x100556e8
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
push eax
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea ecx, [ebp - 0x134]
push ecx
lea edx, [ebp - 0x138]
push edx
lea eax, [ebp - 0x130]
push eax
call fcn.10024390
add esp, 0xc
test eax, eax
jne 0x10027290
mov dword [ebp - 4], 0xfffffffe
jmp 0x10027443
xor ecx, ecx
jne 0x10027290
call fcn.100240d0
test eax, eax
je 0x100272af
push 0x100556f4
call fcn.10027460
add esp, 4
mov dword [ebp - 0x1c], eax
jmp 0x10027320
call fcn.10024150
test eax, eax
je 0x10027307
push 0x177248d6
push 0x60000
mov edx, dword [ebp - 0x134]
push edx
mov eax, dword [ebp - 0x138]
push eax
call fcn.100245b0
add esp, 0x10
test eax, eax
jl 0x100272f5
mov dword [ebp - 0x20], 1
push 0x10055700
call fcn.10027b60
add esp, 4
mov dword [ebp - 0x1c], eax
jmp 0x10027305
push 0x1005570c
call fcn.10027840
add esp, 4
mov dword [ebp - 0x1c], eax
jmp 0x10027320
call fcn.100241e0
test eax, eax
je 0x10027320
push 0x10055718
call fcn.10027e70
add esp, 4
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
jne 0x10027332
mov dword [ebp - 4], 0xfffffffe
jmp 0x10027443
mov dword [ebp - 4], 0xfffffffe
jmp 0x10027357
call fcn.100240d0
test eax, eax
jne 0x1002736d
call fcn.10024150
test eax, eax
je 0x10027406
cmp dword [ebp - 0x20], 0
je 0x100273a9
mov ecx, dword [ebp - 0x1c]
mov dword [0x10068318], ecx
call fcn.10038fbf
call dword [sym.imp.KERNEL32.dll_GetCurrentThread]
push eax
call fcn.10039383
push 0x100271a0
push 0x10068318
call fcn.100393f2
call fcn.10039125
mov dword [ebp - 0x13c], eax
jmp 0x10027404
mov dword [ebp - 0x140], 0
lea edx, [ebp - 0x140]
push edx
push 0x40
push 4
mov eax, dword [ebp - 0x1c]
push eax
call dword [sym.imp.KERNEL32.dll_VirtualProtect]
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ecx]
mov eax, dword [ebp - 0x1c]
lea ecx, [edx + eax + 4]
mov dword [0x10068314], ecx
mov edx, 0x10027180
sub edx, dword [ebp - 0x1c]
sub edx, 4
mov eax, dword [ebp - 0x1c]
mov dword [eax], edx
lea ecx, [ebp - 0x140]
push ecx
mov edx, dword [ebp - 0x140]
push edx
push 4
mov eax, dword [ebp - 0x1c]
push eax
call dword [sym.imp.KERNEL32.dll_VirtualProtect]
jmp 0x10027443
call fcn.100241e0
test eax, eax
je 0x10027443
mov ecx, dword [ebp - 0x1c]
mov dword [0x1006831c], ecx
call fcn.10038fbf
call dword [sym.imp.KERNEL32.dll_GetCurrentThread]
push eax
call fcn.10039383
push 0x100271c0
push 0x1006831c
call fcn.100393f2
call fcn.10039125
mov dword [ebp - 0x144], eax
mov ecx, dword [ebp - 0x10]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x24]
xor ecx, ebp
call fcn.1003a5ba
mov esp, ebp
pop ebp
ret