Function at 0x140082840
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0x120
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x68], r8
mov qword [rbp + 0x78], rdx
mov qword [rbp + 0x70], rcx
mov eax, 0x10
call fcn.140271bb0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x80], rax
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
mov rdx, qword [rbp + 0x78]
mov rcx, qword [rbp + 0x80]
add rsp, 0x20
mov qword [rbp + 0x90], rax
add rax, 0x60
mov qword [rbp + 0x88], rax
mov rax, qword [rdx]
mov qword [rcx], rax
mov rax, qword [rdx + 8]
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.14005ae40
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x90]
mov qword [rbp + 0x98], rcx
mov al, byte [rax + 0x60]
mov cl, 0xe0
xor cl, 0xe0
cmp al, cl
jne 0x14008300b
mov rax, qword [rbp + 0x70]
mov rcx, qword [rbp + 0x68]
mov rdx, qword [rbp + 0x98]
mov r8d, 0x682eec07
cmp rdx, 0
cmove rdx, r8
mov qword [rbp + 0x50], rdx
mov qword [rcx], rdx
mov rcx, qword [rax]
mov qword [rbp + 0x58], rcx
mov rax, 0xffffffffffffffff
cmp rcx, 0
mov qword [rbp + 0x60], rax
je 0x14008300b
mov eax, dword [0x140275d60]
mov edx, dword [str.Q_L_fx]
mov ecx, eax
and ecx, edx
shl ecx, 1
add eax, edx
sub eax, ecx
mov ecx, 0x4cf3f3e6
xor edx, edx
div ecx
mov edx, 0xc7150954
xor edx, 0x7caeb66
mov ecx, eax
and ecx, edx
mov edx, 0xddf77803
xor edx, 0xddf77801
imul ecx, edx
xor eax, 0xc0dfe232
add eax, ecx
mov ecx, 0x6c9894d0
xor edx, edx
div ecx
mov ecx, 0x297533ef
xor ecx, 0x793f7e05
cmp eax, ecx
jae 0x140083018
mov r8, qword [rbp + 0x70]
mov r9, qword [rbp + 0x50]
mov rcx, qword [rbp + 0x58]
mov edx, dword [0x140275d68]
xor edx, 0xf81aa88d
imul edx, dword [0x140275d6c]
mov r10d, 0xfa66d15f
xor r10d, 0xcd1d7977
mov eax, edx
and eax, r10d
or edx, 0x377ba828
add eax, edx
mov r10d, 0x3ef99c76
xor edx, edx
div r10d
mov rdx, qword [rbp + 0x78]
mov r10d, 0x53520a54
xor r10d, 0xc88da053
or eax, r10d
xor r10d, r10d
sub r10, rcx
xor ecx, ecx
sub rcx, 0xffffffffffffffff
add r10, rcx
xor ecx, ecx
sub rcx, r10
and rcx, r9
mov qword [rbp + 0x30], rcx
add r8, 8
mov qword [rbp + 0x38], r8
add rdx, 8
mov qword [rbp + 0x40], rdx
cmp rcx, 0
setl cl
mov byte [rbp + 0x4f], cl
cmp eax, 0x4dbe4908
je 0x140082982
mov rax, qword [rbp + 0x30]
mov cl, byte [rbp + 0x4f]
test cl, 1
mov qword [rbp + 0x28], rax
jne 0x140082a33
jmp 0x140082b19
mov rax, qword [rbp + 0x28]
mov qword [rbp + 0x20], rax
mov ecx, dword [0x140275d70]
mov edx, dword [0x140275d74]
mov eax, ecx
and eax, edx
or ecx, edx
add eax, ecx
add eax, 0x454c51ab
mov edx, eax
xor edx, 0xffffffff
and edx, 0x22d0a378
mov r8d, 0xffffffff
xor r8d, 0x22d0a378
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov r8d, 0x507c17f5
xor r8d, 0x72acb48d
mov edx, eax
and edx, r8d
or eax, 0x22d0a378
imul eax, edx
add eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x8f6266e0
add eax, ecx
add eax, 1
cmp eax, 0xd56f898f
jae 0x140083021
mov rcx, qword [rbp + 0x70]
mov eax, dword [0x140275d78]
and eax, dword [0x140275d7c]
sub eax, 0x5cba9cb1
mov edx, 0x32c390e
xor edx, 0x90125277
add eax, edx
add eax, 0x5cba9cb1
mov r8d, 0x8d8d06ae
xor r8d, 0x591809a
xor edx, edx
div r8d
mov edx, 0xeea66644
xor edx, 0x65265ee5
imul eax, edx
mov rcx, qword [rcx]
mov qword [rbp + 0x18], rcx
cmp eax, 0xfc9b9ec5
jae 0x140082aab
mov rax, qword [rbp + 0x18]
mov rcx, qword [rbp + 0x20]
mov qword [rbp + 8], rcx
mov qword [rbp + 0x10], rax
jmp 0x140082b3d
mov rax, qword [rbp + 0x70]
mov rcx, qword [rbp + 0x28]
mov qword [rbp - 8], rcx
mov rax, qword [rax]
mov qword [rbp], rax
cmp rcx, rax
mov qword [rbp + 8], rcx
mov qword [rbp + 0x10], rax
jl 0x140082c95
mov rax, qword [rbp + 8]
mov rcx, qword [rbp + 0x10]
mov qword [rbp - 0x18], rcx
mov qword [rbp - 0x10], rax
mov ecx, dword [0x140275d80]
mov edx, dword [0x140275d84]
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, edx
xor ecx, 0xffffffff
mov r8d, 0x9a85b833
xor r8d, 0x657a47cc
xor edx, r8d
or ecx, edx
and eax, ecx
xor eax, 0xffffffff
mov ecx, eax
and ecx, 0xc47ec1e4
shl ecx, 1
xor eax, 0xc47ec1e4
add eax, ecx
mov r8d, 0xffffffff
xor r8d, 0x780c713c
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x780c713c
mov r8d, 0xaf9bd205
xor r8d, 0xd797a339
or eax, r8d
imul eax, edx
add eax, ecx
xor eax, 0xb82755f2
cmp eax, 0xf52b207a
ja 0x14008302a
mov rcx, qword [rbp - 0x10]
mov eax, dword [0x140275d88]
mov edx, 0x9d3d822a
xor edx, 0x3034400a
xor eax, edx
xor edx, edx
div dword [0x140275d8c]
mov r8d, eax
xor r8d, 0xffffffff
and r8d, 0xa3e9cef9
mov r9d, 0xffffffff
xor r9d, 0xa3e9cef9
mov edx, eax
and edx, r9d
imul edx, r8d
mov r9d, 0xde86a0ce
xor r9d, 0x7d6f6e37
mov r8d, eax
and r8d, r9d
or eax, 0xa3e9cef9
imul eax, r8d
add eax, edx
mov r8d, 0x9951b6da
xor r8d, 0xa22d36fc
xor edx, edx
div r8d
mov rdx, qword [rbp - 0x18]
mov r8d, 0x49e3fbde
xor r8d, 0x22d7cb49
imul eax, r8d
mov dword [rbp - 0x1c], eax
add rdx, 0xffffffffffffffff
sub rsp, 0x20
call fcn.1400292ad
mov eax, dword [rbp - 0x1c]
add rsp, 0x20
cmp eax, 0x76aafb
je 0x140082bdb
mov rax, 0xffffffffffffffff
mov qword [rbp + 0x60], rax
jmp 0x14008300b
mov rcx, qword [rbp - 8]
mov rax, qword [rbp + 0x38]
mov rax, qword [rax]
mov qword [rbp - 0x30], rax
add rax, 8
shl rcx, 5
add rax, rcx
mov rax, qword [rax]
mov qword [rbp - 0x28], rax
cmp rax, 0
je 0x140082f02
mov rax, qword [rbp - 0x28]
mov rcx, qword [rbp + 0x68]
cmp rax, qword [rcx]
jne 0x140082d9e
mov rdx, qword [rbp + 0x40]
mov rcx, qword [rbp + 0x78]
mov rax, qword [rbp - 8]
mov r8, qword [rbp - 0x30]
add r8, 8
shl rax, 5
add r8, rax
add r8, 8
mov rax, qword [r8]
mov qword [rbp - 0x48], rax
mov r8, qword [r8 + 8]
mov qword [rbp - 0x40], r8
mov rcx, qword [rcx]
mov rdx, qword [rdx]
mov qword [rbp - 0x38], rdx
cmp rax, rcx
jne 0x140082d9e
mov rax, qword [rbp - 8]
mov rcx, qword [rbp - 0x48]
cmp rcx, 0
mov qword [rbp + 0x60], rax
je 0x14008300b
mov rax, qword [rbp - 8]
mov rdx, qword [rbp - 0x48]
mov rcx, qword [rbp - 0x38]
mov r8, qword [rbp - 0x40]
add r8, 8
mov qword [rbp - 0x60], r8
add rcx, 8
mov qword [rbp - 0x58], rcx
xor ecx, ecx
cmp rdx, 0
mov qword [rbp - 0x50], rcx
mov qword [rbp + 0x60], rax
jg 0x140082d82
jmp 0x14008300b
mov rax, qword [rbp - 8]
mov rdx, qword [rbp - 0x48]
mov rcx, qword [rbp - 0x68]
add rcx, 1
cmp rcx, rdx
mov qword [rbp - 0x50], rcx
mov qword [rbp + 0x60], rax
je 0x14008300b
mov rcx, qword [rbp - 0x58]
mov rax, qword [rbp - 0x60]
mov rdx, qword [rbp - 0x50]
mov qword [rbp - 0x68], rdx
mov al, byte [rax + rdx]
cmp al, byte [rcx + rdx]
je 0x140082d61
mov rdx, qword [rbp - 8]
mov rax, rdx
add rax, 1
mov qword [rbp - 0x70], rax
mov rcx, rdx
or rcx, rcx
movabs r8, 0x93b3735ba3f0ed85
movabs r9, 0x6c4c8ca45c0f127a
xor r8, r9
xor rcx, r8
mov r8, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
movabs r9, 0x49b5a9241bfe8ca0
movabs r10, 0xb64a56dbe401735f
xor r9, r10
movabs r10, 0xb962186cc4a3d84e
movabs r11, 0x469de7933b5c27b1
xor r10, r11
xor r9, r10
and r8, r9
xor rcx, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
and rcx, r8
movabs r8, 0x4ba81ef9adcb78f7
movabs r9, 0xb457e10652348708
xor r8, r9
or rdx, r8
xor rdx, 0xffffffffffffffff
or rcx, rdx
xor rcx, 0xffffffffffffffff
and rax, rcx
cmp rax, 0
jl 0x140082ec3
mov rdx, qword [rbp - 0x70]
mov rcx, qword [rbp]
add rcx, 0xffffffffffffffff
movabs r8, 0x82a86765a2733ae3
movabs rax, 0x7d57989a5d8cc51c
xor r8, rax
mov rax, rcx
xor rax, r8
movabs r9, 0x94dc62610897e445
movabs r8, 0x6b239d9ef7681bba
xor r9, r8
mov r8, rdx
xor r8, r9
or rax, r8
and rcx, rdx
xor rcx, 0xffffffffffffffff
xor rax, 0xffffffffffffffff
movabs rdx, 0x357a1b190e067c7a
movabs r8, 0xca85e4e6f1f98385
xor rdx, r8
xor rcx, rdx
or rax, rcx
mov qword [rbp - 0x78], rax
jmp 0x140082eeb
sub rsp, 0x20
call fcn.14000f24b
mov rcx, qword [rbp + 0x88]
add rsp, 0x20
mov rax, 0xffffffffffffffff
cmp byte [rcx], 0
mov qword [rbp + 0x60], rax
jne 0x14008300b
mov rax, qword [rbp - 0x78]
cmp rax, 0
mov qword [rbp + 0x28], rax
jl 0x140082a33
jmp 0x140082b19
mov edx, dword [str.lJp.]
add edx, dword [0x140275d94]
mov eax, 0xffffffff
xor eax, 0x6e4faff3
mov ecx, 0x31b1c7c1
xor ecx, 0x31b1c7c1
mov r8d, 0x156c491b
xor r8d, 0x156c491a
sub ecx, r8d
sub eax, ecx
sub edx, eax
add edx, 0x94d7eee7
mov ecx, edx
xor ecx, 0xe81fe10f
mov eax, 0xffffffff
xor eax, 0xe81fe10f
and edx, eax
mov eax, 0xb5c3c597
xor eax, 0xb5c3c595
imul eax, edx
sub eax, ecx
cmp eax, 0x98eb9235
jae 0x140083033
mov rcx, qword [rbp - 8]
mov eax, dword [0x140275d98]
mov r8d, dword [0x140275d9c]
mov r9d, eax
xor r9d, r8d
xor r9d, 0xffffffff
mov edx, r8d
and edx, r9d
shl edx, 1
sub edx, r8d
sub eax, edx
and eax, eax
mov edx, 0xcb617f80
xor edx, 0x349e807f
xor eax, edx
mov edx, 0xa1e38e76
and edx, 0xa1e38e76
xor edx, 0xffffffff
mov r8d, 0x9f628e21
xor r8d, 0x609d71de
xor eax, r8d
mov r8d, 0x1d2c182b
xor r8d, 0xe2d3e7d4
xor edx, r8d
or eax, edx
mov r8d, 0x620cc05c
xor edx, edx
div r8d
mov edx, 0x8e6a1937
xor edx, 0xbfbaeac5
or eax, edx
xor rcx, 0xffffffffffffffff
mov qword [rbp - 0x80], rcx
cmp eax, 0x39e13e5a
ja 0x140082f6b
mov rax, qword [rbp - 0x80]
mov qword [rbp + 0x60], rax
jmp 0x14008300b
mov rax, qword [rbp + 0x60]
lea rsp, [rbp + 0xa0]
pop rbp
ret
mov al, 0x83
invalid
jbe 0x14008307c
adc eax, 0xfa81e921
invalid
pushfq
cmp al, 0xbe
shr ecx, 1
test al, 0xfb
invalid
ftst
scasd eax, dword [rdi]
cmp ecx, ebp
invalid
add rsp, 0x20
mov rax, qword [rbp - 0x18]
mov r8, qword [rax]
mov qword [rcx], r8
mov r8, qword [rax + 8]
mov qword [rcx + 8], r8
mov rax, qword [rax + 0x10]
mov qword [rcx + 0x10], rax
mov rax, qword [rdx]
mov qword [rbp - 0x10], rax
mov rax, qword [rdx + 8]
mov qword [rbp - 8], rax
lea rdx, [rbp - 0x10]
sub rsp, 0x20
call fcn.1400827b6
add rsp, 0x20
and al, 1
movzx eax, al
mov rsp, rbp
pop rbp
ret