Function at 0x1001b6d5
Capabilities:
Encode data using xor

Disassembly:
push 0x2c8
mov eax, 0x10051944
call fcn.1004fe7e
xor ebx, ebx
mov ecx, 0xfd
mov edx, ebx
mov al, byte [edx + 0x10054fd8]
xor al, cl
inc ecx
mov byte [ebp + edx - 0x20], al
and ecx, 0x800000ff
jns 0x1001b70a
dec ecx
or ecx, 0xffffff00
inc ecx
inc edx
cmp edx, 0xd
jl 0x1001b6ed
mov byte [ebp - 0x13], bl
lea eax, [ebp - 0x20]
mov dword [ebp - 4], ebx
push eax
call fcn.1002c984
movaps xmm0, xmmword [0x1005a0d0]
movups xmmword [ebp - 0x2d4], xmm0
pop ecx
movaps xmm0, xmmword [str._xcz]
movups xmmword [ebp - 0x2c4], xmm0
mov dword [ebp - 0xa4], 0x14171900
movaps xmm0, xmmword [0x10059d70]
movups xmmword [ebp - 0x2b4], xmm0
mov dword [ebp - 0xa0], 0x17195c1a
movaps xmm0, xmmword [0x1005a8d0]
movups xmmword [ebp - 0x2a4], xmm0
mov word [ebp - 0x9c], 0x1a
movaps xmm0, xmmword [0x1005a7f0]
movups xmmword [ebp - 0x294], xmm0
mov byte [ebp - 0x9a], 1
movaps xmm0, xmmword [0x1005a870]
movups xmmword [ebp - 0x284], xmm0
movaps xmm0, xmmword [0x1005a8e0]
movups xmmword [ebp - 0x274], xmm0
movaps xmm0, xmmword [0x1005a780]
movups xmmword [ebp - 0x264], xmm0
movaps xmm0, xmmword [0x1005a6d0]
movups xmmword [ebp - 0x254], xmm0
movaps xmm0, xmmword [0x1005a760]
movups xmmword [ebp - 0x244], xmm0
movaps xmm0, xmmword [0x1005a790]
movups xmmword [ebp - 0x234], xmm0
movaps xmm0, xmmword [0x1005a4f0]
movups xmmword [ebp - 0x224], xmm0
movaps xmm0, xmmword [0x1005a560]
movups xmmword [ebp - 0x214], xmm0
movaps xmm0, xmmword [0x1005a3d0]
movups xmmword [ebp - 0x204], xmm0
movaps xmm0, xmmword [0x1005a3a0]
movups xmmword [ebp - 0x1f4], xmm0
movaps xmm0, xmmword [0x10059f20]
movups xmmword [ebp - 0x1e4], xmm0
movaps xmm0, xmmword [0x1005a100]
movups xmmword [ebp - 0x1d4], xmm0
movaps xmm0, xmmword [str.w_b6_2_411Aa0]
movups xmmword [ebp - 0x1c4], xmm0
movaps xmm0, xmmword [0x10059e80]
movups xmmword [ebp - 0x1b4], xmm0
movaps xmm0, xmmword [0x1005a920]
movups xmmword [ebp - 0x1a4], xmm0
movaps xmm0, xmmword [0x1005a9b0]
movups xmmword [ebp - 0x194], xmm0
movaps xmm0, xmmword [0x1005a6f0]
movups xmmword [ebp - 0x184], xmm0
movaps xmm0, xmmword [0x1005a730]
movups xmmword [ebp - 0x174], xmm0
movaps xmm0, xmmword [0x1005a900]
movups xmmword [ebp - 0x164], xmm0
movaps xmm0, xmmword [0x1005a6e0]
movups xmmword [ebp - 0x154], xmm0
movaps xmm0, xmmword [0x1005a720]
movups xmmword [ebp - 0x144], xmm0
movaps xmm0, xmmword [0x1005a740]
movups xmmword [ebp - 0x134], xmm0
movaps xmm0, xmmword [0x1005a450]
movups xmmword [ebp - 0x124], xmm0
movaps xmm0, xmmword [0x1005a600]
movups xmmword [ebp - 0x114], xmm0
movaps xmm0, xmmword [0x1005a510]
movups xmmword [ebp - 0x104], xmm0
movaps xmm0, xmmword [0x1005a4b0]
movups xmmword [ebp - 0xf4], xmm0
movaps xmm0, xmmword [0x10059f60]
movups xmmword [ebp - 0xe4], xmm0
movaps xmm0, xmmword [0x1005a120]
movups xmmword [ebp - 0xd4], xmm0
movaps xmm0, xmmword [0x1005a040]
movups xmmword [ebp - 0xc4], xmm0
movaps xmm0, xmmword [0x1005a460]
movups xmmword [ebp - 0xb4], xmm0
mov ecx, ebx
lea eax, [ecx + 0x47]
xor byte [ebp + ecx - 0x2d4], al
inc ecx
cmp ecx, 0x239
jb 0x1001b930
push 0x5b
mov byte [ebp - 0x9a], bl
mov edx, ebx
pop ecx
mov al, byte [edx + 0x10054fe8]
xor al, cl
inc ecx
mov byte [ebp + edx - 0x20], al
and ecx, 0x800000ff
jns 0x1001b96b
dec ecx
or ecx, 0xffffff00
inc ecx
inc edx
cmp edx, 0xe
jl 0x1001b94e
mov byte [ebp - 0x12], bl
push ecx
lea eax, [ebp - 0x2d4]
mov dword [ebp - 4], 1
push eax
mov edx, 0x100d4978
lea ecx, [ebp - 0x20]
call fcn.10033d6d
pop ecx
pop ecx
push 0x1b
pop ecx
mov edx, ebx
mov al, byte [edx + str.Xtj_sQCNI_T]
xor al, cl
inc ecx
mov byte [ebp + edx - 0x34], al
and ecx, 0x800000ff
jns 0x1001b9b4
dec ecx
or ecx, 0xffffff00
inc ecx
inc edx
cmp edx, 0xc
jl 0x1001b997
mov byte [ebp - 0x28], bl
lea eax, [ebp - 0x34]
mov dword [ebp - 4], 2
push eax
call fcn.1002c984
or dword [ebp - 4], 0xffffffff
lea eax, [ebp - 0x30]
and dword [ebp - 0x30], 0
mov edx, 0x1005f320
and dword [ebp - 0x2c], 0
mov ecx, 0x10053593
push ebx
push ebx
push ebx
push eax
push 0x100
call fcn.100313f1
movaps xmm0, xmmword [0x10059e10]
lea ecx, [ebp - 0x3c]
add esp, 0x18
mov dword [ebp - 0x2c], 0x323b3835
movups xmmword [ebp - 0x3c], xmm0
mov word [ebp - 0x28], 0x2a
mov byte [ebp - 0x26], 1
call fcn.100022a8
mov edx, 0x100d4973
mov ecx, eax
call fcn.1002f92e
mov ecx, 0xbc
mov edx, ebx
mov al, byte [edx + 0x10055008]
xor al, cl
inc ecx
mov byte [ebp + edx - 0x30], al
and ecx, 0x800000ff
jns 0x1001ba4b
dec ecx
or ecx, 0xffffff00
inc ecx
inc edx
cmp edx, 9
jl 0x1001ba2e
mov byte [ebp - 0x27], bl
lea eax, [ebp - 0x30]
mov dword [ebp - 4], 3
push eax
call fcn.1002c984
movaps xmm0, xmmword [0x10059e00]
movups xmmword [ebp - 0x98], xmm0
pop ecx
movaps xmm0, xmmword [0x10059c80]
mov ecx, ebx
movups xmmword [ebp - 0x88], xmm0
mov dword [ebp - 0x48], 0xf6f8cbc8
movaps xmm0, xmmword [0x10059d30]
movups xmmword [ebp - 0x78], xmm0
mov dword [ebp - 0x44], 0xf8e8ee
movaps xmm0, xmmword [str.__f_b_t]
movups xmmword [ebp - 0x68], xmm0
mov byte [ebp - 0x40], 1
movaps xmm0, xmmword [0x1005a9e0]
movups xmmword [ebp - 0x58], xmm0
lea eax, [ecx + 0x47]
xor byte [ebp + ecx - 0x98], al
inc ecx
cmp ecx, 0x57
jb 0x1001bab6
mov byte [ebp - 0x40], bl
mov ecx, 0xa5
mov edx, ebx
mov al, byte [edx + 0x10055014]
xor al, cl
inc ecx
mov byte [ebp + edx - 0x24], al
and ecx, 0x800000ff
jns 0x1001baed
dec ecx
or ecx, 0xffffff00
inc ecx
inc edx
cmp edx, 0x12
jl 0x1001bad0
mov byte [ebp - 0x12], bl
push ecx
lea eax, [ebp - 0x98]
mov dword [ebp - 4], 4
push eax
mov edx, 0x100d4974
lea ecx, [ebp - 0x24]
call fcn.10033d6d
or dword [ebp - 4], 0xffffffff
pop ecx
pop ecx
lea ecx, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x23242f0e
mov dword [ebp - 0x18], 0x2f2a0269
mov word [ebp - 0x14], 0x26
mov byte [ebp - 0x12], 1
call fcn.1000553e
mov edx, 0x1005f310
mov ecx, eax
call fcn.1002f92e
cmp byte [0x1005f310], 0
je 0x1001bb72
call fcn.1004eb60
call dword [sym.imp.KERNEL32.dll_GetCurrentThread]
push eax
call fcn.1004f040
push 0x10018b67
push 0x100d4984
call fcn.1004e5e0
call fcn.1004ebc0
call fcn.1004fe3c
ret