Function at 0x100216f4
Capabilities:
Contain obfuscated stackstrings
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x2c
movaps xmm0, xmmword [0x1008e260]
push ebx
push esi
xor ebx, ebx
mov esi, ecx
push edi
movups xmmword [esp + 0xc], xmm0
mov edx, ebx
mov al, byte [esp + 0xc]
xor byte [esp + edx + 0xd], al
inc edx
cmp edx, 0xe
jb 0x10021712
lea eax, [esp + 0xd]
mov byte [esp + 0x1b], bl
push eax
lea ecx, [esp + 0x24]
call fcn.10001f6a
mov ecx, dword [esi + 0xc]
lea edx, [esp + 0x20]
call fcn.10010042
xor edi, edi
mov dword [esi], eax
push ebx
inc edi
lea ecx, [esp + 0x24]
push edi
call fcn.10001e1f
mov cl, 0x6a
mov dword [esp + 0xc], 0x120f3e6a
mov dword [esp + 0x10], 0xb28351e
mov eax, ebx
mov dword [esp + 0x14], 0x9040b06
mov word [esp + 0x18], 0xf
xor byte [esp + eax + 0xd], cl
inc eax
cmp eax, 0xc
jae 0x10021781
mov cl, byte [esp + 0xc]
jmp 0x10021771
lea eax, [esp + 0xd]
mov byte [esp + 0x19], bl
push eax
lea ecx, [esp + 0x24]
call fcn.10001f6a
mov ecx, dword [esi + 0xc]
lea edx, [esp + 0x20]
call fcn.10010042
push ebx
push edi
lea ecx, [esp + 0x28]
mov dword [esi + 4], eax
call fcn.10001e1f
mov cl, 0x36
mov dword [esp + 0xc], 0x58427436
mov dword [esp + 0x10], 0x44426569
mov eax, ebx
mov dword [esp + 0x14], 0x42515853
mov word [esp + 0x18], 0x5e
xor byte [esp + eax + 0xd], cl
inc eax
cmp eax, 0xc
jae 0x100217e0
mov cl, byte [esp + 0xc]
jmp 0x100217d0
lea eax, [esp + 0xd]
mov byte [esp + 0x19], bl
push eax
lea ecx, [esp + 0x24]
call fcn.10001f6a
mov ecx, dword [esi + 0xc]
lea edx, [esp + 0x20]
call fcn.10010042
push ebx
push edi
lea ecx, [esp + 0x28]
mov dword [esi + 0x10], eax
call fcn.10001e1f
mov cl, 0x6d
mov dword [esp + 0xc], 0x3192f6d
mov dword [esp + 0x10], 0xc193e32
mov eax, ebx
mov dword [esp + 0x14], 0xc030400
mov byte [esp + 0x18], bl
xor byte [esp + eax + 0xd], cl
inc eax
cmp eax, 0xb
jae 0x1002183c
mov cl, byte [esp + 0xc]
jmp 0x1002182c
lea eax, [esp + 0xd]
mov byte [esp + 0x18], bl
push eax
lea ecx, [esp + 0x24]
call fcn.10001f6a
mov ecx, dword [esi + 0xc]
lea edx, [esp + 0x20]
call fcn.10010042
push ebx
push edi
lea ecx, [esp + 0x28]
mov dword [esi + 0x14], eax
call fcn.10001e1f
mov cl, 0x49
mov dword [esp + 0xc], 0x273d0b49
mov dword [esp + 0x10], 0x312c0d16
mov eax, ebx
mov dword [esp + 0x14], 0x203b2c3d
mov word [esp + 0x18], 0x303d
mov byte [esp + 0x1a], bl
xor byte [esp + eax + 0xd], cl
inc eax
cmp eax, 0xd
jae 0x1002189f
mov cl, byte [esp + 0xc]
jmp 0x1002188f
lea eax, [esp + 0xd]
mov byte [esp + 0x1a], bl
push eax
lea ecx, [esp + 0x24]
call fcn.10001f6a
mov ecx, dword [esi + 0xc]
lea edx, [esp + 0x20]
call fcn.10010042
push ebx
push edi
lea ecx, [esp + 0x28]
mov dword [esi + 0x18], eax
call fcn.10001e1f
movaps xmm0, xmmword [0x1008ec30]
mov ecx, ebx
movups xmmword [esp + 0xc], xmm0
mov byte [esp + 0x1c], bl
mov al, byte [esp + 0xc]
xor byte [esp + ecx + 0xd], al
inc ecx
cmp ecx, 0xf
jb 0x100218dd
lea eax, [esp + 0xd]
mov byte [esp + 0x1c], bl
push eax
lea ecx, [esp + 0x24]
call fcn.10001f6a
mov ecx, dword [esi + 0xc]
lea edx, [esp + 0x20]
call fcn.10010042
push ebx
push edi
lea ecx, [esp + 0x28]
mov dword [esi + 0x1c], eax
call fcn.10001e1f
movaps xmm0, xmmword [0x1008e810]
mov ecx, ebx
movups xmmword [esp + 0xc], xmm0
mov word [esp + 0x1c], 0x10
mov al, byte [esp + 0xc]
xor byte [esp + ecx + 0xd], al
inc ecx
cmp ecx, 0x10
jb 0x1002192c
lea eax, [esp + 0xd]
mov byte [esp + 0x1d], bl
push eax
lea ecx, [esp + 0x24]
call fcn.10001f6a
mov ecx, dword [esi + 0xc]
lea edx, [esp + 0x20]
call fcn.10010042
push ebx
push edi
lea ecx, [esp + 0x28]
mov dword [esi + 0x20], eax
call fcn.10001e1f
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret