Function at 0x140232840
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
push rax
mov rbp, rsp
mov r9, rdx
mov rsi, rcx
mov eax, dword [0x1415b4810]
mov ecx, dword [0x1415b4814]
add eax, ecx
add eax, 0x75838cb8
xor eax, 0xa5bcdb9f
add eax, 0x6e690a19
cmp eax, 0x252cb749
jb 0x1402328c6
mov ecx, dword [0x1415b4818]
sub ecx, dword [0x1415b481c]
and ecx, 0xc3cbe332
add ecx, 0xe0ffa69a
and ecx, 0xe7ffef7e
xor ecx, 0x9fc84725
mov eax, 0x20
call fcn.14021cf50
sub rsp, rax
mov rbx, rsp
mov eax, 0x20
call fcn.14021cf50
sub rsp, rax
mov rdi, rsp
cmp ecx, 0xbf89e60f
jbe 0x1402328f0
mov eax, 0x20
call fcn.14021cf50
sub rsp, rax
mov eax, 0x20
call fcn.14021cf50
sub rsp, rax
jmp 0x14023287a
mov eax, dword [0x1415b4820]
mov ecx, dword [0x1415b4824]
mov edx, ecx
not edx
mov r10d, eax
and r10d, edx
or edx, eax
not edx
imul edx, r10d
mov r10d, eax
and r10d, ecx
or eax, ecx
imul eax, r10d
add eax, edx
xor eax, 0x573cc3d5
imul eax, eax, 0x370e20d3
mov ecx, eax
and ecx, 0x76987e3f
xor eax, 0x76987e3f
lea ecx, [rax + rcx*2]
mov rax, r9
add rax, r8
setb al
cmp ecx, 0xb2a519d2
jb 0x1402328f0
nop dword [rax + rax]
mov edx, dword [0x1415b4828]
mov ecx, dword [0x1415b482c]
mov r10d, edx
not r10d
and r10d, ecx
not ecx
and ecx, edx
sub ecx, r10d
mov edx, ecx
not edx
mov r10d, ecx
and r10d, 0x32113318
and edx, 0xcdeecce7
imul edx, r10d
mov r10d, ecx
and r10d, 0xcdeecce7
or ecx, 0xcdeecce7
imul ecx, r10d
add ecx, edx
mov edx, ecx
and edx, 0x996f463e
and ecx, 0x996d021e
sub edx, ecx
add edx, 0xdd6d8b9f
cmp edx, 0x6ce19cb7
jb 0x140232950
test al, al
jne 0x140232cb2
mov eax, dword [0x1415b4830]
xor edx, edx
div dword [0x1415b4834]
mov rax, r8
and rax, r9
or r8, r9
add r8, rax
nop word [rax + rax]
mov eax, dword [0x1415b4838]
imul eax, dword [0x1415b483c]
imul rax, rax, 0x4bb88b6b
shr rax, 0x3e
imul eax, eax, 0x99c9cd4
mov ecx, eax
xor ecx, 0xf7c2992
add ecx, eax
and eax, 0x83d66c
sub ecx, eax
cmp ecx, 0x3fa6008c
je 0x1402329e0
mov rax, qword [rsi]
lea rcx, [rax + rax]
cmp rcx, r8
cmova r8, rcx
cmp r8, 9
mov r14d, 8
cmovae r14, r8
mov r15, r14
not r15
shr r15, 0x3f
nop dword [rax]
mov ecx, dword [0x1415b4840]
mov edx, dword [0x1415b4844]
mov r8d, edx
not r8d
mov r9d, ecx
and r9d, r8d
or r8d, ecx
not r8d
imul r8d, r9d
mov r9d, ecx
and r9d, edx
or ecx, edx
imul ecx, r9d
add ecx, r8d
and ecx, 0x60054800
add ecx, 0xed42d0b7
cmp ecx, 0x90ee676d
ja 0x140232a40
test rax, rax
je 0x140232ac4
mov ecx, dword [0x1415b4848]
add ecx, dword [0x1415b484c]
imul rcx, rcx, 0x6dfdc559
shr rcx, 0x3a
mov edx, ecx
and edx, 6
xor ecx, 0x562624e6
lea ecx, [rcx + rdx*2]
imul rcx, rcx, 0x37d89953
shr rcx, 0x3c
cmp ecx, 0x9f741758
jbe 0x140232ad6
jmp 0x140232b2b
xor r12d, r12d
xor eax, eax
test al, al
je 0x140232b90
jmp 0x140232b69
mov ecx, dword [0x1415b4850]
xor ecx, dword [0x1415b4854]
add ecx, 0xb7985ed1
mov edx, ecx
not edx
mov r8d, ecx
and r8d, 0x3ad5493a
and edx, 0xc52ab6c5
imul edx, r8d
mov r8d, ecx
and r8d, 0xc52ab6c5
or ecx, 0xc52ab6c5
imul ecx, r8d
add ecx, edx
xor ecx, 0x744729e
mov rdx, qword [rsi + 8]
mov qword [rbx], rdx
cmp ecx, 0xcdcbe298
jne 0x140232b34
mov rcx, qword [rsi + 8]
mov qword [rbx], rcx
jmp 0x140232ad6
mov qword [rbx + 0x10], rax
nop dword [rax + rax]
mov eax, dword [0x1415b4858]
sub eax, dword [0x1415b485c]
or eax, 0x98df2160
add eax, 0x3fb46be
cmp eax, 0x4d27ff97
jb 0x140232b40
mov r12d, 1
xor eax, eax
test al, al
je 0x140232b90
mov qword [rbx + 8], r12
sub rsp, 0x20
mov rcx, rdi
mov rdx, r15
mov r8, r14
mov r9, rbx
call fcn.14008db60
add rsp, 0x20
nop word cs:[rax + rax]
mov eax, dword [0x1415b4860]
and eax, dword [0x1415b4864]
mov ecx, eax
xor ecx, 0x64823211
or eax, 0x2008ca0
and eax, ecx
and eax, 0x6682beb1
imul r13d, eax, 0x1d2ee98f
mov qword [rbx + 8], r12
sub rsp, 0x20
mov rcx, rdi
mov rdx, r15
mov r8, r14
mov r9, rbx
call fcn.14021ae00
add rsp, 0x20
cmp r13d, 0x35c6d2e1
ja 0x140232b90
cmp qword [rdi], 0
jne 0x140232c80
nop word [rax + rax]
mov eax, dword [0x1415b4888]
sub eax, dword [0x1415b488c]
mov ecx, eax
and ecx, 0x5256b22a
add ecx, ecx
neg ecx
add eax, ecx
add eax, 0xd256b22a
mov ecx, eax
not ecx
mov edx, eax
or edx, 0xa19d887
and ecx, 0xd0800500
mov r8d, edx
and r8d, 0x2d7fa2fc
imul r8d, ecx
and edx, 0xd2805d03
or eax, 0xda99dd87
imul eax, edx
add eax, r8d
cmp eax, 0xddad4255
ja 0x140232bf0
mov rax, qword [rdi + 8]
mov ecx, dword [0x1415b4890]
xor ecx, dword [0x1415b4894]
shr ecx, 1
imul rcx, rcx, 0x4478b921
shr rcx, 0x3d
or ecx, 0x12521002
cmp ecx, 0x61edddc
jne 0x140232d91
jmp 0x140232dd1
mov eax, dword [0x1415b4868]
mov ecx, dword [0x1415b486c]
mov edx, eax
not edx
and edx, ecx
not edx
not ecx
and ecx, eax
not ecx
and ecx, edx
not ecx
add ecx, 0xe727e5f1
and ecx, 0xad20450c
cmp ecx, 0x2f63e8be
ja 0x140232c80
mov eax, dword [0x1415b4870]
imul eax, dword [0x1415b4874]
mov ecx, eax
not ecx
and ecx, 0xc4072110
mov edx, eax
and edx, 0x3bf8deef
imul edx, ecx
mov ecx, eax
and ecx, 0xc4072110
or eax, 0xc4072110
imul eax, ecx
add eax, edx
add eax, 0x32b02768
not eax
or eax, 0x336893f8
add eax, 0xc274b35e
jae 0x140232d33
mov eax, dword [0x1415b4878]
mov ecx, dword [0x1415b487c]
mov edx, eax
and edx, ecx
add edx, edx
add eax, ecx
sub eax, edx
add eax, 0x2996e40c
mov ecx, eax
not ecx
and ecx, 0x33e22536
and eax, 0xcc1ddac9
sub eax, ecx
add eax, 0xdbd3aa0e
ud2
ud2
mov ecx, dword [0x1415b4898]
or ecx, dword [0x1415b489c]
add ecx, 0x614e00cb
mov edx, ecx
and edx, 0x63353a0e
and ecx, 0x23203006
mov r8d, edx
xor r8d, 0x48ddcf99
add r8d, edx
sub r8d, ecx
mov qword [rsi + 8], rax
mov qword [rsi], r14
cmp r8d, 0x19096fb7
jae 0x140232de0
mov qword [rsi + 8], rax
mov qword [rsi], r14
jmp 0x140232d91
mov eax, dword [0x1415b48a0]
or eax, dword [0x1415b48a4]
imul rcx, rax, 0x3985c9b1
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1f
add eax, 0x29e692e1
and eax, 0x9c21283
cmp eax, 0xb358914
ja 0x140232de0
lea rsp, [rbp + 8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret