Function at 0x10047c14
Capabilities:
Encode data using xor

Disassembly:
mov eax, 0x100640f1
call fcn.100628e0
sub esp, 0x60
push ebx
mov dword [ebp - 0x18], 0x68f5
cmp dword [ebp - 0x18], 0x6aca
push esi
push edi
jle 0x10047c99
xor esi, esi
mov dword [ebp - 0x14], esi
xor edi, edi
mov eax, esi
xor ebx, ebx
cdq
idiv edi
mov esi, edx
mov ecx, ebx
mov eax, esi
sar eax, cl
lea ecx, [ebp - 0x38]
cdq
push edx
push eax
call fcn.100019c5
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10047c5f
mov eax, dword [eax]
push eax
call fcn.1004d87c
pop ecx
push 0
push 1
lea ecx, [ebp - 0x38]
call fcn.1000d197
inc ebx
cmp ebx, 0x59f0
jl 0x10047c44
mov esi, dword [ebp - 0x14]
inc edi
cmp edi, 0x7dde
jl 0x10047c3b
inc esi
mov dword [ebp - 0x14], esi
cmp esi, 0x4745
jl 0x10047c39
call dword [sym.imp.USER32.dll_GetCaretBlinkTime]
cmp dword [ebp - 0x18], 0x668c
jge 0x10047cad
push str.hldmxekh_yhycmjs_soghyyh_jkkuui_lxrt_jflv_ukiqmx
call fcn.1004d87c
pop ecx
cmp byte [ebp + 0x14], 0
je 0x10047dd3
mov dword [ebp - 0x1c], 0x40b4
cmp dword [ebp - 0x1c], 0x4439
jle 0x10047d21
xor esi, esi
mov dword [ebp - 0x14], esi
xor edi, edi
mov dword [ebp - 0x18], edi
mov ecx, edi
mov dword [ebp - 0x20], esi
xor ebx, ebx
shl esi, cl
xor edi, edi
mov ecx, edi
mov eax, ebx
sar eax, cl
mov ecx, 0x1007bbb8
or eax, esi
cdq
push edx
push eax
call fcn.1000cbc0
inc edi
cmp edi, 0x6d01
jl 0x10047cdc
inc ebx
cmp ebx, 0x6034
jl 0x10047cda
mov edi, dword [ebp - 0x18]
mov esi, dword [ebp - 0x14]
inc edi
mov dword [ebp - 0x18], edi
cmp edi, 0x3173
jl 0x10047cd1
inc esi
mov dword [ebp - 0x14], esi
cmp esi, 0x52b7
jl 0x10047ccc
cmp dword [ebp - 0x1c], 0x3f55
jge 0x10047d39
mov edx, str.srpaudcjo_pydpmtqy_oggmcd_fbg_rxrdt_nihywpcx_lrld
mov ecx, 0x1007bbb8
call fcn.1000ee07
mov dword [ebp - 0x14], 0x3d50
cmp dword [ebp - 0x14], 0x3e8c
jle 0x10047dac
xor esi, esi
mov dword [ebp - 0x18], esi
xor edi, edi
mov dword [ebp - 0x1c], edi
mov ecx, edi
mov dword [ebp - 0x20], esi
mov edi, esi
xor ebx, ebx
shl edi, cl
xor esi, esi
lea eax, [esi + ebx]
mov ecx, 0x1007bbb8
xor eax, edi
cdq
push edx
push eax
call fcn.1000cbc0
inc esi
cmp esi, 0x601
jl 0x10047d60
inc ebx
cmp ebx, 0x6a37
jl 0x10047d5e
mov edi, dword [ebp - 0x1c]
mov esi, dword [ebp - 0x18]
inc edi
mov dword [ebp - 0x1c], edi
cmp edi, 0x696c
jl 0x10047d53
inc esi
mov dword [ebp - 0x18], esi
cmp esi, 0x4384
jl 0x10047d4e
push 0
push 0
call dword [sym.imp.USER32.dll_KillTimer]
mov eax, dword [ebp + 0x10]
and dword [eax], 0
cmp dword [ebp - 0x14], 0x3b5b
jge 0x10047e64
mov edx, str.bhpvt_aysinvhg_ejvmfmfxo_sitrgac_oivfss
mov ecx, 0x1007bbb8
call fcn.1000ee07
jmp 0x10047e64
mov dword [ebp - 0x1c], 0xe16
cmp dword [ebp - 0x1c], 0xe79
jle 0x10047e2a
xor esi, esi
xor edi, edi
mov ebx, 0x3a75
mov eax, edi
lea ecx, [ebp - 0x50]
cdq
push edx
push eax
call fcn.100019c5
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10047e03
mov eax, dword [eax]
push eax
call fcn.1004d87c
pop ecx
push 0
push 1
lea ecx, [ebp - 0x50]
call fcn.1000d197
add edi, esi
dec ebx
jne 0x10047dec
inc esi
cmp esi, 0x112d
jl 0x10047de5
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push 0x21
pop edx
lea ecx, [ebp - 0x68]
call fcn.10010544
and dword [ebp - 4], 0
push ecx
push ecx
mov ecx, dword [ebp + 8]
push eax
call fcn.100433ef
push 0
push 1
lea ecx, [ebp - 0x68]
call fcn.1000d3a5
cmp dword [ebp - 0x1c], 0xbf8
jge 0x10047e64
push str.jbqocq_wmwlxch_dqueg_cfkohgmk_efscim_pjmia_qytvekg_lohaxg_pnsgpf_scbt_ofvwrfh_tvbb_ivnt
call fcn.1004d87c
pop ecx
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret