Function at 0x10023310
Capabilities:
Allocate or change rwx memory
Execute shellcode via indirect call

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
push ebx
push esi
push edi
mov edi, dword [sym.imp.KERNEL32.dll_VirtualProtect]
lea eax, [ebp - 4]
push eax
push 0x40
push 5
mov bl, 0xe9
xor esi, esi
push 0x52cfd8
mov byte [ebp - 0x10], bl
mov dword [ebp - 0xf], 0x185
mov dword [ebp - 4], esi
call edi
test eax, eax
je 0x1002336b
mov ecx, dword [ebp - 0x10]
mov dl, byte [ebp - 0xc]
mov eax, 0x52cfd8
mov dword [eax], ecx
mov byte [eax + 4], dl
mov ecx, dword [ebp - 4]
lea eax, [ebp - 8]
push eax
push ecx
push 5
push 0x52cfd8
mov dword [ebp - 8], esi
call edi
test eax, eax
jne 0x10023371
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea edx, [ebp - 4]
push edx
push 0x40
push 1
push 0x52cfdd
call edi
lea eax, [ebp - 4]
push eax
mov byte [0x52cfdd], 0x90
mov ecx, dword [ebp - 4]
push ecx
push 1
push 0x52cfdd
call edi
push 0x10022980
push 0x5bf03f
call fcn.10034b90
push 0x10022a40
push 0x5bd1c4
mov bl, 0xe9
call fcn.10034b90
push 0x10022ad0
push 0x5b3571
call fcn.10034b90
add esp, 0x18
mov esi, 0x10
mov ebx, 0x4e5a1b
call fcn.10034d10
lea eax, [ebp - 4]
push eax
push 0x40
mov edx, 0x10022450
push 5
sub edx, 0x4e5a20
xor esi, esi
push ebx
mov byte [ebp - 0x10], 0xe8
mov dword [ebp - 0xf], edx
mov dword [ebp - 4], esi
call edi
test eax, eax
je 0x10023420
mov ecx, dword [ebp - 0x10]
mov dl, byte [ebp - 0xc]
mov eax, ebx
mov dword [eax], ecx
mov byte [eax + 4], dl
mov ecx, dword [ebp - 4]
lea eax, [ebp - 8]
push eax
push ecx
push 5
push ebx
mov dword [ebp - 8], esi
call edi
test eax, eax
jne 0x10023426
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, 0x15
mov ebx, 0x4e56b5
call fcn.10034d10
lea eax, [ebp - 4]
push eax
push 0x40
mov edx, 0x100224a0
push 5
sub edx, 0x4e56ba
xor esi, esi
push ebx
mov byte [ebp - 0x10], 0xe8
mov dword [ebp - 0xf], edx
mov dword [ebp - 4], esi
call edi
test eax, eax
je 0x1002347c
mov ecx, dword [ebp - 0x10]
mov dl, byte [ebp - 0xc]
mov eax, ebx
mov dword [eax], ecx
mov byte [eax + 4], dl
mov ecx, dword [ebp - 4]
lea eax, [ebp - 8]
push eax
push ecx
push 5
push ebx
mov dword [ebp - 8], esi
call edi
test eax, eax
jne 0x10023482
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, 0x4c
mov ebx, 0x509be9
call fcn.10034d10
lea eax, [ebp - 4]
push eax
push 0x40
mov edx, 0x10023280
push 5
sub edx, 0x509bee
xor esi, esi
push ebx
mov byte [ebp - 0x10], 0xe9
mov dword [ebp - 0xf], edx
mov dword [ebp - 4], esi
call edi
test eax, eax
je 0x100234d8
mov ecx, dword [ebp - 0x10]
mov dl, byte [ebp - 0xc]
mov eax, ebx
mov dword [eax], ecx
mov byte [eax + 4], dl
mov ecx, dword [ebp - 4]
lea eax, [ebp - 8]
push eax
push ecx
push 5
push ebx
mov dword [ebp - 8], esi
call edi
test eax, eax
jne 0x100234de
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, 0x1a2
mov ebx, 0x6c69c1
call fcn.10034d10
lea eax, [ebp - 4]
push eax
push 0x40
mov edx, 0x10022500
push 5
sub edx, 0x6c69c6
xor esi, esi
push ebx
mov byte [ebp - 0x10], 0xe9
mov dword [ebp - 0xf], edx
mov dword [ebp - 4], esi
call edi
test eax, eax
je 0x10023534
mov ecx, dword [ebp - 0x10]
mov dl, byte [ebp - 0xc]
mov eax, ebx
mov dword [eax], ecx
mov byte [eax + 4], dl
mov ecx, dword [ebp - 4]
lea eax, [ebp - 8]
push eax
push ecx
push 5
push ebx
mov dword [ebp - 8], esi
call edi
test eax, eax
jne 0x1002353a
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, 0xe
mov ebx, 0x60d8c3
call fcn.10034d10
lea eax, [ebp - 4]
push eax
push 0x40
mov edx, 0x10023230
push 5
sub edx, 0x60d8c8
xor esi, esi
push ebx
mov byte [ebp - 0x10], 0xe9
mov dword [ebp - 0xf], edx
mov dword [ebp - 4], esi
call edi
test eax, eax
je 0x10023590
mov ecx, dword [ebp - 0x10]
mov dl, byte [ebp - 0xc]
mov eax, ebx
mov dword [eax], ecx
mov byte [eax + 4], dl
mov ecx, dword [ebp - 4]
lea eax, [ebp - 8]
push eax
push ecx
push 5
push ebx
mov dword [ebp - 8], esi
call edi
test eax, eax
jne 0x10023596
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea eax, [ebp - 4]
push eax
push 0x40
mov edx, 0x10023150
push 5
sub edx, 0x60e082
mov bl, 0xe8
push 0x60e07d
mov byte [ebp - 0x10], bl
mov dword [ebp - 0xf], edx
mov dword [ebp - 4], esi
call edi
test eax, eax
je 0x100235e7
mov ecx, dword [ebp - 0x10]
mov dl, byte [ebp - 0xc]
mov eax, 0x60e07d
mov dword [eax], ecx
mov byte [eax + 4], dl
mov ecx, dword [ebp - 4]
lea eax, [ebp - 8]
push eax
push ecx
push 5
push 0x60e07d
mov dword [ebp - 8], esi
call edi
test eax, eax
jne 0x100235ed
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea eax, [ebp - 4]
push eax
push 0x40
mov edx, 0x10023150
push 5
sub edx, 0x60e0b4
push 0x60e0af
mov byte [ebp - 0x10], bl
mov dword [ebp - 0xf], edx
mov dword [ebp - 4], esi
call edi
test eax, eax
je 0x1002363c
mov ecx, dword [ebp - 0x10]
mov dl, byte [ebp - 0xc]
mov eax, 0x60e0af
mov dword [eax], ecx
mov byte [eax + 4], dl
mov ecx, dword [ebp - 4]
lea eax, [ebp - 8]
push eax
push ecx
push 5
push 0x60e0af
mov dword [ebp - 8], esi
call edi
test eax, eax
jne 0x10023642
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea eax, [ebp - 4]
push eax
push 0x40
mov edx, 0x10022c40
push 5
sub edx, 0x472b49
push 0x472b44
mov byte [ebp - 0x10], bl
mov dword [ebp - 0xf], edx
mov dword [ebp - 4], esi
call edi
test eax, eax
je 0x10023691
mov ecx, dword [ebp - 0x10]
mov dl, byte [ebp - 0xc]
mov eax, 0x472b44
mov dword [eax], ecx
mov byte [eax + 4], dl
mov ecx, dword [ebp - 4]
lea eax, [ebp - 8]
push eax
push ecx
push 5
push 0x472b44
mov dword [ebp - 8], esi
call edi
test eax, eax
jne 0x10023697
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea eax, [ebp - 4]
push eax
push 0x40
mov edx, 0x10022c40
push 5
sub edx, 0x67362c
push 0x673627
mov byte [ebp - 0x10], bl
mov dword [ebp - 0xf], edx
mov dword [ebp - 4], esi
call edi
test eax, eax
je 0x100236e6
mov ecx, dword [ebp - 0x10]
mov dl, byte [ebp - 0xc]
mov eax, 0x673627
mov dword [eax], ecx
mov byte [eax + 4], dl
mov ecx, dword [ebp - 4]
lea eax, [ebp - 8]
push eax
push ecx
push 5
push 0x673627
mov dword [ebp - 8], esi
call edi
test eax, eax
jne 0x100236ec
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea eax, [ebp - 4]
push eax
push 0x40
mov edx, 0x10022c40
push 5
sub edx, 0x67974a
push 0x679745
mov byte [ebp - 0x10], bl
mov dword [ebp - 0xf], edx
mov dword [ebp - 4], esi
call edi
test eax, eax
je 0x1002373b
mov ecx, dword [ebp - 0x10]
mov dl, byte [ebp - 0xc]
mov eax, 0x679745
mov dword [eax], ecx
mov byte [eax + 4], dl
mov ecx, dword [ebp - 4]
lea eax, [ebp - 8]
push eax
push ecx
push 5
push 0x679745
mov dword [ebp - 8], esi
call edi
test eax, eax
jne 0x10023741
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea eax, [ebp - 4]
push eax
push 0x40
mov edx, 0x10022c40
push 5
sub edx, 0x67a914
push 0x67a90f
mov byte [ebp - 0x10], bl
mov dword [ebp - 0xf], edx
mov dword [ebp - 4], esi
call edi
test eax, eax
je 0x10023790
mov ecx, dword [ebp - 0x10]
mov dl, byte [ebp - 0xc]
mov eax, 0x67a90f
mov dword [eax], ecx
mov byte [eax + 4], dl
mov ecx, dword [ebp - 4]
lea eax, [ebp - 8]
push eax
push ecx
push 5
push 0x67a90f
mov dword [ebp - 8], esi
call edi
test eax, eax
jne 0x10023796
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea eax, [ebp - 4]
push eax
push 0x40
mov edx, 0x10022c40
push 5
sub edx, 0x67b246
push 0x67b241
mov byte [ebp - 0x10], bl
mov dword [ebp - 0xf], edx
mov dword [ebp - 4], esi
call edi
test eax, eax
je 0x100237e5
mov ecx, dword [ebp - 0x10]
mov dl, byte [ebp - 0xc]
mov eax, 0x67b241
mov dword [eax], ecx
mov byte [eax + 4], dl
mov ecx, dword [ebp - 4]
lea eax, [ebp - 8]
push eax
push ecx
push 5
push 0x67b241
mov dword [ebp - 8], esi
call edi
test eax, eax
jne 0x100237eb
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea eax, [ebp - 4]
push eax
push 0x40
mov edx, 0x10022c40
push 5
sub edx, 0x69a0ed
push 0x69a0e8
mov byte [ebp - 0x10], bl
mov dword [ebp - 0xf], edx
mov dword [ebp - 4], esi
call edi
test eax, eax
je 0x1002383a
mov ecx, dword [ebp - 0x10]
mov dl, byte [ebp - 0xc]
mov eax, 0x69a0e8
mov dword [eax], ecx
mov byte [eax + 4], dl
mov ecx, dword [ebp - 4]
lea eax, [ebp - 8]
push eax
push ecx
push 5
push 0x69a0e8
mov dword [ebp - 8], esi
call edi
test eax, eax
jne 0x10023840
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea eax, [ebp - 4]
push eax
push 0x40
mov edx, 0x10022c40
push 5
sub edx, 0x69cb64
push 0x69cb5f
mov byte [ebp - 0x10], bl
mov dword [ebp - 0xf], edx
mov dword [ebp - 4], esi
call edi
test eax, eax
je 0x1002388f
mov ecx, dword [ebp - 0x10]
mov dl, byte [ebp - 0xc]
mov eax, 0x69cb5f
mov dword [eax], ecx
mov byte [eax + 4], dl
mov ecx, dword [ebp - 4]
lea eax, [ebp - 8]
push eax
push ecx
push 5
push 0x69cb5f
mov dword [ebp - 8], esi
call edi
test eax, eax
jne 0x10023895
call dword [sym.imp.KERNEL32.dll_GetLastError]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret