Function at 0x666dd8
Capabilities:
Allocate or change rwx memory

Disassembly:
jmp 0x4bb034
call fcn.004adf3c
add esp, 0xc
stc
mov dword [ebp - 0x10], eax
shrd ax, bx, 0xf1
xchg ah, al
mov eax, dword [ebp - 0x10]
push eax
shr bh, 0xd8
mov ebx, dword [ebp - 0xc]
test edi, 0x19da316e
cmc
test ebx, ebx
jmp 0x637e35
test ebx, ebx
jmp 0x63ea4e
cmp dword [ebp + 0x10], 6
jmp 0x559389
cmp dword [ebp + 0x10], 4
jne 0x56ddcb
push 0x4e9d34
push dword [ebp - 8]
setnp cl
movsx ecx, bp
movsx cx, ah
push 0x4e9d61
cmova ecx, esp
mov ecx, 3
call fcn.004adf3c
lea esp, [esp + 0xc]
shr bx, 0xab
not ebx
mov dword [ebp - 0x10], eax
sar eax, 0xb
rcl ah, 0xfa
lahf
mov eax, dword [ebp - 0x10]
push eax
btc ebx, 0xfe
mov ebx, dword [ebp - 0xc]
test ebx, ebx
jmp 0x5c916f
nop
cbw
nop
jmp 0x66309f
call fcn.004c4fe0
add esp, 0x10
not ebx
movsx ebx, bp
setno bh
push 0x80000301
jmp 0x610cd7
push eax
call fcn.0052d15d
push eax
clc
test bl, dh
push 0x40
push 6
clc
push dword [ebp + 8]
sub eax, eax
call dword [sym.imp.KERNEL32.dll_VirtualProtect]
nop
jmp 0x62a092
mov dword [ebp - 0xc], eax
jmp 0x59092e
je 0x5dbd33
push ebx
jmp 0x5f370e
jne 0x5d1afe
push 0x4e9d34
xchg ecx, ecx
push dword [ebp - 8]
movsx ecx, si
xchg ch, ch
push 0x4e9d73
setne cl
jmp 0x571875
call fcn.004adf3c
lea esp, [esp + 0xc]
dec bx
bts bx, bp
cmp sp, sp
mov dword [ebp - 0x10], eax
sbb al, bh
cmp ecx, 0x11200164
mov eax, dword [ebp - 0x10]
rcr bx, cl
push eax
sal bh, cl
mov ebx, dword [ebp - 0xc]
cmp bp, sp
test ebx, ebx
jmp 0x59ea55
cmp dword [ebp + 0x10], 5
jne 0x4ff3a8
push 0x4e9d34
cmovbe cx, bx
push dword [ebp - 8]
mov cl, 0xbf
cmovno cx, bx
mov ch, ah
push 0x4e9d6a
bswap cx
cmovp cx, bp
movzx ecx, si
mov ecx, 3
jmp 0x4b76a8
mov ecx, 3
jmp 0x5d9391
jmp 0x4bb034
call fcn.004c5280
add esp, 0x10
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
rcl bl, cl
shl ebx, cl
push eax
mov ebx, dword [ebp - 8]
clc
stc
test dh, ch
test ebx, ebx
je 0x5ec879
push ebx
jmp 0x5ec86b
mov esi, 2
not esi
mov eax, ebx
mov esi, 4
cwde
lahf
mov esi, 2
cbw
mov eax, 0x31770cab
mov esi, 5
mov ah, bl
not si
mov esi, 4
mov eax, esi
mov esi, 2
mov esi, 5
mov esi, 0x519376f7
mov esi, 5
movzx eax, dx
pop esi
lea eax, [ebp - 4]
jmp 0x52698b
jmp 0x4bb034
mov dword [ebp - 0xc], eax
jmp 0x66671c
call fcn.004c4ad6
add esp, 4
bswap eax
pop eax
mov dword [ebp - 0xc], eax
jmp 0x4bb034
je 0x589162
cmp dword [ebp + 0x10], 3
jne 0x50e975
push 0x4e9d34
cmovns ecx, ebp
not ch
push dword [ebp - 8]
push 0x4e9d58
cmovo cx, dx
mov ecx, 3
call fcn.004adf3c
lea esp, [esp + 0xc]
sal bx, 0xd
mov dword [ebp - 0x10], eax
rol bl, 0x38
shr al, 0x93
mov eax, dword [ebp - 0x10]
push eax
bts ebx, edx
and bx, cx
test bl, ah
mov ebx, dword [ebp - 0xc]
test ax, bx
cmp sp, dx
test ebx, ebx
je 0x5a79e1
push ebx
call fcn.004c4ad6
add esp, 4
pop eax
jmp 0x531a93
je 0x5aea3b
push ebx
call fcn.004c4ad6
add esp, 4
pop eax
mov dword [ebp - 0xc], eax
jmp 0x57475f
call fcn.004adf3c
lea esp, [esp + 0xc]
add bh, 7
or bx, 0x1ebc
mov dword [ebp - 0x10], eax
shr ah, 0x7f
setnp bl
mov eax, dword [ebp - 0x10]
sub bl, 0xd8
and ebx, 0x7eea5c29
push eax
stc
mov ebx, dword [ebp - 0xc]
test ebx, ebx
jmp 0x55062b
jne 0x629827
push dword [ebp - 8]
mov ecx, 0x111631e9
push 0x4e9d46
movzx ecx, bx
not cl
bswap ecx
mov ecx, 2
call fcn.004adf3c
lea esp, [esp + 8]
mov ebx, 0x4a6f5d6e
btc ebx, esi
xor bh, 0xd4
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
and bx, si
btc bx, di
push eax
mov ebx, dword [ebp - 0xc]
stc
test ebx, ebx
jmp 0x5f4fb7
pop edx
movzx eax, sp
push esi
movsx ax, dh
mov esi, 1
jmp 0x589440
cmp dword [ebp + 0x10], 7
jne 0x67e371
push 0x4e9d34
cmovge cx, sp
push dword [ebp - 8]
movzx ecx, sp
push 0x4e9d7c
mov ecx, 3
jmp 0x5b8d5c
call fcn.004adf3c
lea esp, [esp + 0xc]
add bh, 0xcf
btr bx, ax
xadd ebx, ebx
mov dword [ebp - 0x10], eax
sar bh, 0x11
adc bx, 0x1581
mov eax, dword [ebp - 0x10]
clc
btr bx, 0xc7
push eax
cmp esi, edi
sar bx, 0xdc
sal ebx, 0x7a
mov ebx, dword [ebp - 0xc]
jmp 0x4b9637
mov dword [ebp - 0xc], eax
jmp 0x67e83a
pop eax
jmp 0x5975eb
call fcn.004c4ad6
lea esp, [esp + 4]
bswap ax
dec al
pop eax
mov dword [ebp - 8], eax
cmp dword [ebp + 0x10], 1
jmp 0x5b8e97
call fcn.004c4ad6
add esp, 4
jmp 0x5dbd33
mov dword [ebp - 0xc], eax
jmp 0x4b7156
je 0x67e35b
push ebx
jmp 0x67e34f
push 1
mov ebx, 0x9dc
jmp 0x5228a0
push 0
push eax
push 1
mov ebx, eax
cmovge bx, dx
mov ebx, 0x198
jmp 0x584bba
cmp dword [ebp + 0x10], 2
jmp 0x67bfed
nop
push 0x80000301
mov bl, ah
push 0
mov bx, dx
movzx ebx, bp
movsx ebx, bx
push dword [ebp + 0xc]
jmp 0x603edd
je 0x59bea6
push ebx
jmp 0x59be9c
je 0x63ea64
push ebx
call fcn.004c4ad6
add esp, 4
sete al
movsx ax, ch
pop eax
jmp 0x5f4efb
nop
nop
push edx
movsx edx, ax
mov edx, 1
cbw
mov edx, 2
cwde
mov edx, 4
mov edx, 2
movsx eax, dx
cwd
bswap eax
mov edx, 5
seto dh
mov edx, 4
rdtsc
not ah
mov edx, 2
cbw
mov edx, 5
jmp 0x5c56bc
jmp 0x4bb088
jmp 0x4bb034
push ebp
btc bp, dx
nop
mov ebp, esp
test dx, di
movsx eax, di
sub esp, 0x14
mov dword [ebp - 4], 0
cbw
cwde
mov dword [ebp - 8], 0
sets ah
bswap eax
movzx eax, dx
mov dword [ebp - 0xc], 0
nop
cmovnp ax, sp
lahf
bswap ax
nop
nop
movzx ax, dl
xchg al, al
nop
movsx eax, di
not al
nop
movzx ax, ah
cmovg eax, ebp
nop
nop
nop
mov eax, esi
nop
bswap eax
movsx ax, cl
setnp al
nop
nop
xchg ah, ah
nop
lahf
movsx eax, di
nop
cmovge eax, ebp
not ah
nop
movsx eax, bp
cbw
nop
movzx eax, di
lahf
jmp 0x5146b8
mov ecx, 3
call fcn.004adf3c
add esp, 0xc
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
rol ebx, 0x87
mov ebx, 0x3e23bfe
push eax
xor bh, al
and bx, bp
btc bx, 0x4a
mov ebx, dword [ebp - 0xc]
test ebx, ebx
jmp 0x5aea2c
jne 0x5a7980
push 0x4e9d34
push dword [ebp - 8]
push 0x4e9d4f
xchg cx, cx
mov ecx, 3
jmp 0x5658b4
call fcn.004c4ad6
add esp, 4
mov al, 0x65
not eax
pop eax
jmp 0x5daff8
cmp dword [ebp + 0x10], 8
jne 0x6630e5
push 0x4e9d34
mov cl, 0x84
movzx ecx, sp
push dword [ebp - 8]
setno ch
push 0x4e9d85
jmp 0x670dcf
jmp 0x4bb034