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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
mov eax, dword [0x1018b06c]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [0x101ee7b8]
push esi
mov esi, dword [sym.imp.KERNEL32.dll_VirtualProtect]
cmp eax, 3
jne 0x1005c89c
lea eax, [ebp - 8]
push eax
push 0x40
push 1
push 0x4030d4
call esi
lea eax, [ebp - 8]
mov byte [0x4030d4], 6
push eax
push dword [ebp - 8]
push 1
push 0x4030d4
call esi
mov eax, dword [0x101ee7b8]
cmp eax, 2
jne 0x1005c8cc
lea eax, [ebp - 8]
push eax
push 0x40
push 1
push 0x4030d4
call esi
lea eax, [ebp - 8]
mov byte [0x4030d4], 5
push eax
push dword [ebp - 8]
push 1
push 0x4030d4
call esi
mov eax, dword [0x101ee7b8]
cmp eax, 1
jne 0x1005c8f7
lea eax, [ebp - 8]
push eax
push 0x40
push 1
push 0x4030d4
call esi
lea eax, [ebp - 8]
mov byte [0x4030d4], 4
push eax
push dword [ebp - 8]
push 1
push 0x4030d4
call esi
cmp dword [0x101ee7c8], 1
jne 0x1005c926
lea eax, [ebp - 8]
push eax
push 0x40
push 1
push 0x5528a0
call esi
lea eax, [ebp - 8]
mov byte [0x5528a0], 0xc3
push eax
push dword [ebp - 8]
push 1
push 0x5528a0
call esi
cmp dword [0x101ee7c0], 1
push ebx
push edi
mov edi, dword [sym.imp.KERNEL32.dll_GetLastError]
jne 0x1005c9b4
lea eax, [ebp - 8]
push eax
push 0x40
push 0xc8
push 0x8193f0
call esi
push 0xc8
push 0x90
push 0x8193f0
call fcn.10123cc0
add esp, 0xc
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 0xc8
push 0x8193f0
call esi
lea eax, [ebp - 8]
mov dword [ebp - 8], 0
push eax
push 0x40
push 1
push 0x7d3a4b
or bl, 0xff
call esi
test eax, eax
je 0x1005c9b2
mov eax, 0x7d3a4b
mov byte [eax], bl
lea eax, [ebp - 0xc]
push eax
push dword [ebp - 8]
mov dword [ebp - 0xc], 0
push 1
push 0x7d3a4b
call esi
test eax, eax
jne 0x1005c9b4
call edi
cmp dword [0x102fbb08], 0
je 0x1005c9f9
lea eax, [ebp - 8]
push eax
push 0x40
push 0x11e
push 0x771310
call esi
push 0x11e
push 0x90
push 0x771310
call fcn.10123cc0
add esp, 0xc
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 0x11e
push 0x771310
call esi
cmp dword [0x102fbb04], 0
je 0x1005ca3e
lea eax, [ebp - 8]
push eax
push 0x40
push 0x10c50
push 0x74cd30
call esi
push 0x10c50
push 0x90
push 0x74cd30
call fcn.10123cc0
add esp, 0xc
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 0x10c50
push 0x74cd30
call esi
cmp dword [0x102fbb00], 0
je 0x1005cabf
lea eax, [ebp - 8]
push eax
push 0x40
push 0x2fe2
push 0x626190
call esi
push 0x2fe2
push 0x90
push 0x626190
call fcn.10123cc0
add esp, 0xc
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 0x2fe2
push 0x626190
call esi
lea eax, [ebp - 8]
push eax
push 0x40
push 0x87a2
push 0x72d1b0
call esi
push 0x87a2
push 0x90
push 0x72d1b0
call fcn.10123cc0
add esp, 0xc
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 0x87a2
push 0x72d1b0
call esi
cmp dword [0x101ee83c], 1
jne 0x1005cbcc
lea eax, [ebp - 8]
mov dword [ebp - 8], 0
push eax
push 0x40
push 1
push 0x7af176
mov bl, 9
call esi
test eax, eax
je 0x1005cb0a
mov eax, 0x7af176
mov byte [eax], bl
lea eax, [ebp - 0xc]
push eax
push dword [ebp - 8]
mov dword [ebp - 0xc], 0
push 1
push 0x7af176
call esi
test eax, eax
jne 0x1005cb0c
call edi
lea eax, [ebp - 8]
mov dword [ebp - 8], 0
push eax
push 0x40
push 1
push 0x7af416
mov bl, 9
call esi
test eax, eax
je 0x1005cb4a
mov eax, 0x7af416
mov byte [eax], bl
lea eax, [ebp - 0xc]
push eax
push dword [ebp - 8]
mov dword [ebp - 0xc], 0
push 1
push 0x7af416
call esi
test eax, eax
jne 0x1005cb4c
call edi
lea eax, [ebp - 8]
mov dword [ebp - 8], 0
push eax
push 0x40
push 1
push 0x7af796
mov bl, 9
call esi
test eax, eax
je 0x1005cb8a
mov eax, 0x7af796
mov byte [eax], bl
lea eax, [ebp - 0xc]
push eax
push dword [ebp - 8]
mov dword [ebp - 0xc], 0
push 1
push 0x7af796
call esi
test eax, eax
jne 0x1005cb8c
call edi
lea eax, [ebp - 8]
mov dword [ebp - 8], 0
push eax
push 0x40
push 1
push 0x7b0316
mov bl, 9
call esi
test eax, eax
je 0x1005cbca
mov eax, 0x7b0316
mov byte [eax], bl
lea eax, [ebp - 0xc]
push eax
push dword [ebp - 8]
mov dword [ebp - 0xc], 0
push 1
push 0x7b0316
call esi
test eax, eax
jne 0x1005cbcc
call edi
cmp dword [0x101ee7c4], 1
pop edi
pop ebx
jne 0x1005cdf1
lea eax, [ebp - 8]
push eax
push 0x40
push 1
push 0x5b89c6
call esi
lea eax, [ebp - 8]
mov byte [0x5b89c6], 0
push eax
push dword [ebp - 8]
push 1
push 0x5b89c6
call esi
lea eax, [ebp - 8]
push eax
push 0x40
push 1
push 0x5b89cc
call esi
lea eax, [ebp - 8]
mov byte [0x5b89cc], 0
push eax
push dword [ebp - 8]
push 1
push 0x5b89cc
call esi
lea eax, [ebp - 8]
push eax
push 0x40
push 1
push 0x5b89d2
call esi
lea eax, [ebp - 8]
mov byte [0x5b89d2], 0
push eax
push dword [ebp - 8]
push 1
push 0x5b89d2
call esi
lea eax, [ebp - 8]
push eax
push 0x40
push 1
push 0x5b89d8
call esi
lea eax, [ebp - 8]
mov byte [0x5b89d8], 0
push eax
push dword [ebp - 8]
push 1
push 0x5b89d8
call esi
lea eax, [ebp - 8]
push eax
push 0x40
push 1
push 0x5b89de
call esi
lea eax, [ebp - 8]
mov byte [0x5b89de], 0
push eax
push dword [ebp - 8]
push 1
push 0x5b89de
call esi
lea eax, [ebp - 8]
push eax
push 0x40
push 1
push 0x5b89e4
call esi
lea eax, [ebp - 8]
mov byte [0x5b89e4], 0
push eax
push dword [ebp - 8]
push 1
push 0x5b89e4
call esi
lea eax, [ebp - 8]
push eax
push 0x40
push 2
push 0x5b89ea
call esi
xor eax, eax
mov word [0x5b89ea], ax
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 2
push 0x5b89ea
call esi
lea eax, [ebp - 8]
push eax
push 0x40
push 1
push 0x5c6316
call esi
lea eax, [ebp - 8]
mov byte [0x5c6316], 0
push eax
push dword [ebp - 8]
push 1
push 0x5c6316
call esi
lea eax, [ebp - 8]
push eax
push 0x40
push 1
push 0x5c6329
call esi
lea eax, [ebp - 8]
mov byte [0x5c6329], 0
push eax
push dword [ebp - 8]
push 1
push 0x5c6329
call esi
lea eax, [ebp - 8]
push eax
push 0x40
push 1
push 0x5c633c
call esi
lea eax, [ebp - 8]
mov byte [0x5c633c], 0
push eax
push dword [ebp - 8]
push 1
push 0x5c633c
call esi
lea eax, [ebp - 8]
push eax
push 0x40
push 1
push 0x5c634f
call esi
lea eax, [ebp - 8]
mov byte [0x5c634f], 0
push eax
push dword [ebp - 8]
push 1
push 0x5c634f
call esi
lea eax, [ebp - 8]
push eax
push 0x40
push 1
push 0x5c6362
call esi
lea eax, [ebp - 8]
mov byte [0x5c6362], 0
push eax
push dword [ebp - 8]
push 1
push 0x5c6362
call esi
lea eax, [ebp - 8]
push eax
push 0x40
push 1
push 0x5c6375
call esi
lea eax, [ebp - 8]
mov byte [0x5c6375], 0
push eax
push dword [ebp - 8]
push 1
push 0x5c6375
call esi
lea eax, [ebp - 8]
push eax
push 0x40
push 2
push 0x5c6388
call esi
xor eax, eax
mov word [0x5c6388], ax
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 2
push 0x5c6388
call esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
pop esi
call fcn.100d52b0
mov esp, ebp
pop ebp
ret