Function at 0x40c713
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x14
push ebx
push esi
push edi
mov esi, 0x441f94
lea edi, [esp + 0x10]
xor ebx, ebx
push 0x37
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
pop esi
cmp byte [0x441f9d], bl
je 0x40c74e
mov ecx, ebx
xor edx, edx
mov eax, ecx
div esi
add dl, 0x36
xor byte [esp + ecx + 0x10], dl
inc ecx
cmp ecx, 0xa
jl 0x40c73b
sub esp, 0x18
lea eax, [esp + 0x28]
mov ecx, esp
push eax
call fcn.00404163
call fcn.00407ee2
mov esi, str.U_JVW
lea edi, [esp + 0x28]
add esp, 0x18
mov ecx, ebx
movsd dword es:[edi], dword [esi]
push 0x37
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop esi
xor edx, edx
mov eax, ecx
div esi
add dl, 0x36
xor byte [esp + ecx + 0x10], dl
inc ecx
cmp ecx, 0xb
jl 0x40c778
sub esp, 0x18
lea eax, [esp + 0x28]
mov ecx, esp
push eax
call fcn.00404163
call fcn.00407ee2
mov esi, 0x441f6c
lea edi, [esp + 0x28]
add esp, 0x18
mov ecx, ebx
movsd dword es:[edi], dword [esi]
push 0x37
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop esi
xor edx, edx
mov eax, ecx
div esi
add dl, 0x36
xor byte [esp + ecx + 0x10], dl
inc ecx
cmp ecx, 0xb
jl 0x40c7b5
sub esp, 0x18
lea eax, [esp + 0x28]
mov ecx, esp
push eax
call fcn.00404163
call fcn.00407ee2
mov esi, str.YG_K_
lea edi, [esp + 0x28]
add esp, 0x18
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
cmp byte [0x441f11], bl
je 0x40c80c
push 0x37
mov ecx, ebx
pop esi
xor edx, edx
mov eax, ecx
div esi
add dl, 0x36
xor byte [esp + ecx + 0x10], dl
inc ecx
cmp ecx, 0xa
jl 0x40c7f9
sub esp, 0x18
lea eax, [esp + 0x28]
mov ecx, esp
push eax
call fcn.00404163
call fcn.00407ee2
mov esi, str.WCWT
lea edi, [esp + 0x28]
add esp, 0x18
mov ecx, ebx
movsd dword es:[edi], dword [esi]
push 0x37
movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
pop esi
xor edx, edx
mov eax, ecx
div esi
add dl, 0x36
xor byte [esp + ecx + 0x10], dl
inc ecx
cmp ecx, 9
jl 0x40c834
sub esp, 0x18
lea eax, [esp + 0x28]
mov ecx, esp
push eax
call fcn.00404163
call fcn.00407ee2
mov esi, str.REYUU
lea edi, [esp + 0x28]
add esp, 0x18
mov ecx, ebx
movsd dword es:[edi], dword [esi]
push 0x37
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop esi
xor edx, edx
mov eax, ecx
div esi
add dl, 0x36
xor byte [esp + ecx + 0x10], dl
inc ecx
cmp ecx, 0xb
jl 0x40c871
sub esp, 0x18
lea eax, [esp + 0x28]
mov ecx, esp
push eax
call fcn.00404163
call fcn.00407ee2
mov esi, str._NXV_U
lea edi, [esp + 0x28]
add esp, 0x18
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
cmp byte [0x44225b], bl
je 0x40c8c7
push 0x37
mov ecx, ebx
pop esi
xor edx, edx
mov eax, ecx
div esi
add dl, 0x36
xor byte [esp + ecx + 0x10], dl
inc ecx
cmp ecx, 0xc
jl 0x40c8b4
sub esp, 0x18
lea eax, [esp + 0x28]
mov ecx, esp
push eax
call fcn.00404163
call fcn.00407ee2
mov esi, 0x442070
lea edi, [esp + 0x28]
add esp, 0x18
mov ecx, ebx
movsd dword es:[edi], dword [esi]
push 0x37
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop esi
xor edx, edx
mov eax, ecx
div esi
add dl, 0x36
xor byte [esp + ecx + 0x10], dl
inc ecx
cmp ecx, 0xf
jl 0x40c8f2
sub esp, 0x18
lea eax, [esp + 0x28]
mov ecx, esp
push eax
call fcn.00404163
call fcn.00407ee2
mov esi, str.TEWNIN
lea edi, [esp + 0x28]
add esp, 0x18
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
cmp byte [0x441e7b], bl
je 0x40c946
push 0x37
pop ecx
xor edx, edx
mov eax, ebx
div ecx
add dl, 0x36
xor byte [esp + ebx + 0x10], dl
inc ebx
cmp ebx, 0xc
jl 0x40c933
sub esp, 0x18
lea eax, [esp + 0x28]
mov ecx, esp
push eax
call fcn.00404163
call fcn.00407ee2
add esp, 0x18
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret