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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100516f5
mov eax, dword fs:[0]
push eax
sub esp, 0x1c
mov eax, dword [0x10067040]
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
xor edx, edx
cmp byte [0x100dd80a], dl
je 0x100057f3
mov ecx, 0xb2
nop word [eax + eax]
mov al, byte [edx + 0x1005c64c]
xor al, cl
inc ecx
mov byte [ebp + edx - 0x24], al
and ecx, 0x800000ff
jns 0x100057cd
dec ecx
or ecx, 0xffffff00
inc ecx
inc edx
cmp edx, 0x13
jl 0x100057b0
mov byte [ebp - 0x11], 0
lea eax, [ebp - 0x24]
mov dword [ebp - 4], 0
mov dword [ebp - 0x28], eax
push dword [ebp - 0x28]
mov eax, dword [0x100682a8]
call eax
add esp, 4
jmp 0x10005841
mov ecx, 0x40
nop dword [eax + eax]
mov al, byte [edx + 0x1005c660]
xor al, cl
inc ecx
mov byte [ebp + edx - 0x24], al
and ecx, 0x800000ff
jns 0x1000581d
dec ecx
or ecx, 0xffffff00
inc ecx
inc edx
cmp edx, 0x13
jl 0x10005800
mov byte [ebp - 0x11], 0
lea eax, [ebp - 0x24]
mov dword [ebp - 4], 1
mov dword [ebp - 0x28], eax
push dword [ebp - 0x28]
mov eax, dword [0x100682a8]
call eax
add esp, 4
xor edx, edx
cmp byte [0x100dd806], dl
je 0x10005893
mov ecx, 0x3e
mov al, byte [edx + str.zM_6]
xor al, cl
inc ecx
mov byte [ebp + edx - 0x24], al
and ecx, 0x800000ff
jns 0x1000586d
dec ecx
or ecx, 0xffffff00
inc ecx
inc edx
cmp edx, 0x13
jl 0x10005850
mov byte [ebp - 0x11], 0
lea eax, [ebp - 0x24]
mov dword [ebp - 4], 2
mov dword [ebp - 0x28], eax
push dword [ebp - 0x28]
mov eax, dword [0x100682a8]
call eax
add esp, 4
jmp 0x100058e1
mov ecx, 0x31
nop dword [eax + eax]
mov al, byte [edx + str.u_RCcY_MT_Z__42br]
xor al, cl
inc ecx
mov byte [ebp + edx - 0x24], al
and ecx, 0x800000ff
jns 0x100058bd
dec ecx
or ecx, 0xffffff00
inc ecx
inc edx
cmp edx, 0x13
jl 0x100058a0
mov byte [ebp - 0x11], 0
lea eax, [ebp - 0x24]
mov dword [ebp - 4], 3
mov dword [ebp - 0x28], eax
push dword [ebp - 0x28]
mov eax, dword [0x100682a8]
call eax
add esp, 4
xor edx, edx
cmp byte [0x100dd807], dl
je 0x10005933
mov ecx, 6
mov al, byte [edx + str._AgnOemobj0_]
xor al, cl
inc ecx
mov byte [ebp + edx - 0x20], al
and ecx, 0x800000ff
jns 0x1000590d
dec ecx
or ecx, 0xffffff00
inc ecx
inc edx
cmp edx, 0xc
jl 0x100058f0
mov byte [ebp - 0x14], 0
lea eax, [ebp - 0x20]
mov dword [ebp - 4], 4
mov dword [ebp - 0x28], eax
push dword [ebp - 0x28]
mov eax, dword [0x100682a8]
call eax
add esp, 4
jmp 0x10005981
mov ecx, 0x9d
nop dword [eax + eax]
mov al, byte [edx + 0x1005c6ac]
xor al, cl
inc ecx
mov byte [ebp + edx - 0x20], al
and ecx, 0x800000ff
jns 0x1000595d
dec ecx
or ecx, 0xffffff00
inc ecx
inc edx
cmp edx, 0xc
jl 0x10005940
mov byte [ebp - 0x14], 0
lea eax, [ebp - 0x20]
mov dword [ebp - 4], 5
mov dword [ebp - 0x28], eax
push dword [ebp - 0x28]
mov eax, dword [0x100682a8]
call eax
add esp, 4
xor edx, edx
cmp byte [0x100dd804], dl
je 0x100059d3
mov ecx, 0xbc
mov al, byte [edx + 0x1005c6bc]
xor al, cl
inc ecx
mov byte [ebp + edx - 0x1c], al
and ecx, 0x800000ff
jns 0x100059ad
dec ecx
or ecx, 0xffffff00
inc ecx
inc edx
cmp edx, 0xb
jl 0x10005990
mov byte [ebp - 0x11], 0
lea eax, [ebp - 0x1c]
mov dword [ebp - 4], 6
mov dword [ebp - 0x28], eax
push dword [ebp - 0x28]
mov eax, dword [0x100682a8]
call eax
add esp, 4
jmp 0x10005a21
mov ecx, 0x4c
nop dword [eax + eax]
mov al, byte [edx + str.g_t_.6ug]
xor al, cl
inc ecx
mov byte [ebp + edx - 0x1c], al
and ecx, 0x800000ff
jns 0x100059fd
dec ecx
or ecx, 0xffffff00
inc ecx
inc edx
cmp edx, 0xb
jl 0x100059e0
mov byte [ebp - 0x11], 0
lea eax, [ebp - 0x1c]
mov dword [ebp - 4], 7
mov dword [ebp - 0x28], eax
push dword [ebp - 0x28]
mov eax, dword [0x100682a8]
call eax
add esp, 4
xor edx, edx
cmp byte [0x100dd7fd], dl
je 0x10005a73
mov ecx, 0x6a
mov al, byte [edx + 0x1005c6d4]
xor al, cl
inc ecx
mov byte [ebp + edx - 0x20], al
and ecx, 0x800000ff
jns 0x10005a4d
dec ecx
or ecx, 0xffffff00
inc ecx
inc edx
cmp edx, 0xf
jl 0x10005a30
mov byte [ebp - 0x11], 0
lea eax, [ebp - 0x20]
mov dword [ebp - 4], 8
mov dword [ebp - 0x28], eax
push dword [ebp - 0x28]
mov eax, dword [0x100682a8]
call eax
add esp, 4
jmp 0x10005ac1
mov ecx, 0x70
nop dword [eax + eax]
mov al, byte [edx + 0x1005c6e4]
xor al, cl
inc ecx
mov byte [ebp + edx - 0x20], al
and ecx, 0x800000ff
jns 0x10005a9d
dec ecx
or ecx, 0xffffff00
inc ecx
inc edx
cmp edx, 0xf
jl 0x10005a80
mov byte [ebp - 0x11], 0
lea eax, [ebp - 0x20]
mov dword [ebp - 4], 9
mov dword [ebp - 0x28], eax
push dword [ebp - 0x28]
mov eax, dword [0x100682a8]
call eax
add esp, 4
xor edx, edx
cmp byte [0x100dd7ff], dl
je 0x10005b13
mov ecx, 0x2d
mov al, byte [edx + 0x1005c6f4]
xor al, cl
inc ecx
mov byte [ebp + edx - 0x24], al
and ecx, 0x800000ff
jns 0x10005aed
dec ecx
or ecx, 0xffffff00
inc ecx
inc edx
cmp edx, 0x13
jl 0x10005ad0
mov byte [ebp - 0x11], 0
lea eax, [ebp - 0x24]
mov dword [ebp - 4], 0xa
mov dword [ebp - 0x28], eax
push dword [ebp - 0x28]
mov eax, dword [0x100682a8]
call eax
add esp, 4
jmp 0x10005b61
mov ecx, 1
nop dword [eax + eax]
mov al, byte [edx + str.Q_v_ciOeeIcomt2]
xor al, cl
inc ecx
mov byte [ebp + edx - 0x24], al
and ecx, 0x800000ff
jns 0x10005b3d
dec ecx
or ecx, 0xffffff00
inc ecx
inc edx
cmp edx, 0x13
jl 0x10005b20
mov byte [ebp - 0x11], 0
lea eax, [ebp - 0x24]
mov dword [ebp - 4], 0xb
mov dword [ebp - 0x28], eax
push dword [ebp - 0x28]
mov eax, dword [0x100682a8]
call eax
add esp, 4
xor edx, edx
cmp byte [0x100dd80b], dl
je 0x10005bb3
mov ecx, 0x31
mov al, byte [edx + 0x1005c71c]
xor al, cl
inc ecx
mov byte [ebp + edx - 0x24], al
and ecx, 0x800000ff
jns 0x10005b8d
dec ecx
or ecx, 0xffffff00
inc ecx
inc edx
cmp edx, 0x10
jl 0x10005b70
mov byte [ebp - 0x14], 0
lea eax, [ebp - 0x24]
mov dword [ebp - 4], 0xc
mov dword [ebp - 0x28], eax
push dword [ebp - 0x28]
mov eax, dword [0x100682a8]
call eax
add esp, 4
jmp 0x10005c01
mov ecx, 0x62
nop dword [eax + eax]
mov al, byte [edx + 0x1005c730]
xor al, cl
inc ecx
mov byte [ebp + edx - 0x24], al
and ecx, 0x800000ff
jns 0x10005bdd
dec ecx
or ecx, 0xffffff00
inc ecx
inc edx
cmp edx, 0x10
jl 0x10005bc0
mov byte [ebp - 0x14], 0
lea eax, [ebp - 0x24]
mov dword [ebp - 4], 0xd
mov dword [ebp - 0x28], eax
push dword [ebp - 0x28]
mov eax, dword [0x100682a8]
call eax
add esp, 4
xor edx, edx
cmp byte [0x100dd805], dl
je 0x10005c53
mov ecx, 0x5c
mov al, byte [edx + str.we3_f]
xor al, cl
inc ecx
mov byte [ebp + edx - 0x20], al
and ecx, 0x800000ff
jns 0x10005c2d
dec ecx
or ecx, 0xffffff00
inc ecx
inc edx
cmp edx, 0xd
jl 0x10005c10
mov byte [ebp - 0x13], 0
lea eax, [ebp - 0x20]
mov dword [ebp - 4], 0xe
mov dword [ebp - 0x28], eax
push dword [ebp - 0x28]
mov eax, dword [0x100682a8]
call eax
add esp, 4
jmp 0x10005ca1
mov ecx, 0x2c
nop dword [eax + eax]
mov al, byte [edx + str._ak_C_s_ZS_B]
xor al, cl
inc ecx
mov byte [ebp + edx - 0x20], al
and ecx, 0x800000ff
jns 0x10005c7d
dec ecx
or ecx, 0xffffff00
inc ecx
inc edx
cmp edx, 0xd
jl 0x10005c60
mov byte [ebp - 0x13], 0
lea eax, [ebp - 0x20]
mov dword [ebp - 4], 0xf
mov dword [ebp - 0x28], eax
push dword [ebp - 0x28]
mov eax, dword [0x100682a8]
call eax
add esp, 4
cmp byte [0x100dd7fe], 0
mov dword [ebp - 0x1c], 0x776f6853
mov dword [ebp - 0x18], 0x20445548
je 0x10005cda
mov word [ebp - 0x14], 0x30
lea eax, [ebp - 0x1c]
mov dword [ebp - 4], 0x10
mov dword [ebp - 0x28], eax
push dword [ebp - 0x28]
mov eax, dword [0x100682a8]
call eax
add esp, 4
jmp 0x10005cfa
mov word [ebp - 0x14], 0x31
lea eax, [ebp - 0x1c]
mov dword [ebp - 4], 0x11
mov dword [ebp - 0x28], eax
push dword [ebp - 0x28]
mov eax, dword [0x100682a8]
call eax
add esp, 4
cmp byte [0x100dd808], 0
mov dword [ebp - 0x1c], 0x6172542b
mov dword [ebp - 0x18], 0x73726563
mov byte [ebp - 0x12], 0
je 0x10005d37
mov word [ebp - 0x14], 0x3120
lea eax, [ebp - 0x1c]
mov dword [ebp - 4], 0x12
mov dword [ebp - 0x28], eax
push dword [ebp - 0x28]
mov eax, dword [0x100682a8]
call eax
add esp, 4
jmp 0x10005d57
mov word [ebp - 0x14], 0x3020
lea eax, [ebp - 0x1c]
mov dword [ebp - 4], 0x13
mov dword [ebp - 0x28], eax
push dword [ebp - 0x28]
mov eax, dword [0x100682a8]
call eax
add esp, 4
xor eax, eax
mov ebx, 0x6a
cmp byte [0x100dd809], al
setne al
mov dword [0x38452cb8], eax
lea eax, [ebp - 0x28]
cmp byte [0x100682b4], 0
mov esi, dword [0x100dd890]
mov edi, dword [sym.imp.KERNEL32.dll_VirtualProtect]
push eax
push 0x40
push 2
push esi
je 0x10005d91
call edi
mov word [esi], bx
jmp 0x10005d9b
call edi
mov eax, 0x16a
mov word [esi], ax
lea eax, [ebp - 0x28]
push eax
push dword [ebp - 0x28]
push 2
push esi
call edi
cmp byte [0x100dd8cc], 0
lea eax, [ebp - 0x28]
mov esi, dword [0x100683c8]
push eax
push 0x40
push 2
push esi
je 0x10005dc6
call edi
mov word [esi], bx
jmp 0x10005dd0
call edi
mov eax, 0x46a
mov word [esi], ax
lea eax, [ebp - 0x28]
push eax
push dword [ebp - 0x28]
push 2
push esi
call edi
cmp byte [0x100682b5], 0
lea eax, [ebp - 0x28]
mov esi, dword [0x100683c4]
push eax
push 0x40
push 2
push esi
je 0x10005e00
call edi
mov eax, 0x16a
mov word [esi], ax
jmp 0x10005e05
call edi
mov word [esi], bx
lea eax, [ebp - 0x28]
push eax
push dword [ebp - 0x28]
push 2
push esi
call edi
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.1004d226
mov esp, ebp
pop ebp
ret