Function at 0x10013920
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1005780d
mov eax, dword fs:[0]
push eax
sub esp, 0x50
mov eax, dword [0x10064040]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
movaps xmm0, xmmword [0x100605f0]
xor ecx, ecx
movups xmmword [ebp - 0x4c], xmm0
mov dword [ebp - 0x3c], 0xa4b3a7b5
mov dword [ebp - 0x38], 0xb4a89aac
mov dword [ebp - 0x34], 0xbeb6aeaf
mov dword [ebp - 0x30], 0x1009389
mov al, cl
sub al, 0x3c
xor byte [ebp + ecx - 0x4c], al
inc ecx
cmp ecx, 0x1e
jb 0x10013973
mov byte [ebp - 0x2d], 0
mov dword [ebp - 0x18], 0x65707954
mov byte [ebp - 0x14], 0
mov dword [ebp - 4], 0
lea edx, [ebp - 0x4c]
xor esi, esi
cmp byte [ebp - 0x4c], 0
je 0x100139b8
mov ecx, edx
lea edi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100139a7
sub ecx, edi
inc edx
add edx, ecx
inc esi
cmp byte [edx], al
jne 0x100139a2
push ecx
push esi
lea eax, [ebp - 0x4c]
mov edx, 0x1011ea7c
push eax
push ecx
lea ecx, [ebp - 0x18]
call fcn.10047a30
movaps xmm0, xmmword [0x100607d0]
add esp, 0x10
movups xmmword [ebp - 0x4c], xmm0
xor ecx, ecx
mov word [ebp - 0x2c], 0x100
movaps xmm0, xmmword [0x10060520]
movups xmmword [ebp - 0x3c], xmm0
nop dword [eax]
mov al, cl
sub al, 0x3c
xor byte [ebp + ecx - 0x4c], al
inc ecx
cmp ecx, 0x20
jb 0x100139f0
mov byte [ebp - 0x2b], 0
mov dword [ebp - 0x18], 0x6e6f4241
mov word [ebp - 0x14], 0x65
mov dword [ebp - 4], 1
lea edx, [ebp - 0x4c]
xor esi, esi
cmp byte [ebp - 0x4c], 0
je 0x10013a37
mov ecx, edx
lea edi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10013a26
sub ecx, edi
inc edx
add edx, ecx
inc esi
cmp byte [edx], al
jne 0x10013a21
push ecx
push esi
lea eax, [ebp - 0x4c]
mov edx, 0x1011ea80
push eax
push ecx
lea ecx, [ebp - 0x18]
call fcn.10047a30
mov dword [ebp - 4], 0xffffffff
add esp, 0x10
mov dword [ebp - 0x58], 0x42c80000
xor ecx, ecx
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x20], 0xafb7ad89
mov dword [ebp - 0x1c], 0x100bfa0
mov al, cl
sub al, 0x3f
xor byte [ebp + ecx - 0x20], al
inc ecx
cmp ecx, 6
jb 0x10013a73
lea eax, [ebp - 0x58]
mov byte [ebp - 0x19], 0
push eax
xorps xmm2, xmm2
lea ecx, [ebp - 0x20]
call fcn.10011970
mov eax, dword [0x1011eb84]
add esp, 4
mov edx, dword [eax + 0x3e48]
cmp byte [edx + 0xaf], 0
jne 0x10013afe
movss xmm1, dword [eax + 0x37d4]
addss xmm1, dword [edx + 0xf8]
movss xmm0, dword [edx + 0xfc]
movss dword [edx + 0xf0], xmm1
movss dword [edx + 0xf4], xmm0
mov eax, dword [edx + 0x120]
mov ecx, dword [edx + 0x124]
mov dword [edx + 0x118], eax
mov eax, dword [edx + 0x130]
mov dword [edx + 0x11c], ecx
mov dword [edx + 0x12c], eax
mov byte [edx + 0x134], 1
push 0
lea edx, [ebp - 0x58]
mov dword [ebp - 0x58], 0
mov ecx, 0x1005945c
mov dword [ebp - 0x54], 0
call fcn.10045350
add esp, 4
test al, al
je 0x10013b2c
mov dword [0x1006b4ec], 1
mov eax, dword [0x1011eb84]
mov edx, dword [eax + 0x3e48]
cmp byte [edx + 0xaf], 0
jne 0x10013b93
movss xmm1, dword [eax + 0x37d4]
addss xmm1, dword [edx + 0xf8]
movss xmm0, dword [edx + 0xfc]
movss dword [edx + 0xf0], xmm1
movss dword [edx + 0xf4], xmm0
mov eax, dword [edx + 0x120]
mov ecx, dword [edx + 0x124]
mov dword [edx + 0x118], eax
mov eax, dword [edx + 0x130]
mov dword [edx + 0x11c], ecx
mov dword [edx + 0x12c], eax
mov byte [edx + 0x134], 1
push 0
lea edx, [ebp - 0x58]
mov dword [ebp - 0x58], 0
mov ecx, 0x10059460
mov dword [ebp - 0x54], 0
call fcn.10045350
add esp, 4
test al, al
je 0x10013bc1
mov dword [0x1006b4ec], 2
mov dword [ebp - 0x20], 0x6f6f6d53
mov dword [ebp - 0x1c], 0x736874
push ecx
push str._.3f
lea eax, [ebp - 0x28]
mov dword [ebp - 4], 2
push eax
lea eax, [ebp - 0x50]
mov dword [ebp - 0x50], 0
push eax
push 0x1006b4f0
mov edx, 8
mov dword [ebp - 0x28], 0x3f800000
lea ecx, [ebp - 0x20]
call fcn.10048200
mov dword [ebp - 0x28], 0x564f46
add esp, 0x10
mov dword [ebp - 4], 3
lea eax, [ebp - 0x50]
mov dword [ebp - 0x50], 0x168
mov edx, 4
mov dword [ebp - 0x18], 0
lea ecx, [ebp - 0x28]
push 0x10059c24
push eax
lea eax, [ebp - 0x18]
push eax
push 0x1006b4e8
call fcn.10048200
mov dword [ebp - 0x28], 0x2e564f46
mov byte [ebp - 0x24], 0
add esp, 0x10
mov dword [ebp - 4], 4
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x64
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x50], 1
push 0x10059c24
push eax
lea eax, [ebp - 0x50]
push eax
push 0x1006b4e8
call fcn.10048fe0
add esp, 0x14
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.100555b4
mov esp, ebp
pop ebp
ret