Function at 0x306e2cc38
Capabilities:
Encode data using xor

Disassembly:
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x20
mov edx, 0x810
mov ebp, 4
mov ebx, 0x9e3779b9
mov edi, 0x9e3779b9
mov rsi, rcx
lea rcx, [0x306e6c1a0]
call sym.newObj
mov r8d, 0x9e3779b9
mov edx, 0x9e3779b9
mov r9d, 0x9e3779b9
mov r12, rax
mov r10d, 0x9e3779b9
mov dword [rax + 0x80c], 0x100
mov r11d, 0x9e3779b9
mov eax, 0x9e3779b9
mov ecx, edx
shl ecx, 0xb
xor ecx, edi
lea edi, [rdx + rax]
mov edx, eax
add ebx, ecx
shr edx, 2
xor edx, edi
lea edi, [rbx + rax]
mov eax, ebx
add r11d, edx
shl eax, 8
xor eax, edi
lea edi, [rbx + r11]
mov ebx, r11d
add r10d, eax
shr ebx, 0x10
xor ebx, edi
lea edi, [r11 + r10]
mov r11d, r10d
add r9d, ebx
shl r11d, 0xa
xor r11d, edi
lea edi, [r10 + r9]
mov r10d, r9d
add r8d, r11d
shr r10d, 4
xor r10d, edi
lea edi, [r9 + r8]
mov r9d, r8d
add ecx, r10d
shl r9d, 8
xor r9d, edi
lea edi, [r8 + rcx]
mov r8d, ecx
shr r8d, 9
add edx, r9d
xor r8d, edi
lea edi, [rcx + rdx]
add eax, r8d
dec rbp
jne 0x306e2cc98
mov rcx, r12
lea r13, [rsi + 0x400]
mov rbp, r12
add edx, dword [rsi + 4]
add edi, dword [rsi]
mov r14d, edi
mov edi, edx
add eax, dword [rsi + 8]
shl edi, 0xb
xor edi, r14d
mov r14d, dword [rsi + 0xc]
add r14d, edi
add ebx, r14d
lea r14d, [rdx + rax]
mov edx, eax
shr edx, 2
xor edx, r14d
mov r14d, dword [rsi + 0x10]
add r14d, edx
add r11d, r14d
lea r14d, [rax + rbx]
mov eax, ebx
shl eax, 8
xor eax, r14d
mov r14d, dword [rsi + 0x14]
add r14d, eax
add r10d, r14d
lea r14d, [rbx + r11]
mov ebx, r11d
shr ebx, 0x10
xor ebx, r14d
mov r14d, dword [rsi + 0x18]
add r14d, ebx
add r9d, r14d
lea r14d, [r11 + r10]
mov r11d, r10d
shl r11d, 0xa
xor r11d, r14d
mov r14d, dword [rsi + 0x1c]
mov dword [rbp + 0xc], ebx
mov dword [rbp + 0x10], r11d
add r14d, r11d
add r8d, r14d
lea r14d, [r10 + r9]
mov r10d, r9d
shr r10d, 4
xor r10d, r14d
lea r14d, [r9 + r8]
mov r9d, r8d
add edi, r10d
shl r9d, 8
mov dword [rbp + 0x14], r10d
xor r9d, r14d
lea r14d, [r8 + rdi]
mov r8d, edi
shr r8d, 9
add edx, r9d
mov dword [rbp + 0x18], r9d
xor r8d, r14d
mov dword [rbp + 4], edx
add eax, r8d
add edi, edx
add rsi, 0x20
mov dword [rbp + 0x1c], r8d
mov dword [rbp], edi
add rbp, 0x20
mov dword [rbp - 0x18], eax
cmp rsi, r13
jne 0x306e2cd23
lea rsi, [r12 + 0x400]
add edx, dword [rcx + 4]
add edi, dword [rcx]
mov ebp, edx
add eax, dword [rcx + 8]
shl ebp, 0xb
xor edi, ebp
mov ebp, dword [rcx + 0xc]
add ebp, edi
add ebx, ebp
lea ebp, [rdx + rax]
mov edx, eax
shr edx, 2
xor edx, ebp
mov ebp, dword [rcx + 0x10]
add ebp, edx
add r11d, ebp
lea ebp, [rax + rbx]
mov eax, ebx
shl eax, 8
xor eax, ebp
mov ebp, dword [rcx + 0x14]
add ebp, eax
add r10d, ebp
lea ebp, [rbx + r11]
mov ebx, r11d
shr ebx, 0x10
xor ebx, ebp
mov ebp, dword [rcx + 0x18]
mov dword [rcx + 0xc], ebx
add ebp, ebx
add r9d, ebp
lea ebp, [r11 + r10]
mov r11d, r10d
shl r11d, 0xa
xor r11d, ebp
mov ebp, dword [rcx + 0x1c]
mov dword [rcx + 0x10], r11d
add ebp, r11d
add r8d, ebp
lea ebp, [r10 + r9]
mov r10d, r9d
shr r10d, 4
xor r10d, ebp
lea ebp, [r9 + r8]
mov r9d, r8d
add edi, r10d
shl r9d, 8
mov dword [rcx + 0x14], r10d
xor r9d, ebp
lea ebp, [r8 + rdi]
mov r8d, edi
shr r8d, 9
add edx, r9d
mov dword [rcx + 0x18], r9d
xor r8d, ebp
mov dword [rcx + 4], edx
add eax, r8d
add edi, edx
mov dword [rcx + 0x1c], r8d
add rcx, 0x20
mov dword [rcx - 0x20], edi
mov dword [rcx - 0x18], eax
cmp rcx, rsi
jne 0x306e2ce05
mov rax, r12
add rsp, 0x20
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
ret