Function at 0x1400fccb0
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0x120
lea rbp, [rsp + 0x80]
mov qword [rbp], rdx
mov qword [rbp + 8], rcx
mov eax, 0x10
mov qword [rbp + 0x10], rax
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0x10]
mov rcx, rsp
mov qword [rbp + 0x18], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x20], rax
sub rsp, 0x20
call fcn.1400eb12e
add rsp, 0x20
mov qword [rbp + 0x28], rax
mov ecx, 0xef04
mov edx, 0xfa78
sub rsp, 0x20
call fcn.14006ae75
add rsp, 0x20
mov cx, ax
mov rax, qword [rbp + 0x28]
mov word [rbp + 0x36], cx
cmp byte [rax], 0
jne 0x1400fd60e
mov rcx, qword [rbp]
mov ax, word [rbp + 0x36]
mov dl, al
sub rsp, 0x20
call fcn.1400ed474
mov rax, qword [rbp + 0x28]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x49
xor cl, 0x49
cmp al, cl
je 0x1400fcd5e
jmp 0x1400fd60e
mov ecx, 0xf488
mov edx, 0xe1b5
sub rsp, 0x20
call fcn.14006ae75
mov rcx, qword [rbp + 0x28]
add rsp, 0x20
mov cl, byte [rcx]
mov dl, 0xad
xor dl, 0xad
cmp cl, dl
sete r8b
mov byte [rbp - 2], r8b
cmp cl, dl
mov byte [rbp - 1], al
je 0x1400fcd95
mov al, byte [rbp - 2]
mov cl, byte [rbp - 1]
mov byte [rbp - 3], cl
test al, 1
jne 0x1400fcdab
jmp 0x1400fd046
movabs rax, 0x146a5ddb665b833e
movabs rcx, 0x146a5ddb665b833e
xor rax, rcx
mov qword [rbp + 0x90], rax
lea rax, [rbp + 0x90]
add rax, 8
mov qword [rbp - 0x18], rax
mov qword [rbp + 0x98], 0
mov word [rbp + 0x8e], 0x97b
lea rcx, [rbp + 0x8e]
sub rsp, 0x20
call fcn.140067800
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x28]
mov qword [rbp - 0x10], rcx
cmp byte [rax], 0
jne 0x1400fd046
mov rax, qword [rbp - 0x10]
mov rdx, qword [rax]
add rdx, 1
lea rcx, [rbp + 0x90]
sub rsp, 0x20
call fcn.14001bb40
mov rax, qword [rbp - 0x10]
add rsp, 0x20
mov rcx, qword [rax]
mov qword [rbp + 0x78], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x80], rax
lea rcx, [rbp + 0x90]
lea rdx, [rbp + 0x78]
sub rsp, 0x20
call fcn.1400f883f
mov dl, byte [rbp - 3]
add rsp, 0x20
lea rcx, [rbp + 0x90]
sub rsp, 0x20
call fcn.1400fb890
mov rax, qword [rbp - 0x18]
mov rcx, qword [rbp]
add rsp, 0x20
mov rdx, qword [rbp + 0x90]
mov qword [rbp - 0x30], rdx
mov rax, qword [rax]
mov qword [rbp - 0x28], rax
sub rsp, 0x20
call fcn.14001bef0
mov rdx, qword [rbp - 0x30]
mov rcx, qword [rbp]
mov rax, qword [rbp - 0x28]
add rsp, 0x20
mov qword [rbp + 0x68], rdx
mov qword [rbp + 0x70], rax
lea rdx, [rbp + 0x68]
sub rsp, 0x20
call fcn.1400f883f
mov rax, qword [rbp + 8]
mov rdx, qword [rbp]
add rsp, 0x20
mov cl, byte [rax]
sub rsp, 0x20
call fcn.1400fcc87
mov rax, qword [rbp + 0x28]
mov rcx, qword [rbp - 0x28]
add rsp, 0x20
mov al, byte [rax]
mov byte [rbp - 0x1b], al
cmp al, 0
sete dl
mov byte [rbp - 0x1a], dl
cmp rcx, 0
mov byte [rbp - 0x19], al
je 0x1400fd0cd
mov eax, dword [0x140257250]
mov ecx, 0x74b8a71f
xor ecx, 0xf208d0ec
xor eax, ecx
mov ecx, dword [0x140257254]
xor ecx, 0xed1ccbd
xor edx, edx
div ecx
mov edx, 0x3a6a8443
xor edx, 0xc11d40e9
mov ecx, eax
xor ecx, edx
xor ecx, 0xffffffff
or eax, 0xfb77c4aa
and eax, ecx
sub eax, 0xf7481526
mov edx, 0x8a08a1c4
xor edx, 0xf5d7aed4
mov ecx, eax
and ecx, edx
shl ecx, 1
add eax, 0x7fdf0f10
sub eax, ecx
cmp eax, 0xfdf067dc
je 0x1400fd765
mov r8, qword [rbp - 0x28]
mov ecx, dword [0x140257258]
mov eax, dword [0x14025725c]
and ecx, ecx
xor ecx, 0xffffffff
and eax, eax
xor eax, 0xffffffff
and ecx, eax
xor ecx, 0xffffffff
mov edx, 0x863cea96
xor edx, 0x79c31569
mov eax, ecx
xor eax, edx
mov r9d, 0xb28114af
xor r9d, 0x4d7eeb50
mov edx, ecx
xor edx, r9d
or eax, edx
and eax, 0xf0fb69f1
mov edx, 0x673ec1d5
xor edx, 0x98c13e2a
xor eax, edx
mov edx, 0xf0fb69f1
and edx, 0xf0fb69f1
xor edx, 0xffffffff
xor ecx, 0xffffffff
xor edx, 0xffffffff
or ecx, edx
and eax, ecx
xor eax, 0xffffffff
mov ecx, 0xc4ee9642
xor ecx, 0x3ee10c2a
xor edx, edx
div ecx
imul eax, eax, 0x40f167bc
mov ecx, 0x1c3c098a
xor ecx, 0x28004a23
movabs rdx, 0x4000000000000000
and rdx, qword [r8]
cmp rdx, 0
sete dl
mov byte [rbp - 0x31], dl
cmp eax, ecx
jae 0x1400fd765
mov al, byte [rbp - 0x1b]
mov cl, byte [rbp - 0x31]
test cl, 1
mov byte [rbp - 0x19], al
jne 0x1400fd027
jmp 0x1400fd0cd
mov rcx, qword [rbp - 0x28]
sub rsp, 0x20
call fcn.14000e9f6
mov rax, qword [rbp + 0x28]
add rsp, 0x20
mov al, byte [rax]
mov byte [rbp - 0x19], al
jmp 0x1400fd0cd
mov eax, dword [0x140257260]
xor eax, 0x835982b1
and eax, dword [0x140257264]
mov ecx, 0x8a14c2e9
xor ecx, 0xf0c79816
or eax, ecx
add eax, 0x1d8fe564
mov ecx, 0x52130287
xor ecx, 0x1a9dc2d2
sub eax, ecx
sub eax, 0x1d8fe564
mov ecx, 0xc97cba07
xor edx, edx
div ecx
cmp eax, 0xe64a963b
jae 0x1400fd76e
mov eax, dword [0x140257268]
mov ecx, dword [str.fJ53]
xor ecx, 0x70151a83
xor edx, edx
div ecx
or eax, 0x72a96c57
imul eax, eax, 0x690ad74a
xor eax, 0x697cad36
mov ecx, 0x4efde429
xor ecx, 0x31ecaefd
cmp eax, ecx
je 0x1400fd08f
jmp 0x1400fd60e
mov al, byte [rbp - 0x19]
mov cl, 0x51
xor cl, 0x51
cmp al, cl
jne 0x1400fd60e
mov rax, qword [rbp + 0x28]
mov rcx, qword [rbp + 8]
mov rdx, rcx
add rdx, 8
mov qword [rbp - 0x40], rdx
mov rcx, qword [rcx + 8]
test rcx, rcx
sete cl
mov al, byte [rax]
test al, al
setne al
mov byte [rbp - 0x32], al
or al, cl
test al, 1
jne 0x1400fd44c
mov al, byte [rbp - 0x1a]
test al, 1
jne 0x1400fd11e
jmp 0x1400fd23c
mov ecx, 0xa1d4
mov edx, 0xb4ff
sub rsp, 0x20
call fcn.14006ae75
add rsp, 0x20
mov cx, ax
mov rax, qword [rbp + 0x28]
mov word [rbp - 0x42], cx
cmp byte [rax], 0
jne 0x1400fd434
mov eax, dword [0x140257270]
xor edx, edx
div dword [0x140257274]
mov ecx, 0x8de732aa
xor ecx, 0xef9a8ed8
mov edx, 0x8f0f2c0e
xor edx, 0x70f0d3f1
xor ecx, edx
add eax, ecx
mov ecx, 0xfc2c6a7e
xor ecx, 0xfc2c6a7f
add eax, ecx
xor eax, 0x72398d53
mov ecx, 0xffffffff
xor ecx, 0xc82d94e1
add eax, ecx
mov ecx, 0xcfda374e
xor ecx, 0xcfda374f
add eax, ecx
cmp eax, 0xe84a4c0f
je 0x1400fd777
mov rcx, qword [rbp]
mov ax, word [rbp - 0x42]
mov r9d, dword [0x140257278]
mov edx, dword [0x14025727c]
xor edx, 0x26860e31
sub r9d, edx
mov edx, 0x8091842c
xor edx, 0x8647cca
mov r8d, r9d
xor r8d, edx
mov edx, 0xffffffff
xor edx, 0x88f5f8e6
and r9d, edx
mov edx, 0xa6e177d7
xor edx, 0xa6e177d5
imul edx, r9d
sub edx, r8d
mov r8d, 0xc61eba62
xor r8d, 0xd16b4b89
add edx, r8d
mov r8d, 0xc184a79c
xor r8d, 0xbba72025
xor edx, r8d
mov dword [rbp - 0x48], edx
mov dl, al
sub rsp, 0x20
call fcn.1400ed474
mov eax, dword [rbp - 0x48]
add rsp, 0x20
cmp eax, 0xa52a17c0
je 0x1400fd777
jmp 0x1400fd23c
mov cx, 0xcf65
xor cx, 0x3bed
mov dx, 0x9a74
xor dx, 0x7bc1
sub rsp, 0x20
call fcn.14006ae75
mov rcx, qword [rbp + 0x28]
add rsp, 0x20
mov cl, byte [rcx]
cmp cl, 0
sete dl
mov byte [rbp - 0x4a], dl
cmp cl, 0
mov byte [rbp - 0x49], al
je 0x1400fd276
mov al, byte [rbp - 0x4a]
mov cl, byte [rbp - 0x49]
mov byte [rbp - 0x4b], cl
test al, 1
jne 0x1400fd28c
jmp 0x1400fd434
mov rcx, qword [rbp + 0x18]
mov qword [rbp + 0x58], 0
lea rax, [rbp + 0x58]
add rax, 8
mov qword [rbp - 0x60], rax
mov qword [rbp + 0x60], 0
mov ax, 0x2738
xor ax, 0x245e
mov word [rcx], ax
sub rsp, 0x20
call fcn.140067800
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x28]
mov qword [rbp - 0x58], rcx
mov al, byte [rax]
mov cl, 0x1c
xor cl, 0x1c
cmp al, cl
jne 0x1400fd434
mov rax, qword [rbp - 0x58]
mov rdx, qword [rax]
movabs rax, 0x7542be41b234bdf0
movabs rcx, 0x7542be41b234bdf1
xor rax, rcx
movabs rcx, 0x4a6e858ba4605172
movabs r8, 0xb5917a745b9fae8d
xor rcx, r8
xor rax, rcx
xor ecx, ecx
sub rcx, 1
sub rax, rcx
sub rdx, rax
lea rcx, [rbp + 0x58]
sub rsp, 0x20
call fcn.14001bb40
mov rax, qword [rbp - 0x58]
add rsp, 0x20
mov rcx, qword [rax]
mov qword [rbp + 0x48], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x50], rax
lea rcx, [rbp + 0x58]
lea rdx, [rbp + 0x48]
sub rsp, 0x20
call fcn.1400f883f
mov dl, byte [rbp - 0x4b]
add rsp, 0x20
lea rcx, [rbp + 0x58]
sub rsp, 0x20
call fcn.1400fb890
mov rax, qword [rbp - 0x60]
mov rcx, qword [rbp]
add rsp, 0x20
mov rdx, qword [rbp + 0x58]
mov qword [rbp - 0x70], rdx
mov rax, qword [rax]
mov qword [rbp - 0x68], rax
sub rsp, 0x20
call fcn.14001bef0
mov rdx, qword [rbp - 0x70]
mov rcx, qword [rbp]
mov rax, qword [rbp - 0x68]
add rsp, 0x20
mov qword [rbp + 0x38], rdx
mov qword [rbp + 0x40], rax
lea rdx, [rbp + 0x38]
sub rsp, 0x20
call fcn.1400f883f
mov rax, qword [rbp - 0x40]
mov rcx, qword [rbp + 0x20]
mov rdx, qword [rbp]
add rsp, 0x20
mov r8, qword [rax]
mov qword [rcx], r8
mov rax, qword [rax + 8]
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.1400fb9f0
mov rax, qword [rbp - 0x68]
add rsp, 0x20
cmp rax, 0
je 0x1400fd439
mov rcx, qword [rbp - 0x68]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
movabs rcx, 0x4cab0ddc0c2ee2ee
movabs rdx, 0x4cab0ddc0c2ee2ee
xor rcx, rdx
cmp rax, rcx
jne 0x1400fd439
mov rcx, qword [rbp - 0x68]
sub rsp, 0x20
call fcn.14000e9f6
add rsp, 0x20
jmp 0x1400fd439
jmp 0x1400fd60e
mov rax, qword [rbp + 0x28]
mov al, byte [rax]
cmp al, 0
je 0x1400fd457
jmp 0x1400fd60e
mov al, byte [rbp - 0x32]
test al, 1
jne 0x1400fd60e
mov ecx, 0x8f18
mov edx, 0x9a62
sub rsp, 0x20
call fcn.14006ae75
add rsp, 0x20
mov cx, ax
mov rax, qword [rbp + 0x28]
mov word [rbp - 0x72], cx
cmp byte [rax], 0
jne 0x1400fd60e
mov eax, dword [0x140257280]
mov edx, dword [0x140257284]
mov r8d, 0x16e3b7e
xor r8d, 0xfe91c481
mov ecx, eax
xor ecx, r8d
mov r9d, 0x25db12e8
xor r9d, 0xda24ed17
mov r8d, eax
xor r8d, r9d
and ecx, r8d
mov r8d, edx
xor r8d, 0xffffffff
mov r9d, edx
xor r9d, 0xffffffff
and r8d, r9d
mov r9d, 0xf0cbc0d4
xor r9d, 0xf343f2b
xor ecx, r9d
xor r8d, 0xffffffff
and ecx, r8d
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
xor ecx, 0xffffffff
mov edx, 0x2906c99b
xor edx, 0xd6f93664
xor eax, edx
and ecx, eax
xor ecx, 0x5e2ddf0b
mov eax, ecx
xor eax, 0xffffffff
mov edx, ecx
xor edx, 0xffffffff
or eax, edx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x9346bfb8
or eax, edx
mov edx, 0xc68e1f54
xor edx, 0x55c8a0ec
mov r8d, 0xe3cc1191
xor r8d, 0x1c33ee6e
xor edx, r8d
mov r8d, 0xffffffff
xor r8d, 0x9346bfb8
or edx, r8d
and ecx, edx
mov edx, 0x6dac1ea3
xor edx, 0x9253e15c
xor ecx, edx
xor eax, 0xffffffff
mov edx, 0x11383459
xor edx, 0xeec7cba6
xor ecx, edx
or eax, ecx
mov ecx, 0xa3017ab4
xor ecx, 0xab1ade80
imul eax, ecx
cmp eax, 0x30977213
ja 0x1400fd780
mov rcx, qword [rbp]
mov eax, dword [0x140257288]
xor eax, 0xee7512e
xor edx, edx
div dword [0x14025728c]
mov edx, eax
mov eax, edx
and eax, eax
xor eax, 0xffffffff
xor eax, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0xd76963b8
or eax, r8d
mov r8d, 0xd76963b8
and r8d, 0xd76963b8
xor r8d, 0xffffffff
xor edx, 0xffffffff
xor r8d, 0xffffffff
or edx, r8d
and eax, edx
xor eax, 0xffffffff
mov r8d, 0x2273378b
xor edx, edx
div r8d
mov edx, eax
mov ax, word [rbp - 0x72]
xor edx, 0x3e82a747
mov dword [rbp - 0x78], edx
mov dl, al
sub rsp, 0x20
call fcn.1400ed474
mov eax, dword [rbp - 0x78]
add rsp, 0x20
cmp eax, 0x33f100d8
jbe 0x1400fd57f
jmp 0x1400fd60e
mov eax, dword [0x140257290]
mov ecx, dword [0x140257294]
xor ecx, 0x2facf214
sub eax, ecx
and eax, 0x1a72a50
mov ecx, 0xffffffff
xor ecx, 0x641c9efc
add eax, ecx
mov ecx, 0xf986e3ad
xor ecx, 0xf986e3ac
add eax, ecx
mov edx, 0xcaace85b
xor edx, 0x355317a4
mov ecx, eax
xor ecx, edx
and ecx, 0x58186682
mov edx, 0xffffffff
xor edx, 0x58186682
and eax, edx
sub eax, ecx
mov ecx, 0x84abe9fd
xor ecx, 0x10767475
cmp eax, ecx
jae 0x1400fd789
mov eax, dword [0x140257298]
xor edx, edx
div dword [0x14025729c]
mov r11d, eax
mov ecx, 0x68dfd500
xor ecx, 0xc56a4db4
mov eax, r11d
and eax, ecx
shl eax, 1
mov ecx, 0x13c3116e
xor ecx, 0xbe7689da
add r11d, ecx
sub r11d, eax
mov ecx, r11d
xor ecx, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x3adbd11f
mov edx, 0x89e246ab
xor edx, 0xaaa68efa
mov eax, 0x66019a6a
xor eax, 0x99fe6595
xor edx, eax
mov r9d, 0xc5c7efeb
xor r9d, 0xe68327ba
mov eax, ecx
and eax, r9d
and r11d, edx
mov r9d, r8d
and r9d, 0x2344c851
mov r10d, 0xcc67217f
xor r10d, 0xf6bcf060
and r10d, edx
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
mov r8d, 0x75c3a73f
xor r8d, 0x8a3c58c0
xor ecx, r8d
or edx, 0x2344c851
and ecx, edx
or eax, ecx
and eax, eax
xor eax, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0x53e21afb
mov edx, 0xffffffff
xor edx, 0x53e21afb
or ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
cmp eax, 0xb7396442
je 0x1400fd678
lea rsp, [rbp + 0xa0]
pop rbp
ret
neg byte [rsi]
jae 0x1400fd712
jmp 0x1400fcf62
shl byte [rax + 0x27], cl
loopne 0x1400fd75c
sbb cl, bh
invalid
invalid
ret
leave
xor esp, dword [rbx - 0x5c]
jmp 0x1400fd678