Function at 0x1002c11a
Capabilities:
Encode data using xor

Disassembly:
mov eax, 0x10064ce7
call fcn.10063758
sub esp, 0x118
push ebx
push esi
xor ebx, ebx
mov dword [ebp - 0x2c], edx
push edi
mov dword [ebp - 0x10], esp
cmp byte [ebp + 0x18], bl
je 0x1002c4ff
mov eax, dword [ebp + 0x10]
push 0x7c
pop ecx
mov dword [ebp - 0x28], eax
mov al, bl
mov word [ebp - 0x30], cx
mov ecx, ebx
push 2
mov byte [ebp - 0x20], al
mov dword [ebp - 0x1f], 0x484f033c
mov byte [ebp - 0x1b], 0x10
pop esi
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x14], esi
cmp esi, 6
jae 0x1002c24a
movzx eax, al
lea eax, [eax*2 + 2]
cmp esi, eax
jne 0x1002c209
movzx eax, byte [ebp + esi - 0x20]
mov dword [ebp - 0x6c], eax
inc eax
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x18], 0xe33
cmp dword [ebp - 0x18], 0xea7
jle 0x1002c1e9
mov edi, ebx
mov esi, ebx
mov ecx, esi
mov eax, edi
shl eax, cl
lea ecx, [ebp - 0x114]
cdq
push edx
push eax
call fcn.10001a65
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x1002c1bf
mov eax, dword [eax]
push eax
call fcn.1004b9e4
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x114]
call fcn.10002062
inc esi
cmp esi, 0x6710
jl 0x1002c1a1
inc edi
cmp edi, 0x2e0b
jl 0x1002c19f
mov esi, dword [ebp - 0x14]
mov eax, dword [ebp - 0x6c]
dec esi
add esi, eax
cmp dword [ebp - 0x18], 0xba6
jge 0x1002c203
push str.fdr_utk_dfcecpygx_aovcha_eluvxb_gzmztmav_sdlpw
call fcn.1004b9e4
pop ecx
or dword [ebp - 4], 0xffffffff
jmp 0x1002c23c
movzx edx, byte [ebp + esi - 0x1f]
mov eax, esi
sub eax, ecx
movzx eax, byte [ebp + eax - 0x22]
movzx eax, word [ebp + eax*2 - 0x30]
mov ecx, eax
and eax, edx
or ecx, edx
mov dl, 1
sub ecx, eax
movzx eax, byte [ebp + esi - 0x20]
mov word [ebp + eax*2 - 0x30], cx
lea eax, [ebp - 0x40]
push eax
push ecx
call fcn.1002bf8c
pop ecx
pop ecx
mov ecx, dword [ebp - 0x40]
add esi, 2
mov al, byte [ebp - 0x20]
jmp 0x1002c163
xor eax, eax
mov dword [ebp - 0xbc], ebx
push 7
mov word [ebp - 0x2e], ax
lea ecx, [ebp - 0xcc]
pop edi
mov word [ebp - 0xcc], ax
lea eax, [ebp - 0x30]
push eax
mov dword [ebp - 0xb8], edi
call fcn.10007ef5
mov edx, dword [ebp - 0x2c]
lea eax, [ebp - 0xcc]
push eax
lea ecx, [ebp - 0x90]
mov dword [ebp - 4], 2
call fcn.1002b50c
pop ecx
push ebx
push 1
lea ecx, [ebp - 0xcc]
mov byte [ebp - 4], 4
call fcn.100021ce
mov dword [ebp - 0x68], ebx
lea ecx, [ebp - 0x9c]
push 2
call fcn.10001cd1
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x58]
push dword [ebp - 0x28]
movdqa xmm0, xmmword [0x10072e60]
xor eax, eax
inc eax
mov dword [ebp - 0x2c], 0xb03629aa
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x2c], 0xb000cd9d
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0xec]
push eax
lea eax, [ebp - 0xfc]
mov dword [ebp - 0x58], ebx
push eax
push ebx
movdqu xmmword [ebp - 0xfc], xmm0
mov dword [ebp - 0x54], ebx
mov dword [ebp - 0x50], ebx
call fcn.100043b1
push 0x171b
push 0x6d9
push 0x6651
push 1
push 0x7ca2
push 0x626e
lea eax, [ebp - 0x24]
mov byte [ebp - 4], 6
push eax
push 1
push 1
mov edx, 0x1a0f
lea ecx, [ebp - 0x9c]
call fcn.1002b5c6
add esp, 0x24
mov dword [ebp - 0x24], ebx
jmp 0x1002c352
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x124], 0xffffffff
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 4
jl 0x1002c341
push 0x7d94
push 0x100
lea eax, [ebp - 0x9c]
push 1
push eax
lea edx, [ebp - 0x68]
call fcn.1002b74c
mov eax, dword [ebp - 0x58]
lea ecx, [ebp - 0x58]
add esp, 0x10
inc dword [eax + 8]
call fcn.10001d54
lea ecx, [ebp - 0x9c]
mov byte [ebp - 4], 4
call fcn.10001d54
push 0xd
pop eax
push 2
mov dword [ebp - 0x30], ebx
mov ecx, ebx
mov dword [ebp - 0x3c], 0x4009e01
mov dword [ebp - 0x38], 0x3ee56003
mov dword [ebp - 0x34], 0x2a022903
mov word [ebp - 0x4a], ax
pop esi
cmp esi, 4
jne 0x1002c3c3
push esi
pop ecx
push 6
pop esi
jmp 0x1002c3ea
movzx edx, byte [ebp + esi - 0x3b]
mov eax, esi
sub eax, ecx
movzx eax, byte [ebp + eax - 0x3e]
movzx eax, word [ebp + eax*2 - 0x4c]
mov ecx, eax
and eax, edx
or ecx, edx
sub ecx, eax
movzx eax, byte [ebp + esi - 0x3c]
mov word [ebp + eax*2 - 0x4c], cx
mov ecx, ebx
add esi, 2
cmp esi, 0xc
jb 0x1002c3b7
xor eax, eax
mov word [ebp - 0x44], ax
mov dword [ebp - 0x14], 0x5922
cmp dword [ebp - 0x14], 0x5951
jle 0x1002c43d
mov esi, ebx
mov edi, ebx
mov eax, edi
mov ecx, 0x10080d98
xor eax, esi
cdq
push edx
push eax
call fcn.10001b47
inc edi
cmp edi, 0x463f
jl 0x1002c40c
inc esi
cmp esi, 0x2497
jl 0x1002c40a
push 0x99a
call dword [sym.imp.USER32.dll_BeginDeferWindowPos]
push 7
pop edi
xor eax, eax
mov dword [ebp - 0xa0], edi
mov word [ebp - 0xb4], ax
lea ecx, [ebp - 0xb4]
lea eax, [ebp - 0x4c]
mov dword [ebp - 0xa4], ebx
push eax
call fcn.10007ef5
mov byte [ebp - 4], 8
cmp dword [ebp - 0x14], 0x5795
jge 0x1002c47d
mov edx, str.pfxjw_fmf_oyhpj_wmmlubkdi_yfmtnkyfw_pstgnmm_yxc_fjlasxmg_aksitu_gefkb
mov ecx, 0x10080d98
call fcn.10003a21
mov dword [ebp - 4], edi
xor eax, eax
lea edi, [ebp - 0x4c]
stosd dword es:[edi], eax
push ecx
mov cl, 1
stosd dword es:[edi], eax
stosw word es:[edi], ax
lea eax, [ebp - 0xb4]
push eax
lea eax, [ebp - 0x90]
push eax
push 0x7312
call fcn.1002bfc0
mov ecx, dword [ebp + 0x10]
lea eax, [ebp - 0x90]
add esp, 0x10
push eax
call fcn.1002e925
push ebx
push 1
lea ecx, [ebp - 0xb4]
call fcn.100021ce
lea ecx, [ebp - 0x90]
call fcn.1002eded
jmp 0x1002c5eb
push dword [ebp - 0x28]
movdqa xmm0, xmmword [0x10072eb0]
lea eax, [ebp - 0xdc]
push eax
lea eax, [ebp - 0xec]
mov dword [ebp - 0x64], ebx
push eax
push ebx
lea ecx, [ebp - 0x64]
mov dword [ebp - 0x60], ebx
movdqu xmmword [ebp - 0xec], xmm0
mov dword [ebp - 0x5c], ebx
call fcn.100043b1
push 3
lea ecx, [ebp - 0x84]
mov dword [ebp - 4], 0xa
call fcn.10001cd1
mov byte [ebp - 4], 0xb
mov dword [ebp - 0x14], 0x4b0ad8ea
mov dword [ebp - 0x28], 0xfffffff9
mov dword [ebp - 0x18], ebx
jmp 0x1002c570
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x84]
mov dword [eax + ecx*4], 1
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
jl 0x1002c55d
mov eax, dword [ebp - 0x84]
mov esi, dword [ebp - 0x64]
mov dword [eax], ebx
push dword [ebp - 0x28]
movdqa xmm0, xmmword [0x10072ea0]
lea eax, [ebp - 0xcc]
push eax
lea eax, [ebp - 0xdc]
mov dword [ebp - 0x78], ebx
push eax
push ebx
lea ecx, [ebp - 0x78]
mov dword [ebp - 0x74], ebx
movdqu xmmword [ebp - 0xdc], xmm0
mov dword [ebp - 0x70], ebx
call fcn.100043b1
mov eax, dword [esi + 8]
lea ecx, [ebp - 0x78]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
mov eax, dword [esi + 8]
mov dword [ebp - 0x28], eax
call fcn.10001d54
mov eax, dword [ebp - 0x84]
inc dword [eax]
cmp dword [eax], 3
jle 0x1002c581
lea ecx, [ebp - 0x84]
call fcn.10001d54
lea ecx, [ebp - 0x64]
call fcn.10001d54
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret