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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10058e40
mov eax, dword fs:[0]
push eax
sub esp, 0x30
mov eax, dword [0x1008d040]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
cmp byte [0x100905bb], 0
je 0x10032123
mov edx, 0x10032050
mov ecx, 0x109f2561
call fcn.100043c0
mov esi, dword [sym.imp.KERNEL32.dll_VirtualProtect]
mov eax, 0x10032040
sub eax, 0x1095e336
mov dword [ebp - 0x38], eax
lea eax, [ebp - 0x14]
push eax
push 0x40
push 5
push 0x1095e331
call esi
mov edi, dword [sym.imp.KERNEL32.dll_FlushInstructionCache]
mov ebx, dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
test eax, eax
je 0x10032184
mov eax, dword [ebp - 0x38]
mov byte [0x1095e331], 0xe9
mov dword [0x1095e332], eax
lea eax, [ebp - 0x14]
push eax
push dword [ebp - 0x14]
push 5
push 0x1095e331
call esi
test eax, eax
je 0x10032184
push 5
push 0x1095e331
call ebx
push eax
call edi
mov eax, 0x10032030
sub eax, 0x109ec834
mov dword [ebp - 0x38], eax
lea eax, [ebp - 0x18]
push eax
push 0x40
push 5
push 0x109ec82f
call esi
test eax, eax
je 0x100321d3
mov eax, dword [ebp - 0x38]
mov byte [0x109ec82f], 0xe9
mov dword [0x109ec830], eax
lea eax, [ebp - 0x18]
push eax
push dword [ebp - 0x18]
push 5
push 0x109ec82f
call esi
test eax, eax
je 0x100321d3
push 5
push 0x109ec82f
call ebx
push eax
call edi
mov eax, 0x10031b40
sub eax, 0x10908021
mov dword [ebp - 0x38], eax
lea eax, [ebp - 0x1c]
push eax
push 0x40
push 5
push 0x1090801c
call esi
test eax, eax
je 0x10032222
mov eax, dword [ebp - 0x38]
mov byte [0x1090801c], 0xe9
mov dword [0x1090801d], eax
lea eax, [ebp - 0x1c]
push eax
push dword [ebp - 0x1c]
push 5
push 0x1090801c
call esi
test eax, eax
je 0x10032222
push 5
push 0x1090801c
call ebx
push eax
call edi
mov eax, 0x10031820
sub eax, 0x1095ca78
mov dword [ebp - 0x38], eax
lea eax, [ebp - 0x20]
push eax
push 0x40
push 5
push 0x1095ca73
call esi
test eax, eax
je 0x10032271
mov eax, dword [ebp - 0x38]
mov byte [0x1095ca73], 0xe9
mov dword [0x1095ca74], eax
lea eax, [ebp - 0x20]
push eax
push dword [ebp - 0x20]
push 5
push 0x1095ca73
call esi
test eax, eax
je 0x10032271
push 5
push 0x1095ca73
call ebx
push eax
call edi
mov eax, 0x100313f0
sub eax, 0x1095ba80
mov dword [ebp - 0x38], eax
lea eax, [ebp - 0x24]
push eax
push 0x40
push 5
push 0x1095ba7b
call esi
test eax, eax
je 0x100322c0
mov eax, dword [ebp - 0x38]
mov byte [0x1095ba7b], 0xe9
mov dword [0x1095ba7c], eax
lea eax, [ebp - 0x24]
push eax
push dword [ebp - 0x24]
push 5
push 0x1095ba7b
call esi
test eax, eax
je 0x100322c0
push 5
push 0x1095ba7b
call ebx
push eax
call edi
mov eax, 0x1002f3b0
sub eax, 0x1095b98b
mov dword [ebp - 0x38], eax
lea eax, [ebp - 0x28]
push eax
push 0x40
push 5
push 0x1095b986
call esi
test eax, eax
je 0x1003230f
mov eax, dword [ebp - 0x38]
mov byte [0x1095b986], 0xe9
mov dword [0x1095b987], eax
lea eax, [ebp - 0x28]
push eax
push dword [ebp - 0x28]
push 5
push 0x1095b986
call esi
test eax, eax
je 0x1003230f
push 5
push 0x1095b986
call ebx
push eax
call edi
mov eax, 0x10031430
sub eax, 0x10b0f9a6
mov dword [ebp - 0x38], eax
lea eax, [ebp - 0x2c]
push eax
push 0x40
push 5
push 0x10b0f9a1
call esi
test eax, eax
je 0x1003235e
mov eax, dword [ebp - 0x38]
mov byte [0x10b0f9a1], 0xe9
mov dword [0x10b0f9a2], eax
lea eax, [ebp - 0x2c]
push eax
push dword [ebp - 0x2c]
push 5
push 0x10b0f9a1
call esi
test eax, eax
je 0x1003235e
push 5
push 0x10b0f9a1
call ebx
push eax
call edi
mov eax, 0x10031470
sub eax, 0x1095c9b6
mov dword [ebp - 0x38], eax
lea eax, [ebp - 0x30]
push eax
push 0x40
push 5
push 0x1095c9b1
call esi
test eax, eax
je 0x100323ad
mov eax, dword [ebp - 0x38]
mov byte [0x1095c9b1], 0xe9
mov dword [0x1095c9b2], eax
lea eax, [ebp - 0x30]
push eax
push dword [ebp - 0x30]
push 5
push 0x1095c9b1
call esi
test eax, eax
je 0x100323ad
push 5
push 0x1095c9b1
call ebx
push eax
call edi
mov eax, 0x10031ad0
sub eax, 0x1096ca0c
mov dword [ebp - 0x38], eax
lea eax, [ebp - 0x34]
push eax
push 0x40
push 5
push 0x1096ca07
call esi
test eax, eax
je 0x100323fc
mov eax, dword [ebp - 0x38]
mov byte [0x1096ca07], 0xe9
mov dword [0x1096ca08], eax
lea eax, [ebp - 0x34]
push eax
push dword [ebp - 0x34]
push 5
push 0x1096ca07
call esi
test eax, eax
je 0x100323fc
push 5
push 0x1096ca07
call ebx
push eax
call edi
mov edx, 0x10031af0
mov ecx, 0x1097827b
call fcn.100043c0
mov edx, 0x10031b10
mov ecx, 0x1096bc07
call fcn.100043c0
mov edx, 0x10031e30
mov ecx, 0x109ec46b
call fcn.100043c0
mov edx, 0x10031da0
mov ecx, 0x10a0b126
call fcn.100043c0
mov edx, 0x10031e00
mov ecx, 0x10af8e07
call fcn.100043c0
mov edx, 0x10031dd0
mov ecx, 0x10afb10c
call fcn.100043c0
mov edx, 0x100318f0
mov ecx, 0x10a0fdc0
call fcn.100043c0
mov edx, 0x10031910
mov ecx, 0x10a0fe4b
call fcn.100043c0
mov edx, 0x10032020
mov ecx, 0x1095e417
call fcn.100043c0
mov edx, 0x10032020
mov ecx, 0x1095e43c
call fcn.100043c0
mov edx, 0x100320b0
mov ecx, 0x10b0fc5e
call fcn.100043c0
cmp byte [0x100905ba], 0
je 0x100324d5
cmp byte [0x100905b7], 0
je 0x100324d5
push ecx
lea edx, [ebp - 0x39]
mov byte [ebp - 0x39], 2
mov ecx, 0x1095bec8
call fcn.10004100
lea edx, [ebp - 0x39]
mov ecx, 0x1095bf40
call fcn.10004100
add esp, 4
mov edx, 0x100320d0
mov ecx, 0x109bf1bd
call fcn.100043c0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.100574bd
mov esp, ebp
pop ebp
ret