Function at 0x14004c3b0
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x58
mov qword [rsp + 0x50], rdx
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x38], rcx
call fcn.140047d06
mov rcx, qword [rsp + 0x40]
mov qword [rsp + 0x48], rax
call fcn.140047d30
mov rdx, qword [rsp + 0x50]
cmp rdx, 0
jge 0x14004c403
mov rcx, qword [rsp + 0x50]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
call fcn.14000d792
jmp 0x14004c663
mov eax, dword [0x14024d210]
xor eax, dword [0x14024d214]
add eax, 0x71feb72c
mov ecx, 0x2088507e
xor edx, edx
div ecx
mov edx, 0x2f4c983b
xor edx, 0x79536c72
mov ecx, eax
xor ecx, edx
xor ecx, 0xffffffff
or eax, 0x561ff449
and eax, ecx
cmp eax, 0xb7cc0f30
ja 0x14004c66d
mov rcx, qword [rsp + 0x50]
mov eax, dword [str.sCW]
mov r8d, dword [0x14024d21c]
xor r8d, 0x93b83693
mov edx, eax
xor edx, r8d
mov r9d, 0x4abf5510
xor r9d, 0xb540aaef
xor edx, r9d
or eax, r8d
and eax, edx
add eax, 0x259bf0a9
sub eax, 0x301cf79c
sub eax, 0x259bf0a9
mov r8d, 0xba857019
xor edx, edx
div r8d
or eax, 0x77b5470f
mov dword [rsp + 0x24], eax
call fcn.140047f90
mov rcx, qword [rsp + 0x48]
mov rdx, rax
mov eax, dword [rsp + 0x24]
mov qword [rsp + 0x28], rdx
mov cl, byte [rcx]
mov dl, 0xcc
xor dl, 0xcc
cmp cl, dl
sete cl
mov byte [rsp + 0x37], cl
cmp eax, 0xb725e060
ja 0x14004c441
mov al, byte [rsp + 0x37]
test al, 1
jne 0x14004c4d9
jmp 0x14004c663
mov rax, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x40]
movabs rdx, 0xd7d27efa8b392d54
movabs r8, 0xd7d27efa8b392d54
xor rdx, r8
mov qword [rcx + 0x10], rdx
movabs rcx, 0x1965352def6b1496
movabs rdx, 0x1965352def6b1496
xor rcx, rdx
cmp rax, rcx
jge 0x14004c55b
mov rcx, qword [rsp + 0x28]
movabs rdx, 0xc9fadfb7a621265c
movabs rax, 0xc9fadfb7a621265c
xor rdx, rax
movabs r8, 0x7672f33d70a789a6
movabs rax, 0x98d0cc28f587659
xor r8, rax
call fcn.14000d792
jmp 0x14004c663
mov eax, dword [0x14024d220]
mov ecx, dword [0x14024d224]
mov edx, 0x8fbdb1a7
xor edx, 0x4203f32b
xor ecx, edx
add eax, 0x1d7a4229
add eax, ecx
sub eax, 0x1d7a4229
mov ecx, 0xe02bdef1
xor ecx, 0xf3d3428
xor edx, edx
div ecx
add eax, 0xb121ed2f
mov ecx, 0x11d311ea
xor ecx, 0x89145c0f
xor edx, edx
div ecx
cmp eax, 0x8e2e0fc8
je 0x14004c676
mov rcx, qword [rsp + 0x40]
mov eax, dword [0x14024d228]
mov r8d, dword [0x14024d22c]
xor eax, 0xffffffff
mov edx, 0xdc6b8f70
xor edx, 0x2394708f
xor r8d, edx
mov edx, 0x5e62a990
xor edx, 0x21cd4aa8
mov r9d, 0x3b091ead
xor r9d, 0xc4f6e152
xor edx, r9d
or eax, r8d
or edx, 0x7fafe338
mov r8d, 0xc0931883
xor r8d, 0x3f6ce77c
xor eax, r8d
and eax, edx
xor eax, 0x66a1751
mov r8d, 0xa5ed6096
xor edx, edx
div r8d
mov rdx, qword [rsp + 0x28]
mov r8d, 0xd6532cc4
xor r8d, 0xa4b58d3c
mov r9d, 0xf93c36a4
xor r9d, 0x6c3c95b
xor r8d, r9d
xor r9d, r9d
sub r9d, 1
sub r8d, r9d
sub eax, r8d
mov dword [rsp + 0x20], eax
call fcn.14001c33f
mov eax, dword [rsp + 0x20]
cmp eax, 0xb93e246d
je 0x14004c5ae
jmp 0x14004c663
mov rax, qword [rsp + 0x38]
add rsp, 0x58
ret
mov edx, dword [rdx - 0x34167175]
std
invalid
push rcx
jns 0x14004c6d9
jmp 0x14004c5ae
mov eax, dword [rsp + 0x28]
cmp byte [rcx], 0
mov qword [rsp + 0x40], rax
jne 0x14004c722
mov rcx, qword [rsp + 0x28]
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x58], rax
lea rdx, [rsp + 0x48]
call fcn.14004bee0
mov rax, qword [rsp + 0x28]
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
add rsp, 0x78
ret