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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
push ebx
push esi
mov esi, dword [sym.imp.KERNEL32.dll_VirtualProtect]
lea eax, [ebp - 4]
push edi
push eax
push 0x40
push 5
push 0x5b993a
call esi
mov eax, 0x5b993a
mov dword [eax], 0x90909090
mov byte [eax + 4], 0x90
lea eax, [ebp - 4]
push eax
push dword [ebp - 4]
push 5
push 0x5b993a
call esi
push 0x1003fd80
push 0x5edda9
push 0xe8
call fcn.100d5c50
push 0x10040c90
push 0x4d7eb1
push 0xe8
call fcn.100d5c50
mov edi, dword [sym.imp.KERNEL32.dll_GetLastError]
add esp, 0x18
cmp dword [0x101f67f8], 4
jne 0x100415ca
mov ebx, dword [0x101f67fc]
lea eax, [ebp - 4]
push eax
push 0x40
push 4
push 0x4d75f0
dec ebx
mov dword [ebp - 4], 0
call esi
test eax, eax
je 0x1004151d
lea eax, [ebp - 8]
mov dword [0x4d75f0], ebx
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 4
push 0x4d75f0
call esi
test eax, eax
jne 0x1004151f
call edi
push 0x1003fa50
push 0x4d76fb
push 0xe8
call fcn.100d5c50
push 0x1003fa50
push 0x4d79c3
push 0xe8
call fcn.100d5c50
add esp, 0x18
mov dword [ebp - 4], 0
lea eax, [ebp - 4]
push eax
push 0x40
push 4
push 0x4d7a0e
call esi
test eax, eax
je 0x10041589
lea eax, [ebp - 8]
mov dword [0x4d7a0e], 0x1e0
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 4
push 0x4d7a0e
call esi
test eax, eax
jne 0x1004158b
call edi
lea eax, [ebp - 4]
mov dword [ebp - 4], 0
push eax
push 0x40
push 1
push 0x4d7a18
xor bl, bl
call esi
test eax, eax
je 0x100415c8
lea eax, [ebp - 8]
mov byte [0x4d7a18], bl
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 1
push 0x4d7a18
call esi
test eax, eax
jne 0x100415ca
call edi
cmp dword [0x101f6800], 4
jne 0x10041942
mov ebx, dword [0x101f6804]
lea eax, [ebp - 4]
push eax
push 0x40
push 4
push 0x4d6c2c
dec ebx
mov dword [ebp - 4], 0
call esi
test eax, eax
je 0x10041619
lea eax, [ebp - 8]
mov dword [0x4d6c2c], ebx
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 4
push 0x4d6c2c
call esi
test eax, eax
jne 0x1004161b
call edi
push 0x1003fa50
push 0x4d712a
push 0xe8
call fcn.100d5c50
push 0x10040e90
push 0x57f020
push 0xe9
call fcn.100d5c50
push 0x10041150
push 0x48e504
push 0xe8
call fcn.100d5c50
push 0x10041150
push 0x503986
push 0xe8
call fcn.100d5c50
add esp, 0x30
mov dword [ebp - 4], 0
lea eax, [ebp - 4]
push eax
push 0x40
push 4
push 0x4d7179
call esi
test eax, eax
je 0x100416ad
lea eax, [ebp - 8]
mov dword [0x4d7179], 0x1e0
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 4
push 0x4d7179
call esi
test eax, eax
jne 0x100416af
call edi
lea eax, [ebp - 4]
mov dword [ebp - 4], 0
push eax
push 0x40
push 1
push 0x4d7183
xor bl, bl
call esi
test eax, eax
je 0x100416ec
lea eax, [ebp - 8]
mov byte [0x4d7183], bl
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 1
push 0x4d7183
call esi
test eax, eax
jne 0x100416ee
call edi
mov eax, 0x10040bd0
mov byte [ebp - 0x10], 0xe9
sub eax, 0x4d87cd
mov dword [ebp - 4], 0
mov dword [ebp - 0xf], eax
lea eax, [ebp - 4]
push eax
push 0x40
push 5
push 0x4d87c8
call esi
test eax, eax
je 0x10041740
mov eax, dword [ebp - 0x10]
mov ecx, 0x4d87c8
mov dword [ecx], eax
mov al, byte [ebp - 0xc]
mov byte [ecx + 4], al
lea eax, [ebp - 8]
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 5
push ecx
call esi
test eax, eax
jne 0x10041742
call edi
mov eax, 0x10040bf0
mov byte [ebp - 0x10], 0xe9
sub eax, 0x4d8801
mov dword [ebp - 4], 0
mov dword [ebp - 0xf], eax
lea eax, [ebp - 4]
push eax
push 0x40
push 5
push 0x4d87fc
call esi
test eax, eax
je 0x10041794
mov eax, dword [ebp - 0x10]
mov ecx, 0x4d87fc
mov dword [ecx], eax
mov al, byte [ebp - 0xc]
mov byte [ecx + 4], al
lea eax, [ebp - 8]
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 5
push ecx
call esi
test eax, eax
jne 0x10041796
call edi
mov eax, 0x10040c10
mov byte [ebp - 0x10], 0xe9
sub eax, 0x5db530
mov dword [ebp - 4], 0
mov dword [ebp - 0xf], eax
lea eax, [ebp - 4]
push eax
push 0x40
push 5
push 0x5db52b
call esi
test eax, eax
je 0x100417e8
mov eax, dword [ebp - 0x10]
mov ecx, 0x5db52b
mov dword [ecx], eax
mov al, byte [ebp - 0xc]
mov byte [ecx + 4], al
lea eax, [ebp - 8]
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 5
push ecx
call esi
test eax, eax
jne 0x100417ea
call edi
push 5
call fcn.10131c6d
add esp, 4
mov dword [ebp - 4], 0
mov ebx, eax
lea eax, [ebp - 4]
push eax
push 0x40
push 5
mov dword [ebx], 0x90909090
push 0x63d1ce
mov byte [ebx + 4], 0x90
call esi
test eax, eax
je 0x10041840
mov eax, dword [ebx]
mov ecx, 0x63d1ce
mov dword [ecx], eax
mov al, byte [ebx + 4]
mov byte [ecx + 4], al
lea eax, [ebp - 8]
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 5
push ecx
call esi
test eax, eax
jne 0x10041842
call edi
mov eax, 0x10040c30
mov byte [ebp - 0x10], 0xe9
sub eax, 0x63d1d3
mov dword [ebp - 4], 0
mov dword [ebp - 0xf], eax
lea eax, [ebp - 4]
push eax
push 0x40
push 5
push 0x63d1ce
call esi
test eax, eax
je 0x10041894
mov eax, dword [ebp - 0x10]
mov ecx, 0x63d1ce
mov dword [ecx], eax
mov al, byte [ebp - 0xc]
mov byte [ecx + 4], al
lea eax, [ebp - 8]
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 5
push ecx
call esi
test eax, eax
jne 0x10041896
call edi
push 5
call fcn.10131c6d
add esp, 4
mov dword [ebp - 4], 0
mov ebx, eax
lea eax, [ebp - 4]
push eax
push 0x40
push 5
mov dword [ebx], 0x90909090
push 0x63d40f
mov byte [ebx + 4], 0x90
call esi
test eax, eax
je 0x100418ec
mov eax, dword [ebx]
mov ecx, 0x63d40f
mov dword [ecx], eax
mov al, byte [ebx + 4]
mov byte [ecx + 4], al
lea eax, [ebp - 8]
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 5
push ecx
call esi
test eax, eax
jne 0x100418ee
call edi
mov eax, 0x10040c60
mov byte [ebp - 0x10], 0xe9
sub eax, 0x63d414
mov dword [ebp - 4], 0
mov dword [ebp - 0xf], eax
lea eax, [ebp - 4]
push eax
push 0x40
push 5
push 0x63d40f
call esi
test eax, eax
je 0x10041940
mov eax, dword [ebp - 0x10]
mov ecx, 0x63d40f
mov dword [ecx], eax
mov al, byte [ebp - 0xc]
mov byte [ecx + 4], al
lea eax, [ebp - 8]
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 5
push ecx
call esi
test eax, eax
jne 0x10041942
call edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret