Function at 0x42e402
Capabilities:
Allocate or change rwx memory

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4ab6c8
push 0x4a2bd4
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
add esp, 0xffffffc8
push ebx
push esi
push edi
mov dword [ebp - 0x18], esp
mov dword [ebp - 0x1c], 0
mov dword [ebp - 4], 0
mov eax, dword [ebp + 8]
mov dword [ebp - 0x24], eax
mov ecx, dword [ebp - 0x24]
mov edx, dword [ebp - 0x24]
add edx, dword [ecx + 0x3c]
mov dword [ebp - 0x2c], edx
mov eax, dword [ebp - 0x2c]
add eax, 0x80
mov dword [ebp - 0x28], eax
mov ecx, dword [ebp - 0x28]
cmp dword [ecx], 0
jne 0x42e460
jmp 0x42e64e
push 1
mov edx, dword [ebp - 0x28]
mov eax, dword [edx]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.0042b63a
add esp, 0xc
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0
jne 0x42e482
jmp 0x42e64e
mov edx, dword [ebp - 0x20]
cmp dword [edx + 0xc], 0
je 0x42e63d
mov eax, dword [ebp - 0x20]
cmp dword [eax + 0xc], 0
jne 0x42e49d
jmp 0x42e63d
push 1
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + 0xc]
push edx
mov eax, dword [ebp + 8]
push eax
call fcn.0042b63a
add esp, 0xc
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0
jne 0x42e4c0
jmp 0x42e63d
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x34], 0
mov ecx, dword [ebp + 0xc]
push ecx
mov edx, dword [ebp - 0x38]
push edx
call dword [sym.imp.ntdll.dll__stricmp]
add esp, 8
test eax, eax
jne 0x42e62f
mov dword [ebp - 0x3c], 0
mov eax, dword [ebp - 0x20]
cmp dword [eax], 0
je 0x42e50d
push 1
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx]
push edx
mov eax, dword [ebp + 8]
push eax
call fcn.0042b63a
add esp, 0xc
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], 0
jne 0x42e518
jmp 0x42e63d
mov ecx, dword [ebp - 0x3c]
cmp dword [ecx], 0
je 0x42e582
mov edx, dword [ebp - 0x3c]
mov eax, dword [edx]
and eax, 0x80000000
test eax, eax
jne 0x42e56e
push 1
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ecx]
push edx
mov eax, dword [ebp + 8]
push eax
call fcn.0042b63a
add esp, 0xc
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 0
jne 0x42e54d
jmp 0x42e582
mov ecx, dword [ebp + 0x10]
push ecx
mov edx, dword [ebp - 0x40]
add edx, 2
push edx
call dword [sym.imp.ntdll.dll__stricmp]
add esp, 8
test eax, eax
jne 0x42e56e
mov dword [ebp - 0x34], 2
jmp 0x42e582
mov eax, dword [ebp - 0x3c]
add eax, 4
mov dword [ebp - 0x3c], eax
mov ecx, dword [ebp - 0x30]
add ecx, 1
mov dword [ebp - 0x30], ecx
jmp 0x42e518
cmp dword [ebp - 0x34], 1
jne 0x42e58d
jmp 0x42e64e
cmp dword [ebp - 0x34], 2
jne 0x42e62f
mov dword [ebp - 0x48], 0
mov edx, dword [ebp - 0x20]
cmp dword [edx + 0x10], 0
jne 0x42e5ac
jmp 0x42e64e
push 1
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + 0x10]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.0042b63a
add esp, 0xc
mov dword [ebp - 0x48], eax
lea eax, [ebp - 0x44]
push eax
push 0x40
push 0x1000
mov ecx, dword [ebp - 0x30]
mov edx, dword [ebp - 0x48]
lea eax, [edx + ecx*4]
push eax
call dword [sym.imp.KERNEL32.dll_VirtualProtect]
test eax, eax
jne 0x42e5e5
jmp 0x42e64e
push 4
mov ecx, dword [ebp - 0x30]
mov edx, dword [ebp - 0x48]
lea eax, [edx + ecx*4]
push eax
call dword [sym.imp.KERNEL32.dll_IsBadWritePtr]
test eax, eax
je 0x42e5fd
jmp 0x42e64e
mov ecx, dword [ebp - 0x30]
mov edx, dword [ebp - 0x48]
mov eax, dword [ebp + 0x14]
mov dword [edx + ecx*4], eax
lea ecx, [ebp - 0x44]
push ecx
mov edx, dword [ebp - 0x44]
push edx
push 0x1000
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x48]
lea edx, [ecx + eax*4]
push edx
call dword [sym.imp.KERNEL32.dll_VirtualProtect]
mov dword [ebp - 0x1c], 1
jmp 0x42e64e
mov eax, dword [ebp - 0x20]
add eax, 0x14
mov dword [ebp - 0x20], eax
jmp 0x42e482
xor ecx, ecx
test ecx, ecx
jne 0x42e436
mov dword [ebp - 0x1c], 1
mov dword [ebp - 4], 0xffffffff
jmp 0x42e667
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x10]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret