Function at 0x140065230
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rsi
sub rsp, 0x68
lea rbp, [rsp + 0x60]
mov qword [rbp - 8], r8
mov word [rbp + 6], cx
mov eax, dword [0x140243e98]
mov ecx, dword [0x140243e9c]
xor ecx, 0xeb31f14
xor edx, edx
div ecx
mov ecx, 0x8ca295cc
xor edx, edx
div ecx
xor eax, 0x92446f0d
imul eax, eax, 0x87650a4f
cmp eax, 0x5f3a9386
jbe 0x1400655d3
mov eax, dword [0x140243ea0]
xor eax, 0x9757a4b9
mov ecx, dword [0x140243ea4]
add eax, ecx
mov ecx, eax
xor ecx, 0xec040b01
xor eax, 0x10808020
and eax, 0x13c0843e
and ecx, 0xec3f7bc1
or eax, ecx
xor eax, 0x9897f994
add eax, 0x1c70b57a
mov dword [rbp - 0x10], eax
mov eax, 0x20
call fcn.14023fff0
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x38], rax
sub rsp, 0x20
call fcn.140064af7
mov cx, word [rbp + 6]
add rsp, 0x20
mov qword [rbp - 0x18], rax
mov rax, qword [0x14026bf88]
mov qword [rbp - 0x30], rax
movsx rcx, cx
mov qword [rbp - 0x28], rcx
add rax, 8
shl rcx, 4
add rax, rcx
add rax, 8
mov rcx, qword [rax]
mov qword [rbp - 0x20], rcx
add rcx, 8
sub rsp, 0x20
call fcn.1400651fc
mov rcx, qword [rbp - 0x18]
add rsp, 0x20
mov dl, al
mov eax, dword [rbp - 0x10]
mov byte [rbp - 0xa], dl
mov cl, byte [rcx]
mov dl, 0xa3
xor dl, 0xa3
cmp cl, dl
sete cl
mov byte [rbp - 9], cl
cmp eax, 0xf4f1949
je 0x1400655d3
mov al, byte [rbp - 9]
test al, 1
jne 0x14006534b
jmp 0x140065512
mov rcx, qword [rbp - 0x20]
add rcx, 0xd
sub rsp, 0x20
call fcn.1400651fc
add rsp, 0x20
mov byte [rbp - 0x39], al
cmp al, 0xb8
jne 0x140065390
mov rax, qword [rbp - 0x28]
mov rcx, qword [rbp - 0x30]
add rcx, 8
shl rax, 4
add rcx, rax
sub rsp, 0x20
call fcn.1400655f0
add rsp, 0x20
jmp 0x140065535
mov eax, dword [0x140243ea8]
mov r8d, dword [0x140243eac]
mov r9d, r8d
xor r9d, 0xffffffff
mov edx, eax
and edx, r9d
mov ecx, eax
or ecx, r9d
mov r9d, 0xeff3b7b
xor r9d, 0xf100c484
xor ecx, r9d
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
xor eax, 0xf38dfd35
mov ecx, 0xffffffff
xor ecx, 0x23ea7b72
add eax, ecx
add eax, 1
xor eax, 0xbb545c11
mov ecx, 0xeaf6c049
xor ecx, 0x44bb58b0
cmp eax, ecx
jae 0x1400655dc
mov rsi, qword [rbp - 8]
mov rcx, qword [rbp - 0x20]
mov eax, dword [0x140243eb0]
xor eax, dword [0x140243eb4]
and eax, 0x5b6c5095
mov r8d, 0xc060351d
xor edx, edx
div r8d
mov r8d, 0x3c99f3cb
xor r8d, 0x57ad2a46
xor edx, edx
div r8d
mov dword [rbp - 0x5c], eax
mov eax, 0x9528e53e
xor eax, 0x672e03f3
mov dword [rbp - 0x60], eax
add rcx, 0x13
sub rsp, 0x20
call fcn.1400651fc
mov r10, qword [rbp - 0x20]
mov r11b, byte [rbp - 0xa]
mov r8, qword [rbp - 0x38]
mov dl, byte [rbp - 0x39]
mov ecx, dword [rbp - 0x60]
add rsp, 0x20
mov r9b, al
mov eax, dword [rbp - 0x5c]
add r10, 0x14
mov qword [r8], rsi
mov byte [r8 + 8], r11b
mov qword [r8 + 0x10], r10
movzx r9d, r9b
mov dword [r8 + 0x18], r9d
mov r8, qword [0x14025a9c8]
mov r8, qword [r8 + 8]
movzx edx, dl
mov r9d, edx
mov rdx, r8
add rdx, 8
imul r10, r9, 0x48
add rdx, r10
add rdx, 0x38
add r8, 8
imul r9, r9, 0x48
add r8, r9
add r8, 0x40
mov r8, qword [r8]
mov qword [rbp - 0x58], r8
cmp r8, 0
sete r8b
mov byte [rbp - 0x49], r8b
mov rdx, qword [rdx]
mov qword [rbp - 0x48], rdx
cmp eax, ecx
je 0x1400653fb
mov al, byte [rbp - 0x49]
test al, 1
jne 0x140065500
jmp 0x1400654e5
mov rax, qword [rbp - 0x48]
mov rdx, qword [rbp - 0x58]
mov rcx, qword [rbp - 0x38]
sub rsp, 0x20
call rax
add rsp, 0x20
jmp 0x140065512
mov rax, qword [rbp - 0x48]
mov rcx, qword [rbp - 0x38]
sub rsp, 0x20
call rax
add rsp, 0x20
mov rax, qword [rbp - 0x28]
mov rcx, qword [0x14026bf88]
add rcx, 8
shl rax, 4
add rcx, rax
sub rsp, 0x20
call fcn.1400655f0
add rsp, 0x20
mov eax, dword [0x140243eb8]
add eax, dword [0x140243ebc]
or eax, 0x87d3f9e6
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
mov edx, 0x3800f227
xor edx, 0x37bae069
or eax, edx
add eax, ecx
mov ecx, eax
and ecx, 0xe2f3056b
shl ecx, 1
xor eax, 0xe2f3056b
add eax, ecx
cmp eax, 0x727118fe
je 0x1400655e5
mov rdx, qword [rbp - 0x28]
mov eax, dword [0x140243ec0]
and eax, dword [0x140243ec4]
xor eax, 0x374702be
mov ecx, 0xffffffff
xor ecx, 0xf1e1b308
add eax, ecx
add eax, 1
sub eax, 0x598fabd5
mov rcx, qword [0x14026bf88]
add rcx, 8
shl rdx, 4
add rcx, rdx
add rcx, 8
mov rcx, qword [rcx]
mov byte [rcx + 0xc], 0x1b
cmp eax, 0xe996a10f
je 0x14006557a
lea rsp, [rbp + 8]
pop rsi
pop rbp
ret
insb byte [rdi], dx
invalid
jns 0x14006562f
invalid
or dword [rdx - 0x731667f5], ebx
invalid
mov ecx, 0x69c1af0f
rcr dl, 0xab
sbb byte [rcx + 5], ch
shl dword [r8 - 0x2b], cl