Function at 0x140076c20
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x2c0
mov rax, qword [0x14038d940]
xor rax, rsp
mov qword [rsp + 0x2b0], rax
xor eax, eax
mov qword [rsp + 0x20], rcx
mov r9d, eax
lea r8, [rsp + 0x40]
lea r10d, [rax + 2]
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rcx + r9 + 0x53]
movzx edx, byte [rcx + r9 + 0x52]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x54]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x55]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x56]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x57]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x58]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x59]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x5b]
mov qword [r8 - 0x10], rdx
movzx edx, byte [rcx + r9 + 0x5a]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x5c]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x5d]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x5e]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x5f]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x60]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x61]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x63]
mov qword [r8 - 8], rdx
movzx edx, byte [rcx + r9 + 0x62]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x64]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x65]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x66]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x67]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x68]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x69]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x6b]
mov qword [r8], rdx
movzx edx, byte [rcx + r9 + 0x6a]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x6c]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x6d]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x6e]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x6f]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x70]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x71]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x73]
mov qword [r8 + 8], rdx
movzx edx, byte [rcx + r9 + 0x72]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x74]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x75]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x76]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x77]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x78]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x79]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x7b]
mov qword [r8 + 0x10], rdx
movzx edx, byte [rcx + r9 + 0x7a]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x7c]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x7d]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x7e]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x7f]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x80]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x81]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x83]
mov qword [r8 + 0x18], rdx
movzx edx, byte [rcx + r9 + 0x82]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x84]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x85]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x86]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x87]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x88]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x89]
shl rdx, 8
or rdx, rax
mov qword [r8 + 0x20], rdx
movzx edx, byte [rcx + r9 + 0x8a]
movzx eax, byte [rcx + r9 + 0x8b]
lea r8, [r8 + 0x40]
shl rdx, 8
lea r9, [r9 + 0x40]
or rdx, rax
movzx eax, byte [rcx + r9 + 0x4c]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x4d]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x4e]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x4f]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x50]
shl rdx, 8
or rdx, rax
movzx eax, byte [rcx + r9 + 0x51]
shl rdx, 8
or rdx, rax
mov qword [r8 - 0x18], rdx
sub r10, 1
jne 0x140076c70
mov r12, qword [rsp + 0xa0]
lea r11, [rsp + 0xa0]
lea r13d, [r10 + 8]
mov r9, qword [r11 - 0x68]
lea r15, [r11]
mov r10, qword [r11 - 0x60]
mov r14, r9
mov rbp, qword [r11 + 8]
mov rax, r9
mov rsi, qword [r15 - 0x50]
mov rdx, r12
ror rax, 1
mov r8, rbp
ror rdx, 0x3d
ror r8, 0x3d
ror r14, 8
xor r14, rax
mov rax, r9
shr rax, 7
xor r14, rax
mov rax, r12
ror rax, 0x13
xor rdx, rax
mov rax, r12
shr rax, 6
xor rdx, rax
mov rax, rbp
ror rax, 0x13
add r14, rdx
add r14, qword [r11 - 0x70]
xor r8, rax
add r14, qword [r11 - 0x28]
mov rdx, r10
ror rdx, 8
mov rax, rbp
shr rax, 6
xor r8, rax
mov qword [r11 + 0x10], r14
mov rax, r10
ror rax, 1
xor rdx, rax
mov rax, r10
shr rax, 7
xor rdx, rax
mov rax, r14
add r8, rdx
ror rax, 0x13
add r8, qword [r11 - 0x20]
add r9, r8
mov r8, r14
ror r8, 0x3d
mov rbx, r9
xor r8, rax
ror rbx, 0x3d
mov qword [r11 + 0x18], r9
mov rax, r14
mov r11, qword [r11 - 0x58]
shr rax, 6
mov rdx, r11
xor r8, rax
ror rdx, 8
mov rax, r11
ror rax, 1
xor rdx, rax
mov rax, r11
shr rax, 7
xor rdx, rax
mov rax, r9
ror rax, 0x13
add r8, rdx
add r8, qword [r15 - 0x18]
xor rbx, rax
shr r9, 6
add r10, r8
mov rax, rsi
mov qword [r15 + 0x20], r10
ror rax, 1
mov rdx, rsi
ror rdx, 8
xor rbx, r9
xor rdx, rax
mov rax, rsi
shr rax, 7
xor rdx, rax
mov r9, qword [r15 - 0x40]
add rbx, rdx
add rbx, qword [r15 - 0x10]
mov rdx, r10
mov rdi, qword [r15 - 0x48]
add rbx, r11
ror rdx, 0x3d
mov r8, r9
ror r8, 8
mov r11, rdi
ror r11, 8
mov rax, rdi
ror rax, 1
xor r11, rax
mov qword [r15 + 0x28], rbx
mov rax, rdi
shr rax, 7
xor r11, rax
mov rax, r10
ror rax, 0x13
xor rdx, rax
shr r10, 6
xor rdx, r10
mov rax, r9
ror rax, 1
add r11, rdx
add r11, qword [r15 - 8]
xor r8, rax
add r11, rsi
mov rax, r9
shr rax, 7
mov r10, rbx
xor r8, rax
ror r10, 0x3d
mov rax, rbx
mov qword [r15 + 0x30], r11
ror rax, 0x13
xor r10, rax
shr rbx, 6
lea rax, [r12 + r8]
xor r10, rbx
mov rbx, qword [r15 - 0x38]
add r10, rax
add r10, rdi
mov r12, r11
ror r12, 0x3d
mov r8, rbx
ror r8, 8
mov rax, rbx
ror rax, 1
xor r8, rax
mov qword [r15 + 0x38], r10
mov rax, rbx
shr rax, 7
xor r8, rax
mov rax, r11
ror rax, 0x13
xor r12, rax
shr r11, 6
xor r12, r11
lea r11, [r15 + 0x40]
lea rax, [r9 + r8]
mov r9, qword [r15 - 0x30]
add r12, rax
mov r8, r10
ror r8, 0x3d
mov rax, r10
ror rax, 0x13
mov rdx, r9
xor r8, rax
shr r10, 6
mov rax, r9
ror rdx, 8
ror rax, 1
xor r8, r10
xor rdx, rax
shr r9, 7
add r12, rbp
xor rdx, r9
mov qword [r11], r12
lea rax, [r14 + r8]
add rdx, rax
add rdx, rbx
mov qword [r15 + 0x48], rdx
sub r13, 1
jne 0x140076fe1
mov rbx, qword [rcx]
lea r8, [0x14025bb30]
mov rdi, qword [rcx + 8]
mov r15, qword [rcx + 0x20]
mov r12, qword [rcx + 0x28]
mov qword [rsp + 8], rbx
mov rbx, qword [rcx + 0x18]
mov r14, qword [rsp + 8]
mov qword [rsp], rdi
mov rdi, qword [rcx + 0x10]
mov rsi, qword [rsp]
mov qword [rsp + 0x18], r15
mov r15, qword [rcx + 0x38]
mov r13, qword [rsp + 0x18]
mov qword [rsp + 0x10], r12
mov r12, qword [rcx + 0x30]
xor ecx, ecx
mov rbp, qword [rsp + 0x10]
nop word [rax + rax]
mov r9, r13
mov rax, r13
ror rax, 0x12
mov rdx, r13
ror r9, 0x29
not rdx
xor r9, rax
and rdx, r12
mov rax, r13
mov r11, r14
ror rax, 0xe
xor r9, rax
ror r11, 0x27
mov rax, rbp
and rax, r13
xor rdx, rax
mov rax, r14
add r9, rdx
ror rax, 0x22
add r9, qword [rcx + r8]
xor r11, rax
add r9, qword [rsp + rcx + 0x30]
mov rax, r14
ror rax, 0x1c
add r9, r15
xor r11, rax
mov rdx, rsi
xor rdx, r14
mov rax, rsi
and rax, r14
and rdx, rdi
xor rdx, rax
lea r10, [r9 + rbx]
add r11, rdx
mov rax, r10
add r11, r9
ror rax, 0x12
mov r9, r10
mov rdx, r10
ror r9, 0x29
not rdx
xor r9, rax
and rdx, rbp
mov rax, r10
mov rbx, r11
ror rax, 0xe
xor r9, rax
ror rbx, 0x27
mov rax, r13
and rax, r10
xor rdx, rax
lea rax, [0x14025bb30]
add r9, rdx
mov rdx, r14
add r9, qword [rsp + rcx + 0x38]
xor rdx, r11
add r9, qword [rcx + rax + 8]
and rdx, rsi
add r9, r12
mov rax, r11
ror rax, 0x22
xor rbx, rax
mov rax, r11
ror rax, 0x1c
xor rbx, rax
lea r15, [r9 + rdi]
mov rax, r14
and rax, r11
xor rdx, rax
mov rax, r15
add rbx, rdx
ror rax, 0x12
add rbx, r9
mov rdx, r15
mov r9, r15
not rdx
ror r9, 0x29
xor r9, rax
mov rax, r15
ror rax, 0xe
xor r9, rax
and rdx, r13
mov rax, r10
and rax, r15
mov rdi, rbx
xor rdx, rax
ror rdi, 0x27
add r9, rdx
lea rax, [0x14025bb30]
add r9, qword [rsp + rcx + 0x40]
mov rdx, r11
add r9, qword [rcx + rax + 0x10]
xor rdx, rbx
add r9, rbp
and rdx, r14
mov rax, rbx
ror rax, 0x22
xor rdi, rax
mov rax, rbx
lea r12, [r9 + rsi]
ror rax, 0x1c
xor rdi, rax
mov rax, r11
and rax, rbx
xor rdx, rax
mov rax, r12
ror rax, 0x12
add rdi, rdx
add rdi, r9
mov rdx, r12
not rdx
mov r9, r12
ror r9, 0x29
and rdx, r10
xor r9, rax
mov rsi, rdi
ror rsi, 0x27
mov rax, r12
ror rax, 0xe
xor r9, rax
mov rax, r15
and rax, r12
xor rdx, rax
lea rax, [0x14025bb30]
add r9, rdx
mov rdx, rbx
add r9, qword [rsp + rcx + 0x48]
xor rdx, rdi
add r9, qword [rcx + rax + 0x18]
and rdx, r11
add r9, r13
mov rax, rdi
ror rax, 0x22
xor rsi, rax
mov rax, rdi
ror rax, 0x1c
xor rsi, rax
lea rbp, [r9 + r14]
mov rax, rbx
and rax, rdi
xor rdx, rax
mov rax, rbp
ror rax, 0x12
add rsi, rdx
add rsi, r9
mov rdx, rbp
not rdx
mov r9, rbp
ror r9, 0x29
and rdx, r15
xor r9, rax
mov rax, rbp
ror rax, 0xe
xor r9, rax
mov rax, r12
and rax, rbp
xor rdx, rax
lea rax, [0x14025bb30]
add r9, rdx
add r9, qword [rsp + rcx + 0x50]
add r9, qword [rcx + rax + 0x20]
add r9, r10
mov r14, rsi
lea r13, [r9 + r11]
ror r14, 0x27
lea r8, [0x14025bb30]
mov rax, rsi
mov rdx, rdi
ror rax, 0x22
xor rdx, rsi
xor r14, rax
and rdx, rbx
mov rax, rsi
add rcx, 0x28
ror rax, 0x1c
xor r14, rax
mov rax, rdi
and rax, rsi
xor rdx, rax
add r14, rdx
add r14, r9
cmp rcx, 0x280
jl 0x140077270
mov rcx, qword [rsp + 0x20]
add qword [rcx], r14
add qword [rcx + 8], rsi
add qword [rcx + 0x10], rdi
add qword [rcx + 0x18], rbx
add qword [rcx + 0x20], r13
add qword [rcx + 0x28], rbp
add qword [rcx + 0x30], r12
add qword [rcx + 0x38], r15
xor eax, eax
mov word [rcx + 0x50], ax
mov rcx, qword [rsp + 0x2b0]
xor rcx, rsp
call fcn.1402200b0
lea r11, [rsp + 0x2c0]
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret