Function at 0x140072190
Capabilities:
Encode data using add xor sub operations
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x28
mov esi, 0x3ffffff
nop word cs:[rax + rax]
mov eax, dword [0x141dcbd58]
sub eax, dword [0x141dcbd5c]
add eax, 0xdc3e2faa
xor eax, 0x1a250c00
or eax, 0xa492728e
cmp eax, 0x4809fd15
je 0x1400721b0
mov r15d, dword [rdx + 3]
mov ebp, dword [rdx + 6]
mov r10d, dword [rdx + 9]
shr r10d, 6
add r10d, dword [rcx + 0x30]
shr ebp, 4
and ebp, 0x3ffffff
add ebp, dword [rcx + 0x2c]
shr r15d, 2
and r15d, 0x3ffffff
add r15d, dword [rcx + 0x28]
and esi, dword [rdx]
mov edi, dword [rcx + 0x10]
mov r11d, dword [rcx + 0x18]
mov qword [rsp + 0x10], r11
mov r8d, dword [rcx + 0x1c]
mov qword [rsp + 0x18], r8
mov eax, dword [rcx + 0x20]
mov qword [rsp + 0x20], rax
mov r9d, dword [rcx + 0x34]
mov r12d, dword [rdx + 0xc]
add esi, dword [rcx + 0x24]
lea eax, [rax + rax*4]
lea edx, [r8 + r8*4]
lea r8d, [r11 + r11*4]
shr r12d, 8
add r9d, r12d
add r9d, 0x1000000
mov r12, rsi
imul r12, rdi
mov r11d, r15d
mov r15, r11
imul r15, rax
add r15, r12
mov r13d, ebp
mov rbp, r13
imul rbp, rdx
mov ebx, r10d
mov r12, rbx
imul r12, r8
add r12, rbp
mov r14d, dword [rcx + 0x14]
mov qword [rsp], r14
add r12, r15
lea r10d, [r14 + r14*4]
imul r10, r9
add r10, r12
mov r15, rsi
imul r15, r14
mov r12, r11
mov rbp, rdi
mov qword [rsp + 8], rdi
imul r12, rdi
add r12, r15
mov r15, r13
imul r15, rax
mov r14, rbx
imul r14, rdx
add r14, r15
add r14, r12
imul r8, r9
add r8, r14
mov r14, rsi
mov rdi, qword [rsp + 0x10]
imul r14, rdi
mov r15, r11
imul r15, qword [rsp]
add r15, r14
mov r14, r13
imul r14, rbp
mov r12, rbx
imul r12, rax
add r12, r14
add r12, r15
imul rdx, r9
add rdx, r12
mov r14, rsi
mov rbp, qword [rsp + 0x18]
imul r14, rbp
mov r15, r11
imul r15, rdi
add r15, r14
mov r14, r13
mov rdi, qword [rsp]
imul r14, rdi
mov r12, rbx
imul r12, qword [rsp + 8]
add r12, r14
add r12, r15
imul rax, r9
add rax, r12
imul rsi, qword [rsp + 0x20]
imul r11, rbp
add r11, rsi
imul r13, qword [rsp + 0x10]
imul rbx, rdi
add rbx, r13
add rbx, r11
imul r9, qword [rsp + 8]
add r9, rbx
mov r11, r10
shr r11, 0x1a
mov esi, dword [0x141dcbd60]
and esi, dword [0x141dcbd64]
xor esi, 0x10cfdee6
add esi, 0x34c6bcce
imul rsi, rsi, 0x6ac7a1cd
shr rsi, 0x3e
cmp esi, 0x46c50f2e
je 0x140072420
mov esi, dword [0x141dcbd68]
add esi, dword [0x141dcbd6c]
or esi, 0x8efefef9
imul rsi, rsi, 0xab1a3b3
shr rsi, 0x3b
mov ebx, r10d
and ebx, 0x3ffffff
mov edi, r11d
add rdi, r8
mov r14, rdi
shr r14, 0x1a
and edi, 0x3ffffff
mov r14d, r14d
add r14, rdx
mov r15, r14
shr r15, 0x1a
and r14d, 0x3ffffff
mov r15d, r15d
add r15, rax
mov r12, r15
shr r12, 0x1a
and r15d, 0x3ffffff
mov r12d, r12d
add r12, r9
mov r13, r12
shr r13, 0x1a
and r12d, 0x3ffffff
lea ebp, [r13 + r13*4]
add ebp, ebx
mov ebx, ebp
shr ebx, 0x1a
add ebx, edi
and ebp, 0x3ffffff
mov dword [rcx + 0x24], ebp
mov dword [rcx + 0x28], ebx
mov dword [rcx + 0x2c], r14d
mov dword [rcx + 0x30], r15d
mov dword [rcx + 0x34], r12d
cmp esi, 0x9ae80528
jne 0x14007249f
mov edi, r10d
and edi, 0x3ffffff
mov esi, r11d
add rsi, r8
mov rbx, rsi
shr rbx, 0x1a
and esi, 0x3ffffff
mov ebx, ebx
add rbx, rdx
mov r14, rbx
shr r14, 0x1a
and ebx, 0x3ffffff
mov r14d, r14d
add r14, rax
mov r15, r14
shr r15, 0x1a
and r14d, 0x3ffffff
mov r15d, r15d
add r15, r9
mov r12, r15
shr r12, 0x1a
and r15d, 0x3ffffff
lea ebp, [r12 + r12*4]
add ebp, edi
mov edi, ebp
shr edi, 0x1a
add edi, esi
and ebp, 0x3ffffff
mov dword [rcx + 0x24], ebp
mov dword [rcx + 0x28], edi
mov dword [rcx + 0x2c], ebx
mov dword [rcx + 0x30], r14d
mov dword [rcx + 0x34], r15d
jmp 0x14007237d
add rsp, 0x28
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret