Function at 0x1002c71b
Capabilities:
Encode data using xor

Disassembly:
mov eax, 0x10065908
call fcn.10064328
sub esp, 0x28
cmp byte [ebp + 8], 0
mov eax, ecx
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
mov byte [ebp - 0x14], dl
mov dword [ebp - 0x2c], eax
je 0x1002c80d
mov dword [ebp - 0x18], 0x2a6e
cmp dword [ebp - 0x18], 0x2e40
jle 0x1002c777
xor esi, esi
xor edi, edi
mov eax, edi
mov ecx, 0x10081bf8
xor eax, esi
cdq
push edx
push eax
call fcn.1000377e
inc edi
cmp edi, 0x93d
jl 0x1002c754
inc esi
cmp esi, 0x3e92
jl 0x1002c752
cmp byte [ebp - 0x14], 0
je 0x1002c7a9
mov eax, dword [ebp + 0xc]
cmp byte [eax], 0
je 0x1002c7c6
push 0x5237
push 0x5966
push 1
mov dl, 1
push 0x325c
push 0x5315
mov cl, dl
call fcn.1002a711
add esp, 0x14
jmp 0x1002c7c6
mov byte [ebp + 0xb], 0
cmp byte [ebp + 0xb], 0
je 0x1002c7c6
push 0x12be
push 1
mov edx, 0x1274
call fcn.1002c9ea
pop ecx
pop ecx
and dword [ebp - 4], 0
cmp dword [ebp - 0x18], 0x29c5
jge 0x1002c7e2
mov edx, str.xdk_hjzhl_wwqmuk_toiml_uijvh_syqu_vme_jewnpge_ompu_oln
mov ecx, 0x10081bf8
call fcn.100059cc
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret
mov dword [ebp - 0x24], 0xc60
mov ebx, str.bdkz_yxj_gsg_vieppa_tsk_bce_oyhyr_jedx_uqdqnk_cud
cmp dword [ebp - 0x24], 0xcb1
mov dword [ebp - 0x20], ebx
jle 0x1002c889
xor esi, esi
mov dword [ebp - 0x18], esi
xor edi, edi
mov dword [ebp + 8], edi
xor ebx, ebx
and dword [ebp - 0x28], 0
lea eax, [edi + esi]
mov edi, dword [ebp - 0x28]
mov esi, eax
mov dword [ebp - 0x1c], eax
and esi, ebx
mov eax, esi
mov ecx, 0x10081bf8
xor eax, edi
cdq
push edx
push eax
call fcn.1000377e
inc edi
cmp edi, 0x18e0
jl 0x1002c842
mov esi, dword [ebp - 0x18]
inc ebx
mov edi, dword [ebp + 8]
cmp ebx, 0x2aa
jl 0x1002c831
inc edi
mov dword [ebp + 8], edi
cmp edi, 0x2900
jl 0x1002c82f
inc esi
mov dword [ebp - 0x18], esi
cmp esi, 0x2a80
jl 0x1002c82a
mov ebx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x2c]
cmp byte [ebp + 0x10], 0
je 0x1002c8ba
cmp byte [eax], 0
je 0x1002c9ab
push 0x5e97
push 0x3fec
push 1
push 1
mov dl, 1
mov ecx, 0x70bd
call fcn.10029954
add esp, 0x10
jmp 0x1002c9ab
mov esi, dword [ebp + 0x14]
mov dword [ebp - 0x28], esi
mov eax, dword [esi]
mov dword [eax], 2
mov eax, dword [esi]
cmp dword [eax], 0
jl 0x1002c9a8
mov dword [ebp + 8], 0x9b2e4145
mov dword [ebp - 0x30], 0xc7e43439
mov dword [ebp - 0x1c], 0x194e
cmp dword [ebp - 0x1c], 0x1ca5
jle 0x1002c941
xor ebx, ebx
xor esi, esi
xor edi, edi
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x2c], edi
mov dword [ebp + 8], 0x1695
mov eax, edi
mov ecx, 0x10081bf8
and eax, esi
xor eax, ebx
cdq
push edx
push eax
call fcn.1000377e
dec edi
dec dword [ebp + 8]
jne 0x1002c904
mov edi, dword [ebp - 0x18]
inc edi
mov dword [ebp - 0x18], edi
cmp edi, 0x6791
jl 0x1002c8fa
inc esi
cmp esi, 0x4f13
jl 0x1002c8f5
inc ebx
cmp ebx, 0xfe9
jl 0x1002c8f3
mov esi, dword [ebp + 0x14]
mov dword [ebp - 4], 2
cmp dword [ebp - 0x1c], 0x1902
jge 0x1002c982
mov edx, str.qbqpfqik_wmz_whcqga_tdulxzzzq_jdw_zmlcsb_ppmwpcao_vrbxsnfi
mov ecx, 0x10081bf8
call fcn.100059cc
jmp 0x1002c982
or dword [ebp - 4], 0xffffffff
push 0
push 0x2e77
push ecx
push 0x5f25
push ecx
lea ecx, [ebp - 0x30]
call fcn.1002ab6d
mov eax, dword [esi]
add esp, 0x14
dec dword [eax]
jmp 0x1002c8c8
mov ebx, dword [ebp - 0x20]
mov dword [ebp - 4], 4
cmp dword [ebp - 0x24], 0xacf
jge 0x1002c7e2
mov edx, ebx
mov ecx, 0x10081bf8
call fcn.100059cc
jmp 0x1002c7e2