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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x24
cmp byte [0x110f6973], 2
push ebx
mov ebx, dword [sym.imp.KERNEL32.dll_VirtualProtect]
push esi
push edi
mov edi, ecx
jne 0x11055113
test edi, edi
je 0x11055113
cmp edi, dword [0x110e51e0]
jne 0x11055113
lea eax, [ebp - 8]
mov byte [0x110f6973], 1
push eax
push 0x40
push 1
push 0x422bde
call ebx
lea eax, [ebp - 8]
mov byte [0x422bde], 1
push eax
push dword [ebp - 8]
push 1
push 0x422bde
call ebx
cmp byte [0x110d720d], 0
je 0x110552ea
mov eax, dword [0x110c09b8]
mov eax, dword [eax]
mov eax, dword [eax + 0x64]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x14]
mov dword [ebp - 0xc], eax
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp - 0x10]
call dword [0x110af1d0]
cmp eax, 0xffffffff
je 0x11055264
mov eax, dword [ebp - 0x14]
mov al, byte [eax + 0x20]
and al, 1
je 0x11055264
mov eax, dword [0x110e5474]
mov ecx, dword [0x110e5478]
cmp eax, ecx
je 0x1105517b
mov edx, dword [0x110c09b8]
mov edx, dword [edx]
lea ecx, [ecx]
cmp dword [eax], edx
je 0x110551b0
add eax, 0xc
cmp eax, ecx
jne 0x11055170
mov eax, dword [0x110c09b8]
mov ecx, dword [eax]
mov eax, dword [0x6648c0]
mov dword [ebp - 0x20], ecx
test eax, eax
je 0x11055209
cmp dword [eax + 8], ecx
je 0x110551a5
cmp dword [eax + 4], 0xa
je 0x110551a5
mov eax, dword [eax + 0x10]
test eax, eax
je 0x11055209
cmp dword [eax + 8], ecx
jne 0x11055193
test eax, eax
je 0x11055209
mov eax, dword [eax]
mov dword [ebp - 0x1c], eax
jmp 0x11055210
mov ecx, dword [0x6648c0]
test ecx, ecx
je 0x110551da
cmp dword [ecx + 8], edx
je 0x110551d2
nop
cmp dword [ecx + 4], 0xa
je 0x110551d2
mov ecx, dword [ecx + 0x10]
test ecx, ecx
je 0x110551da
cmp dword [ecx + 8], edx
jne 0x110551c0
test ecx, ecx
je 0x110551da
mov ebx, dword [ecx]
jmp 0x110551dc
xor ebx, ebx
mov ecx, dword [0x110c09ec]
mov dword [eax + 4], ebx
mov esi, dword [ecx]
mov dword [eax + 8], esi
mov eax, dword [0x110c09b8]
mov eax, dword [eax]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
call dword [0x110af66c]
push esi
push ebx
push eax
push 0
push str._Switch___s_update_sneak:_time__d__state__d_n
jmp 0x11055244
mov dword [ebp - 0x1c], 0
mov eax, dword [0x110c09ec]
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x20]
push eax
call fcn.11056080
mov eax, dword [0x110c09b8]
mov eax, dword [eax]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
call dword [0x110af66c]
push dword [ebp - 0x18]
push dword [ebp - 0x1c]
push eax
push 0
push str._Switch___s_save_sneak:_time__d__state__d_n
call fcn.11004550
mov eax, dword [0x110c09b8]
add esp, 0x14
mov eax, dword [eax]
mov dword [ebp - 0x14], eax
mov edx, 0xa
mov eax, dword [ebp - 0x14]
call dword [0x110af1a8]
mov eax, dword [0x110c09bc]
xor bl, bl
cmp dword [eax], 0
jne 0x110552c7
mov eax, dword [0x110c09b8]
mov eax, dword [eax]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
call dword [0x110af458]
mov esi, eax
test esi, esi
je 0x110552c7
mov ecx, dword [0x110c09b8]
mov bl, 1
mov ecx, dword [ecx]
mov dword [ebp - 0x14], ecx
mov eax, dword [ebp - 0x14]
call dword [0x110af450]
mov ecx, dword [esi + 0x24]
mov edx, eax
and ecx, 0xfeffffff
or ecx, 0x2000000
mov dword [esi + 0x24], ecx
test edx, edx
je 0x110552c7
mov eax, dword [edx + 0x24]
and eax, 0xfdffffff
or eax, 0x1000000
mov dword [edx + 0x24], eax
mov cl, bl
call fcn.11055020
test edi, edi
je 0x110552dc
cmp edi, dword [0x110e51e0]
jne 0x110552e4
test edi, edi
setne cl
call fcn.11054a20
mov ebx, dword [sym.imp.KERNEL32.dll_VirtualProtect]
test edi, edi
je 0x11055418
mov eax, dword [0x110e51e0]
test eax, eax
jne 0x11055302
mov eax, dword [0x110c09b8]
mov eax, dword [eax]
cmp edi, eax
je 0x11055418
cmp byte [0x110d720d], 0
jne 0x11055321
cmp byte [0x110e5470], 0
jne 0x11055321
call fcn.11054290
mov ecx, edi
call fcn.110544d0
cmp byte [0x110fca74], 0
jne 0x11055418
sub esp, 0x28
mov byte [0x110fca74], 1
mov eax, esp
mov ecx, 0x110e4cd0
mov dword [eax], 0x110b8a3c
mov dword [eax + 0x24], eax
lea eax, [ebp - 0x20]
push eax
call fcn.110053e0
lea ecx, [ebp - 0x20]
call fcn.110052a0
lea eax, [ebp - 8]
push eax
push 0x40
push 4
push 0x42e25c
call ebx
mov eax, 0x11054e40
sub eax, 0x42e260
mov dword [0x42e25c], eax
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 4
push 0x42e25c
call ebx
lea eax, [ebp - 8]
push eax
push 0x40
push 4
push 0x49eb0a
call ebx
mov eax, 0x11054ea0
sub eax, 0x49eb0e
mov dword [0x49eb0a], eax
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 4
push 0x49eb0a
call ebx
lea eax, [ebp - 8]
push eax
push 0x40
push 4
push 0x458243
call ebx
mov eax, 0x11054d70
sub eax, 0x458247
mov dword [0x458243], eax
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 4
push 0x458243
call ebx
lea eax, [ebp - 8]
push eax
push 0x40
push 4
push 0x458327
call ebx
mov eax, 0x11054db0
sub eax, 0x45832b
mov dword [0x458327], eax
lea eax, [ebp - 8]
push eax
push dword [ebp - 8]
push 4
push 0x458327
call ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret