Function at 0x14007b3f0
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x88
mov qword [rsp], rcx
test r8, r8
je 0x14007bbd7
mov r12, rdx
mov rdx, qword [rsp]
mov eax, dword [rdx + 0xc]
mov ecx, dword [rdx + 8]
mov r10d, dword [rdx]
mov r9d, dword [rdx + 4]
nop word cs:[rax + rax]
mov qword [rsp + 0x80], r8
mov r8d, dword [r12]
mov qword [rsp + 0x48], r8
mov edx, ecx
xor edx, eax
and edx, r9d
xor edx, eax
add edx, r10d
lea r11d, [r8 + rdx]
add r11d, 0xd76aa478
rol r11d, 7
mov r14d, dword [r12 + 4]
mov edx, r9d
xor edx, ecx
add r11d, r9d
and edx, r11d
xor edx, ecx
add eax, r14d
mov qword [rsp + 0x38], r14
mov r8d, dword [r12 + 8]
mov qword [rsp + 0x30], r8
add eax, edx
add eax, 0xe8c7b756
rol eax, 0xc
add eax, r11d
mov edx, r11d
xor edx, r9d
and edx, eax
xor edx, r9d
add ecx, r8d
add ecx, edx
add ecx, 0x242070db
rol ecx, 0x11
mov r8d, dword [r12 + 0xc]
mov qword [rsp + 0x70], r8
mov edx, eax
xor edx, r11d
add ecx, eax
and edx, ecx
xor edx, r11d
add r9d, r8d
mov r8d, dword [r12 + 0x10]
mov qword [rsp + 0x18], r8
add r9d, edx
add r9d, 0xc1bdceee
rol r9d, 0x16
add r9d, ecx
mov edx, ecx
xor edx, eax
and edx, r9d
add r11d, r8d
xor edx, eax
add r11d, edx
add r11d, 0xf57c0faf
rol r11d, 7
mov edx, dword [r12 + 0x14]
mov qword [rsp + 8], rdx
add eax, edx
mov edx, r9d
add r11d, r9d
xor edx, ecx
and edx, r11d
xor edx, ecx
mov r8d, dword [r12 + 0x18]
add eax, edx
add eax, 0x4787c62a
rol eax, 0xc
add eax, r11d
mov edx, r11d
xor edx, r9d
and edx, eax
add ecx, r8d
mov r15, r8
mov qword [rsp + 0x78], r8
xor edx, r9d
lea ebx, [rdx + rcx]
add ebx, 0xa8304613
rol ebx, 0x11
mov ecx, dword [r12 + 0x1c]
mov qword [rsp + 0x68], rcx
add r9d, ecx
mov ecx, eax
add ebx, eax
xor ecx, r11d
and ecx, ebx
xor ecx, r11d
mov r8d, dword [r12 + 0x20]
mov qword [rsp + 0x10], r8
lea edx, [rcx + r9]
add edx, 0xfd469501
rol edx, 0x16
add edx, ebx
mov ecx, ebx
xor ecx, eax
and ecx, edx
add r11d, r8d
xor ecx, eax
lea r13d, [rcx + r11]
add r13d, 0x698098d8
rol r13d, 7
mov ecx, dword [r12 + 0x24]
mov qword [rsp + 0x50], rcx
add eax, ecx
mov ecx, edx
add r13d, edx
xor ecx, ebx
and ecx, r13d
xor ecx, ebx
add eax, ecx
add eax, 0x8b44f7af
rol eax, 0xc
mov ecx, r13d
add eax, r13d
xor ecx, edx
and ecx, eax
mov esi, dword [r12 + 0x28]
add ebx, esi
mov qword [rsp + 0x20], rsi
xor ecx, edx
lea r9d, [rcx + rbx]
add r9d, 0xffff5bb1
rol r9d, 0x11
add r9d, eax
mov ecx, dword [r12 + 0x2c]
add edx, ecx
mov r10, rcx
mov qword [rsp + 0x40], rcx
mov ecx, eax
xor ecx, r13d
and ecx, r9d
xor ecx, r13d
add ecx, edx
add ecx, 0x895cd7be
rol ecx, 0x16
add ecx, r9d
mov edx, r9d
xor edx, eax
and edx, ecx
mov r8d, dword [r12 + 0x30]
mov qword [rsp + 0x28], r8
add r13d, r8d
xor edx, eax
lea r8d, [rdx + r13]
add r8d, 0x6b901122
rol r8d, 7
add r8d, ecx
mov edx, dword [r12 + 0x34]
add eax, edx
mov r13, rdx
mov edx, ecx
xor edx, r9d
and edx, r8d
xor edx, r9d
add edx, eax
add edx, 0xfd987193
rol edx, 0xc
add edx, r8d
mov eax, r8d
xor eax, ecx
and eax, edx
mov ebp, dword [r12 + 0x38]
add r9d, ebp
xor eax, ecx
add eax, r9d
add eax, 0xa679438e
rol eax, 0x11
add eax, edx
mov r9d, dword [r12 + 0x3c]
add ecx, r9d
mov qword [rsp + 0x60], r9
mov edi, edx
xor edi, r8d
and edi, eax
xor edi, r8d
add ecx, edi
add ecx, 0x49b40821
rol ecx, 0x16
add ecx, eax
add r8d, r14d
mov edi, ecx
xor edi, eax
and edi, edx
xor edi, eax
add r8d, edi
add r8d, 0xf61e2562
rol r8d, 5
add r8d, ecx
mov edi, r8d
xor edi, ecx
and edi, eax
add edx, r15d
xor edi, ecx
add edx, edi
add edx, 0xc040b340
rol edx, 9
add edx, r8d
add eax, r10d
mov edi, edx
xor edi, r8d
and edi, ecx
xor edi, r8d
add eax, edi
add eax, 0x265e5a51
rol eax, 0xe
add eax, edx
add ecx, dword [rsp + 0x48]
mov edi, eax
xor edi, edx
and edi, r8d
xor edi, edx
add ecx, edi
add ecx, 0xe9b6c7aa
rol ecx, 0x14
add ecx, eax
mov edi, ecx
xor edi, eax
and edi, edx
mov r11, qword [rsp + 8]
add r8d, r11d
xor edi, eax
add r8d, edi
add r8d, 0xd62f105d
rol r8d, 5
add r8d, ecx
add edx, esi
mov edi, r8d
xor edi, ecx
and edi, eax
xor edi, ecx
add edx, edi
add edx, 0x2441453
rol edx, 9
add edx, r8d
add eax, r9d
mov edi, edx
xor edi, r8d
and edi, ecx
xor edi, r8d
add eax, edi
add eax, 0xd8a1e681
rol eax, 0xe
add eax, edx
mov edi, eax
xor edi, edx
and edi, r8d
mov r9, qword [rsp + 0x18]
add ecx, r9d
xor edi, edx
add ecx, edi
add ecx, 0xe7d3fbc8
rol ecx, 0x14
add ecx, eax
mov rbx, qword [rsp + 0x50]
add r8d, ebx
mov edi, ecx
xor edi, eax
and edi, edx
xor edi, eax
add r8d, edi
add r8d, 0x21e1cde6
rol r8d, 5
add r8d, ecx
add edx, ebp
mov edi, r8d
xor edi, ecx
and edi, eax
xor edi, ecx
add edx, edi
add edx, 0xc33707d6
rol edx, 9
add edx, r8d
mov edi, edx
xor edi, r8d
and edi, ecx
mov r15, qword [rsp + 0x70]
add eax, r15d
xor edi, r8d
add eax, edi
add eax, 0xf4d50d87
rol eax, 0xe
add eax, edx
mov r10, qword [rsp + 0x10]
add ecx, r10d
mov edi, eax
xor edi, edx
and edi, r8d
xor edi, edx
add ecx, edi
add ecx, 0x455a14ed
rol ecx, 0x14
add ecx, eax
add r8d, r13d
mov rsi, r13
mov qword [rsp + 0x58], r13
mov edi, ecx
xor edi, eax
and edi, edx
xor edi, eax
add r8d, edi
add r8d, 0xa9e3e905
rol r8d, 5
add r8d, ecx
mov edi, r8d
xor edi, ecx
and edi, eax
add edx, dword [rsp + 0x30]
xor edi, ecx
add edx, edi
add edx, 0xfcefa3f8
rol edx, 9
add edx, r8d
mov r13, qword [rsp + 0x68]
add eax, r13d
mov edi, edx
xor edi, r8d
and edi, ecx
xor edi, r8d
add eax, edi
add eax, 0x676f02d9
rol eax, 0xe
add eax, edx
mov r14d, eax
xor r14d, edx
mov edi, r14d
and edi, r8d
add ecx, dword [rsp + 0x28]
xor edi, edx
add edi, ecx
add edi, 0x8d2a4c8a
rol edi, 0x14
add edi, eax
add r8d, r11d
xor r14d, edi
lea ecx, [r14 + r8]
add ecx, 0xfffa3942
rol ecx, 4
add ecx, edi
add edx, r10d
mov r8d, edi
xor r8d, eax
xor r8d, ecx
add edx, r8d
add edx, 0x8771f681
rol edx, 0xb
add edx, ecx
add eax, dword [rsp + 0x40]
mov r8d, ecx
xor r8d, edi
xor r8d, edx
add eax, r8d
add eax, 0x6d9d6122
rol eax, 0x10
add eax, edx
add edi, ebp
mov r8d, edx
xor r8d, ecx
xor r8d, eax
add r8d, edi
add r8d, 0xfde5380c
rol r8d, 0x17
add r8d, eax
add ecx, dword [rsp + 0x38]
mov edi, eax
xor edi, edx
xor edi, r8d
add ecx, edi
add ecx, 0xa4beea44
rol ecx, 4
add ecx, r8d
add edx, r9d
mov edi, r8d
xor edi, eax
xor edi, ecx
add edx, edi
add edx, 0x4bdecfa9
rol edx, 0xb
add edx, ecx
add eax, r13d
mov edi, ecx
xor edi, r8d
xor edi, edx
add eax, edi
add eax, 0xf6bb4b60
rol eax, 0x10
add eax, edx
add r8d, dword [rsp + 0x20]
mov edi, edx
xor edi, ecx
xor edi, eax
add r8d, edi
add r8d, 0xbebfbc70
rol r8d, 0x17
add r8d, eax
add ecx, esi
mov edi, eax
xor edi, edx
xor edi, r8d
add ecx, edi
add ecx, 0x289b7ec6
rol ecx, 4
add ecx, r8d
mov r9, qword [rsp + 0x48]
add edx, r9d
mov edi, r8d
xor edi, eax
xor edi, ecx
add edx, edi
add edx, 0xeaa127fa
rol edx, 0xb
add edx, ecx
mov r10, r15
add eax, r10d
mov edi, ecx
xor edi, r8d
xor edi, edx
add edi, eax
add edi, 0xd4ef3085
rol edi, 0x10
add edi, edx
mov rsi, qword [rsp + 0x78]
add r8d, esi
mov eax, edx
xor eax, ecx
xor eax, edi
add r8d, eax
add r8d, 0x4881d05
rol r8d, 0x17
add r8d, edi
add ecx, ebx
mov eax, edi
xor eax, edx
xor eax, r8d
add eax, ecx
add eax, 0xd9d4d039
rol eax, 4
add eax, r8d
mov r15, qword [rsp + 0x28]
add edx, r15d
mov ecx, r8d
xor ecx, edi
xor ecx, eax
lea r14d, [rcx + rdx]
add r14d, 0xe6db99e5
rol r14d, 0xb
add r14d, eax
mov r11, qword [rsp + 0x60]
add edi, r11d
mov ecx, eax
xor ecx, r8d
xor ecx, r14d
lea edx, [rcx + rdi]
add edx, 0x1fa27cf8
rol edx, 0x10
add edx, r14d
mov rdi, qword [rsp + 0x30]
add r8d, edi
mov ecx, r14d
xor ecx, eax
xor ecx, edx
add ecx, r8d
add ecx, 0xc4ac5665
add eax, r9d
rol ecx, 0x17
add ecx, edx
add r13d, r14d
not r14d
or r14d, ecx
xor r14d, edx
add eax, r14d
add eax, 0xf4292244
rol eax, 6
add eax, ecx
add ebp, edx
not edx
or edx, eax
xor edx, ecx
add edx, r13d
add edx, 0x432aff97
rol edx, 0xa
add edx, eax
mov r8, qword [rsp + 8]
add r8d, ecx
not ecx
or ecx, edx
xor ecx, eax
add ecx, ebp
add ecx, 0xab9423a7
rol ecx, 0xf
add ecx, edx
mov r9, r15
add r9d, eax
not eax
or eax, ecx
xor eax, edx
add eax, r8d
add eax, 0xfc93a039
rol eax, 0x15
add eax, ecx
add r10d, edx
not edx
or edx, eax
xor edx, ecx
add edx, r9d
add edx, 0x655b59c3
rol edx, 6
add edx, eax
mov r9, qword [rsp + 0x20]
add r9d, ecx
not ecx
or ecx, edx
xor ecx, eax
add ecx, r10d
add ecx, 0x8f0ccc92
rol ecx, 0xa
add ecx, edx
mov r8, qword [rsp + 0x38]
add r8d, eax
not eax
or eax, ecx
xor eax, edx
add eax, r9d
add eax, 0xffeff47d
rol eax, 0xf
add eax, ecx
mov r9, qword [rsp + 0x10]
add r9d, edx
not edx
or edx, eax
xor edx, ecx
add edx, r8d
add edx, 0x85845dd1
rol edx, 0x15
add edx, eax
add r11d, ecx
not ecx
or ecx, edx
xor ecx, eax
add ecx, r9d
add ecx, 0x6fa87e4f
rol ecx, 6
add ecx, edx
add esi, eax
not eax
or eax, ecx
xor eax, edx
add eax, r11d
add eax, 0xfe2ce6e0
mov r8, qword [rsp + 0x80]
rol eax, 0xa
add eax, ecx
mov r10, qword [rsp + 0x58]
add r10d, edx
not edx
or edx, eax
xor edx, ecx
add edx, esi
add edx, 0xa3014314
rol edx, 0xf
add edx, eax
mov r9, qword [rsp + 0x18]
add r9d, ecx
not ecx
or ecx, edx
xor ecx, eax
add ecx, r10d
add ecx, 0x4e0811a1
rol ecx, 0x15
add ecx, edx
mov r11, qword [rsp + 0x40]
add r11d, eax
not eax
or eax, ecx
xor eax, edx
lea r10d, [rax + r9]
add r10d, 0xf7537e82
rol r10d, 6
add r10d, ecx
mov r9, rdi
add r9d, edx
not edx
or edx, r10d
xor edx, ecx
lea eax, [rdx + r11]
add eax, 0xbd3af235
rol eax, 0xa
add eax, r10d
add ebx, ecx
not ecx
or ecx, eax
xor ecx, r10d
add ecx, r9d
add ecx, 0x2ad7d2bb
rol ecx, 0xf
add ecx, eax
mov edx, r10d
not edx
or edx, ecx
xor edx, eax
add edx, ebx
add edx, 0xeb86d391
rol edx, 0x15
mov r11, qword [rsp]
mov r9d, dword [r11 + 4]
add r9d, ecx
add r9d, edx
add r10d, dword [r11]
add ecx, dword [r11 + 8]
add eax, dword [r11 + 0xc]
add r12, 0x40
mov dword [r11], r10d
mov dword [r11 + 4], r9d
mov dword [r11 + 8], ecx
mov dword [r11 + 0xc], eax
dec r8
jne 0x14007b430
add rsp, 0x88
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret