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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
push esi
push edi
push 0x100594d0
push 0x84a91a
push 0xe8
call fcn.100cfb50
push 0x100594c0
push 0x84a6d7
push 0xe9
call fcn.100cfb50
push 0x10059130
push 0x84bcb0
push 0xe9
call fcn.100cfb50
push 0x100586d0
push 0x84bdb0
push 0xe9
call fcn.100cfb50
push 0x10058680
push 0x84bd50
push 0xe9
call fcn.100cfb50
push 0x10058270
push 0x664568
push 0xe8
call fcn.100cfb50
mov esi, dword [sym.imp.KERNEL32.dll_VirtualProtect]
add esp, 0x48
mov eax, 0x10058330
mov byte [ebp - 0x10], 0xe8
sub eax, 0x66458f
mov dword [ebp - 4], 0
mov dword [ebp - 0xf], eax
lea eax, [ebp - 4]
push eax
push 0x40
push 5
push 0x66458a
call esi
mov edi, dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
je 0x10059801
mov eax, dword [ebp - 0x10]
mov ecx, 0x66458a
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 0x10059803
call edi
lea eax, [ebp - 4]
mov word [ebp - 0x10], 0xc281
push eax
push 0x40
push 6
push 0x51c629
mov dword [ebp - 0xe], 0x101f624c
mov dword [ebp - 4], 0
call esi
test eax, eax
je 0x10059853
mov eax, dword [ebp - 0x10]
mov ecx, 0x51c629
mov dword [ecx], eax
mov ax, word [ebp - 0xc]
mov word [ecx + 4], ax
lea eax, [ebp - 8]
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 6
push ecx
call esi
test eax, eax
jne 0x10059855
call edi
lea eax, [ebp - 4]
mov byte [ebp - 0x10], 0x68
push eax
push 0x40
push 5
push 0x78f28a
mov dword [ebp - 0xf], 0x101f624c
mov dword [ebp - 4], 0
call esi
test eax, eax
je 0x100598a1
mov eax, dword [ebp - 0x10]
mov ecx, 0x78f28a
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 0x100598a3
call edi
lea eax, [ebp - 4]
mov word [ebp - 0x10], 0xb60f
push eax
push 0x40
push 7
push 0x95fed9
mov byte [ebp - 0xe], 0x89
mov dword [ebp - 0xd], 0x101f638c
mov dword [ebp - 4], 0
call esi
test eax, eax
je 0x100598fd
mov eax, dword [ebp - 0x10]
mov ecx, 0x95fed9
mov dword [ecx], eax
mov ax, word [ebp - 0xc]
mov word [ecx + 4], ax
mov al, byte [ebp - 0xa]
mov byte [ecx + 6], al
lea eax, [ebp - 8]
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 7
push ecx
call esi
test eax, eax
jne 0x100598ff
call edi
lea eax, [ebp - 4]
mov word [ebp - 0x10], 0x918b
push eax
push 0x40
push 6
push 0x95ff91
mov dword [ebp - 0xe], 0x101f64cc
mov dword [ebp - 4], 0
call esi
test eax, eax
je 0x1005994f
mov eax, dword [ebp - 0x10]
mov ecx, 0x95ff91
mov dword [ecx], eax
mov ax, word [ebp - 0xc]
mov word [ecx + 4], ax
lea eax, [ebp - 8]
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 6
push ecx
call esi
test eax, eax
jne 0x10059951
call edi
lea eax, [ebp - 4]
mov word [ebp - 0x10], 0x3d83
push eax
push 0x40
push 6
push 0x95e6b7
mov dword [ebp - 0xe], 0x101f6234
mov dword [ebp - 4], 0
call esi
test eax, eax
je 0x100599a1
mov eax, dword [ebp - 0x10]
mov ecx, 0x95e6b7
mov dword [ecx], eax
mov ax, word [ebp - 0xc]
mov word [ecx + 4], ax
lea eax, [ebp - 8]
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 6
push ecx
call esi
test eax, eax
jne 0x100599a3
call edi
lea eax, [ebp - 4]
mov word [ebp - 0x10], 0x583
push eax
push 0x40
push 6
push 0x95e70d
mov dword [ebp - 0xe], 0x101f6234
mov dword [ebp - 4], 0
call esi
test eax, eax
je 0x100599f3
mov eax, dword [ebp - 0x10]
mov ecx, 0x95e70d
mov dword [ecx], eax
mov ax, word [ebp - 0xc]
mov word [ecx + 4], ax
lea eax, [ebp - 8]
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 6
push ecx
call esi
test eax, eax
jne 0x100599f5
call edi
lea eax, [ebp - 4]
mov word [ebp - 0x10], 0x53b
push eax
push 0x40
push 6
push 0x95fe98
mov dword [ebp - 0xe], 0x101f6234
mov dword [ebp - 4], 0
call esi
test eax, eax
je 0x10059a45
mov eax, dword [ebp - 0x10]
mov ecx, 0x95fe98
mov dword [ecx], eax
mov ax, word [ebp - 0xc]
mov word [ecx + 4], ax
lea eax, [ebp - 8]
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 6
push ecx
call esi
test eax, eax
jne 0x10059a47
call edi
lea eax, [ebp - 4]
mov word [ebp - 0x10], 0x53b
push eax
push 0x40
push 6
push 0x95ff7f
mov dword [ebp - 0xe], 0x101f6234
mov dword [ebp - 4], 0
call esi
test eax, eax
je 0x10059a97
mov eax, dword [ebp - 0x10]
mov ecx, 0x95ff7f
mov dword [ecx], eax
mov ax, word [ebp - 0xc]
mov word [ecx + 4], ax
lea eax, [ebp - 8]
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 6
push ecx
call esi
test eax, eax
jne 0x10059a99
call edi
lea eax, [ebp - 4]
mov word [ebp - 0x10], 0xd3b
push eax
push 0x40
push 6
push 0x51c61b
mov dword [ebp - 0xe], 0x101f6234
mov dword [ebp - 4], 0
call esi
test eax, eax
je 0x10059ae9
mov eax, dword [ebp - 0x10]
mov ecx, 0x51c61b
mov dword [ecx], eax
mov ax, word [ebp - 0xc]
mov word [ecx + 4], ax
lea eax, [ebp - 8]
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 6
push ecx
call esi
test eax, eax
jne 0x10059aeb
call edi
lea eax, [ebp - 4]
mov word [ebp - 0x10], 0x5c7
push eax
push 0x40
push 6
push 0x64e2cc
mov dword [ebp - 0xe], 0x101f6234
mov dword [ebp - 4], 0
call esi
test eax, eax
je 0x10059b3b
mov eax, dword [ebp - 0x10]
mov ecx, 0x64e2cc
mov dword [ecx], eax
mov ax, word [ebp - 0xc]
mov word [ecx + 4], ax
lea eax, [ebp - 8]
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 6
push ecx
call esi
test eax, eax
jne 0x10059b3d
call edi
lea eax, [ebp - 4]
mov word [ebp - 0x10], 0x3d83
push eax
push 0x40
push 6
push 0x5c60cb
mov dword [ebp - 0xe], 0x101f6234
mov dword [ebp - 4], 0
call esi
test eax, eax
je 0x10059b8d
mov eax, dword [ebp - 0x10]
mov ecx, 0x5c60cb
mov dword [ecx], eax
mov ax, word [ebp - 0xc]
mov word [ecx + 4], ax
lea eax, [ebp - 8]
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 6
push ecx
call esi
test eax, eax
jne 0x10059b8f
call edi
lea eax, [ebp - 4]
mov word [ebp - 0x10], 0x3d83
push eax
push 0x40
push 6
push 0x814033
mov dword [ebp - 0xe], 0x101f6234
mov dword [ebp - 4], 0
call esi
test eax, eax
je 0x10059bdf
mov eax, dword [ebp - 0x10]
mov ecx, 0x814033
mov dword [ecx], eax
mov ax, word [ebp - 0xc]
mov word [ecx + 4], ax
lea eax, [ebp - 8]
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 6
push ecx
call esi
test eax, eax
jne 0x10059be1
call edi
lea eax, [ebp - 4]
mov word [ebp - 0x10], 0x3d83
push eax
push 0x40
push 6
push 0x5ad1b2
mov dword [ebp - 0xe], 0x101f6234
mov dword [ebp - 4], 0
call esi
test eax, eax
je 0x10059c31
mov eax, dword [ebp - 0x10]
mov ecx, 0x5ad1b2
mov dword [ecx], eax
mov ax, word [ebp - 0xc]
mov word [ecx + 4], ax
lea eax, [ebp - 8]
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 6
push ecx
call esi
test eax, eax
jne 0x10059c33
call edi
lea eax, [ebp - 4]
mov word [ebp - 0x10], 0x3d83
push eax
push 0x40
push 6
push 0x78f274
mov dword [ebp - 0xe], 0x101f6234
mov dword [ebp - 4], 0
call esi
test eax, eax
je 0x10059c83
mov eax, dword [ebp - 0x10]
mov ecx, 0x78f274
mov dword [ecx], eax
mov ax, word [ebp - 0xc]
mov word [ecx + 4], ax
lea eax, [ebp - 8]
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 6
push ecx
call esi
test eax, eax
jne 0x10059c85
call edi
lea eax, [ebp - 4]
mov word [ebp - 0x10], 0xaf0f
push eax
push 0x40
push 7
push 0x84ba51
mov byte [ebp - 0xe], 0xd
mov dword [ebp - 0xd], 0x101f6234
mov dword [ebp - 4], 0
call esi
test eax, eax
je 0x10059cdf
mov eax, dword [ebp - 0x10]
mov ecx, 0x84ba51
mov dword [ecx], eax
mov ax, word [ebp - 0xc]
mov word [ecx + 4], ax
mov al, byte [ebp - 0xa]
mov byte [ecx + 6], al
lea eax, [ebp - 8]
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 7
push ecx
call esi
test eax, eax
jne 0x10059ce1
call edi
lea eax, [ebp - 4]
mov word [ebp - 0x10], 0x3d83
push eax
push 0x40
push 6
push 0x84a47b
mov dword [ebp - 0xe], 0x101f6234
mov dword [ebp - 4], 0
call esi
test eax, eax
je 0x10059d31
mov eax, dword [ebp - 0x10]
mov ecx, 0x84a47b
mov dword [ecx], eax
mov ax, word [ebp - 0xc]
mov word [ecx + 4], ax
lea eax, [ebp - 8]
push eax
push dword [ebp - 4]
mov dword [ebp - 8], 0
push 6
push ecx
call esi
test eax, eax
jne 0x10059d33
call edi
push 0x10058660
push 0x5b8395
push 0xe8
call fcn.100cfb50
push 0x10058660
push 0x5b83ad
push 0xe8
call fcn.100cfb50
push 0x10058660
push 0x5b83c5
push 0xe8
call fcn.100cfb50
push 0x10058660
push 0x5b84eb
push 0xe8
call fcn.100cfb50
push 0x10058660
push 0x5b8506
push 0xe8
call fcn.100cfb50
push 0x10058660
push 0x5b851e
push 0xe8
call fcn.100cfb50
add esp, 0x48
push 0x10058650
push 0x5b83ee
push 0xe8
call fcn.100cfb50
push 0x10058650
push 0x5b84d3
push 0xe8
call fcn.100cfb50
push 0x10058650
push 0x5b856c
push 0xe8
call fcn.100cfb50
push 0x10058650
push 0x5b857a
push 0xe8
call fcn.100cfb50
add esp, 0x30
pop edi
pop esi
mov esp, ebp
pop ebp
ret