Function at 0x140185670
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0x70
lea rbp, [rsp + 0x70]
mov qword [rbp - 0x48], r8
mov qword [rbp - 0x40], rdx
mov qword [rbp - 0x50], rcx
mov qword [rbp - 0x58], rcx
mov eax, 0x10
mov qword [rbp - 0x38], rax
call fcn.14024f5c0
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x20], rax
sub rsp, 0x20
call fcn.1401a68de
mov r9, qword [rbp - 0x50]
mov r8, qword [rbp - 0x48]
mov rcx, qword [rbp - 0x40]
mov rdx, qword [rbp - 0x38]
add rsp, 0x20
mov r10, rax
mov rax, qword [rbp - 0x20]
mov qword [rbp - 0x18], r10
mov qword [r9], 0
mov r10, r9
add r10, 8
mov qword [rbp - 0x30], r10
mov qword [r9 + 8], 0
mov dword [rax], r8d
mov qword [rax + 8], rcx
sub rsp, 0x20
lea rcx, [rbp - 0x10]
mov qword [rbp - 0x28], rcx
call fcn.14015c640
mov rdx, qword [rbp - 0x28]
mov rcx, qword [rbp - 0x20]
sub rsp, 0x20
mov rax, rsp
mov qword [rax + 0x30], rdx
mov dword [rax + 0x28], 0
mov qword [rax + 0x20], 0
xor eax, eax
mov r9d, eax
mov rdx, r9
mov r8, r9
call fcn.1400af883
add rsp, 0x40
mov ecx, eax
mov rax, qword [rbp - 0x18]
mov al, byte [rax + 0x50]
test al, al
setne al
test ecx, ecx
sete cl
or al, cl
test al, 1
jne 0x140185a77
mov eax, dword [0x14025ab10]
mov edx, dword [0x14025ab14]
xor edx, 0x5a5177d6
mov ecx, 0xc462b172
xor ecx, 0x3b9d4e8d
xor eax, ecx
xor edx, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0x7b4fb6cf
or eax, edx
or ecx, 0x7b4fb6cf
xor eax, 0xffffffff
and eax, ecx
sub eax, 0xe9244a1e
sub eax, 0xfbc5356f
add eax, 0xe9244a1e
mov r8d, 0x785d29e0
xor r8d, 0x7d5fc1e7
mov ecx, 0xce5e73b8
xor ecx, 0x31a18c47
xor r8d, ecx
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x502e807
or eax, 0x502e807
imul eax, edx
add eax, ecx
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, 0x47658e56
add eax, ecx
cmp eax, 0x5692dfb
ja 0x140185a80
mov rcx, qword [rbp - 0x50]
mov eax, dword [0x14025ab18]
add eax, dword [str.1T0y]
add eax, 0xb1c32518
mov edx, 0x28f13a6c
xor edx, 0xb5c7152e
add eax, edx
mov edx, 0xe88898ed
xor edx, 0x4dcce6b1
add eax, edx
mov dword [rbp - 0x64], eax
movsxd rdx, dword [rbp - 0x10]
sub rsp, 0x20
call fcn.140014c40
mov eax, dword [rbp - 0x64]
add rsp, 0x20
mov ecx, dword [rbp - 0x10]
mov dword [rbp - 0x60], ecx
mov edx, 0x85e508aa
xor edx, 0x85e508aa
cmp ecx, edx
sete cl
mov byte [rbp - 0x59], cl
cmp eax, 0xd83c6e59
jae 0x1401857ef
mov al, byte [rbp - 0x59]
test al, 1
jne 0x14018594f
jmp 0x140185869
mov eax, dword [0x14025ab20]
xor edx, edx
div dword [0x14025ab24]
add eax, 0xb96a35d7
mov r8d, 0xffffffff
xor r8d, 0x5e4109ca
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x5e4109ca
or eax, 0x5e4109ca
imul eax, edx
add eax, ecx
xor eax, 0xa5525b21
mov ecx, 0xc3f1f3e7
xor ecx, 0xb28ba851
cmp eax, ecx
jae 0x140185a89
mov rcx, qword [rbp - 0x30]
mov eax, dword [0x14025ab28]
mov edx, dword [0x14025ab2c]
xor edx, 0xffffffff
add eax, edx
mov edx, 0x1e476a40
xor edx, 0x1e476a41
add eax, edx
mov r8d, 0xeb29faa8
xor r8d, 0x3548eebb
xor edx, edx
div r8d
mov r8d, 0x228c1044
xor r8d, 0xa311a6dc
xor edx, edx
div r8d
mov edx, eax
mov eax, dword [rbp - 0x60]
mov r8d, 0x63c5b6f1
xor r8d, 0x8f0ee65c
and edx, r8d
mov dword [rbp - 0x68], edx
mov rcx, qword [rcx]
add rcx, 8
mov rdx, qword [rbp - 8]
movsxd r8, eax
sub rsp, 0x20
call fcn.140185aa0
mov eax, dword [rbp - 0x68]
add rsp, 0x20
cmp eax, 0x49551ea9
jae 0x140185a89
jmp 0x14018594f
mov eax, dword [0x14025ab30]
mov r8d, dword [0x14025ab34]
mov r9d, r8d
xor r9d, 0xffffffff
mov edx, eax
and edx, r9d
mov ecx, eax
or ecx, r9d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
or eax, 0x99c70a79
mov edx, 0x5a378e78
xor edx, 0xc561e303
mov ecx, eax
and ecx, edx
xor eax, 0x9f566d7b
or ecx, eax
mov eax, ecx
and eax, eax
xor eax, 0xffffffff
and eax, 0x725204a0
mov edx, 0xf92da40a
xor edx, 0x6d25bf5
xor eax, edx
mov edx, 0x725204a0
and edx, 0x725204a0
mov r8d, 0xde51f405
xor r8d, 0x21ae0bfa
xor edx, r8d
xor ecx, 0xffffffff
mov r8d, 0xc34dd5ca
xor r8d, 0x3cb22a35
xor edx, r8d
or ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
cmp eax, 0x5a3d31aa
jb 0x140185a92
mov r8d, dword [0x14025ab38]
mov edx, dword [0x14025ab3c]
mov eax, r8d
xor eax, 0xffffffff
and eax, 0x96002bd1
mov r9d, 0xffffffff
xor r9d, 0x96002bd1
and r8d, r9d
mov ecx, edx
xor ecx, 0xffffffff
and ecx, 0x96002bd1
and edx, r9d
or eax, r8d
or ecx, edx
xor eax, ecx
mov ecx, 0xd71d85d7
xor ecx, 0xe7816172
or eax, ecx
imul eax, eax, 0x52d9c117
mov ecx, 0xf1106be9
xor edx, edx
div ecx
mov dword [rbp - 0x6c], eax
mov rcx, qword [rbp - 8]
sub rsp, 0x20
call fcn.1400b42e7
add rsp, 0x20
mov eax, dword [rbp - 0x6c]
cmp eax, 0xf2a4bdb7
je 0x1401859f7
jmp 0x140185a77
mov rax, qword [rbp - 0x58]
mov rsp, rbp
pop rbp
ret
sal dword [rdi + 0x75], 0x3e
jmp 0x1401857ef
sub al, 0xdb
mov edx, ebx
jmp 0x1401858c3
or ch, byte [rcx + 0x5ce99385]
invalid