Function at 0x140118e10
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
mov qword [rax + 0x20], r12
push rbp
push r14
push r15
lea rbp, [rax - 0xfc8]
mov eax, 0x10b0
call fcn.1401afd00
sub rsp, rax
mov rax, qword [0x140231eb8]
xor rax, rsp
mov qword [rbp + 0xfa0], rax
mov dil, cl
xor r12d, r12d
cmp byte [0x1402479b0], r12b
je 0x140118e64
test dl, dl
je 0x1401198c3
mov r15d, 0x80
or rsi, 0xffffffffffffffff
mov r14d, 0x1000
cmp dword [0x140230a34], r12d
je 0x140118f2d
mov rcx, r12
mov r9, r12
lea rbx, str.8g30w1_5r7_2ta
mov r8d, 0x480
xor byte [r9 + rbx], cl
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
shr rdx, 1
add rcx, 3
add rcx, rdx
and ecx, 0xffffff
inc r9
cmp r9, r8
jb 0x140118e94
cmp dword [0x140230a34], r12d
je 0x14011900a
xor edx, edx
lea rcx, [rbp - 0x60]
call fcn.1401b2120
lea rax, [rbp - 0x60]
mov ecx, 9
movups xmm0, xmmword [rax]
movups xmmword [rbx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rbx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rbx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rbx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rbx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rbx + 0x60], xmm0
add rbx, r15
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rbx - 0x10], xmm1
add rax, r15
sub rcx, 1
jne 0x140118ede
jmp 0x14011900a
mov ecx, 0x4fd
call fcn.1400f6aa0
mov rbx, rax
cmp word [rax], 0x23
jne 0x140118f5a
cmp word [rax + 2], 0x23
jne 0x140118f5a
mov rax, rsi
inc rax
cmp word [rbx + rax*2], r12w
jne 0x140118f4a
cmp rax, 0x64
jae 0x140118f61
mov rbx, qword [str.0C69__3V_hwrqw_nlrhbngw.qgshf_clk._kckgvgfa:_Ipitvdg8RBTMEEiambhj_rdgf_gmuqqucswnmk_Peuamiwcbprp__G5_9hwrqw_nlrhbngw.qgshf_clk._kckgvgfa:_Ipitvdg8RBTMEEiambhj_rdgf_gmuqqexvhvbfvftrmhl8_U_vdjltfeuqug8_B__QMoH0V5hwrqw_nlrhbngw.qgshf_clk._kckgvgfa:_Ipitvdg8RBTMEEiambhj_rdgf_dxwkwegwauqlom__Rcwckouadvprf__Ek9]
mov r8, r14
xor edx, edx
lea rcx, [rbp - 0x60]
call fcn.1401b2120
lea rcx, [rbx + 4]
mov r8, r14
lea rdx, [rbp - 0x60]
call fcn.140105264
lea rax, [rbp - 0x60]
mov r8, rsi
inc r8
cmp byte [rax + r8], r12b
jne 0x140118f86
lea rdx, [rbp - 0x60]
lea rbx, str.8g30w1_5r7_2ta
mov rcx, rbx
call fcn.140117f0c
test al, al
jne 0x14011900a
xor edx, edx
mov r8d, 0x480
lea rcx, [rbp - 0x60]
call fcn.1401b2120
lea rax, [rbp - 0x60]
mov ecx, 9
movups xmm0, xmmword [rax]
movups xmmword [rbx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rbx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rbx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rbx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rbx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rbx + 0x60], xmm0
add rbx, r15
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rbx - 0x10], xmm1
add rax, r15
sub rcx, 1
jne 0x140118fc0
call fcn.1400b5da0
test al, al
jne 0x14011901f
cmp dword [0x140233a90], 0x28
mov sil, 1
ja 0x140119022
mov sil, r12b
test dil, dil
je 0x14011988e
call fcn.1400d0620
cmp eax, 0x501
ja 0x140119047
test dword [0x140230a30], 0x200
je 0x1401198c3
cmp byte [0x140230da0], r12b
je 0x1401198c3
mov byte [0x140230b4b], r12b
mov byte [0x140230c4f], r12b
mov byte [0x140230e9f], r12b
test sil, sil
jne 0x140119081
mov al, byte [0x140230a30]
and al, r15b
neg al
sbb eax, eax
and dword [0x140230a38], eax
mov dil, r12b
mov r15d, 0x27
cmp dword [0x140230a48], r12d
jbe 0x1401192bc
call fcn.1400b5da0
test al, al
jne 0x1401192bc
mov qword [rbp - 0x80], r12
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x70], xmm0
lea r8d, [r15 - 0x1f]
lea rdx, str.RemShown
lea rcx, [rbp - 0x80]
call fcn.1400041b8
nop
mov qword [rsp + 0x60], r12
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x70], xmm0
lea r8d, [r15 - 0x19]
lea rdx, str.InterfaceMisc
lea rcx, [rsp + 0x60]
call fcn.1400041b8
nop
xor r8d, r8d
lea rdx, [rbp - 0x80]
lea rcx, [rsp + 0x60]
call fcn.140115f8c
mov ebx, eax
mov rdx, qword [rsp + 0x78]
cmp rdx, 8
jb 0x140119139
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, r14
jb 0x140119134
add rdx, r15
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401198f9
call fcn.1401af36c
movdqa xmm0, xmmword [0x1401dc090]
movdqu xmmword [rsp + 0x70], xmm0
mov word [rsp + 0x60], r12w
mov rdx, qword [rbp - 0x68]
cmp rdx, 8
jb 0x140119188
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, r14
jb 0x140119183
add rdx, r15
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401198ff
call fcn.1401af36c
movdqa xmm0, xmmword [0x1401dc090]
movdqu xmmword [rbp - 0x70], xmm0
mov word [rbp - 0x80], r12w
cmp ebx, dword [0x140230a48]
jae 0x1401192bc
mov qword [rsp + 0x60], r12
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x70], xmm0
mov r8d, 8
lea rdx, str.RemShown
lea rcx, [rsp + 0x60]
call fcn.1400041b8
nop
mov qword [rbp - 0x80], r12
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x70], xmm0
mov r8d, 0xe
lea rdx, str.InterfaceMisc
lea rcx, [rbp - 0x80]
call fcn.1400041b8
nop
lea r8d, [rbx + 1]
lea rdx, [rsp + 0x60]
lea rcx, [rbp - 0x80]
call fcn.140117ca4
nop
mov rdx, qword [rbp - 0x68]
cmp rdx, 8
jb 0x14011923d
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, r14
jb 0x140119238
add rdx, r15
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140119905
call fcn.1401af36c
movdqa xmm0, xmmword [0x1401dc090]
movdqu xmmword [rbp - 0x70], xmm0
mov word [rbp - 0x80], r12w
mov rdx, qword [rsp + 0x78]
cmp rdx, 8
jb 0x14011928c
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, r14
jb 0x140119287
add rdx, r15
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14011990b
call fcn.1401af36c
movdqa xmm0, xmmword [0x1401dc090]
movdqu xmmword [rsp + 0x70], xmm0
mov word [rsp + 0x60], r12w
mov dil, 1
cmp byte [0x140230a4c], r12b
je 0x1401196a3
lea rdx, [0x140230a4c]
jmp 0x140119691
cmp dword [0x140230b4c], r12d
jbe 0x1401194ee
test sil, sil
je 0x1401194ee
mov qword [rsp + 0x60], r12
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x70], xmm0
mov r8d, 0xb
lea rdx, str.ExpRemShown
lea rcx, [rsp + 0x60]
call fcn.1400041b8
nop
mov qword [rbp - 0x80], r12
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x70], xmm0
mov r8d, 0xe
lea rdx, str.InterfaceMisc
lea rcx, [rbp - 0x80]
call fcn.1400041b8
nop
xor r8d, r8d
lea rdx, [rsp + 0x60]
lea rcx, [rbp - 0x80]
call fcn.140115f8c
mov ebx, eax
mov rdx, qword [rbp - 0x68]
cmp rdx, 8
jb 0x140119369
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, r14
jb 0x140119364
add rdx, r15
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140119911
call fcn.1401af36c
movdqa xmm0, xmmword [0x1401dc090]
movdqu xmmword [rbp - 0x70], xmm0
mov word [rbp - 0x80], r12w
mov rdx, qword [rsp + 0x78]
cmp rdx, 8
jb 0x1401193b8
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, r14
jb 0x1401193b3
add rdx, r15
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140119917
call fcn.1401af36c
movdqa xmm0, xmmword [0x1401dc090]
movdqu xmmword [rsp + 0x70], xmm0
mov word [rsp + 0x60], r12w
cmp ebx, dword [0x140230b4c]
jae 0x1401194ee
mov qword [rsp + 0x60], r12
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x70], xmm0
mov r8d, 0xb
lea rdx, str.ExpRemShown
lea rcx, [rsp + 0x60]
call fcn.1400041b8
nop
mov qword [rbp - 0x80], r12
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x70], xmm0
mov r8d, 0xe
lea rdx, str.InterfaceMisc
lea rcx, [rbp - 0x80]
call fcn.1400041b8
nop
lea r8d, [rbx + 1]
lea rdx, [rsp + 0x60]
lea rcx, [rbp - 0x80]
call fcn.140117ca4
nop
mov rdx, qword [rbp - 0x68]
cmp rdx, 8
jb 0x14011946f
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, r14
jb 0x14011946a
add rdx, r15
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14011991d
call fcn.1401af36c
movdqa xmm0, xmmword [0x1401dc090]
movdqu xmmword [rbp - 0x70], xmm0
mov word [rbp - 0x80], r12w
mov rdx, qword [rsp + 0x78]
cmp rdx, 8
jb 0x1401194be
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, r14
jb 0x1401194b9
add rdx, r15
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140119923
call fcn.1401af36c
movdqa xmm0, xmmword [0x1401dc090]
movdqu xmmword [rsp + 0x70], xmm0
mov word [rsp + 0x60], r12w
mov dil, 1
cmp byte [0x140230b50], r12b
je 0x1401196a3
lea rdx, [0x140230b50]
jmp 0x140119691
cmp dword [0x140230c50], r12d
jbe 0x1401196a3
call fcn.1400b5da0
test al, al
je 0x1401196a3
mov qword [rsp + 0x60], r12
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x70], xmm0
mov r8d, 0xb
lea rdx, str.RegRemShown
lea rcx, [rsp + 0x60]
call fcn.1400041b8
nop
mov qword [rbp - 0x80], r12
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x70], xmm0
mov r8d, 0xe
lea rdx, str.InterfaceMisc
lea rcx, [rbp - 0x80]
call fcn.1400041b8
nop
xor r8d, r8d
lea rdx, [rsp + 0x60]
lea rcx, [rbp - 0x80]
call fcn.140115f8c
mov ebx, eax
lea rcx, [rbp - 0x80]
call fcn.140006b94
nop
lea rcx, [rsp + 0x60]
call fcn.140006b94
cmp ebx, dword [0x140230c50]
jae 0x1401196a3
mov qword [rsp + 0x60], r12
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x70], xmm0
mov r8d, 0xb
lea rdx, str.RegRemShown
lea rcx, [rsp + 0x60]
call fcn.1400041b8
nop
mov qword [rbp - 0x80], r12
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x70], xmm0
mov r8d, 0xe
lea rdx, str.InterfaceMisc
lea rcx, [rbp - 0x80]
call fcn.1400041b8
nop
lea r8d, [rbx + 1]
lea rdx, [rsp + 0x60]
lea rcx, [rbp - 0x80]
call fcn.140117ca4
nop
mov rdx, qword [rbp - 0x68]
cmp rdx, 8
jb 0x14011961b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, r14
jb 0x140119616
add rdx, r15
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140119929
call fcn.1401af36c
movdqa xmm0, xmmword [0x1401dc090]
movdqu xmmword [rbp - 0x70], xmm0
mov word [rbp - 0x80], r12w
mov rdx, qword [rsp + 0x78]
cmp rdx, 8
jb 0x14011966a
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, r14
jb 0x140119665
add rdx, r15
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401198f3
call fcn.1401af36c
movdqa xmm0, xmmword [0x1401dc090]
movdqu xmmword [rsp + 0x70], xmm0
mov word [rsp + 0x60], r12w
mov dil, 1
cmp byte [0x140230c54], r12b
je 0x1401196a3
lea rdx, [0x140230c54]
mov r8d, 0x100
lea rcx, [0x140230da0]
call fcn.1400fe708
call qword [0x1401da698]
mov ecx, eax
mov eax, 0x10624dd3
mul ecx
mov ebx, edx
shr ebx, 6
call fcn.1400b5da0
test al, al
je 0x140119860
mov ecx, dword [0x140230a44]
test ecx, ecx
je 0x1401196db
xor edx, edx
mov eax, ebx
div ecx
test edx, edx
jne 0x1401196db
mov dil, 1
test dil, dil
je 0x1401198c3
mov ecx, dword [0x140230a30]
shl ecx, 0x11
not ecx
and ecx, 0x40000
or ecx, 0x16c80000
mov esi, ecx
or esi, 0x30000
test byte [0x140230a30], 8
cmovne esi, ecx
mov ebx, 0x80000000
mov edi, ebx
mov r14d, ebx
mov r15d, ebx
mov ecx, dword [0x140230d58]
test ecx, ecx
je 0x1401197c9
cmp dword [0x140230d54], r12d
je 0x1401197c9
call fcn.14016288c
mov ebx, eax
mov ecx, 0x21
call qword [0x1401dad18]
lea edi, [rbx + rax*2]
mov ecx, 4
call qword [0x1401dad18]
add edi, eax
mov eax, dword [0x140230a30]
test al, 0x40
jne 0x140119767
bt eax, 8
jb 0x14011976d
add edi, dword [0x1402479ac]
mov ecx, dword [0x140230d54]
call fcn.140162854
mov ebx, eax
mov ecx, 0x20
call qword [0x1401dad18]
lea ebx, [rbx + rax*2]
xor r9d, r9d
lea r8, [rsp + 0x60]
xor edx, edx
lea ecx, [rdx + 0x30]
call qword [0x1401da920]
mov eax, dword [rsp + 0x68]
mov r14d, eax
cmp ebx, eax
cmovl r14d, ebx
sub eax, r14d
cdq
sub eax, edx
sar eax, 1
mov ebx, eax
mov eax, dword [rsp + 0x6c]
mov r15d, eax
cmp edi, eax
cmovl r15d, edi
sub eax, r15d
cdq
sub eax, edx
sar eax, 1
mov edi, eax
mov edx, 0x100
lea rcx, [0x140230da0]
call fcn.140118390
mov qword [rsp + 0x58], r12
mov rcx, qword [0x14023fc48]
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0x48], r12
mov qword [rsp + 0x40], r12
mov dword [rsp + 0x38], r15d
mov dword [rsp + 0x30], r14d
mov dword [rsp + 0x28], edi
mov dword [rsp + 0x20], ebx
mov r9d, esi
lea r8, [0x1401e0b50]
lea rdx, str.RarReminder
xor ecx, ecx
call qword [0x1401daa60]
test byte [0x140230a30], 1
je 0x14011984e
mov dword [rsp + 0x30], 3
mov dword [rsp + 0x28], r12d
mov dword [rsp + 0x20], r12d
xor r9d, r9d
xor r8d, r8d
or rdx, 0xffffffffffffffff
mov rcx, rax
call qword [0x1401daa88]
cmp qword [0x140233a58], r12
je 0x1401198c3
mov byte [0x1402479b0], 1
jmp 0x1401198c3
test sil, sil
jne 0x140119886
mov ecx, dword [0x140230a3c]
test ecx, ecx
je 0x1401196db
mov eax, ebx
xor edx, edx
div ecx
test edx, edx
jne 0x1401196db
jmp 0x1401196e4
mov ecx, dword [0x140230a40]
jmp 0x14011986b
test sil, sil
je 0x1401198c3
mov byte [0x1402479b0], 1
call qword [0x1401dab30]
mov qword [rsp + 0x20], r12
lea r9, [0x140185e70]
mov r8, rax
lea rdx, str.REMINDER
mov rcx, qword [0x14023fc40]
call qword [0x1401daaa8]
mov rcx, qword [rbp + 0xfa0]
xor rcx, rsp
call fcn.1401af480
lea r11, [rsp + 0x10b0]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov r12, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rbp
ret
call fcn.1401b6544
nop
call fcn.1401b6544
nop
call fcn.1401b6544
nop
call fcn.1401b6544
nop
call fcn.1401b6544
nop
call fcn.1401b6544
nop
call fcn.1401b6544
nop
call fcn.1401b6544
nop
call fcn.1401b6544
nop
call fcn.1401b6544
int3