Function at 0x14005f370
Capabilities:
Encode data using xor
Hash data using murmur3

Disassembly:
test r8, r8
je 0x14005f9cb
mov r11, rsp
mov qword [r11 + 0x18], r8
mov qword [r11 + 0x10], rdx
mov qword [r11 + 8], rcx
push rbx
push rbp
push r12
push r13
sub rsp, 0x78
mov rax, qword [rcx + 0x70]
mov qword [r11 - 0x28], rsi
mov qword [r11 - 0x30], rdi
mov r12d, dword [rax]
mov r13d, dword [rax + 8]
mov ebp, dword [rax + 0xc]
mov rbx, rcx
mov ecx, dword [rax + 4]
mov qword [r11 - 0x38], r14
mov dword [rsp + 0xb8], ecx
mov qword [r11 - 0x40], r15
nop dword [rax]
mov r8, qword [rbx + 0x58]
mov rcx, qword [rbx + 0x50]
shl r8, 2
call fcn.1402bd1f0
mov rcx, qword [rbx + 0x50]
mov r10d, dword [rsp + 0xb8]
mov r9d, dword [rcx]
mov edx, dword [rcx + 8]
mov r11d, dword [rcx + 4]
mov r8d, dword [rcx + 0x10]
mov edi, dword [rcx + 0x18]
mov r14d, dword [rcx + 0x20]
mov eax, ebp
mov dword [rsp + 0x38], edx
mov dword [rsp + 0x3c], r9d
xor eax, r13d
mov dword [rsp + 0x44], r11d
mov dword [rsp + 0x48], r8d
and eax, r10d
mov dword [rsp + 0x40], edi
xor eax, ebp
add eax, r9d
add r12d, eax
mov eax, r13d
xor eax, r10d
rol r12d, 3
and eax, r12d
xor eax, r13d
add eax, r11d
add ebp, eax
mov eax, r10d
xor eax, r12d
rol ebp, 7
and eax, ebp
xor eax, r10d
add eax, edx
mov edx, dword [rcx + 0xc]
add r13d, eax
mov eax, ebp
mov dword [rsp + 0x2c], edx
xor eax, r12d
rol r13d, 0xb
and eax, r13d
xor eax, r12d
add eax, edx
mov edx, dword [rcx + 0x14]
add r10d, eax
mov eax, ebp
mov dword [rsp + 0x34], edx
xor eax, r13d
rol r10d, 0x13
and eax, r10d
xor eax, ebp
add eax, r8d
add r12d, eax
mov eax, r13d
xor eax, r10d
rol r12d, 3
and eax, r12d
xor eax, r13d
add eax, edx
mov edx, dword [rcx + 0x1c]
add ebp, eax
mov eax, r10d
mov dword [rsp + 0x28], edx
xor eax, r12d
rol ebp, 7
and eax, ebp
xor eax, r10d
add eax, edi
add r13d, eax
mov eax, ebp
xor eax, r12d
rol r13d, 0xb
and eax, r13d
xor eax, r12d
add eax, edx
add r10d, eax
mov eax, ebp
rol r10d, 0x13
xor eax, r13d
and eax, r10d
mov ebx, dword [rcx + 0x24]
mov edx, dword [rcx + 0x2c]
xor eax, ebp
mov r15d, dword [rcx + 0x28]
mov esi, dword [rcx + 0x30]
add eax, r14d
mov dword [rsp + 0x24], edx
mov dword [rsp + 0x4c], ebx
add r12d, eax
mov eax, r13d
xor eax, r10d
rol r12d, 3
and eax, r12d
xor eax, r13d
add eax, ebx
add ebp, eax
mov eax, r10d
xor eax, r12d
rol ebp, 7
and eax, ebp
xor eax, r10d
add eax, r15d
add r13d, eax
mov eax, ebp
xor eax, r12d
rol r13d, 0xb
and eax, r13d
xor eax, r12d
add eax, edx
add r10d, eax
mov eax, ebp
xor eax, r13d
rol r10d, 0x13
and eax, r10d
xor eax, ebp
add eax, esi
add r12d, eax
mov eax, r13d
xor eax, r10d
rol r12d, 3
mov dword [rsp + 0xb8], r12d
mov r12d, dword [rcx + 0x34]
and eax, dword [rsp + 0xb8]
xor eax, r13d
add eax, r12d
add ebp, eax
mov eax, r10d
xor eax, dword [rsp + 0xb8]
rol ebp, 7
mov dword [rsp + 0x20], ebp
mov ebp, dword [rcx + 0x38]
and eax, dword [rsp + 0x20]
xor eax, r10d
add eax, ebp
add r13d, eax
mov eax, dword [rsp + 0x20]
xor eax, dword [rsp + 0xb8]
rol r13d, 0xb
mov dword [rsp + 0x30], r13d
mov r13d, dword [rcx + 0x3c]
mov edx, dword [rsp + 0x30]
and eax, edx
mov ecx, edx
xor eax, dword [rsp + 0xb8]
add eax, r13d
add r10d, eax
mov eax, edx
mov edx, dword [rsp + 0xb8]
rol r10d, 0x13
add edx, 0x5a827999
or ecx, r10d
and eax, r10d
and ecx, dword [rsp + 0x20]
or ecx, eax
add ecx, r9d
mov r9d, dword [rsp + 0x30]
add edx, ecx
mov ecx, r10d
rol edx, 3
or ecx, edx
and ecx, r9d
mov eax, r10d
add r9d, 0x5a827999
and eax, edx
or ecx, eax
mov eax, dword [rsp + 0x20]
add r8d, ecx
add eax, 0x5a827999
add r8d, eax
rol r8d, 5
mov ecx, r8d
mov eax, r8d
or ecx, edx
and eax, edx
and ecx, r10d
or ecx, eax
mov eax, r8d
add ecx, r14d
add r9d, ecx
mov ecx, r8d
rol r9d, 9
and eax, r9d
or ecx, r9d
and ecx, edx
add edx, 0x5a827999
or ecx, eax
mov eax, r9d
add ecx, 0x5a827999
add ecx, esi
add r10d, ecx
mov ecx, r9d
rol r10d, 0xd
and eax, r10d
or ecx, r10d
and ecx, r8d
add r8d, 0x5a827999
or ecx, eax
mov eax, r10d
add r11d, ecx
add r11d, edx
mov edx, r10d
rol r11d, 3
and eax, r11d
or edx, r11d
and edx, r9d
add r9d, 0x5a827999
or edx, eax
add edx, dword [rsp + 0x34]
add edx, r8d
rol edx, 5
mov r8d, edx
mov eax, edx
or r8d, r11d
and eax, r11d
and r8d, r10d
add r10d, 0x5a827999
or r8d, eax
mov eax, edx
add r8d, ebx
add r8d, r9d
mov r9d, edx
rol r8d, 9
or r9d, r8d
and eax, r8d
and r9d, r11d
add r11d, 0x5a827999
or r9d, eax
mov eax, r8d
add r9d, r12d
add r9d, r10d
mov r10d, r8d
rol r9d, 0xd
or r10d, r9d
and eax, r9d
and r10d, edx
or r10d, eax
add r10d, dword [rsp + 0x38]
add r10d, r11d
mov r11d, r9d
rol r10d, 3
or r11d, r10d
and r11d, r8d
add edx, 0x5a827999
mov eax, r9d
and eax, r10d
add r8d, 0x5a827999
or r11d, eax
add r11d, edi
add r11d, edx
rol r11d, 5
mov ebx, r11d
mov eax, r11d
mov edi, r11d
and eax, r10d
or ebx, r10d
and ebx, r9d
add r9d, 0x5a827999
or ebx, eax
mov eax, r11d
add ebx, r15d
add ebx, r8d
rol ebx, 9
and eax, ebx
or edi, ebx
mov edx, ebx
and edi, r10d
add r10d, 0x5a827999
or edi, eax
mov eax, ebx
add edi, ebp
add edi, r9d
rol edi, 0xd
and eax, edi
or edx, edi
mov r8d, edi
and edx, r11d
or edx, eax
mov eax, edi
add edx, dword [rsp + 0x2c]
add edx, r10d
rol edx, 3
and eax, edx
or r8d, edx
and r8d, ebx
or r8d, eax
add r8d, 0x5a827999
add r8d, dword [rsp + 0x28]
add r8d, r11d
rol r8d, 5
mov r9d, r8d
mov eax, r8d
mov r10d, r8d
and eax, edx
or r9d, edx
and r9d, edi
or r9d, eax
mov eax, r8d
add r9d, 0x5a827999
add r9d, dword [rsp + 0x24]
add r9d, ebx
rol r9d, 9
and eax, r9d
or r10d, r9d
and r10d, edx
or r10d, eax
mov eax, r8d
xor eax, r9d
add r10d, 0x5a827999
add r10d, r13d
add r10d, edi
rol r10d, 0xd
xor eax, r10d
add eax, 0x6ed9eba1
add eax, dword [rsp + 0x3c]
add edx, eax
mov eax, r9d
xor eax, r10d
rol edx, 3
xor eax, edx
add eax, 0x6ed9eba1
add eax, r14d
add r8d, eax
rol r8d, 9
mov eax, r8d
mov ecx, r8d
add r8d, 0x6ed9eba1
xor eax, r10d
add r10d, 0x6ed9eba1
xor eax, edx
add eax, 0x6ed9eba1
add eax, dword [rsp + 0x48]
add r9d, eax
rol r9d, 0xb
xor ecx, r9d
mov eax, ecx
xor eax, edx
add eax, esi
add r10d, eax
rol r10d, 0xf
xor ecx, r10d
add ecx, dword [rsp + 0x38]
lea r11d, [rcx + 0x6ed9eba1]
add r11d, edx
mov edx, r9d
add r9d, 0x6ed9eba1
xor edx, r10d
rol r11d, 3
xor edx, r11d
add edx, r15d
add edx, r8d
rol edx, 9
mov r8d, edx
mov ecx, edx
add edx, 0x6ed9eba1
xor r8d, r10d
add r10d, 0x6ed9eba1
xor r8d, r11d
add r8d, dword [rsp + 0x40]
add r8d, r9d
rol r8d, 0xb
xor ecx, r8d
mov eax, r8d
add r8d, 0x6ed9eba1
mov r9d, ecx
xor r9d, r11d
add r9d, ebp
add r9d, r10d
rol r9d, 0xf
xor ecx, r9d
xor eax, r9d
add ecx, 0x6ed9eba1
add ecx, dword [rsp + 0x44]
add r11d, ecx
rol r11d, 3
xor eax, r11d
add eax, dword [rsp + 0x4c]
add edx, eax
rol edx, 9
mov ebx, edx
mov ecx, edx
add edx, 0x6ed9eba1
xor ebx, r9d
add r9d, 0x6ed9eba1
xor ebx, r11d
add ebx, dword [rsp + 0x34]
add ebx, r8d
rol ebx, 0xb
xor ecx, ebx
mov r10d, ecx
xor r10d, r11d
add r10d, r12d
add r10d, r9d
mov r9d, ebx
rol r10d, 0xf
xor r9d, r10d
xor ecx, r10d
add ecx, dword [rsp + 0x2c]
lea r8d, [rcx + 0x6ed9eba1]
add r8d, r11d
rol r8d, 3
xor r9d, r8d
add r9d, dword [rsp + 0x24]
add r9d, edx
rol r9d, 9
add ebx, 0x6ed9eba1
mov ecx, r9d
mov edx, r9d
xor edx, r10d
xor edx, r8d
add edx, dword [rsp + 0x28]
add edx, ebx
mov rbx, qword [rsp + 0xa0]
mov rax, qword [rbx + 0x70]
add dword [rax], r8d
mov r12d, dword [rax]
mov rax, qword [rbx + 0x70]
rol edx, 0xb
xor ecx, edx
xor ecx, r8d
add ecx, 0x6ed9eba1
add ecx, r13d
add ecx, r10d
rol ecx, 0xf
add dword [rax + 4], ecx
mov ecx, dword [rax + 4]
mov rax, qword [rbx + 0x70]
add dword [rax + 8], edx
mov r13d, dword [rax + 8]
mov rax, qword [rbx + 0x70]
add dword [rax + 0xc], r9d
mov ebp, dword [rax + 0xc]
mov rax, qword [rbx]
mov dword [rsp + 0xb8], ecx
mov rcx, rbx
call qword [rax + 0x28]
mov rdx, qword [rsp + 0xa8]
add rdx, rax
dec qword [rsp + 0xb0]
mov qword [rsp + 0xa8], rdx
jne 0x14005f3c0
mov r15, qword [rsp + 0x58]
mov r14, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x70]
add rsp, 0x78
pop r13
pop r12
pop rbp
pop rbx
ret