Function at 0x10009758
Capabilities:
Allocate or change rwx memory

Disassembly:
jae 0x10009703
jmp 0x100096fe
call fcn.10009705
jae 0x100096fe
add esp, 4
jmp 0x1000970a
dec dword [esp]
jno 0x1000970f
jns 0x100096fa
jp 0x10009713
add esp, 4
popf
jmp 0x1000971a
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x10009733
jne 0x10009733
call 0x1fc0ca87
wait
rcl byte [edx + 0x33], 0xd0
push eax
xor eax, eax
setnp al
push edx
xor edx, eax
shl edx, 2
xchg edx, eax
pop edx
or eax, ecx
pop eax
clc
jae 0x10009749
salc
out 0x66, eax
pushfd
pushf
push 0xa
jae 0x10009756
jmp 0x10009751
call 0x10009758
jae 0x10009751
add esp, 4
jmp 0x1000975d
dec dword [esp]
jno 0x10009762
jns 0x1000974d
jp 0x10009766
add esp, 4
popf
jmp 0x1000976d
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x10009786
jne 0x10009786
out 0x7c, eax
add ebp, ebx
add esp, edi
jl 0x1000978b
jmp 0x1000978d
je 0x10009788
push eax
xor eax, eax
setnp al
push edx
xor edx, eax
shl edx, 2
xchg edx, eax
pop edx
or eax, ecx
pop eax
xor eax, eax
test eax, eax
je 0x100097a7
jne 0x100097a6
call 0x9304882e
rol byte [ebx + eax*4], 0xf0
add eax, 0x1750374
xor eax, 3
add eax, 4
xor eax, 5
je 0x100097b5
jne 0x100097b5
call 0x60f8dd46
lea eax, [ebp - 8]
push eax
push 0x40
mov ecx, dword [ebp + 0x10]
push ecx
mov edx, dword [ebp + 8]
push edx
call dword [sym.imp.KERNEL32.dll_VirtualProtect]
xor eax, eax
test eax, eax
je 0x100097d2
jne 0x100097d1
call 0x93048859
rol byte [ebx + eax*4], 0xf0
add eax, 0x3eb037c
mov al, 0x74
sti
xor eax, 3
add eax, 4
xor eax, 5
jl 0x100097e0
jmp 0x100097e2
je 0x100097dd
clc
jae 0x100097e7
xor byte [eax + 0x1750374], 0xb0
je 0x100097ec
jne 0x100097ec
mov al, 0x66
pushfd
pushf
push 0xa
jae 0x100097f9
jmp 0x100097f4
call 0x100097fb
jae 0x100097f4
add esp, 4
jmp 0x10009800
dec dword [esp]
jno 0x10009805
jns 0x100097f0
jp 0x10009809
add esp, 4
popf
jmp 0x10009810
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x10009829
jne 0x10009829
call 0x1fc0cb7d
wait
rcl byte [edx + 0x33], 0xd0
push eax
xor eax, eax
setnp al
push edx
xor edx, eax
shl edx, 2
xchg edx, eax
pop edx
or eax, ecx
pop eax
mov eax, dword [ebp + 0x10]
push eax
mov ecx, dword [ebp + 0xc]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.1001c590
add esp, 0xc
clc
jae 0x10009853
sub bh, byte [ecx + 0x66]
pushfd
pushf
push 0xa
jae 0x10009860
jmp 0x1000985b
call 0x10009862
jae 0x1000985b
add esp, 4
jmp 0x10009867
dec dword [esp]
jno 0x1000986c
jns 0x10009857
jp 0x10009870
add esp, 4
popf
jmp 0x10009877
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x10009890
jne 0x10009890
jns 0x1000990d
jl 0x10009895
add ebp, ebx
add edi, dword [ecx + 0x74]
sti
jmp 0x10009897
je 0x10009892
push eax
xor eax, eax
setnp al
push edx
xor edx, eax
shl edx, 2
xchg edx, eax
pop edx
or eax, ecx
pop eax
xor eax, eax
test eax, eax
je 0x100098b1
jne 0x100098b0
call 0x93048938
rol byte [ebx + eax*4], 0xf0
add eax, 0x1750374
xor eax, 3
add eax, 4
xor eax, 5
je 0x100098bf
jne 0x100098bf
call 0x60f8de50
lea eax, [ebp - 8]
push eax
mov ecx, dword [ebp - 8]
push ecx
mov edx, dword [ebp + 0x10]
push edx
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.KERNEL32.dll_VirtualProtect]
xor eax, eax
test eax, eax
je 0x100098de
jne 0x100098dd
call 0x93048965
rol byte [ebx + eax*4], 0xf0
add eax, 0x3eb037c
sub al, 0x74
sti
xor eax, 3
add eax, 4
xor eax, 5
jl 0x100098ec
jmp 0x100098ee
je 0x100098e9
clc
jae 0x100098f3
jl 0x1000991f
je 0x100098f8
jne 0x100098f8
sub al, 0x66
pushfd
pushf
push 0xa
jae 0x10009905
jmp 0x10009900
call 0x10009907
jae 0x10009900
add esp, 4
jmp 0x1000990c
dec dword [esp]
or al, 0x24
jno 0x10009911
jns 0x100098fc
jp 0x10009915
add esp, 4
popf
jmp 0x1000991c
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
je 0x10009935
nop
add byte [eax], al
add byte [edx - 0x7f], dl
ljmp 0x358
jne 0x10009935
call 0x1fc0cc89
wait
rcl byte [edx + 0x33], 0xd0
push eax
xor eax, eax
setnp al
push edx
xor edx, eax
shl edx, 2
xchg edx, eax
pop edx
or eax, ecx
pop eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1001a6ea
mov esp, ebp
pop ebp
ret