Function at 0x14014c400
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0x100
lea rbp, [rsp + 0x80]
mov byte [rbp + 0x6e], r9b
mov byte [rbp + 0x6f], r8b
mov qword [rbp + 0x70], rdx
mov qword [rbp + 0x78], rcx
mov ecx, dword [0x14019bb48]
mov edx, dword [0x14019bb4c]
mov eax, ecx
xor eax, 0xffffffff
mov r8d, edx
xor r8d, 0xffffffff
and eax, r8d
xor ecx, 0xffffffff
xor edx, 0xffffffff
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
sub eax, 0xf1ed911f
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0xf4af7205
mov edx, 0xffffffff
xor edx, 0xf4af7205
and eax, edx
sub eax, ecx
or eax, 0xf3f9dc6d
cmp eax, 0x776c93e1
jb 0x14014ce9e
mov dl, byte [rbp + 0x6e]
mov r9b, byte [rbp + 0x6f]
mov eax, dword [0x14019bb50]
mov r8d, dword [0x14019bb54]
mov ecx, eax
and ecx, r8d
or eax, r8d
add ecx, eax
or ecx, 0x8de1e90c
mov r8d, ecx
and r8d, 0x5e1039af
add r8d, r8d
mov eax, ecx
neg r8d
mov ecx, r8d
lea eax, [rax + rcx + 0x5e1039af]
mov ecx, eax
xor ecx, 0x1835a358
or eax, 0xe7ca5ca7
and eax, ecx
mov dword [rbp + 0x5c], eax
mov eax, 0x10
mov qword [rbp + 0x48], rax
call fcn.14014d730
sub rsp, rax
mov rax, qword [rbp + 0x48]
mov r8, rsp
call fcn.14014d730
sub rsp, rax
mov rax, qword [rbp + 0x48]
mov rcx, rsp
mov qword [rbp - 8], rcx
call fcn.14014d730
sub rsp, rax
mov rax, qword [rbp + 0x48]
mov r10, rsp
mov qword [rbp], r10
call fcn.14014d730
sub rsp, rax
mov rax, qword [rbp + 0x48]
mov r10, rsp
mov qword [rbp + 8], r10
call fcn.14014d730
sub rsp, rax
mov rax, qword [rbp + 0x48]
mov r10, rsp
mov qword [rbp + 0x10], r10
call fcn.14014d730
sub rsp, rax
mov rax, qword [rbp + 0x48]
mov r10, rsp
mov qword [rbp + 0x18], r10
call fcn.14014d730
sub rsp, rax
mov rax, qword [rbp + 0x48]
mov r10, rsp
mov qword [rbp + 0x20], r10
call fcn.14014d730
sub rsp, rax
mov rax, qword [rbp + 0x48]
mov r10, rsp
mov qword [rbp + 0x28], r10
call fcn.14014d730
sub rsp, rax
mov rax, qword [rbp + 0x48]
mov r10, rsp
mov qword [rbp + 0x30], r10
call fcn.14014d730
sub rsp, rax
mov rax, qword [rbp + 0x48]
mov r10, rsp
mov qword [rbp + 0x38], r10
call fcn.14014d730
sub rsp, rax
mov rax, qword [rbp + 0x48]
mov r10, rsp
mov qword [rbp + 0x40], r10
call fcn.14014d730
sub rsp, rax
mov rax, qword [rbp + 0x48]
mov r10, rsp
mov qword [rbp + 0x50], r10
call fcn.14014d730
sub rsp, rax
mov eax, dword [rbp + 0x5c]
mov r10, rsp
mov qword [rbp + 0x60], r10
mov byte [r8], r9b
mov byte [rcx], dl
cmp eax, 0xbc6cf419
jbe 0x14014c477
jmp 0x14014c5d9
mov eax, dword [0x14019bb58]
mov edx, dword [0x14019bb5c]
xor eax, 0xffffffff
xor edx, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0x5bb7f5a
or eax, edx
or ecx, 0x5bb7f5a
xor eax, 0xffffffff
and eax, ecx
or eax, 0x6af761ae
mov r8d, 0xffffffff
xor r8d, 0x45858ab8
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x45858ab8
or eax, 0x45858ab8
imul eax, edx
add eax, ecx
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, 0xd13f450d
add eax, ecx
cmp eax, 0x9fc0449a
jae 0x14014ced2
mov rcx, qword [rbp + 8]
mov r8, qword [rbp + 0x78]
mov r9, qword [rbp]
mov r10, qword [rbp + 0x70]
mov eax, dword [0x14019bb60]
or eax, dword [0x14019bb64]
or eax, 0x21985bdb
and eax, 0x83f6dcd0
mov r11d, 0x52f34b66
xor edx, edx
div r11d
mov rdx, qword [rbp + 0x10]
mov r11d, eax
mov rax, qword [rbp + 0x18]
mov dword [rbp - 0x1c], r11d
mov qword [r9], r10
mov qword [rcx], r8
mov rcx, qword [rcx]
mov qword [rbp - 0x28], rcx
mov qword [rdx], rcx
mov rdx, qword [rdx]
mov rdx, qword [rdx + 0x10]
mov qword [rax], rdx
sub rsp, 0x20
call fcn.14013ef00
mov rcx, qword [rbp + 0x18]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp - 0x1c]
mov qword [rbp - 0x18], rdx
mov rcx, qword [rcx]
mov qword [rbp - 0x10], rcx
cmp eax, 0xf885bfd7
ja 0x14014ced2
jmp 0x14014c6dd
mov ecx, dword [0x14019bb68]
mov r8d, dword [0x14019bb6c]
mov r9d, r8d
xor r9d, 0xffffffff
mov edx, ecx
and edx, r9d
mov eax, ecx
or eax, r9d
xor eax, 0xffffffff
imul eax, edx
mov edx, ecx
and edx, r8d
or ecx, r8d
imul ecx, edx
add ecx, eax
or ecx, 0x399e1be6
xor eax, eax
sub eax, 0x9ec3604e
add ecx, eax
mov eax, ecx
and eax, 0x9295fe97
xor ecx, 0x9295fe97
or eax, ecx
cmp eax, 0x797f00ce
jbe 0x14014cf12
mov rcx, qword [rbp - 0x18]
mov r8, qword [rbp - 0x10]
mov eax, dword [0x14019bb70]
xor edx, edx
div dword [0x14019bb74]
mov rdx, qword [rbp]
add eax, 0x229a07b1
add eax, 0xbcd973e7
sub eax, 0x229a07b1
add eax, 0x77b35477
add eax, 0x9f1ea202
xor r8, 0xffffffffffffffff
add rcx, r8
add rcx, 1
cmp rcx, qword [rdx]
setb cl
mov byte [rbp - 0x29], cl
cmp eax, 0x852fae3f
jbe 0x14014cf12
mov al, byte [rbp - 0x29]
test al, 1
jne 0x14014c799
jmp 0x14014c8e7
mov ecx, dword [0x14019bb78]
mov edx, dword [0x14019bb7c]
mov eax, ecx
and eax, edx
shl eax, 1
add ecx, edx
sub ecx, eax
add ecx, 0x703cbac6
add ecx, 0x477e03d8
sub ecx, 0x703cbac6
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x94d857e5
and eax, edx
or ecx, 0x94d857e5
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
mov ecx, eax
and ecx, 0xa23f3454
shl ecx, 1
add eax, 0xa23f3454
sub eax, ecx
cmp eax, 0xe566db2a
jae 0x14014cf17
mov eax, dword [0x14019bb80]
mov edx, dword [0x14019bb84]
mov ecx, edx
and ecx, eax
xor ecx, 0xffffffff
add eax, edx
add eax, 1
add eax, ecx
sub eax, 0x19666897
and eax, 0xce35e1d7
and eax, 0x2ac441c6
mov dword [rbp - 0x30], eax
sub rsp, 0x20
call fcn.14013ef20
mov eax, dword [rbp - 0x30]
add rsp, 0x20
cmp eax, 0xd19af5cd
jae 0x14014cf17
jmp 0x14014c849
mov eax, dword [0x14019bb88]
xor edx, edx
div dword [0x14019bb8c]
or eax, 0xed0d3670
add eax, 0xc28d837d
xor eax, 0xef3d4537
cmp eax, 0xd30f531e
je 0x14014cf29
mov ecx, dword [0x14019bb90]
mov edx, dword [0x14019bb94]
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, edx
xor ecx, 0xffffffff
xor edx, 0xffffffff
or ecx, edx
and eax, ecx
xor eax, 0xffffffff
mov ecx, 0x4730bf14
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
and eax, eax
xor eax, 0xffffffff
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x5234db76
or eax, edx
mov edx, 0x5234db76
and edx, 0x5234db76
xor edx, 0xffffffff
xor ecx, 0xffffffff
xor edx, 0xffffffff
or ecx, edx
and eax, ecx
xor eax, 0xffffffff
mov ecx, 0xe6baee92
xor edx, edx
div ecx
cmp eax, 0xaf9b853e
ja 0x14014c871
mov rcx, qword [rbp - 0x28]
mov rax, qword [rbp + 0x20]
mov rdx, qword [rbp + 0x28]
mov r8, qword [rbp + 0x10]
mov r10, qword [rbp]
mov r9, qword [rbp + 0x18]
mov r9, qword [r9]
add r9, qword [r10]
mov qword [rax], r9
mov r8, qword [r8]
mov r8, qword [r8 + 0x18]
mov qword [rdx], r8
mov rdx, qword [rax]
sub rsp, 0x20
call fcn.140100330
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x30]
mov qword [rax], rcx
mov rcx, qword [rbp - 0x28]
sub rsp, 0x20
call fcn.1400ea7c0
mov rdx, qword [rbp + 0x30]
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x38]
mov qword [rax], rcx
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.14013ef40
mov rcx, qword [rbp + 0x40]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0x10]
mov qword [rcx], rdx
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.1400ea1f0
mov rdx, qword [rbp + 0x20]
mov rcx, qword [rbp + 0x30]
mov rax, qword [rbp + 0x10]
add rsp, 0x20
mov r8, qword [rdx]
mov rdx, qword [rax]
mov qword [rdx + 0x10], r8
mov rcx, qword [rcx]
mov rax, qword [rax]
mov qword [rax + 0x18], rcx
mov eax, dword [0x14019bb98]
xor edx, edx
div dword [0x14019bb9c]
sub eax, 0x71f9cc6a
mov ecx, eax
and ecx, 0xacb57878
shl ecx, 1
xor eax, 0xacb57878
add eax, ecx
add eax, 0x586113bb
cmp eax, 0x7389a99f
jb 0x14014cf2e
mov rax, qword [rbp + 0x40]
mov ecx, dword [0x14019bba0]
mov edx, dword [0x14019bba4]
sub ecx, 0x8b05e945
sub ecx, edx
add ecx, 0x8b05e945
sub ecx, 0xad85b7ff
and ecx, 0x8a50090b
mov edx, ecx
and edx, 0xe6e55eee
xor edx, 0xffffffff
add ecx, 0xe6e55eee
add ecx, 1
add ecx, edx
mov dword [rbp - 0x38], ecx
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.14013ef80
mov rdx, qword [rbp + 0x50]
mov rcx, qword [rbp + 0x28]
add rsp, 0x20
mov r8, rax
mov eax, dword [rbp - 0x38]
mov qword [rdx], r8
cmp qword [rcx], 0xf
seta cl
mov byte [rbp - 0x31], cl
cmp eax, 0x58870d2f
jbe 0x14014c9cd
mov al, byte [rbp - 0x31]
test al, 1
jne 0x14014ca56
jmp 0x14014cd06
mov eax, dword [0x14019bba8]
imul eax, dword [0x14019bbac]
mov edx, eax
xor edx, 0xffffffff
and edx, 0xfad3dfd
mov r8d, 0xffffffff
xor r8d, 0xfad3dfd
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0xfad3dfd
or eax, 0xfad3dfd
imul eax, edx
add eax, ecx
add eax, 0x902b1429
xor ecx, ecx
sub ecx, 0xc980f2ad
sub eax, ecx
cmp eax, 0x91b2f5d8
jb 0x14014cf51
mov rcx, qword [rbp + 0x18]
mov r8, qword [rbp + 0x60]
mov r9, qword [rbp + 0x10]
mov eax, dword [0x14019bbb0]
mov r10d, dword [0x14019bbb4]
mov edx, eax
and edx, r10d
shl edx, 1
xor eax, r10d
add eax, edx
mov r11d, 0xffffffff
xor r11d, 0x830f44c3
mov r10d, eax
and r10d, r11d
mov edx, eax
or edx, r11d
xor edx, 0xffffffff
imul edx, r10d
mov r10d, eax
and r10d, 0x830f44c3
or eax, 0x830f44c3
imul eax, r10d
add eax, edx
and eax, 0x5e4a4d24
mov r10d, 0xcb7932a9
xor edx, edx
div r10d
mov rdx, qword [rbp - 8]
mov r9, qword [r9]
mov r9, qword [r9]
mov qword [r8], r9
mov dl, byte [rdx]
mov byte [rbp - 0x41], dl
mov rcx, qword [rcx]
mov qword [rbp - 0x40], rcx
cmp eax, 0xae49312d
ja 0x14014cf51
jmp 0x14014cb41
mov eax, dword [0x14019bbb8]
mov edx, dword [0x14019bbbc]
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, edx
add eax, ecx
or eax, 0xc84835f7
imul eax, eax, 0x5e828285
imul eax, eax, 0xcb62df8c
cmp eax, 0x21149011
je 0x14014cf67
mov rcx, qword [rbp + 0x60]
mov edx, dword [0x14019bbc0]
and edx, dword [0x14019bbc4]
mov eax, edx
xor eax, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x71315110
and eax, r8d
xor edx, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x71315110
and edx, r8d
or eax, edx
xor eax, 0xffffffff
mov r9d, 0xffffffff
xor r9d, 0xa8deadf7
mov r8d, eax
and r8d, r9d
mov edx, eax
or edx, r9d
xor edx, 0xffffffff
imul edx, r8d
mov r8d, eax
and r8d, 0xa8deadf7
or eax, 0xa8deadf7
imul eax, r8d
add eax, edx
mov r8d, 0x9878844a
xor edx, edx
div r8d
mov rcx, qword [rcx]
mov qword [rbp - 0x50], rcx
cmp eax, 0xc551ed80
je 0x14014cf67
jmp 0x14014cc08
mov eax, dword [0x14019bbc8]
mov r8d, dword [0x14019bbcc]
mov r9d, r8d
xor r9d, 0xffffffff
mov edx, eax
and edx, r9d
mov ecx, eax
or ecx, r9d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
add eax, 0xb6ecdcf
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0x35e49f2f
add ecx, eax
xor eax, eax
sub eax, ecx
sub eax, 0xa4b113b4
cmp eax, 0x558d8052
ja 0x14014cf6c
mov rcx, qword [rbp - 0x50]
mov eax, dword [0x14019bbd0]
imul eax, dword [0x14019bbd4]
mov r8d, 0x8f478a73
xor edx, edx
div r8d
add eax, 0x7ec892f8
mov edx, eax
and edx, 0xe9b9741d
shl edx, 1
xor eax, 0xe9b9741d
add eax, edx
mov dword [rbp - 0x54], eax
sub rsp, 0x20
call fcn.14013ef80
mov r8, qword [rbp - 0x40]
mov r9b, byte [rbp - 0x41]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0x50]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.14014d000
mov rdx, qword [rbp + 0x28]
mov rcx, qword [rbp + 0x60]
mov rax, qword [rbp + 0x38]
add rsp, 0x20
mov r8, qword [rdx]
mov rdx, qword [rcx]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.1400ea840
mov rdx, qword [rbp + 0x40]
mov rcx, qword [rbp + 0x10]
mov eax, dword [rbp - 0x54]
add rsp, 0x20
mov rdx, qword [rdx]
mov rcx, qword [rcx]
mov qword [rcx], rdx
cmp eax, 0x95e52cd
jbe 0x14014cc5f
jmp 0x14014cdf2
mov rax, qword [rbp + 0x10]
mov rcx, qword [rbp + 0x18]
mov rdx, qword [rbp - 8]
mov dl, byte [rdx]
mov byte [rbp - 0x69], dl
mov rcx, qword [rcx]
mov qword [rbp - 0x68], rcx
mov rax, qword [rax]
mov qword [rbp - 0x60], rax
mov r9b, byte [rbp - 0x69]
mov r8, qword [rbp - 0x68]
mov rdx, qword [rbp - 0x60]
mov rax, qword [rbp + 0x50]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.14014d450
add rsp, 0x20
mov eax, dword [0x14019bbd8]
mov edx, dword [0x14019bbdc]
mov r8d, eax
xor r8d, edx
xor r8d, 0xffffffff
mov ecx, edx
and ecx, r8d
shl ecx, 1
sub ecx, edx
sub eax, ecx
imul eax, eax, 0x54ae0d1d
or eax, 0x16a63aea
or eax, 0x56d2042a
cmp eax, 0x847c3186
ja 0x14014cfd4
mov eax, dword [0x14019bbe0]
xor edx, edx
div dword [0x14019bbe4]
mov rdx, qword [rbp + 0x40]
mov r8d, eax
mov rax, qword [rbp + 0x10]
sub r8d, 0x79e923b4
sub r8d, 0xc4dc17a
mov ecx, r8d
xor ecx, 0xffffffff
xor r8d, 0xffffffff
or ecx, r8d
mov r8d, 0x10628ce8
and r8d, 0x10628ce8
xor r8d, 0xffffffff
and ecx, r8d
xor ecx, 0xffffffff
mov dword [rbp - 0x70], ecx
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.1400f3880
mov eax, dword [rbp - 0x70]
add rsp, 0x20
cmp eax, 0xf3b708d7
je 0x14014cfd4
jmp 0x14014cdf2
mov eax, dword [0x14019bbe8]
xor eax, dword [0x14019bbec]
xor eax, 0x4be1ebbf
sub eax, 0x97d456aa
mov edx, eax
xor edx, 0xffffffff
and edx, 0x78b9c0a8
mov r8d, 0xffffffff
xor r8d, 0x78b9c0a8
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x78b9c0a8
or eax, 0x78b9c0a8
imul eax, edx
add eax, ecx
cmp eax, 0x2724c6d3
jbe 0x14014cff1
mov eax, dword [0x14019bbf0]
or eax, dword [0x14019bbf4]
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0x6fb7289f
mov edx, 0xffffffff
xor edx, 0x6fb7289f
and eax, edx
sub eax, ecx
imul eax, eax, 0x2064b3dd
mov ecx, eax
and ecx, 0x78695f63
xor ecx, 0xffffffff
add eax, 0x78695f63
add eax, 1
add eax, ecx
cmp eax, 0x53fd8b50
jb 0x14014cff1
mov rax, qword [rbp - 0x28]
lea rsp, [rbp + 0x80]
pop rbp
ret
mov cl, byte [rbp + 0x6e]
mov r8b, byte [rbp + 0x6f]
mov eax, 0x10
mov qword [rbp - 0x78], rax
call fcn.14014d730
sub rsp, rax
mov rax, qword [rbp - 0x78]
mov rdx, rsp
call fcn.14014d730
sub rsp, rax
mov rax, rsp
mov byte [rdx], r8b
mov byte [rax], cl
jmp 0x14014c477
mov rax, qword [rbp + 0x18]
mov rdx, qword [rbp + 0x10]
mov rcx, qword [rbp + 8]
mov r8, qword [rbp + 0x78]
mov r9, qword [rbp]
mov r10, qword [rbp + 0x70]
mov qword [r9], r10
mov qword [rcx], r8
mov rcx, qword [rcx]
mov qword [rdx], rcx
mov rdx, qword [rdx]
mov rdx, qword [rdx + 0x10]
mov qword [rax], rdx
sub rsp, 0x20
call fcn.14013ef00
add rsp, 0x20
jmp 0x14014c651
jmp 0x14014c737
sub rsp, 0x20
call fcn.1400f16c0
add rsp, 0x20
jmp 0x14014c7fd
jmp 0x14014c871
mov rax, qword [rbp + 0x40]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.14013ef80
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x50]
mov qword [rax], rcx
jmp 0x14014c9cd
mov rax, qword [rbp + 0x60]
mov rcx, qword [rbp + 0x10]
mov rcx, qword [rcx]
mov rcx, qword [rcx]
mov qword [rax], rcx
jmp 0x14014caaf
jmp 0x14014cb75
mov rcx, qword [rbp - 0x50]
sub rsp, 0x20
call fcn.1400f3d50
mov r8, qword [rbp - 0x40]
mov r9b, byte [rbp - 0x41]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0x50]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.14014d450
mov rdx, qword [rbp + 0x28]
mov rcx, qword [rbp + 0x60]
mov rax, qword [rbp + 0x38]
add rsp, 0x20
mov r8, qword [rdx]
mov rdx, qword [rcx]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.1400ea840
mov rcx, qword [rbp + 0x40]
mov rax, qword [rbp + 0x10]
add rsp, 0x20
mov rcx, qword [rcx]
mov rax, qword [rax]
mov qword [rax], rcx
jmp 0x14014cc5f
mov rdx, qword [rbp + 0x40]
mov rax, qword [rbp + 0x10]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.1400f3880
add rsp, 0x20
jmp 0x14014cd81
jmp 0x14014ce45