Function at 0x140082610
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rsi
sub rsp, 0x98
lea rbp, [rsp + 0x80]
mov qword [rbp - 0x58], rdx
mov qword [rbp - 0x48], rcx
mov eax, 0x10
call fcn.1401da3e0
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x50], rax
sub rsp, 0x20
call fcn.14006a8ef
mov rcx, qword [rbp - 0x48]
add rsp, 0x20
mov qword [rbp - 0x40], rax
mov edx, 0xb
sub rsp, 0x20
call fcn.14006afd9
mov rax, qword [rbp - 0x40]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0xf9
xor cl, 0xf9
cmp al, cl
jne 0x140082c9f
mov rcx, qword [rbp - 0x48]
mov rax, qword [rbp - 0x58]
mov rdx, qword [rax]
sub rsp, 0x20
call fcn.140076b00
mov rax, qword [rbp - 0x40]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140082c9f
mov rcx, qword [rbp - 0x48]
mov rax, qword [rbp - 0x58]
mov rdx, qword [rax + 8]
mov qword [rbp + 8], rdx
mov rax, qword [rax + 0x10]
mov qword [rbp + 0x10], rax
lea rdx, [rbp + 8]
sub rsp, 0x20
call fcn.14006bfbf
mov rax, qword [rbp - 0x40]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140082c9f
mov eax, dword [0x1401deed8]
imul eax, dword [0x1401deedc]
mov r11d, eax
xor r11d, 0xffffffff
xor eax, 0xffffffff
or r11d, eax
mov eax, 0xffffffff
xor eax, 0x7b3cbbc9
mov ecx, 0xffffffff
xor ecx, 0x7b3cbbc9
or eax, ecx
xor r11d, 0xffffffff
xor eax, 0xffffffff
or r11d, eax
mov eax, 0x42a8741a
xor eax, 0xbd578be5
mov ecx, r11d
xor ecx, eax
mov edx, 0x1bb9fef5
xor edx, 0x3029cb4
mov eax, 0xa5426388
xor eax, 0x5abd9c77
xor edx, eax
mov r8d, 0xffffffff
xor r8d, 0x35a31869
mov eax, ecx
and eax, 0x35a31869
and r11d, r8d
mov r9d, edx
and r9d, 0x35a31869
mov r10d, r8d
and r10d, 0x18bb6241
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, edx
xor ecx, 0xffffffff
mov edx, 0x2b0c000f
xor edx, 0x1eaf1866
or edx, r8d
and ecx, edx
or eax, ecx
xor eax, 0x340e7535
cmp eax, 0xd97f9be6
jae 0x140082ca6
mov rcx, qword [rbp - 0x48]
mov eax, dword [str.a20F]
sub eax, dword [0x1401deee4]
mov r8d, 0xdb013c4a
xor edx, edx
div r8d
mov edx, eax
mov rax, qword [rbp - 0x58]
or edx, 0x756e54a1
xor edx, 0xe66dee47
mov dword [rbp - 0x60], edx
mov rdx, qword [rax + 0x18]
mov qword [rbp - 8], rdx
mov rax, qword [rax + 0x20]
mov qword [rbp], rax
lea rdx, [rbp - 8]
sub rsp, 0x20
call fcn.14006bfbf
mov rcx, qword [rbp - 0x40]
mov eax, dword [rbp - 0x60]
add rsp, 0x20
mov cl, byte [rcx]
mov dl, 0x95
xor dl, 0x95
cmp cl, dl
sete cl
mov byte [rbp - 0x59], cl
cmp eax, 0x4dc2b8b4
jbe 0x14008278e
mov al, byte [rbp - 0x59]
test al, 1
jne 0x140082810
jmp 0x140082c9f
mov rcx, qword [rbp - 0x48]
mov rax, qword [rbp - 0x58]
mov rdx, qword [rax + 0x28]
sub rsp, 0x20
call fcn.140081970
mov rax, qword [rbp - 0x40]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140082c9f
mov eax, dword [0x1401deee8]
mov ecx, dword [0x1401deeec]
sub eax, 0x679a8292
add eax, ecx
add eax, 0x679a8292
or eax, 0x62ec82cd
mov edx, 0x8fc9112f
xor edx, 0xb0976632
mov ecx, eax
xor ecx, edx
mov edx, 0xffffffff
xor edx, 0x3f5e771d
and eax, edx
shl eax, 1
sub eax, ecx
mov ecx, eax
xor ecx, 0x8f5af2c6
mov edx, 0xffffffff
xor edx, 0x8f5af2c6
and eax, edx
shl eax, 1
sub eax, ecx
cmp eax, 0x901fb303
jb 0x140082caf
mov rcx, qword [rbp - 0x48]
mov eax, dword [0x1401deef0]
mov r8d, dword [0x1401deef4]
xor r8d, 0x2d0b28e1
xor edx, edx
div r8d
mov r8d, 0xaed056a9
xor edx, edx
div r8d
mov edx, eax
mov rax, qword [rbp - 0x58]
mov r8d, 0x68f842fa
xor r8d, 0x8fe14e92
add edx, r8d
mov r8d, 0x14da8caa
xor r8d, 0xd37b099a
and edx, r8d
mov dword [rbp - 0x68], edx
mov edx, 0x84f31c95
xor edx, 0xfb33d8fb
mov dword [rbp - 0x6c], edx
mov rdx, qword [rax + 0x30]
mov qword [rbp - 0x18], rdx
mov rax, qword [rax + 0x38]
mov qword [rbp - 0x10], rax
lea rdx, [rbp - 0x18]
sub rsp, 0x20
call fcn.140081cb0
mov rdx, qword [rbp - 0x40]
mov ecx, dword [rbp - 0x6c]
mov eax, dword [rbp - 0x68]
add rsp, 0x20
mov dl, byte [rdx]
mov r8b, 0xa2
xor r8b, 0xa2
cmp dl, r8b
sete dl
mov byte [rbp - 0x61], dl
cmp eax, ecx
jbe 0x140082caf
mov al, byte [rbp - 0x61]
test al, 1
jne 0x14008294d
jmp 0x140082c9f
mov rcx, qword [rbp - 0x48]
mov rax, qword [rbp - 0x58]
mov rdx, qword [rax + 0x40]
sub rsp, 0x20
call fcn.14006c95a
mov rax, qword [rbp - 0x40]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140082c9f
mov rcx, qword [rbp - 0x48]
mov rax, qword [rbp - 0x58]
mov rdx, qword [rax + 0x48]
mov qword [rbp - 0x28], rdx
mov rax, qword [rax + 0x50]
mov qword [rbp - 0x20], rax
lea rdx, [rbp - 0x28]
sub rsp, 0x20
call fcn.14006bfbf
mov rax, qword [rbp - 0x40]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140082c9f
mov eax, dword [0x1401deef8]
mov ecx, dword [0x1401deefc]
xor ecx, 0xdc6cea46
xor edx, edx
div ecx
mov r8d, eax
mov eax, r8d
xor eax, 0xffffffff
and eax, 0x5af02688
mov edx, 0xffffffff
xor edx, 0x5af02688
and r8d, edx
mov ecx, 0xf8a21d8
xor ecx, 0xa77c983a
mov r9d, 0x82b8289a
xor r9d, 0x7d47d765
xor ecx, r9d
and ecx, 0x5af02688
and edx, 0xa8f6b9e2
or eax, r8d
or ecx, edx
xor eax, ecx
mov ecx, 0xdd659957
xor edx, edx
div ecx
add eax, 0x78b41f0e
mov ecx, 0xa4d60247
xor ecx, 0xab9688c1
cmp eax, ecx
jbe 0x140082cb8
mov rdx, qword [rbp - 0x50]
mov rcx, qword [rbp - 0x48]
mov rax, qword [rbp - 0x58]
mov r8d, dword [0x1401def00]
mov r11d, dword [0x1401def04]
mov esi, r11d
xor esi, 0xffffffff
mov r10d, r8d
and r10d, esi
mov r9d, r8d
or r9d, esi
xor r9d, 0xffffffff
imul r9d, r10d
mov r10d, r8d
and r10d, r11d
or r8d, r11d
imul r8d, r10d
add r8d, r9d
add r8d, 0x34dc87c0
imul r8d, r8d, 0x3c34cf1b
xor r8d, 0xffffffff
mov r10d, 0xffffffff
xor r10d, 0x13451edc
mov r9d, 0xffffffff
xor r9d, 0x5300eab5
or r8d, r10d
or r9d, 0x5300eab5
mov r10d, 0x59e36de7
xor r10d, 0xa61c9218
xor r8d, r10d
and r8d, r9d
mov dword [rbp - 0x74], r8d
mov r8, qword [rax + 0x58]
mov qword [rdx], r8
mov rax, qword [rax + 0x60]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.140081f40
mov rcx, qword [rbp - 0x40]
mov eax, dword [rbp - 0x74]
add rsp, 0x20
cmp byte [rcx], 0
sete cl
mov byte [rbp - 0x6d], cl
cmp eax, 0x42bfee0a
ja 0x140082cb8
mov al, byte [rbp - 0x6d]
test al, 1
jne 0x140082b02
jmp 0x140082c9f
mov rcx, qword [rbp - 0x48]
mov rax, qword [rbp - 0x58]
mov rdx, qword [rax + 0x68]
sub rsp, 0x20
call fcn.1400825ba
mov rax, qword [rbp - 0x40]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140082c9f
mov r11d, dword [0x1401def08]
mov eax, dword [0x1401def0c]
mov ecx, 0x1d6abf2a
xor ecx, 0xd68e937b
sub r11d, ecx
sub r11d, eax
add r11d, 0xcbe42c51
mov eax, r11d
xor eax, 0xffffffff
mov r8d, 0x74722063
xor r8d, 0x78985684
mov ecx, 0xd0ec280d
xor ecx, 0x2f13d7f2
xor r8d, ecx
mov edx, 0xffffffff
xor edx, 0xd0495448
mov ecx, eax
and ecx, 0xd0495448
and r11d, edx
mov r10d, 0xf7659d8b
xor r10d, 0x272cc9c3
mov r9d, r8d
and r9d, r10d
mov r10d, edx
and r10d, 0xcea76e7
or ecx, r11d
or r9d, r10d
xor ecx, r9d
or eax, r8d
xor eax, 0xffffffff
or edx, 0xd0495448
and eax, edx
or ecx, eax
mov edx, 0xffffffff
xor edx, 0x867514a6
mov eax, ecx
xor eax, edx
and eax, ecx
mov ecx, 0xc61fa45f
xor ecx, 0xe69bb2a3
and eax, ecx
cmp eax, 0x5fe72642
je 0x140082cc1
mov rcx, qword [rbp - 0x48]
mov eax, dword [0x1401def10]
xor eax, 0x9fc479b5
and eax, dword [0x1401def14]
mov edx, eax
add edx, 1
xor eax, 0xffffffff
mov r8d, 0xca2b7485
xor r8d, 0xb5c78315
or eax, r8d
add eax, edx
xor eax, 0x20e31125
mov r8d, 0x35493e9
xor edx, edx
div r8d
mov edx, eax
mov rax, qword [rbp - 0x58]
mov dword [rbp - 0x7c], edx
cmp byte [rax + 0x70], 0
setne dl
and dl, 1
sub rsp, 0x20
call fcn.14007dbb8
mov rcx, qword [rbp - 0x40]
mov eax, dword [rbp - 0x7c]
add rsp, 0x20
mov cl, byte [rcx]
mov dl, 0x99
xor dl, 0x99
cmp cl, dl
sete cl
mov byte [rbp - 0x75], cl
cmp eax, 0xd919929e
jae 0x140082cc1
mov al, byte [rbp - 0x75]
test al, 1
jne 0x140082c73
jmp 0x140082c9f
mov rcx, qword [rbp - 0x48]
mov rax, qword [rbp - 0x58]
mov rdx, qword [rax + 0x78]
mov qword [rbp - 0x38], rdx
mov rax, qword [rax + 0x80]
mov qword [rbp - 0x30], rax
lea rdx, [rbp - 0x38]
sub rsp, 0x20
call fcn.140081f40
add rsp, 0x20
lea rsp, [rbp + 0x18]
pop rsi
pop rbp
ret
std
sbb ebx, ebp
out dx, al
jmp 0x14008278e
invalid
clc
insb byte [rdi], dx
jnp 0x140082ca6
imul edi, ebp, 0x6466ffff
adc edi, esi
adc di, si
jmp 0x140082be3