Function at 0x1001b6a1
Capabilities:
Encode data using xor

Disassembly:
push 0x2c8
mov eax, 0x1005204a
call fcn.100505de
xor ebx, ebx
mov ecx, 0xfd
mov edx, ebx
mov al, byte [edx + 0x10054fc0]
xor al, cl
inc ecx
mov byte [ebp + edx - 0x20], al
and ecx, 0x800000ff
jns 0x1001b6d6
dec ecx
or ecx, 0xffffff00
inc ecx
inc edx
cmp edx, 0xd
jl 0x1001b6b9
mov byte [ebp - 0x13], bl
lea eax, [ebp - 0x20]
mov dword [ebp - 4], ebx
push eax
call fcn.1002d4ad
movaps xmm0, xmmword [0x10059c90]
movups xmmword [ebp - 0x2d4], xmm0
pop ecx
movaps xmm0, xmmword [str._tF_H.]
movups xmmword [ebp - 0x2c4], xmm0
mov dword [ebp - 0xa4], 0xe6e9e7f2
movaps xmm0, xmmword [0x1005af00]
movups xmmword [ebp - 0x2b4], xmm0
mov dword [ebp - 0xa0], 0xe5efaae8
movaps xmm0, xmmword [0x1005af60]
movups xmmword [ebp - 0x2a4], xmm0
mov word [ebp - 0x9c], 0xe8
movaps xmm0, xmmword [0x1005a8e0]
movups xmmword [ebp - 0x294], xmm0
mov byte [ebp - 0x9a], 1
movaps xmm0, xmmword [0x1005ae30]
movups xmmword [ebp - 0x284], xmm0
movaps xmm0, xmmword [0x1005a950]
movups xmmword [ebp - 0x274], xmm0
movaps xmm0, xmmword [0x1005ac10]
movups xmmword [ebp - 0x264], xmm0
movaps xmm0, xmmword [0x1005ab50]
movups xmmword [ebp - 0x254], xmm0
movaps xmm0, xmmword [0x1005ab80]
movups xmmword [ebp - 0x244], xmm0
movaps xmm0, xmmword [0x1005a6f0]
movups xmmword [ebp - 0x234], xmm0
movaps xmm0, xmmword [0x1005a820]
movups xmmword [ebp - 0x224], xmm0
movaps xmm0, xmmword [0x1005a400]
movups xmmword [ebp - 0x214], xmm0
movaps xmm0, xmmword [0x1005a6b0]
movups xmmword [ebp - 0x204], xmm0
movaps xmm0, xmmword [0x1005a180]
movups xmmword [ebp - 0x1f4], xmm0
movaps xmm0, xmmword [0x1005a2a0]
movups xmmword [ebp - 0x1e4], xmm0
movaps xmm0, xmmword [0x10059da0]
movups xmmword [ebp - 0x1d4], xmm0
movaps xmm0, xmmword [str.E6_be]
movups xmmword [ebp - 0x1c4], xmm0
movaps xmm0, xmmword [0x1005adc0]
movups xmmword [ebp - 0x1b4], xmm0
movaps xmm0, xmmword [0x1005afb0]
movups xmmword [ebp - 0x1a4], xmm0
movaps xmm0, xmmword [0x1005ac80]
movups xmmword [ebp - 0x194], xmm0
movaps xmm0, xmmword [0x1005a9a0]
movups xmmword [ebp - 0x184], xmm0
movaps xmm0, xmmword [0x1005aea0]
movups xmmword [ebp - 0x174], xmm0
movaps xmm0, xmmword [0x1005af70]
movups xmmword [ebp - 0x164], xmm0
movaps xmm0, xmmword [0x1005ac20]
movups xmmword [ebp - 0x154], xmm0
movaps xmm0, xmmword [0x1005aa30]
movups xmmword [ebp - 0x144], xmm0
movaps xmm0, xmmword [0x1005a7e0]
movups xmmword [ebp - 0x134], xmm0
movaps xmm0, xmmword [0x1005a570]
movups xmmword [ebp - 0x124], xmm0
movaps xmm0, xmmword [0x1005a520]
movups xmmword [ebp - 0x114], xmm0
movaps xmm0, xmmword [0x1005a840]
movups xmmword [ebp - 0x104], xmm0
movaps xmm0, xmmword [0x1005a150]
movups xmmword [ebp - 0xf4], xmm0
movaps xmm0, xmmword [0x1005a2b0]
movups xmmword [ebp - 0xe4], xmm0
movaps xmm0, xmmword [0x10059e30]
movups xmmword [ebp - 0xd4], xmm0
movaps xmm0, xmmword [0x1005a130]
movups xmmword [ebp - 0xc4], xmm0
movaps xmm0, xmmword [0x1005aad0]
movups xmmword [ebp - 0xb4], xmm0
mov ecx, ebx
lea eax, [ecx + 0x55]
xor byte [ebp + ecx - 0x2d4], al
inc ecx
cmp ecx, 0x239
jb 0x1001b8fc
push 0x5b
mov byte [ebp - 0x9a], bl
mov edx, ebx
pop ecx
mov al, byte [edx + 0x10054fd0]
xor al, cl
inc ecx
mov byte [ebp + edx - 0x20], al
and ecx, 0x800000ff
jns 0x1001b937
dec ecx
or ecx, 0xffffff00
inc ecx
inc edx
cmp edx, 0xe
jl 0x1001b91a
mov byte [ebp - 0x12], bl
push ecx
lea eax, [ebp - 0x2d4]
mov dword [ebp - 4], 1
push eax
mov edx, 0x100d5980
lea ecx, [ebp - 0x20]
call fcn.10034536
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 0x1001b980
dec ecx
or ecx, 0xffffff00
inc ecx
inc edx
cmp edx, 0xc
jl 0x1001b963
mov byte [ebp - 0x28], bl
lea eax, [ebp - 0x34]
mov dword [ebp - 4], 2
push eax
call fcn.1002d4ad
or dword [ebp - 4], 0xffffffff
lea eax, [ebp - 0x30]
and dword [ebp - 0x30], 0
mov edx, 0x10060328
and dword [ebp - 0x2c], 0
mov ecx, 0x10053593
push ebx
push ebx
push ebx
push eax
push 0x100
call fcn.10031bba
movaps xmm0, xmmword [0x10059f80]
lea ecx, [ebp - 0x3c]
add esp, 0x18
mov dword [ebp - 0x2c], 0x90e03
movups xmmword [ebp - 0x3c], xmm0
mov word [ebp - 0x28], 0x14
mov byte [ebp - 0x26], 1
call fcn.100022a8
mov edx, 0x100d597b
mov ecx, eax
call fcn.1003002c
mov ecx, 0xbc
mov edx, ebx
mov al, byte [edx + 0x10054ff0]
xor al, cl
inc ecx
mov byte [ebp + edx - 0x30], al
and ecx, 0x800000ff
jns 0x1001ba17
dec ecx
or ecx, 0xffffff00
inc ecx
inc edx
cmp edx, 9
jl 0x1001b9fa
mov byte [ebp - 0x27], bl
lea eax, [ebp - 0x30]
mov dword [ebp - 4], 3
push eax
call fcn.1002d4ad
movaps xmm0, xmmword [0x10059f20]
movups xmmword [ebp - 0x98], xmm0
pop ecx
movaps xmm0, xmmword [str._f_t_t7_]
mov ecx, ebx
movups xmmword [ebp - 0x88], xmm0
mov dword [ebp - 0x48], 0xc4c6f5fa
movaps xmm0, xmmword [0x1005af10]
movups xmmword [ebp - 0x78], xmm0
mov dword [ebp - 0x44], 0xcededc
movaps xmm0, xmmword [0x1005b030]
movups xmmword [ebp - 0x68], xmm0
mov byte [ebp - 0x40], 1
movaps xmm0, xmmword [0x1005acf0]
movups xmmword [ebp - 0x58], xmm0
lea eax, [ecx + 0x55]
xor byte [ebp + ecx - 0x98], al
inc ecx
cmp ecx, 0x57
jb 0x1001ba82
mov byte [ebp - 0x40], bl
mov ecx, 0xa5
mov edx, ebx
mov al, byte [edx + 0x10054ffc]
xor al, cl
inc ecx
mov byte [ebp + edx - 0x24], al
and ecx, 0x800000ff
jns 0x1001bab9
dec ecx
or ecx, 0xffffff00
inc ecx
inc edx
cmp edx, 0x12
jl 0x1001ba9c
mov byte [ebp - 0x12], bl
push ecx
lea eax, [ebp - 0x98]
mov dword [ebp - 4], 4
push eax
mov edx, 0x100d597c
lea ecx, [ebp - 0x24]
call fcn.10034536
or dword [ebp - 4], 0xffffffff
pop ecx
pop ecx
lea ecx, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x3d363d18
mov dword [ebp - 0x18], 0x39381077
mov word [ebp - 0x14], 0x30
mov byte [ebp - 0x12], 1
call fcn.1000553d
mov edx, 0x10060314
mov ecx, eax
call fcn.1003002c
cmp byte [0x10060314], 0
je 0x1001bb3e
call fcn.1004f2c0
call dword [sym.imp.KERNEL32.dll_GetCurrentThread]
push eax
call fcn.1004f7a0
push 0x10018bf0
push 0x100d5990
call fcn.1004ed40
call fcn.1004f320
call fcn.1005059c
ret