Function at 0xc612ed
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1c
mov eax, dword [0xc78a48]
mov edx, dword [0xc78a38]
sub eax, 0x2c26c93
push ebx
push esi
push edi
mov esi, 0xc6f550
mov dword [ebp - 4], eax
lea edi, [ebp - 0x1c]
or edx, 0xd86bf71c
push 0x48
xor eax, eax
imul ebx, edx, 0x1478e96c
movsd dword es:[edi], dword [esi]
mov ecx, eax
mov dword [0xc78a30], edx
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
pop esi
cmp si, word [ebp - 0x1c]
jne 0xc61379
xor edi, edi
test si, si
je 0xc61354
cmp word [ebp + eax - 0x1c], di
je 0xc61354
inc ecx
lea eax, [ecx + ecx]
movzx esi, word [eax + 0xc75310]
cmp si, word [ebp + eax - 0x1c]
je 0xc61336
mov eax, dword [ebp - 8]
cmp eax, ecx
jae 0xc61377
cmp eax, 0x1d7a
jne 0xc6136e
lea edx, [ebx - 0x590ca743]
mov dword [0xc78a30], edx
and ebx, 0x3a885874
inc eax
jmp 0xc61357
xor eax, eax
mov esi, 0xc7254c
lea edi, [ebp - 0x18]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
cmp byte [ebp - 0x18], 0x6f
jne 0xc613a4
mov cl, 0x6f
test cl, cl
je 0xc613a4
cmp byte [ebp + eax - 0x18], 0
je 0xc613a4
mov cl, byte [eax + 0xc754f1]
inc eax
cmp cl, byte [ebp + eax - 0x18]
je 0xc6138c
movzx ecx, byte [eax + str.onecoreuap_baseAppModelSearchcommoninclude_smartcls_common.hxx]
movzx eax, byte [ebp + eax - 0x18]
sub ecx, eax
cmp ecx, 0x9f4
jae 0xc613cb
mov eax, dword [ebp - 4]
add edx, 0x2c7bfc4f
mov dword [0xc78a30], edx
jmp 0xc613d2
mov eax, edx
xor eax, 0xbb7a9b9e
and ebx, 0x3bb663be
xor esi, esi
mov dword [0xc78a20], ebx
mov ecx, esi
xor eax, 0x4c24c876
inc ecx
cmp word [ecx*2 + 0xc751b0], si
jne 0xc613e2
mov dword [ebp - 4], eax
cmp ecx, 0x23d1
jae 0xc61407
mov ebx, edx
and ebx, 0x198ba58e
jmp 0xc6140d
or ebx, 0xdd1a9dd
mov ecx, esi
mov dword [0xc78a38], ebx
mov esi, str.ReturnHr
mov dword [ebp - 8], ecx
lea edi, [ebp - 0x1c]
push 0x6d
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
pop esi
xor edi, edi
cmp si, word [ebp - 0x1c]
jne 0xc61454
mov eax, edi
test si, si
je 0xc61451
cmp word [ebp + eax - 0x1c], di
je 0xc61451
inc ecx
lea eax, [ecx + ecx]
movzx esi, word [eax + 0xc751b0]
cmp si, word [ebp + eax - 0x1c]
je 0xc61433
mov dword [ebp - 8], ecx
mov eax, dword [ebp - 8]
movzx ecx, byte [ecx*2 + 0xc751b0]
movzx eax, byte [ebp + eax*2 - 0x1c]
sub ecx, eax
cmp ecx, 0x983
jne 0xc6147c
add ebx, 0x9ba95d26
mov dword [0xc78a38], ebx
jmp 0xc6148a
mov edx, ebx
and edx, 0x8494f99c
mov dword [0xc78a30], edx
mov eax, edi
mov esi, 0xc6f0a8
lea edi, [ebp - 0x1c]
push 0x41
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
pop esi
cmp si, word [ebp - 0x1c]
jne 0xc614f6
xor edi, edi
mov ecx, edi
test si, si
je 0xc614c3
cmp word [ebp + ecx - 0x1c], di
je 0xc614c3
inc eax
lea ecx, [eax + eax]
movzx esi, word [ecx + 0xc75534]
cmp si, word [ebp + ecx - 0x1c]
je 0xc614a5
mov dword [ebp - 8], eax
mov ecx, dword [ebp - 8]
cmp ecx, eax
jae 0xc614f6
mov esi, eax
cmp ecx, 0x7cd
jne 0xc614e5
mov edx, ebx
or edx, 0x809f9c1e
mov dword [0xc78a30], edx
mov eax, edx
or eax, 0xbe9a1030
inc ecx
mov dword [0xc78a20], eax
cmp ecx, esi
jb 0xc614cf
mov eax, dword [ebp - 4]
pop edi
add eax, 0xe024237
pop esi
mov dword [0xc78a48], eax
pop ebx
leave
ret