Function at 0x140130f30
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x48
mov rsi, rdx
mov rdi, rcx
mov eax, dword [0x140229ef4]
add eax, dword [0x140229ef0]
mov ecx, eax
not ecx
and ecx, 0xff396b3e
mov edx, eax
and edx, 0xc694c1
imul edx, ecx
mov ecx, eax
and ecx, 0xff396b3e
or eax, 0xff396b3e
imul eax, ecx
add eax, edx
mov ecx, eax
xor ecx, 0x8602810
xor eax, 0xb79f848e
or ecx, 0xc297d3e8
and ecx, eax
cmp ecx, 0x4f86986e
jb 0x14013102b
mov ebx, dword [0x140229ef8]
sub ebx, dword [0x140229efc]
mov eax, ebx
not eax
and eax, 0xa4341a41
mov ecx, ebx
and ecx, 0x5bcbe5be
imul ecx, eax
mov eax, ebx
and eax, 0xa4341a41
or ebx, 0xa4341a41
imul ebx, eax
add ebx, ecx
mov eax, ebx
xor eax, 0x16030
or ebx, 0x9086048b
and ebx, eax
and ebx, 0x908764bb
mov rcx, qword [rsi + 0x20]
mov rax, qword [rsi + 0x28]
lea rdx, [0x14020787b]
mov r8d, 0x10
call qword [rax + 0x18]
mov qword [rsp + 0x30], rsi
mov byte [rsp + 0x38], al
mov qword [rsp + 0x28], 0
mov byte [rsp + 0x39], 0
mov qword [rsp + 0x40], rdi
lea r8, [0x140131c20]
lea rcx, [rsp + 0x28]
lea rdx, [rsp + 0x40]
call fcn.140072470
cmp ebx, 0xeb2bcf92
jbe 0x14013107a
mov rcx, qword [rsi + 0x20]
mov rax, qword [rsi + 0x28]
lea rdx, [0x14020787b]
mov r8d, 0x10
call qword [rax + 0x18]
mov qword [rsp + 0x30], rsi
mov byte [rsp + 0x38], al
mov qword [rsp + 0x28], 0
mov byte [rsp + 0x39], 0
mov qword [rsp + 0x40], rdi
lea r8, [0x140131c20]
lea rcx, [rsp + 0x28]
lea rdx, [rsp + 0x40]
call fcn.140072470
jmp 0x140130f92
mov rax, qword [rsp + 0x28]
movzx ecx, byte [rsp + 0x38]
test rax, rax
je 0x1401311ea
nop dword [rax]
mov edx, dword [0x140229f00]
and edx, dword [0x140229f04]
or edx, 0x78404d7f
mov r8d, edx
and r8d, 0x85cf743
xor edx, 0x85cf743
lea edx, [rdx + r8*2]
xor edx, 0xb09f4bb8
cmp edx, 0xef4c21cf
ja 0x140131090
mov bl, 1
test cl, cl
jne 0x140131243
nop
mov ecx, dword [0x140229f08]
mov r8d, dword [0x140229f0c]
not ecx
not r8d
or r8d, ecx
not r8d
imul rcx, r8, 0xd379599
shr rcx, 0x20
sub r8d, ecx
shr r8d, 1
add r8d, ecx
shr r8d, 0x1f
add r8d, 0x90e918d7
cmp rax, 1
setne cl
cmp byte [rsp + 0x39], 0
sete dl
cmp r8d, 0x5efa7fc
jb 0x1401310d0
or cl, dl
mov rdi, qword [rsp + 0x30]
jne 0x14013118c
test byte [rdi + 0x34], 4
jne 0x14013118c
mov eax, 0x88b9483b
nop word cs:[rax + rax]
mov ecx, dword [0x140229f20]
mov edx, ecx
not edx
or edx, dword [0x140229f24]
add ecx, edx
inc ecx
imul rcx, rax
shr rcx, 0x3f
cmp ecx, 0xd0b8120
je 0x140131140
mov rcx, qword [rdi + 0x20]
mov rax, qword [rdi + 0x28]
xor edx, edx
nop
test dl, dl
jne 0x140131170
lea rdx, [0x140203c56]
mov r8d, 1
call qword [rax + 0x18]
test al, al
jne 0x140131243
mov rsi, qword [rdi + 0x20]
mov rdi, qword [rdi + 0x28]
mov eax, dword [0x140229f10]
add eax, dword [0x140229f14]
mov ecx, eax
xor ecx, 0xfa7e3063
xor eax, 0x180ce88
and eax, 0xa1e0ce88
mov edx, ecx
and edx, 0x5e1f3177
imul edx, eax
mov eax, ecx
and eax, 0xa1e0ce88
or ecx, 0xa1e0ce88
imul ecx, eax
add ecx, edx
mov eax, ecx
xor eax, 0x61f1df60
and ecx, 0x1e0e2098
add ecx, ecx
sub ecx, eax
cmp ecx, 0x4a7653ab
jae 0x1401311ee
jmp 0x14013122c
mov ebx, ecx
jmp 0x140131243
mov eax, dword [0x140229f18]
or eax, dword [0x140229f1c]
imul rax, rax, 0x7e3ab581
shr rax, 0x3e
imul ebp, eax, 0x361aef3f
add ebp, 0x888da678
lea rdx, [0x140203bf9]
mov r8d, 1
mov rcx, rsi
call qword [rdi + 0x18]
cmp ebp, 0x98305d94
jb 0x140131241
lea rdx, [0x140203bf9]
mov r8d, 1
mov rcx, rsi
call qword [rdi + 0x18]
jmp 0x1401311ee
mov ebx, eax
mov eax, dword [0x140229f28]
sub eax, dword [0x140229f2c]
and eax, 0x25cd0c18
add eax, 0xfebf0e59
cmp eax, 0x208137cc
nop
xor eax, eax
test al, al
jne 0x140131260
test bl, bl
setne al
add rsp, 0x48
pop rbx
pop rbp
pop rdi
pop rsi
ret