Function at 0x5b0480
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x138
mov rbx, qword [rcx + 8]
mov qword [rsp + 0x180], rcx
mov rax, rbx
add rax, r8
mov qword [rsp + 0x188], rdx
mov qword [rsp + 0x190], r8
cmp rax, 0x40
jbe 0x5b0509
test rbx, rbx
je 0x5b04fc
mov r8d, 0x40
mov rsi, r8
sub rsi, rbx
jne 0x5b1940
mov rax, qword [rsp + 0x180]
mov r8d, 0x40
lea rdx, [rax + 0x60]
mov rcx, rax
call fcn.005ae940
mov rax, qword [rsp + 0x180]
mov qword [rax + 8], 0
xor ebx, ebx
cmp qword [rsp + 0x190], 0x40
ja 0x5b0570
cmp qword [rsp + 0x190], 0
jne 0x5b0530
xor eax, eax
add rsp, 0x138
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov rax, qword [rsp + 0x180]
mov r8, qword [rsp + 0x190]
mov rdx, qword [rsp + 0x188]
lea rcx, [rax + rbx + 0x60]
call sub.msvcrt.dll_memcpy
mov rax, qword [rsp + 0x180]
mov rdi, qword [rsp + 0x190]
add qword [rax + 8], rdi
jmp 0x5b0514
mov rax, qword [rsp + 0x190]
mov rcx, qword [rsp + 0x188]
lea rbx, [rax - 1]
mov rax, rbx
shr rax, 6
mov qword [rsp + 0xe0], rax
mov rax, qword [rsp + 0x180]
mov qword [rsp + 0xd8], rbx
mov rdx, qword [rax + 0x10]
mov rax, qword [rax + 0x18]
and rbx, 0xffffffffffffffc0
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0x180]
add rcx, rbx
mov rax, qword [rax + 0x20]
mov qword [rsp + 0xc0], rcx
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x180]
mov rcx, qword [rsp + 0x188]
mov r12, qword [rax + 0x30]
mov r13, qword [rax + 0x38]
mov rbp, qword [rax + 0x28]
mov r14, qword [rax + 0x40]
mov rdi, qword [rax + 0x48]
mov rax, qword [rax + 0x50]
lea rbx, [rdx + 0x40]
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x180]
mov qword [rsp + 0xe8], rbx
mov rax, qword [rax + 0x58]
lea rsi, [rsp + 0xf0]
sub rbx, rcx
mov qword [rsp + 0xd0], rsi
mov qword [rsp + 0xc8], rbx
mov qword [rsp + 0x70], rcx
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x50], rax
nop dword [rax]
mov r12, qword [rsp + 0x48]
mov r13, qword [rsp + 0x50]
mov rdx, r12
mov r11, qword [rsp + 0x30]
xor rdx, r13
xor rdx, rbp
xor rdx, r11
xor rdx, qword [rsp + 0x28]
mov r8, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x60]
mov rax, qword [rsp + 0xc8]
xor rdx, r14
xor rdx, rdi
lea r9, [r8 + rax]
xor rdx, qword [rsp + 0x38]
mov rbx, rsi
movabs r15, 0x1bd11bdaa9fc1a22
xor r15, rdx
xor rbx, r9
mov rcx, qword [r8 + 8]
mov qword [rsp + 0x40], r15
mov r15, rbx
mov rbx, qword [rsp + 0xd0]
mov rdx, qword [r8]
mov qword [rbx + 8], rcx
mov rcx, qword [r8 + 0x18]
mov qword [rbx], rdx
mov rax, rdx
mov qword [rbx + 0x18], rcx
mov rdx, qword [r8 + 0x10]
mov rcx, qword [r8 + 0x28]
mov r10, rdx
mov qword [rbx + 0x10], rdx
mov qword [rbx + 0x28], rcx
mov rdx, qword [r8 + 0x20]
mov rcx, qword [r8 + 0x38]
mov qword [rbx + 0x20], rdx
mov qword [rbx + 0x38], rcx
mov qword [rsp + 0xa0], rdx
mov rcx, qword [rsp + 0x28]
mov rdx, qword [r8 + 0x30]
mov qword [rsp + 0xb0], rax
mov qword [rbx + 0x30], rdx
mov qword [rsp + 0xa8], rdx
mov qword [rsp + 0xb8], r10
mov r8, qword [rsp + 0xf8]
add rcx, qword [rsp + 0x108]
mov rdx, qword [rsp + 0xa0]
add r11, r10
lea r10, [rdx + r14]
mov rdx, qword [rsp + 0x118]
mov qword [rsp + 0x68], r9
add rdx, rdi
add rdx, r9
mov r9, qword [rsp + 0x38]
mov rbx, rax
mov rax, qword [rsp + 0xa8]
add r9, rsi
mov rsi, qword [rsp + 0x128]
add rax, r9
add r8, rbp
add rsi, r13
mov qword [rsp + 0x58], r9
add rbx, r12
mov r9, rax
add rbx, r8
add r10, rdx
add r9, rsi
add r11, rcx
rorx r8, r8, 0x12
rorx rdx, rdx, 0x2d
xor r8, rbx
xor rdx, r10
rorx rsi, rsi, 0x1b
xor rsi, r9
add r10, rsi
add r9, rdx
rorx rcx, rcx, 0x1c
xor rcx, r11
add r11, r8
add qword [rsp + 0x70], 0x40
rorx r8, r8, 0x1f
rorx rsi, rsi, 0x25
xor r8, r11
xor rsi, r10
rorx rdx, rdx, 0x32
xor rdx, r9
add rbx, rcx
rorx rcx, rcx, 0x16
xor rcx, rbx
add r10, r8
add r9, rcx
add rbx, rdx
add r11, rsi
rorx r8, r8, 0x2f
rorx rcx, rcx, 0xf
xor r8, r10
xor rcx, r9
rorx rdx, rdx, 0x1c
xor rdx, rbx
add r9, r8
add r10, rcx
rorx rsi, rsi, 0x19
xor rsi, r11
add r11, rdx
lea rax, [r15 + r13]
add rbx, rsi
mov qword [rsp + 0x90], r15
rorx r8, r8, 0x14
mov r15, qword [rsp + 0x40]
xor r8, r9
rorx rdx, rdx, 0xa
rorx rcx, rcx, 8
xor rdx, r11
xor rcx, r10
add r8, qword [rsp + 0x30]
add rcx, r14
add rdx, qword [rsp + 0x58]
add r11, qword [rsp + 0x28]
add r10, rdi
rorx rsi, rsi, 0x37
xor rsi, rbx
add rbx, rbp
add rbx, r8
add r11, rcx
add r10, rdx
lea rsi, [r15 + rsi + 1]
add r9, rax
rorx r8, r8, 0x19
rorx rcx, rcx, 0x22
xor r8, rbx
xor rcx, r11
rorx rdx, rdx, 0x1e
xor rdx, r10
add r9, rsi
add r11, r8
add rbx, rcx
rorx rsi, rsi, 0x28
xor rsi, r9
add r9, rdx
add r10, rsi
rorx r8, r8, 0x33
rorx rdx, rdx, 0x36
xor r8, r11
xor rdx, r9
rorx rcx, rcx, 0x2f
xor rcx, rbx
add r9, rcx
add rbx, rdx
rorx rsi, rsi, 0xe
xor rsi, r10
add r10, r8
add r11, rsi
rorx r8, r8, 0x27
rorx rcx, rcx, 0x23
xor r8, r10
xor rcx, r9
rorx rdx, rdx, 0x19
xor rdx, rbx
add r9, r8
add r10, rcx
rorx rsi, rsi, 0x15
xor rsi, r11
add r11, rdx
add rbx, rsi
rorx r8, r8, 0x38
rorx rdx, rdx, 8
xor r8, r9
xor rdx, r11
rorx rcx, rcx, 0x2a
xor rcx, r10
add r8, qword [rsp + 0x28]
add rcx, rdi
add rdx, rax
add r11, r14
add r10, qword [rsp + 0x38]
rorx rsi, rsi, 0x1d
xor rsi, rbx
add rbx, qword [rsp + 0x30]
add r15, qword [rsp + 0x68]
add r9, r15
add r10, rdx
lea rsi, [rsi + r12 + 2]
add rbx, r8
add r11, rcx
add r9, rsi
rorx rdx, rdx, 0x2d
xor rdx, r10
rorx r8, r8, 0x12
rorx rcx, rcx, 0x1c
xor r8, rbx
xor rcx, r11
rorx rsi, rsi, 0x1b
xor rsi, r9
add r9, rdx
add r11, r8
add r10, rsi
add rbx, rcx
rorx rdx, rdx, 0x32
xor rdx, r9
rorx r8, r8, 0x1f
rorx rsi, rsi, 0x25
xor r8, r11
xor rsi, r10
rorx rcx, rcx, 0x16
xor rcx, rbx
add rbx, rdx
add r11, rsi
add r10, r8
rorx rdx, rdx, 0x1c
xor rdx, rbx
add r9, rcx
rorx r8, r8, 0x2f
rorx rsi, rsi, 0x19
xor r8, r10
xor rsi, r11
add r11, rdx
add rbx, rsi
rorx rcx, rcx, 0xf
rorx rdx, rdx, 0xa
xor rcx, r9
xor rdx, r11
add r9, r8
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x78], r15
mov rax, qword [rsp + 0x38]
rorx r8, r8, 0x14
rorx rsi, rsi, 0x37
xor r8, r9
xor rsi, rbx
add r10, rcx
add rdx, r15
mov r15, qword [rsp + 0x60]
rorx rcx, rcx, 8
xor rcx, r10
add r15, r12
add r8, r14
add rcx, rax
add rbx, qword [rsp + 0x28]
add r11, rdi
add r10, r13
add rbx, r8
add r11, rcx
add r10, rdx
add r9, r15
lea rsi, [rsi + rbp + 3]
add r9, rsi
rorx r8, r8, 0x19
rorx rcx, rcx, 0x22
xor r8, rbx
xor rcx, r11
rorx rdx, rdx, 0x1e
xor rdx, r10
add rbx, rcx
add r11, r8
rorx rsi, rsi, 0x28
xor rsi, r9
add r9, rdx
add r10, rsi
rorx r8, r8, 0x33
rorx rdx, rdx, 0x36
xor r8, r11
xor rdx, r9
rorx rcx, rcx, 0x2f
xor rcx, rbx
add r9, rcx
add rbx, rdx
rorx rsi, rsi, 0xe
xor rsi, r10
add r10, r8
rorx rcx, rcx, 0x23
rorx r8, r8, 0x27
xor rcx, r9
xor r8, r10
rorx rdx, rdx, 0x19
xor rdx, rbx
add r11, rsi
rorx rsi, rsi, 0x15
xor rsi, r11
add r11, rdx
add r10, rcx
rorx rdx, rdx, 8
xor rdx, r11
add rdx, r15
mov qword [rsp + 0x88], r15
rorx rcx, rcx, 0x2a
mov r15, qword [rsp + 0x90]
xor rcx, r10
add r9, r8
add rbx, rsi
add rcx, r13
mov r13, qword [rsp + 0x30]
mov r12, rax
add r11, rax
rorx r8, r8, 0x38
lea rax, [r15 + rbp]
xor r8, r9
rorx rsi, rsi, 0x1d
xor rsi, rbx
add r8, rdi
add rbx, r14
add r10, qword [rsp + 0x40]
add r9, rax
lea rsi, [rsi + r13 + 4]
add rbx, r8
add r11, rcx
add r10, rdx
add r9, rsi
rorx r8, r8, 0x12
rorx rcx, rcx, 0x1c
xor r8, rbx
xor rcx, r11
rorx rdx, rdx, 0x2d
rorx rsi, rsi, 0x1b
xor rdx, r10
xor rsi, r9
add r11, r8
add r10, rsi
add r9, rdx
add rbx, rcx
rorx r8, r8, 0x1f
rorx rsi, rsi, 0x25
xor r8, r11
xor rsi, r10
rorx rdx, rdx, 0x32
rorx rcx, rcx, 0x16
xor rdx, r9
xor rcx, rbx
add r9, rcx
add r10, r8
add rbx, rdx
add r11, rsi
rorx r8, r8, 0x2f
rorx rcx, rcx, 0xf
xor r8, r10
xor rcx, r9
rorx rdx, rdx, 0x1c
xor rdx, rbx
add r9, r8
add r10, rcx
rorx rsi, rsi, 0x19
xor rsi, r11
add r11, rdx
rorx r8, r8, 0x14
rorx rdx, rdx, 0xa
xor r8, r9
xor rdx, r11
rorx rcx, rcx, 8
xor rcx, r10
mov r13, qword [rsp + 0x50]
add r8, r12
add rcx, qword [rsp + 0x40]
mov r12, qword [rsp + 0x48]
add rdx, rax
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x68]
add rbx, rsi
add rax, qword [rsp + 0x30]
add r9, rax
mov qword [rsp + 0x48], r9
mov r9, qword [rsp + 0x28]
rorx rsi, rsi, 0x37
xor rsi, rbx
add r11, r13
lea rsi, [rsi + r9 + 5]
mov r9, qword [rsp + 0x48]
add r11, rcx
add rbx, rdi
add r10, r12
add rbx, r8
add r10, rdx
add r9, rsi
rorx rcx, rcx, 0x22
xor rcx, r11
rorx r8, r8, 0x19
rorx rdx, rdx, 0x1e
xor r8, rbx
xor rdx, r10
rorx rsi, rsi, 0x28
xor rsi, r9
add rbx, rcx
add r11, r8
add r9, rdx
rorx rcx, rcx, 0x2f
xor rcx, rbx
add r10, rsi
rorx r8, r8, 0x33
rorx rdx, rdx, 0x36
xor r8, r11
xor rdx, r9
add r9, rcx
rorx rsi, rsi, 0xe
rorx rcx, rcx, 0x23
xor rsi, r10
xor rcx, r9
add r10, r8
rorx r8, r8, 0x27
xor r8, r10
add r10, rcx
add rbx, rdx
add r11, rsi
rorx rcx, rcx, 0x2a
xor rcx, r10
mov qword [rsp + 0x48], r12
add rcx, r12
add r9, r8
mov r12, qword [rsp + 0x60]
rorx rdx, rdx, 0x19
rorx rsi, rsi, 0x15
xor rdx, rbx
xor rsi, r11
add rbx, rsi
add r11, rdx
rorx r8, r8, 0x38
xor r8, r9
add r12, qword [rsp + 0x28]
add r8, r13
rorx rsi, rsi, 0x1d
rorx rdx, rdx, 8
xor rsi, rbx
xor rdx, r11
add rbx, qword [rsp + 0x38]
add rdx, rax
add r11, qword [rsp + 0x40]
add r10, rbp
lea rsi, [rsi + r14 + 6]
add r9, r12
add rbx, r8
add r11, rcx
add r10, rdx
add r9, rsi
rorx r8, r8, 0x12
xor r8, rbx
rorx rcx, rcx, 0x1c
rorx rdx, rdx, 0x2d
xor rcx, r11
xor rdx, r10
add r11, r8
rorx rsi, rsi, 0x1b
xor rsi, r9
add r10, rsi
add r9, rdx
add rbx, rcx
rorx r8, r8, 0x1f
xor r8, r11
rorx rsi, rsi, 0x25
rorx rdx, rdx, 0x32
xor rsi, r10
xor rdx, r9
add r10, r8
rorx rcx, rcx, 0x16
xor rcx, rbx
add r9, rcx
add rbx, rdx
add r11, rsi
rorx r8, r8, 0x2f
xor r8, r10
rorx rcx, rcx, 0xf
rorx rdx, rdx, 0x1c
xor rcx, r9
xor rdx, rbx
add r9, r8
rorx rsi, rsi, 0x19
xor rsi, r11
add rbx, rsi
add r11, rdx
add r10, rcx
mov qword [rsp + 0x90], rax
rorx r8, r8, 0x14
mov rax, qword [rsp + 0x48]
xor r8, r9
rorx rsi, rsi, 0x37
rorx rdx, rdx, 0xa
xor rsi, rbx
xor rdx, r11
rorx rcx, rcx, 8
xor rcx, r10
add r15, r14
add r8, qword [rsp + 0x40]
add rbx, r13
add rcx, rbp
add rdx, r12
add rbx, r8
add r11, rax
add r10, qword [rsp + 0x30]
add r9, r15
lea rsi, [rsi + rdi + 7]
add r11, rcx
add r10, rdx
add r9, rsi
rorx r8, r8, 0x19
xor r8, rbx
rorx rcx, rcx, 0x22
rorx rdx, rdx, 0x1e
xor rcx, r11
xor rdx, r10
add r11, r8
rorx rsi, rsi, 0x28
xor rsi, r9
add r10, rsi
add r9, rdx
add rbx, rcx
rorx r8, r8, 0x33
xor r8, r11
rorx rsi, rsi, 0xe
rorx rdx, rdx, 0x36
xor rsi, r10
xor rdx, r9
add r10, r8
rorx rcx, rcx, 0x2f
xor rcx, rbx
add r9, rcx
add rbx, rdx
add r11, rsi
rorx r8, r8, 0x27
xor r8, r10
rorx rcx, rcx, 0x23
rorx rdx, rdx, 0x19
xor rcx, r9
xor rdx, rbx
rorx rsi, rsi, 0x15
xor rsi, r11
add r9, r8
rorx r8, r8, 0x38
xor r8, r9
add r11, rdx
add r8, rax
mov qword [rsp + 0x48], r12
mov r12, rax
mov rax, qword [rsp + 0x68]
rorx rdx, rdx, 8
xor rdx, r11
add rdx, r15
mov qword [rsp + 0x98], r15
lea r15, [rax + rdi]
add rbx, rsi
add r10, rcx
mov rax, r15
add r9, r15
mov r15, qword [rsp + 0x38]
rorx rsi, rsi, 0x1d
rorx rcx, rcx, 0x2a
xor rsi, rbx
xor rcx, r10
add rbx, qword [rsp + 0x40]
add rcx, qword [rsp + 0x30]
add rbx, r8
add r11, rbp
add r10, qword [rsp + 0x28]
lea rsi, [rsi + r15 + 8]
add r11, rcx
add r10, rdx
add r9, rsi
rorx r8, r8, 0x12
xor r8, rbx
rorx rcx, rcx, 0x1c
rorx rdx, rdx, 0x2d
xor rcx, r11
xor rdx, r10
add r11, r8
rorx rsi, rsi, 0x1b
xor rsi, r9
add rbx, rcx
add r9, rdx
add r10, rsi
rorx r8, r8, 0x1f
xor r8, r11
rorx rsi, rsi, 0x25
rorx rdx, rdx, 0x32
xor rsi, r10
xor rdx, r9
rorx rcx, rcx, 0x16
xor rcx, rbx
add r10, r8
add r9, rcx
add rbx, rdx
add r11, rsi
rorx r8, r8, 0x2f
xor r8, r10
rorx rcx, rcx, 0xf
rorx rdx, rdx, 0x1c
xor rcx, r9
xor rdx, rbx
add r9, r8
rorx rsi, rsi, 0x19
xor rsi, r11
add rbx, rsi
add r11, rdx
add r10, rcx
rorx r8, r8, 0x14
xor r8, r9
mov r15, qword [rsp + 0x58]
add r8, rbp
rorx rsi, rsi, 0x37
rorx rdx, rdx, 0xa
xor rsi, rbx
xor rdx, r11
add rbx, r12
rorx rcx, rcx, 8
xor rcx, r10
add rcx, qword [rsp + 0x28]
add rdx, rax
add rbx, r8
add r11, qword [rsp + 0x30]
add r10, r14
add r11, rcx
add r10, rdx
add r9, r15
lea rsi, [rsi + r13 + 9]
rorx r8, r8, 0x19
xor r8, rbx
add r9, rsi
rorx rcx, rcx, 0x22
rorx rdx, rdx, 0x1e
xor rcx, r11
xor rdx, r10
add r11, r8
rorx rsi, rsi, 0x28
rorx r8, r8, 0x33
xor rsi, r9
xor r8, r11
add r9, rdx
add r10, rsi
add rbx, rcx
rorx rdx, rdx, 0x36
xor rdx, r9
rorx rsi, rsi, 0xe
rorx rcx, rcx, 0x2f
xor rsi, r10
xor rcx, rbx
add rbx, rdx
add r10, r8
add r11, rsi
rorx rdx, rdx, 0x19
xor rdx, rbx
add r9, rcx
rorx r8, r8, 0x27
rorx rsi, rsi, 0x15
xor r8, r10
xor rsi, r11
add r11, rdx
rorx rcx, rcx, 0x23
rorx rdx, rdx, 8
xor rcx, r9
xor rdx, r11
add r9, r8
add rbx, rsi
add r10, rcx
add rdx, r15
mov qword [rsp + 0x68], rax
mov r15, qword [rsp + 0x40]
mov rax, qword [rsp + 0x80]
rorx r8, r8, 0x38
xor r8, r9
add r8, qword [rsp + 0x30]
rorx rsi, rsi, 0x1d
rorx rcx, rcx, 0x2a
xor rsi, rbx
xor rcx, r10
add rbx, rbp
add rbx, r8
add rcx, r14
add r9, rax
lea rsi, [r15 + rsi + 0xa]
add r11, qword [rsp + 0x28]
add r10, rdi
rorx r8, r8, 0x12
xor r8, rbx
add r11, rcx
add r9, rsi
add r10, rdx
rorx rsi, rsi, 0x1b
xor rsi, r9
rorx rcx, rcx, 0x1c
rorx rdx, rdx, 0x2d
xor rcx, r11
xor rdx, r10
add r11, r8
add r10, rsi
add r9, rdx
add rbx, rcx
rorx r8, r8, 0x1f
rorx rsi, rsi, 0x25
xor r8, r11
xor rsi, r10
add r11, rsi
add r10, r8
rorx rdx, rdx, 0x32
rorx rcx, rcx, 0x16
xor rdx, r9
xor rcx, rbx
add r9, rcx
add rbx, rdx
rorx r8, r8, 0x2f
rorx rsi, rsi, 0x19
xor r8, r10
xor rsi, r11
rorx rcx, rcx, 0xf
rorx rdx, rdx, 0x1c
xor rcx, r9
xor rdx, rbx
add r9, r8
add rbx, rsi
mov r15, qword [rsp + 0x38]
add r10, rcx
add r11, rdx
rorx r8, r8, 0x14
rorx rsi, rsi, 0x37
xor r8, r9
xor rsi, rbx
add r8, qword [rsp + 0x28]
add rbx, qword [rsp + 0x30]
lea rsi, [rsi + r12 + 0xb]
rorx rdx, rdx, 0xa
rorx rcx, rcx, 8
xor rdx, r11
xor rcx, r10
add r11, r14
add r9, qword [rsp + 0x78]
add rcx, rdi
add rdx, rax
add rbx, r8
add r9, rsi
add r10, r15
add r11, rcx
add r10, rdx
rorx r8, r8, 0x19
rorx rsi, rsi, 0x28
xor r8, rbx
xor rsi, r9
rorx rcx, rcx, 0x22
rorx rdx, rdx, 0x1e
xor rcx, r11
xor rdx, r10
add r11, r8
add r10, rsi
add r9, rdx
add rbx, rcx
rorx r8, r8, 0x33
rorx rsi, rsi, 0xe
xor r8, r11
xor rsi, r10
add r11, rsi
add r10, r8
rorx rdx, rdx, 0x36
rorx rcx, rcx, 0x2f
xor rdx, r9
xor rcx, rbx
add r9, rcx
add rbx, rdx
rorx r8, r8, 0x27
rorx rsi, rsi, 0x15
xor r8, r10
xor rsi, r11
rorx rcx, rcx, 0x23
rorx rdx, rdx, 0x19
xor rcx, r9
xor rdx, rbx
add r9, r8
add rbx, rsi
rorx r8, r8, 0x38
rorx rsi, rsi, 0x1d
xor r8, r9
xor rsi, rbx
add r10, rcx
rorx rcx, rcx, 0x2a
xor rcx, r10
add r11, rdx
add rcx, r15
mov rax, r15
mov r15, qword [rsp + 0x88]
add r8, r14
add rbx, qword [rsp + 0x28]
rorx rdx, rdx, 8
xor rdx, r11
add r11, rdi
add rdx, qword [rsp + 0x78]
add rbx, r8
add r11, rcx
add r10, r13
add r9, r15
lea rsi, [rsi + rbp + 0xc]
add r10, rdx
add r9, rsi
rorx r8, r8, 0x12
rorx rcx, rcx, 0x1c
xor r8, rbx
xor rcx, r11
add rbx, rcx
add r11, r8
rorx rdx, rdx, 0x2d
rorx rsi, rsi, 0x1b
xor rdx, r10
xor rsi, r9
add r10, rsi
add r9, rdx
rorx r8, r8, 0x1f
rorx rcx, rcx, 0x16
xor r8, r11
xor rcx, rbx
rorx rsi, rsi, 0x25
rorx rdx, rdx, 0x32
xor rsi, r10
xor rdx, r9
add r10, r8
add r9, rcx
rorx r8, r8, 0x2f
rorx rcx, rcx, 0xf
xor r8, r10
xor rcx, r9
add rbx, rdx
add r11, rsi
rorx rdx, rdx, 0x1c
xor rdx, rbx
rorx rsi, rsi, 0x19
xor rsi, r11
add r11, rdx
rorx rdx, rdx, 0xa
xor rdx, r11
add r9, r8
add rbx, rsi
add rdx, r15
add r11, rax
mov r15, qword [rsp + 0x30]
mov rax, qword [rsp + 0x50]
add r10, rcx
rorx r8, r8, 0x14
rorx rsi, rsi, 0x37
xor r8, r9
xor rsi, rbx
add r8, rdi
add rbx, r14
add r9, rax
lea rsi, [rsi + r15 + 0xd]
rorx rcx, rcx, 8
xor rcx, r10
add r10, qword [rsp + 0x40]
add rcx, r13
add rbx, r8
add r10, rdx
add r9, rsi
add r11, rcx
rorx r8, r8, 0x19
rorx rdx, rdx, 0x1e
xor r8, rbx
xor rdx, r10
rorx rsi, rsi, 0x28
xor rsi, r9
add r10, rsi
add r9, rdx
rorx rcx, rcx, 0x22
xor rcx, r11
add r11, r8
rorx rsi, rsi, 0xe
rorx r8, r8, 0x33
xor rsi, r10
xor r8, r11
rorx rdx, rdx, 0x36
xor rdx, r9
add rbx, rcx
rorx rcx, rcx, 0x2f
xor rcx, rbx
add rbx, rdx
add r11, rsi
rorx rdx, rdx, 0x19
xor rdx, rbx
rorx rsi, rsi, 0x15
xor rsi, r11
add r11, rdx
add r10, r8
rorx rdx, rdx, 8
xor rdx, r11
add r9, rcx
add rdx, rax
rorx r8, r8, 0x27
mov rax, qword [rsp + 0x90]
xor r8, r10
rorx rcx, rcx, 0x23
xor rcx, r9
add r9, r8
rorx r8, r8, 0x38
xor r8, r9
add r9, rax
mov r15, qword [rsp + 0x38]
mov qword [rsp + 0x38], r9
add rbx, rsi
add r10, rcx
mov r9, qword [rsp + 0x28]
rorx rsi, rsi, 0x1d
rorx rcx, rcx, 0x2a
xor rsi, rbx
xor rcx, r10
add rcx, qword [rsp + 0x40]
add rbx, rdi
add r8, r15
add r11, r13
add r10, r12
lea rsi, [rsi + r9 + 0xe]
mov r9, qword [rsp + 0x38]
add rbx, r8
add r11, rcx
add r10, rdx
rorx r8, r8, 0x12
rorx rcx, rcx, 0x1c
xor r8, rbx
xor rcx, r11
rorx rdx, rdx, 0x2d
xor rdx, r10
add r9, rsi
rorx rsi, rsi, 0x1b
xor rsi, r9
add r9, rdx
add r10, rsi
add rbx, rcx
rorx rdx, rdx, 0x32
xor rdx, r9
add r11, r8
rorx rsi, rsi, 0x25
rorx rcx, rcx, 0x16
xor rsi, r10
xor rcx, rbx
add rbx, rdx
rorx r8, r8, 0x1f
rorx rdx, rdx, 0x1c
xor r8, r11
xor rdx, rbx
add r11, rsi
add r10, r8
add r9, rcx
rorx rsi, rsi, 0x19
xor rsi, r11
add r11, rdx
rorx r8, r8, 0x2f
rorx rcx, rcx, 0xf
xor r8, r10
xor rcx, r9
rorx rdx, rdx, 0xa
xor rdx, r11
add rbx, rsi
add r10, rcx
add rdx, rax
add r9, r8
mov rax, qword [rsp + 0x48]
rorx r8, r8, 0x14
rorx rsi, rsi, 0x37
xor r8, r9
xor rsi, rbx
rorx rcx, rcx, 8
xor rcx, r10
add r8, r13
add rcx, r12
add r11, qword [rsp + 0x40]
add r10, rbp
lea rsi, [rsi + r14 + 0xf]
add rbx, r15
add r9, rax
add r9, rsi
add rbx, r8
add r11, rcx
add r10, rdx
rorx r8, r8, 0x19
rorx rcx, rcx, 0x22
xor r8, rbx
xor rcx, r11
rorx rdx, rdx, 0x1e
rorx rsi, rsi, 0x28
xor rdx, r10
xor rsi, r9
add r11, r8
add r10, rsi
add r9, rdx
add rbx, rcx
rorx r8, r8, 0x33
rorx rsi, rsi, 0xe
xor r8, r11
xor rsi, r10
rorx rdx, rdx, 0x36
rorx rcx, rcx, 0x2f
xor rdx, r9
xor rcx, rbx
add r10, r8
add r9, rcx
add rbx, rdx
add r11, rsi
rorx r8, r8, 0x27
rorx rcx, rcx, 0x23
xor r8, r10
xor rcx, r9
rorx rdx, rdx, 0x19
rorx rsi, rsi, 0x15
xor rdx, rbx
xor rsi, r11
add r9, r8
add rbx, rsi
add r11, rdx
add r10, rcx
mov qword [rsp + 0x50], r13
rorx r8, r8, 0x38
rorx rsi, rsi, 0x1d
xor r8, r9
xor rsi, rbx
rorx rdx, rdx, 8
rorx rcx, rcx, 0x2a
xor rdx, r11
xor rcx, r10
add rbx, r13
mov r13, qword [rsp + 0x40]
add rdx, rax
mov rax, qword [rsp + 0x98]
add r8, r13
add r10, qword [rsp + 0x30]
add rcx, rbp
add rbx, r8
add r10, rdx
add r11, r12
add r9, rax
lea rsi, [rsi + rdi + 0x10]
add r11, rcx
add r9, rsi
rorx r8, r8, 0x12
rorx rdx, rdx, 0x2d
xor r8, rbx
xor rdx, r10
rorx rcx, rcx, 0x1c
rorx rsi, rsi, 0x1b
xor rcx, r11
xor rsi, r9
add r11, r8
add r9, rdx
add r10, rsi
add rbx, rcx
rorx r8, r8, 0x1f
rorx rdx, rdx, 0x32
xor r8, r11
xor rdx, r9
rorx rsi, rsi, 0x25
rorx rcx, rcx, 0x16
xor rsi, r10
xor rcx, rbx
add r10, r8
add rbx, rdx
add r11, rsi
add r9, rcx
rorx r8, r8, 0x2f
rorx rdx, rdx, 0x1c
xor r8, r10
xor rdx, rbx
rorx rcx, rcx, 0xf
rorx rsi, rsi, 0x19
xor rcx, r9
xor rsi, r11
add r9, r8
add r11, rdx
add rbx, rsi
rorx rdx, rdx, 0xa
xor rdx, r11
add r10, rcx
add rdx, rax
rorx r8, r8, 0x14
mov rax, qword [rsp + 0x68]
xor r8, r9
rorx rsi, rsi, 0x37
xor rsi, rbx
add rbx, r13
mov r13, qword [rsp + 0x30]
add r8, r12
rorx rcx, rcx, 8
xor rcx, r10
add rcx, r13
add rbx, r8
add r11, rbp
add r9, rax
lea rsi, [rsi + r15 + 0x11]
add r11, rcx
add r9, rsi
add r10, qword [rsp + 0x28]
rorx r8, r8, 0x19
xor r8, rbx
add r10, rdx
rorx rcx, rcx, 0x22
rorx rsi, rsi, 0x28
xor rcx, r11
xor rsi, r9
add r11, r8
rorx rdx, rdx, 0x1e
rorx r8, r8, 0x33
xor rdx, r10
xor r8, r11
add r10, rsi
add r9, rdx
add rbx, rcx
rorx rsi, rsi, 0xe
xor rsi, r10
add r10, r8
rorx rdx, rdx, 0x36
rorx rcx, rcx, 0x2f
xor rdx, r9
xor rcx, rbx
rorx r8, r8, 0x27
xor r8, r10
add r11, rsi
add r9, rcx
add rbx, rdx
rorx rsi, rsi, 0x15
xor rsi, r11
mov rdi, qword [rsp + 0xb0]
rorx rcx, rcx, 0x23
rorx rdx, rdx, 0x19
xor rcx, r9
xor rdx, rbx
add r9, r8
add rbx, rsi
add r11, rdx
add r10, rcx
rorx r8, r8, 0x38
rorx rsi, rsi, 0x1d
xor r8, r9
xor rsi, rbx
add rbx, r12
mov r12, r13
mov r13, qword [rsp + 0x28]
xor rdi, rbx
add rbp, r8
mov rbx, qword [rsp + 0x180]
add r12, r11
rorx rcx, rcx, 0x2a
xor rcx, r10
xor r12, qword [rsp + 0xb8]
xor rbp, qword [rsp + 0xf8]
add r13, rcx
mov qword [rbx + 0x20], rdi
mov qword [rsp + 0x48], rdi
mov qword [rbx + 0x28], rbp
mov qword [rbx + 0x30], r12
mov qword [rsp + 0x30], r12
xor r13, qword [rsp + 0x108]
mov qword [rbx + 0x38], r13
mov qword [rsp + 0x28], r13
mov r13, qword [rsp + 0x50]
add r14, r10
rorx rdx, rdx, 8
xor rdx, r11
lea rdi, [rax + rdx]
xor r14, qword [rsp + 0xa0]
lea rax, [rsi + r13 + 0x12]
mov rsi, qword [rsp + 0x128]
mov qword [rbx + 0x40], r14
mov rbx, qword [rsp + 0x58]
xor rsi, rax
movabs rax, 0xbfffffffffffffff
mov rcx, qword [rsp + 0x180]
and qword [rsp + 0x60], rax
lea rdx, [r9 + rbx]
mov rax, qword [rsp + 0xc0]
xor rdx, qword [rsp + 0xa8]
xor rdi, qword [rsp + 0x118]
mov qword [rcx + 0x48], rdi
mov qword [rsp + 0x38], rdx
mov qword [rcx + 0x50], rdx
mov qword [rsp + 0x50], rsi
mov qword [rcx + 0x58], rsi
cmp qword [rsp + 0x70], rax
jne 0x5b0648
mov rax, qword [rsp + 0xe0]
mov rdi, qword [rsp + 0x60]
dec rax
shl rax, 6
add rax, qword [rsp + 0xe8]
mov qword [rcx + 0x10], rax
mov rax, qword [rsp + 0xd8]
mov qword [rcx + 0x18], rdi
and rax, 0xffffffffffffffc0
sub qword [rsp + 0x190], rax
add qword [rsp + 0x188], rax
xor ebx, ebx
jmp 0x5b0509
lea rcx, [rcx + rbx + 0x60]
mov r8, rsi
call sub.msvcrt.dll_memcpy
mov rax, qword [rsp + 0x190]
add qword [rsp + 0x188], rsi
lea rax, [rbx + rax - 0x40]
mov qword [rsp + 0x190], rax
mov rax, qword [rsp + 0x180]
add qword [rax + 8], rsi
jmp 0x5b04d2