Function at 0x10001590
Capabilities:
Allocate or change rwx memory
Execute shellcode via indirect call
Log keystrokes via polling

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x28
mov eax, dword [0x1006b00c]
xor eax, ebp
mov dword [ebp - 4], eax
cmp byte [0x1006b018], 1
push esi
push edi
jne 0x10001eed
mov eax, dword [0x100716bc]
mov edx, 0x1006b018
push 0x2a
mov ecx, str.Prodigal_Ran_Online
or dword [eax + 0x3fec], 2
mov dword [eax + 0x4010], 0x43af0000
mov dword [eax + 0x4014], 0x438c0000
mov dword [eax + 0x3ff4], 1
call fcn.1000fb10
add esp, 4
cmp byte [0x10071562], 0
jne 0x10001931
mov ecx, dword [0x100716bc]
movss xmm0, dword [0x100679cc]
mov eax, dword [ecx + 0x3f04]
mov byte [eax + 0xc5], 1
mov eax, dword [ecx + 0x3f04]
cmp byte [eax + 0xc8], 0
jne 0x1000164b
movaps xmm1, xmm0
mov dword [ebp - 0x14], 0
lea ecx, [ebp - 0x14]
mov dword [ebp - 0x10], 0
call fcn.10015010
mov ecx, dword [0x100716bc]
movss xmm0, dword [0x100679cc]
mov eax, dword [ecx + 0x3f04]
mov byte [eax + 0xc5], 1
mov eax, dword [ecx + 0x3f04]
cmp byte [eax + 0xc8], 0
jne 0x10001686
movaps xmm1, xmm0
mov dword [ebp - 0x14], 0
lea ecx, [ebp - 0x14]
mov dword [ebp - 0x10], 0
call fcn.10015010
mov ecx, dword [0x100716bc]
mov eax, dword [ecx + 0x3f04]
mov byte [eax + 0xc5], 1
mov eax, dword [ecx + 0x3f04]
cmp byte [eax + 0xc8], 0
jne 0x100016c6
movss xmm1, dword [0x100679cc]
lea ecx, [ebp - 0x14]
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x10], 0
call fcn.10015010
mov ecx, dword [0x100716bc]
mov eax, dword [ecx + 0x3f04]
mov byte [eax + 0xc5], 1
mov eax, dword [ecx + 0x3f04]
cmp byte [eax + 0xc8], 0
jne 0x10001706
movss xmm1, dword [0x100679cc]
lea ecx, [ebp - 0x14]
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x10], 0
call fcn.10015010
mov ecx, dword [0x100716bc]
mov eax, dword [ecx + 0x3f04]
mov byte [eax + 0xc5], 1
mov eax, dword [ecx + 0x3f04]
cmp byte [eax + 0xc8], 0
jne 0x10001746
movss xmm1, dword [0x100679cc]
lea ecx, [ebp - 0x14]
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x10], 0
call fcn.10015010
mov ecx, dword [0x100716bc]
mov eax, dword [ecx + 0x3f04]
mov byte [eax + 0xc5], 1
mov eax, dword [ecx + 0x3f04]
cmp byte [eax + 0xc8], 0
jne 0x10001786
movss xmm1, dword [0x100679cc]
lea ecx, [ebp - 0x14]
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x10], 0
call fcn.10015010
mov ecx, dword [0x100716bc]
mov eax, dword [ecx + 0x3f04]
mov byte [eax + 0xc5], 1
mov eax, dword [ecx + 0x3f04]
cmp byte [eax + 0xc8], 0
jne 0x100017c6
movss xmm1, dword [0x100679cc]
lea ecx, [ebp - 0x14]
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x10], 0
call fcn.10015010
mov ecx, dword [0x100716bc]
mov eax, dword [ecx + 0x3f04]
mov byte [eax + 0xc5], 1
mov eax, dword [ecx + 0x3f04]
cmp byte [eax + 0xc8], 0
jne 0x10001806
movss xmm1, dword [0x100679cc]
lea ecx, [ebp - 0x14]
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x10], 0
call fcn.10015010
mov ecx, dword [0x100716bc]
mov eax, dword [ecx + 0x3f04]
mov byte [eax + 0xc5], 1
mov eax, dword [ecx + 0x3f04]
cmp byte [eax + 0xc8], 0
jne 0x10001846
movss xmm1, dword [0x100679cc]
lea ecx, [ebp - 0x14]
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x10], 0
call fcn.10015010
mov ecx, dword [0x100716bc]
mov eax, dword [ecx + 0x3f04]
mov byte [eax + 0xc5], 1
mov eax, dword [ecx + 0x3f04]
cmp byte [eax + 0xc8], 0
jne 0x10001886
movss xmm1, dword [0x100679cc]
lea ecx, [ebp - 0x14]
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x10], 0
call fcn.10015010
mov ecx, dword [0x100716bc]
mov eax, dword [ecx + 0x3f04]
mov byte [eax + 0xc5], 1
mov eax, dword [ecx + 0x3f04]
cmp byte [eax + 0xc8], 0
jne 0x100018c6
movss xmm1, dword [0x100679cc]
lea ecx, [ebp - 0x14]
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x10], 0
call fcn.10015010
mov ecx, dword [0x100716bc]
mov eax, dword [ecx + 0x3f04]
mov byte [eax + 0xc5], 1
mov eax, dword [ecx + 0x3f04]
cmp byte [eax + 0xc8], 0
jne 0x10001900
movss xmm1, dword [0x100679cc]
lea ecx, [ebp - 0x14]
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x10], 0
call fcn.10015010
push ecx
lea edx, [ebp - 0x14]
mov dword [ebp - 0x14], 0x43a28000
mov ecx, str.Load_Menu
mov dword [ebp - 0x10], 0x42100000
call fcn.10042950
add esp, 4
test al, al
je 0x10001ee8
call fcn.10001380
jmp 0x10001ee8
push ecx
lea edx, [ebp - 0x14]
mov dword [ebp - 0x14], 0x42d00000
mov ecx, str.Misc
mov dword [ebp - 0x10], 0
call fcn.10042950
mov ecx, dword [0x10071140]
xor edx, edx
movss xmm1, dword [0x10067900]
add esp, 4
test al, al
xorps xmm0, xmm0
cmovne ecx, edx
mov dword [0x10071140], ecx
call fcn.100153d0
push ecx
lea edx, [ebp - 0x14]
mov dword [ebp - 0x14], 0x42d00000
mov ecx, str.Visuals
mov dword [ebp - 0x10], 0
call fcn.10042950
mov ecx, dword [0x10071140]
add esp, 4
movss xmm1, dword [0x10067900]
test al, al
mov edx, 1
xorps xmm0, xmm0
cmovne ecx, edx
mov dword [0x10071140], ecx
call fcn.100153d0
push ecx
lea edx, [ebp - 0x14]
mov dword [ebp - 0x14], 0x42d00000
mov ecx, str.Farmer
mov dword [ebp - 0x10], 0
call fcn.10042950
mov ecx, dword [0x10071140]
add esp, 4
test al, al
mov edx, 2
cmovne ecx, edx
mov dword [0x10071140], ecx
sub ecx, 0
je 0x10001dc1
sub ecx, 1
je 0x10001baa
sub ecx, 1
jne 0x10001ee8
mov ecx, dword [0x100716bc]
movss xmm0, dword [0x100679cc]
mov eax, dword [ecx + 0x3f04]
mov byte [eax + 0xc5], 1
mov eax, dword [ecx + 0x3f04]
cmp byte [eax + 0xc8], 0
jne 0x10001a59
movaps xmm1, xmm0
mov dword [ebp - 0x14], 0
lea ecx, [ebp - 0x14]
mov dword [ebp - 0x10], 0
call fcn.10015010
mov ecx, dword [0x100716bc]
movss xmm0, dword [0x100679cc]
mov eax, dword [ecx + 0x3f04]
mov byte [eax + 0xc5], 1
mov eax, dword [ecx + 0x3f04]
cmp byte [eax + 0xc8], 0
jne 0x10001a8e
movaps xmm1, xmm0
mov dword [ebp - 0x14], 0
lea ecx, [ebp - 0x14]
mov dword [ebp - 0x10], 0
call fcn.10015010
mov edx, 0x100716e1
mov ecx, str.AUTO_POTION_Q
call fcn.10043e60
mov edx, 0x100716d9
mov ecx, str.AUTO_RESU
call fcn.10043e60
mov edx, 0x100716db
mov ecx, str.FORCE_MAP
call fcn.10043e60
push ecx
push 0x1005860c
lea eax, [ebp - 0xc]
mov dword [ebp - 0xc], 0x3e8
push eax
lea eax, [ebp - 0x20]
mov dword [ebp - 0x20], 0
push eax
push 0x100716e4
mov edx, 4
mov ecx, str.AUTO_SP_W
call fcn.10045a10
add esp, 0x10
mov dword [ebp - 0xc], 0x3e8
lea eax, [ebp - 0xc]
mov dword [ebp - 0x20], 0
mov edx, 4
mov ecx, str.AUTO_MP_E
push 0x1005860c
push eax
lea eax, [ebp - 0x20]
push eax
push 0x100716dc
call fcn.10045a10
mov ecx, dword [0x100716bc]
add esp, 0x14
mov eax, dword [ecx + 0x3f04]
mov byte [eax + 0xc5], 1
mov eax, dword [ecx + 0x3f04]
cmp byte [eax + 0xc8], 0
jne 0x10001b66
movss xmm1, dword [0x100679cc]
lea ecx, [ebp - 0x14]
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x10], 0
call fcn.10015010
mov ecx, dword [0x100716bc]
mov eax, dword [ecx + 0x3f04]
mov byte [eax + 0xc5], 1
mov eax, dword [ecx + 0x3f04]
cmp byte [eax + 0xc8], 0
jne 0x10001ba0
movss xmm1, dword [0x100679cc]
lea ecx, [ebp - 0x14]
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x10], 0
call fcn.10015010
push str.TAKE_NOTE:_DAPAT_MAY_RESU_ROSA_KAYO_NAKA_EQUIP
jmp 0x10001ed1
mov ecx, dword [0x100716bc]
movss xmm0, dword [0x100679cc]
mov eax, dword [ecx + 0x3f04]
mov byte [eax + 0xc5], 1
mov eax, dword [ecx + 0x3f04]
cmp byte [eax + 0xc8], 0
jne 0x10001bfb
movaps xmm1, xmm0
mov dword [ebp - 0x14], 0
lea ecx, [ebp - 0x14]
mov dword [ebp - 0x10], 0
call fcn.10015010
mov ecx, dword [0x100716bc]
movss xmm0, dword [0x100679cc]
mov eax, dword [ecx + 0x3f04]
mov byte [eax + 0xc5], 1
mov eax, dword [ecx + 0x3f04]
cmp byte [eax + 0xc8], 0
jne 0x10001c30
movaps xmm1, xmm0
mov dword [ebp - 0x14], 0
lea ecx, [ebp - 0x14]
mov dword [ebp - 0x10], 0
call fcn.10015010
push ecx
push str._.3f
lea eax, [ebp - 0xc]
mov dword [ebp - 0x20], 0x3a83126f
push eax
lea eax, [ebp - 0x20]
mov dword [ebp - 0xc], 0x40800000
push eax
push 0x10071138
mov edx, 8
mov ecx, str.ATTACK_SPEED
call fcn.10045a10
mov ecx, dword [0x100716bc]
add esp, 0x14
mov eax, dword [ecx + 0x3f04]
mov byte [eax + 0xc5], 1
mov eax, dword [ecx + 0x3f04]
cmp byte [eax + 0xc8], 0
jne 0x10001ca3
movss xmm1, dword [0x100679cc]
lea ecx, [ebp - 0x14]
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x10], 0
call fcn.10015010
push ecx
push str._.3f
lea eax, [ebp - 0xc]
mov dword [ebp - 0x20], 0x3a83126f
push eax
lea eax, [ebp - 0x20]
mov dword [ebp - 0xc], 0x41200000
push eax
push 0x10071134
mov edx, 8
mov ecx, str.LONG_RANGE
call fcn.10045a10
mov ecx, dword [0x100716bc]
add esp, 0x14
mov eax, dword [ecx + 0x3f04]
mov byte [eax + 0xc5], 1
mov eax, dword [ecx + 0x3f04]
cmp byte [eax + 0xc8], 0
jne 0x10001d16
movss xmm1, dword [0x100679cc]
lea ecx, [ebp - 0x14]
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x10], 0
call fcn.10015010
push ecx
push str._.3f
lea eax, [ebp - 0xc]
mov dword [ebp - 0x20], 0x43480042
push eax
lea eax, [ebp - 0x20]
mov dword [ebp - 0xc], 0x442f0000
push eax
push 0x10071130
mov edx, 8
mov ecx, str.DRONE
call fcn.10045a10
mov ecx, dword [0x100716bc]
add esp, 0x14
mov eax, dword [ecx + 0x3f04]
mov byte [eax + 0xc5], 1
mov eax, dword [ecx + 0x3f04]
cmp byte [eax + 0xc8], 0
jne 0x10001d89
movss xmm1, dword [0x100679cc]
lea ecx, [ebp - 0x14]
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x10], 0
call fcn.10015010
push ecx
push str._.3f
lea eax, [ebp - 0xc]
mov dword [ebp - 0x20], 0x42a00083
push eax
lea eax, [ebp - 0x20]
mov dword [ebp - 0xc], 0x43c80000
push eax
push 0x1007113c
mov edx, 8
mov ecx, str.FAST_SCROLL
call fcn.10045a10
add esp, 0x14
jmp 0x10001ee8
mov ecx, dword [0x100716bc]
mov eax, dword [ecx + 0x3f04]
mov byte [eax + 0xc5], 1
mov eax, dword [ecx + 0x3f04]
cmp byte [eax + 0xc8], 0
jne 0x10001e01
movss xmm1, dword [0x100679cc]
lea ecx, [ebp - 0x14]
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x10], 0
call fcn.10015010
mov edx, 0x100716e3
mov ecx, str.ANTI_SILENCE
call fcn.10043e60
mov edx, 0x100716da
mov ecx, str.FAST_TELE
call fcn.10043e60
mov edx, 0x100716d8
mov ecx, str.REMOVE_FOG
call fcn.10043e60
mov edx, 0x100716e2
mov ecx, str.WALL_NAME
call fcn.10043e60
mov edx, 0x100716e0
mov ecx, str.AREA_OF_EFFECT
call fcn.10043e60
mov ecx, dword [0x100716bc]
mov eax, dword [ecx + 0x3f04]
mov byte [eax + 0xc5], 1
mov eax, dword [ecx + 0x3f04]
cmp byte [eax + 0xc8], 0
jne 0x10001e92
movss xmm1, dword [0x100679cc]
lea ecx, [ebp - 0x14]
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x10], 0
call fcn.10015010
mov ecx, dword [0x100716bc]
mov eax, dword [ecx + 0x3f04]
mov byte [eax + 0xc5], 1
mov eax, dword [ecx + 0x3f04]
cmp byte [eax + 0xc8], 0
jne 0x10001ecc
movss xmm1, dword [0x100679cc]
lea ecx, [ebp - 0x14]
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x10], 0
call fcn.10015010
push str.F5_SHOW__HIDE
movaps xmm0, xmmword [0x10067d00]
lea eax, [ebp - 0x1c]
push eax
movups xmmword [ebp - 0x1c], xmm0
call fcn.10042330
add esp, 8
call fcn.10012d90
push 0x74
call dword [sym.imp.USER32.dll_GetAsyncKeyState]
test al, 1
je 0x10001f07
cmp byte [0x1006b018], 0
sete byte [0x1006b018]
cmp byte [0x10071562], 0
je 0x1000245a
cmp byte [0x100716e1], 0
mov edi, dword [sym.imp.KERNEL32.dll_VirtualProtect]
je 0x10001f49
lea eax, [ebp - 8]
push eax
push 0x40
push 1
push 0xfceaec
call edi
lea eax, [ebp - 8]
mov byte [0xfceaec], 3
push eax
push dword [ebp - 8]
push 1
push 0xfceaec
call edi
cmp byte [0x100716d8], 0
lea eax, [ebp - 8]
push eax
push 0x40
push 4
push 0x100f0e0
je 0x10001f96
call edi
lea eax, [ebp - 8]
mov dword [0x100f0e0], 0x461c3c00
push eax
push dword [ebp - 8]
push 4
push 0x100f0e0
call edi
lea eax, [ebp - 8]
push eax
push 0x40
push 4
push 0x100f0b8
call edi
mov dword [0x100f0b8], 0x49657e00
jmp 0x10001fcb
call edi
lea eax, [ebp - 8]
mov dword [0x100f0e0], 0x442f0000
push eax
push dword [ebp - 8]
push 4
push 0x100f0e0
call edi
lea eax, [ebp - 8]
push eax
push 0x40
push 4
push 0x100f0b8
call edi
mov dword [0x100f0b8], 0x451c4000
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 4
push 0x100f0b8
call edi
cmp byte [0x100716da], 0
lea eax, [ebp - 8]
mov esi, dword [0x10071670]
push eax
push 0x40
push 1
push esi
je 0x10001ffa
call edi
mov byte [esi], 0xd8
jmp 0x10001fff
call edi
mov byte [esi], 0xd9
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 1
push esi
call edi
cmp byte [0x100716e0], 0
lea eax, [ebp - 8]
mov esi, dword [0x1007167c]
push eax
push 0x40
push 1
push esi
je 0x1000202a
call edi
mov byte [esi], 8
jmp 0x1000202f
call edi
mov byte [esi], 0xc
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 1
push esi
call edi
cmp byte [0x100716e2], 0
lea eax, [ebp - 8]
push eax
push 0x40
push 1
push 0x43a879
je 0x100020c6
call edi
lea eax, [ebp - 8]
mov byte [0x43a879], 0xeb
push eax
push dword [ebp - 8]
push 1
push 0x43a879
call edi
lea eax, [ebp - 8]
push eax
push 0x40
push 1
push 0x43a8a9
call edi
lea eax, [ebp - 8]
mov byte [0x43a8a9], 0xeb
push eax
push dword [ebp - 8]
push 1
push 0x43a8a9
call edi
mov esi, dword [0x100716b4]
lea eax, [ebp - 8]
push eax
push 0x40
push 1
push esi
call edi
lea eax, [ebp - 8]
mov byte [esi], 0xeb
push eax
push dword [ebp - 8]
push 1
push esi
call edi
mov esi, dword [0x1007169c]
lea eax, [ebp - 8]
push eax
push 0x40
push 1
push esi
call edi
mov byte [esi], 0xeb
jmp 0x10002139
call edi
lea eax, [ebp - 8]
mov byte [0x43a879], 0x74
push eax
push dword [ebp - 8]
push 1
push 0x43a879
call edi
lea eax, [ebp - 8]
push eax
push 0x40
push 1
push 0x43a8a9
call edi
lea eax, [ebp - 8]
mov byte [0x43a8a9], 0x74
push eax
push dword [ebp - 8]
push 1
push 0x43a8a9
call edi
mov esi, dword [0x100716b4]
lea eax, [ebp - 8]
push eax
push 0x40
push 1
push esi
call edi
lea eax, [ebp - 8]
mov byte [esi], 0x74
push eax
push dword [ebp - 8]
push 1
push esi
call edi
mov esi, dword [0x1007169c]
lea eax, [ebp - 8]
push eax
push 0x40
push 1
push esi
call edi
mov byte [esi], 0x74
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 1
push esi
call edi
cmp byte [0x100716e3], 0
lea eax, [ebp - 8]
push eax
push 0x40
push 1
push 0x681cfe
je 0x100021b2
call edi
lea eax, [ebp - 8]
mov byte [0x681cfe], 0xeb
push eax
push dword [ebp - 8]
push 1
push 0x681cfe
call edi
lea eax, [ebp - 8]
push eax
push 0x40
push 1
push 0x681d07
call edi
lea eax, [ebp - 8]
mov byte [0x681d07], 0xeb
push eax
push dword [ebp - 8]
push 1
push 0x681d07
call edi
lea eax, [ebp - 8]
push eax
push 0x40
push 1
push 0x681d50
call edi
mov byte [0x681d50], 0xeb
jmp 0x10002207
call edi
lea eax, [ebp - 8]
mov byte [0x681cfe], 0x75
push eax
push dword [ebp - 8]
push 1
push 0x681cfe
call edi
lea eax, [ebp - 8]
push eax
push 0x40
push 1
push 0x681d07
call edi
lea eax, [ebp - 8]
mov byte [0x681d07], 0x74
push eax
push dword [ebp - 8]
push 1
push 0x681d07
call edi
lea eax, [ebp - 8]
push eax
push 0x40
push 1
push 0x681d50
call edi
mov byte [0x681d50], 0x74
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 1
push 0x681d50
call edi
cmp byte [0x100716d9], 0
mov esi, dword [0x1007166c]
je 0x10002276
lea eax, [esi + 6]
mov dword [0x10071680], eax
lea eax, [ebp - 0xc]
push eax
push 0x40
push 6
push esi
call edi
mov eax, 0x10001340
mov byte [esi + 5], 0x90
sub eax, esi
mov byte [esi], 0xe9
sub eax, 5
mov dword [esi + 1], eax
lea eax, [ebp - 0x24]
push eax
push dword [ebp - 0xc]
push 6
push esi
call edi
mov esi, dword [0x100716a4]
lea eax, [ebp - 8]
push eax
push 0x40
push 1
push esi
call edi
lea eax, [ebp - 8]
mov byte [esi], 0x74
push eax
push dword [ebp - 8]
jmp 0x100022b9
lea eax, [ebp - 8]
push eax
push 0x40
push 6
push esi
call edi
mov eax, dword [0x10058658]
mov dword [esi], eax
mov ax, word [0x1005865c]
mov word [esi + 4], ax
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 6
push esi
call edi
mov esi, dword [0x100716a4]
lea eax, [ebp - 0x20]
push eax
push 0x40
push 1
push esi
call edi
lea eax, [ebp - 0x20]
mov byte [esi], 0x75
push eax
push dword [ebp - 0x20]
push 1
push esi
call edi
cmp byte [0x100716db], 0
mov esi, dword [0x100716ac]
je 0x100022fd
lea eax, [esi + 6]
mov dword [0x10071674], eax
lea eax, [ebp - 0x24]
push eax
push 0x40
push 6
push esi
call edi
mov eax, 0x10001360
mov byte [esi + 5], 0x90
sub eax, esi
mov byte [esi], 0xe9
sub eax, 5
mov dword [esi + 1], eax
lea eax, [ebp - 0x10]
push eax
push dword [ebp - 0x24]
jmp 0x10002320
lea eax, [ebp - 0xc]
push eax
push 0x40
push 6
push esi
call edi
mov eax, dword [0x10058660]
mov dword [esi], eax
mov ax, word [0x10058664]
mov word [esi + 4], ax
lea eax, [ebp - 0xc]
push eax
push dword [ebp - 0xc]
push 6
push esi
call edi
mov esi, dword [sym.imp.KERNEL32.dll_WriteProcessMemory]
push 0
push 4
push 0x10071138
push 0xfd2023
push dword [0x100716d4]
call esi
push 0
push 4
push 0x10071130
push 0xfced7c
push dword [0x100716d4]
call esi
push 0
push 4
push 0x1007113c
push 0xfced8c
push dword [0x100716d4]
call esi
mov eax, dword [0x10071678]
cmp eax, dword [0x100716e4]
jae 0x100023a0
lea eax, [ebp - 0xc]
push eax
push 0x40
push 1
push 0xfceaed
call edi
lea eax, [ebp - 0xc]
mov byte [0xfceaed], 3
push eax
push dword [ebp - 0xc]
push 1
push 0xfceaed
call edi
mov eax, dword [0x100716b0]
cmp eax, dword [0x100716dc]
jae 0x100023d3
lea eax, [ebp - 0x20]
push eax
push 0x40
push 1
push 0xfceaee
call edi
lea eax, [ebp - 0x20]
mov byte [0xfceaee], 3
push eax
push dword [ebp - 0x20]
push 1
push 0xfceaee
call edi
movzx eax, word [0x10071560]
mov esi, dword [sym.imp.KERNEL32.dll_ReadProcessMemory]
push 0
push 4
push 0x100716b0
push eax
push dword [0x100716d4]
call esi
movzx eax, word [0x10071564]
push 0
push 4
push 0x10071678
push eax
push dword [0x100716d4]
call esi
push 0
push 2
push 0x1006b01c
push 0xfced7c
push dword [0x100716d4]
call esi
movzx eax, word [0x1006b01c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
comisd xmm0, xmmword [0x10067930]
jbe 0x1000245a
mov esi, dword [0x1007168c]
lea eax, [ebp - 0xc]
push eax
push 0x40
push 1
push esi
call edi
lea eax, [ebp - 0xc]
mov byte [esi], 0x84
push eax
push dword [ebp - 0xc]
push 1
push esi
call edi
mov ecx, dword [ebp - 4]
pop edi
xor ecx, ebp
pop esi
call fcn.100554c4
mov esp, ebp
pop ebp
ret