Function at 0x1400e0230
Capabilities:
Encode data using xor

Disassembly:
xchg rsi, rbx
mov qword [rsp + 0x10], rsi
xchg rsi, rbx
xchg rcx, r9
mov qword [rsp + 8], r9
xchg r9, rcx
nop
mov qword [rsp - 8], rbp
sub rsp, 8
push rsi
push rdi
xchg rbp, rbp
nop
sub rsp, 8
mov qword [rsp], r12
push r13
mov dword [rsp - 0x3c], ebx
nop
push 0x60503a39
mov qword [rsp], r14
push r15
neg rsp
sub rsp, 0xfffffffffffffd50
neg rsp
xchg r14, rax
mov r14, qword [rcx + 0x10]
xchg r14, rax
lea rsi, [rsp + 0x38]
mov dword [rsp - 0x24], 0x6dec2a02
mov r13, qword [rcx + 8]
lea rbp, [rsp + 0x40]
mov qword [rsp + 0x300], rax
lea r8, [rsp + 0x36]
mov rbp, rbp
mov rax, qword [rcx + 0x18]
lea r9, [rsp + 0x3e]
mov qword [rsp + 0x308], rax
xchg r14, r14
lea r10, [rsp + 0x46]
mov rax, qword [rcx + 0x20]
lea r11, [rsp + 0x4e]
xchg r11, rax
mov qword [rsp], r11
xchg r11, rax
lea rbx, [rsp + 0x56]
mov r9, r9
xchg r9, rax
mov r9, qword [rcx + 0x28]
xchg r9, rax
lea r14, [rsp + 0x30]
xchg r12, r12
xchg rdi, rax
mov qword [rsp + 8], rdi
xchg rdi, rax
sub rsi, rdx
mov dword [rsp - 0x28], 0x182e12eb
xchg rdx, rax
mov rdx, qword [rcx + 0x30]
xchg rdx, rax
sub rbp, rdx
mov dword [rsp - 0x20], esi
xchg r12, rax
mov qword [rsp + 0x10], r12
xchg r12, rax
sub r8, rdx
xchg r12, rax
mov r12, qword [rcx + 0x38]
xchg r12, rax
sub r9, rdx
xchg r8, r8
xchg r12, rax
mov qword [rsp + 0x18], r12
xchg r12, rax
sub r10, rdx
mov rax, qword [rcx + 0x40]
mov dword [rsp - 0x44], 0x1d214c4a
sub r11, rdx
sub rbx, rdx
mov qword [rsp + 0x20], rax
lea rax, [rdx + 0x12]
xchg rdx, rdx
sub r14, rdx
mov edi, 0x6cf41e7a
add edi, 0xc79909f
xor edi, 0xd65ec84
xor edi, 0x7408439f
nop dword [rax]
movzx ecx, byte [rax - 0x11]
mov r9, r9
movzx edx, byte [rax - 0x12]
shl rdx, 2
shl rdx, 2
shl rdx, 1
shl rdx, 1
shl rdx, 1
shl rdx, 1
or rdx, rcx
movzx ecx, byte [rax - 0x10]
mov dword [rsp - 0x44], esp
shl rdx, 5
shl rdx, 2
shl rdx, 1
or rdx, rcx
movzx ecx, byte [rax - 0xf]
mov dword [rsp - 0x18], 0x207f42b3
shl rdx, 3
shl rdx, 2
shl rdx, 1
shl rdx, 1
shl rdx, 1
or rdx, rcx
movzx ecx, byte [rax - 0xe]
xchg rdx, rdx
shl rdx, 4
shl rdx, 1
shl rdx, 3
or rdx, rcx
xchg rsi, rsi
movzx ecx, byte [rax - 0xd]
shl rdx, 1
shl rdx, 1
shl rdx, 1
shl rdx, 2
shl rdx, 1
shl rdx, 1
shl rdx, 1
or rdx, rcx
movzx ecx, byte [rax - 0xc]
xchg r13, r13
shl rdx, 1
shl rdx, 1
shl rdx, 5
shl rdx, 1
or rdx, rcx
movzx ecx, byte [rax - 0xb]
shl rdx, 8
mov dword [rsp - 0x18], ebp
or rdx, rcx
movzx ecx, byte [rax - 9]
xchg r9, rdx
mov qword [rax + r14 - 0x12], r9
xchg rdx, r9
movzx edx, byte [rax - 0xa]
mov dword [rsp - 0x44], 0x21be1881
shl rdx, 2
shl rdx, 3
shl rdx, 1
shl rdx, 1
shl rdx, 1
or rdx, rcx
movzx ecx, byte [rax - 8]
mov dword [rsp - 0x40], 0xc582bd1
shl rdx, 1
shl rdx, 7
or rdx, rcx
movzx ecx, byte [rax - 7]
mov dword [rsp - 0x10], esp
shl rdx, 6
shl rdx, 1
shl rdx, 1
or rdx, rcx
mov r8, r8
movzx ecx, byte [rax - 6]
shl rdx, 7
shl rdx, 1
or rdx, rcx
mov dword [rsp - 0x3c], ebx
movzx ecx, byte [rax - 5]
shl rdx, 6
shl rdx, 1
shl rdx, 1
or rdx, rcx
mov r9, r9
movzx ecx, byte [rax - 4]
shl rdx, 4
shl rdx, 1
shl rdx, 2
shl rdx, 1
or rdx, rcx
movzx ecx, byte [rax - 3]
mov r8, r8
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax - 1]
mov r11, r11
mov qword [rax + rsi - 0x12], rdx
movzx edx, byte [rax - 2]
shl rdx, 2
shl rdx, 4
shl rdx, 1
shl rdx, 1
or rdx, rcx
xchg rsp, rsp
movzx ecx, byte [rax]
shl rdx, 6
shl rdx, 1
shl rdx, 1
or rdx, rcx
mov r12, r12
movzx ecx, byte [rax + 1]
shl rdx, 1
shl rdx, 7
or rdx, rcx
movzx ecx, byte [rax + 2]
xchg rcx, rcx
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax + 3]
xchg r11, r11
shl rdx, 4
shl rdx, 4
or rdx, rcx
movzx ecx, byte [rax + 4]
mov dword [rsp - 0x20], 0x4cf047b9
shl rdx, 3
shl rdx, 1
shl rdx, 2
shl rdx, 1
shl rdx, 1
or rdx, rcx
movzx ecx, byte [rax + 5]
mov dword [rsp - 0x2c], esi
shl rdx, 2
shl rdx, 6
or rdx, rcx
mov dword [rsp - 0x18], 0x116ef220
movzx ecx, byte [rax + 7]
mov qword [rax + rbp - 0x12], rdx
movzx edx, byte [rax + 6]
shl rdx, 1
shl rdx, 6
shl rdx, 1
or rdx, rcx
mov dword [rsp - 0x28], edx
movzx ecx, byte [rax + 8]
shl rdx, 5
shl rdx, 2
shl rdx, 1
or rdx, rcx
movzx ecx, byte [rax + 9]
shl rdx, 1
shl rdx, 1
shl rdx, 6
or rdx, rcx
xchg rdi, rdi
movzx ecx, byte [rax + 0xa]
shl rdx, 6
shl rdx, 1
shl rdx, 1
or rdx, rcx
mov r14, r14
movzx ecx, byte [rax + 0xb]
shl rdx, 2
shl rdx, 3
shl rdx, 2
shl rdx, 1
or rdx, rcx
mov rbx, rbx
movzx ecx, byte [rax + 0xc]
shl rdx, 4
shl rdx, 3
shl rdx, 1
or rdx, rcx
xchg r8, r8
movzx ecx, byte [rax + 0xd]
shl rdx, 3
shl rdx, 4
shl rdx, 1
or rdx, rcx
xchg rcx, rcx
movzx ecx, byte [rax + 0xf]
mov qword [rax + r8], rdx
movzx edx, byte [rax + 0xe]
mov dword [rsp - 0x3c], esi
shl rdx, 1
shl rdx, 7
or rdx, rcx
xchg rbx, rbx
movzx ecx, byte [rax + 0x10]
shl rdx, 4
shl rdx, 3
shl rdx, 1
or rdx, rcx
mov r11, r11
movzx ecx, byte [rax + 0x11]
shl rdx, 1
shl rdx, 7
or rdx, rcx
movzx ecx, byte [rax + 0x12]
xchg r14, r14
shl rdx, 8
or rdx, rcx
movzx ecx, byte [rax + 0x13]
shl rdx, 8
mov rdi, rdi
or rdx, rcx
movzx ecx, byte [rax + 0x14]
shl rdx, 1
shl rdx, 4
shl rdx, 1
shl rdx, 1
shl rdx, 1
or rdx, rcx
xchg rbp, rbp
movzx ecx, byte [rax + 0x15]
shl rdx, 6
shl rdx, 2
or rdx, rcx
movzx ecx, byte [rax + 0x17]
xchg rdx, r11
mov qword [rax + r9], r11
xchg r11, rdx
movzx edx, byte [rax + 0x16]
xchg rsi, rsi
shl rdx, 2
shl rdx, 2
shl rdx, 4
or rdx, rcx
xchg rbx, rbx
movzx ecx, byte [rax + 0x18]
shl rdx, 2
shl rdx, 3
shl rdx, 2
shl rdx, 1
or rdx, rcx
movzx ecx, byte [rax + 0x19]
shl rdx, 3
shl rdx, 3
shl rdx, 1
shl rdx, 1
or rdx, rcx
mov dword [rsp - 0x20], esi
movzx ecx, byte [rax + 0x1a]
shl rdx, 1
shl rdx, 4
shl rdx, 1
shl rdx, 1
shl rdx, 1
or rdx, rcx
movzx ecx, byte [rax + 0x1b]
mov rsp, rsp
shl rdx, 4
shl rdx, 1
shl rdx, 3
or rdx, rcx
mov rcx, rcx
movzx ecx, byte [rax + 0x1c]
shl rdx, 1
shl rdx, 7
or rdx, rcx
xchg r11, r11
movzx ecx, byte [rax + 0x1d]
shl rdx, 5
shl rdx, 2
shl rdx, 1
or rdx, rcx
mov dword [rsp - 0x24], ecx
movzx ecx, byte [rax + 0x1f]
mov qword [rax + r10], rdx
movzx edx, byte [rax + 0x1e]
mov rcx, rcx
shl rdx, 2
shl rdx, 4
shl rdx, 1
shl rdx, 1
or rdx, rcx
movzx ecx, byte [rax + 0x20]
mov dword [rsp - 0x14], edi
shl rdx, 5
shl rdx, 2
shl rdx, 1
or rdx, rcx
movzx ecx, byte [rax + 0x21]
shl rdx, 8
mov dword [rsp - 0x40], 0xcdb7e32
or rdx, rcx
movzx ecx, byte [rax + 0x22]
shl rdx, 4
shl rdx, 2
shl rdx, 1
shl rdx, 1
or rdx, rcx
movzx ecx, byte [rax + 0x23]
mov dword [rsp - 0x44], 0x2161694a
shl rdx, 1
shl rdx, 5
shl rdx, 1
shl rdx, 1
or rdx, rcx
movzx ecx, byte [rax + 0x24]
xchg rsi, rsi
shl rdx, 7
shl rdx, 1
or rdx, rcx
mov dword [rsp - 0x10], 0x4cff948b
movzx ecx, byte [rax + 0x25]
shl rdx, 7
shl rdx, 1
or rdx, rcx
xchg r14, rdx
mov qword [rax + r11], r14
xchg r14, rdx
movzx edx, byte [rax + 0x26]
mov dword [rsp - 0x3c], 0x111a4032
movzx ecx, byte [rax + 0x27]
lea rax, [rax + 0x40]
shl rdx, 7
shl rdx, 1
or rdx, rcx
xchg rsp, rsp
movzx ecx, byte [rax - 0x18]
shl rdx, 5
shl rdx, 1
shl rdx, 1
shl rdx, 1
or rdx, rcx
xchg r11, r11
movzx ecx, byte [rax - 0x17]
shl rdx, 2
shl rdx, 4
shl rdx, 1
shl rdx, 1
or rdx, rcx
mov r8, r8
movzx ecx, byte [rax - 0x16]
shl rdx, 8
or rdx, rcx
mov rbp, rbp
movzx ecx, byte [rax - 0x15]
shl rdx, 6
shl rdx, 2
or rdx, rcx
mov r14, r14
movzx ecx, byte [rax - 0x14]
shl rdx, 2
shl rdx, 5
shl rdx, 1
or rdx, rcx
mov dword [rsp - 0x38], 0x61b08ba6
movzx ecx, byte [rax - 0x13]
shl rdx, 4
shl rdx, 4
or rdx, rcx
mov dword [rsp - 0x2c], 0x2466e912
xchg r10, rdx
mov qword [rax + rbx - 0x40], r10
xchg r10, rdx
sub rdi, 1
jne 0x1400e0371
mov dword [rsp - 0x24], 0x3d4d836c
xchg r14, r8
mov r8, qword [rsp + 0xa0]
xchg r14, r8
lea rbp, [rsp + 0xa0]
xchg rbx, rbx
lea r12d, [rdi + 8]
nop dword [rax]
mov r8, qword [rbp - 0x68]
mov dword [rsp - 0x3c], ebx
xchg rsi, r14
mov r14, rsi
xchg rsi, r14
mov r9, qword [rbp - 0x60]
mov dword [rsp - 0x30], edx
xchg rbx, rcx
mov rbx, r8
xchg rbx, rcx
xchg rdi, r8
mov r8, qword [rbp + 8]
xchg r8, rdi
xchg r14, rax
mov r14, rax
xchg r14, rax
xchg r13, r10
mov r13, qword [rbp - 0x58]
xchg r10, r13
xchg rsi, rdx
mov rsi, rdi
xchg rsi, rdx
mov rbx, qword [rbp - 0x50]
ror rax, 0xa
ror rax, 9
ror rcx, 8
mov r8, r8
ror rdx, 0x1b
ror rdx, 5
ror rdx, 0x18
ror rdx, 1
ror rdx, 2
ror rdx, 1
ror rdx, 1
ror rsi, 0xc
ror rsi, 0x24
ror rsi, 5
ror rsi, 2
ror rsi, 1
ror rsi, 4
ror rsi, 1
xor rsi, rax
xchg r14, rdi
mov rax, rdi
xchg rdi, r14
shr rax, 4
shr rax, 1
shr rax, 1
xor rsi, rax
mov dword [rsp - 0x24], edi
mov rax, r8
ror rax, 1
xor rcx, rax
xchg rsi, rax
mov rsi, r8
xchg rsi, rax
shr rax, 6
shr rax, 1
xor rcx, rax
xchg rdi, rax
mov rdi, rax
xchg rdi, rax
ror rax, 0xb
ror rax, 3
ror rax, 3
ror rax, 1
ror rax, 1
add rsi, rcx
xor rdx, rax
add rsi, qword [rbp - 0x70]
mov dword [rsp - 0xc], edx
add rsi, qword [rbp - 0x28]
xchg rcx, rsi
mov rsi, r9
xchg rcx, rsi
ror rcx, 8
xchg rdi, rdi
xchg r15, rdi
mov rax, r15
xchg rdi, r15
shr rax, 1
shr rax, 5
xor rdx, rax
mov dword [rsp - 0x14], ebx
xchg rsi, r10
mov qword [rbp + 0x10], r10
xchg r10, rsi
mov rax, r9
mov rdi, rdi
ror rax, 1
xor rcx, rax
mov rax, r9
mov dword [rsp - 0x18], esp
shr rax, 5
shr rax, 1
shr rax, 1
xor rcx, rax
xchg r11, r11
xchg rsi, rax
mov rsi, rax
xchg rsi, rax
add rdx, rcx
mov r11, r11
ror rax, 0x11
ror rax, 1
ror rax, 1
add rdx, qword [rbp - 0x20]
mov dword [rsp - 0x44], edx
xchg rcx, r10
mov r10, rcx
xchg rcx, r10
add r8, rdx
ror rcx, 4
ror rcx, 2
ror rcx, 1
ror rcx, 1
xchg rcx, rdx
mov rcx, rsi
xchg rcx, rdx
xchg r9, r8
mov qword [rbp + 0x18], r9
xchg r9, r8
ror rdx, 0xa
ror rdx, 0x10
ror rdx, 3
ror rdx, 0x12
ror rdx, 8
ror rdx, 3
ror rdx, 2
ror rdx, 1
xor rdx, rax
mov r15, r15
mov rax, rsi
shr rax, 6
xor rdx, rax
xchg rbp, rbp
xchg rbx, rax
mov rbx, r10
xchg rbx, rax
ror rax, 1
mov dword [rsp - 0x30], 0x372f508b
xor rcx, rax
mov rax, r10
shr rax, 7
xor rcx, rax
mov dword [rsp - 0x1c], 0x6fa35894
xchg r12, rax
mov r12, rbx
xchg r12, rax
add rdx, rcx
ror rax, 1
mov dword [rsp - 0x20], edi
add rdx, qword [rbp - 0x18]
mov rcx, r8
add r9, rdx
ror rcx, 9
ror rcx, 0x16
ror rcx, 1
ror rcx, 0x15
ror rcx, 2
ror rcx, 4
ror rcx, 2
xchg r15, rdx
mov r15, rbx
xchg rdx, r15
xchg r9, rsi
mov qword [rbp + 0x20], rsi
xchg rsi, r9
ror rdx, 8
xor rdx, rax
mov r14, r14
xchg rbx, rax
mov rbx, rax
xchg rbx, rax
shr rax, 4
shr rax, 2
shr rax, 1
xor rdx, rax
mov rax, r8
mov r8, r8
ror rax, 0xc
ror rax, 6
ror rax, 1
xor rcx, rax
shr r8, 6
xor rcx, r8
xchg r10, r10
add rdx, rcx
add rdx, qword [rbp - 0x10]
xchg r12, rcx
mov r12, r9
xchg r12, rcx
mov r11, qword [rbp - 0x48]
mov dword [rsp - 0x2c], edx
add r10, rdx
xchg r9, r8
mov r9, qword [rbp - 0x40]
xchg r9, r8
xchg r11, r14
mov rdx, r14
xchg r11, r14
ror rdx, 1
ror rdx, 3
ror rdx, 2
ror rdx, 2
xchg r15, rax
mov r15, r11
xchg r15, rax
ror rax, 1
mov r9, r9
xor rdx, rax
ror rcx, 0x29
ror rcx, 3
ror rcx, 6
ror rcx, 0xb
mov qword [rbp + 0x28], r10
xchg r11, rax
mov r11, rax
xchg r11, rax
shr rax, 2
shr rax, 4
shr rax, 1
xor rdx, rax
xchg r9, rsi
mov rax, rsi
xchg r9, rsi
ror rax, 0xb
ror rax, 3
ror rax, 1
ror rax, 1
ror rax, 2
ror rax, 1
xor rcx, rax
xchg rcx, rcx
shr r9, 2
shr r9, 2
shr r9, 2
xor r9, rcx
xchg rsi, rsi
xchg rbp, rax
mov rbp, r8
xchg rbp, rax
ror rax, 1
mov dword [rsp - 0x18], ebp
add r9, rdx
add r9, qword [rbp - 8]
xchg r9, rcx
mov r9, r10
xchg r9, rcx
ror rcx, 0x18
ror rcx, 0x18
ror rcx, 2
ror rcx, 2
ror rcx, 9
add r9, rbx
mov dword [rsp - 0xc], 0x145f882b
xchg rdx, r10
mov r10, r8
xchg r10, rdx
xchg r12, r9
mov qword [rbp + 0x30], r12
xchg r9, r12
ror rdx, 6
ror rdx, 1
ror rdx, 1
xor rdx, rax
mov dword [rsp - 0x3c], 0x51810ff6
xchg r13, r8
mov rax, r13
xchg r8, r13
shr rax, 4
shr rax, 2
shr rax, 1
xor rdx, rax
xchg r13, r10
mov rax, r13
xchg r13, r10
ror rax, 3
ror rax, 0xc
ror rax, 2
ror rax, 1
ror rax, 1
xor rcx, rax
shr r10, 2
shr r10, 3
shr r10, 1
xor r10, rcx
lea rax, [r14 + rdx]
mov dword [rsp - 0x28], 0x7e75ea26
xchg rsi, r14
mov rsi, r9
xchg r14, rsi
add r10, rax
mov r11, r11
ror r14, 0x39
ror r14, 3
ror r14, 1
add r10, r11
mov dword [rsp - 0x44], 0x2527810d
xchg r15, r11
mov r15, qword [rbp - 0x38]
xchg r11, r15
xchg rdx, rsi
mov rsi, r11
xchg rdx, rsi
xchg rsp, r10
mov qword [rbp + 0x38], rsp
xchg rsp, r10
ror rdx, 5
ror rdx, 1
ror rdx, 1
ror rdx, 1
xchg r15, rax
mov r15, r11
xchg r15, rax
ror rax, 1
xchg rdi, rdi
xor rdx, rax
xchg r11, rax
mov r11, rax
xchg r11, rax
shr rax, 5
shr rax, 1
shr rax, 1
xor rdx, rax
xchg r9, rax
mov r9, rax
xchg r9, rax
ror rax, 0xa
ror rax, 7
ror rax, 1
ror rax, 1
xor r14, rax
shr r9, 6
xor r14, r9
xchg r11, r11
lea rax, [r8 + rdx]
xchg r8, r15
mov r15, qword [rbp - 0x30]
xchg r15, r8
add r14, rax
xchg rdx, rdx
mov rdx, r10
ror rdx, 0x3d
xchg r10, rax
mov r10, rax
xchg r10, rax
ror rax, 7
ror rax, 1
ror rax, 1
ror rax, 2
ror rax, 2
ror rax, 4
ror rax, 1
ror rax, 1
mov rcx, r8
mov dword [rsp - 0x34], 0x5cf4cb88
xor rdx, rax
ror rcx, 5
ror rcx, 2
ror rcx, 1
shr r10, 2
shr r10, 2
shr r10, 2
xchg r8, rax
mov r8, rax
xchg r8, rax
ror rax, 1
mov rbx, rbx
xor rdx, r10
xor rcx, rax
shr r8, 6
shr r8, 1
xor rcx, r8
xchg rsi, rsi
add r14, rdi
xchg r8, r14
mov qword [rbp + 0x40], r8
xchg r8, r14
lea rax, [rsi + rdx]
add rcx, rax
mov dword [rsp - 0x24], ebx
add rcx, r11
mov qword [rbp + 0x48], rcx
lea rbp, [rbp + 0x40]
sub r12, 1
mov dword [rsp - 0xc], 0x389ab4af
jne 0x1400e08bf
xchg rdi, r11
mov rdi, qword [rsp + 0x300]
xchg r11, rdi
lea r15, [0x140002620]
xchg r15, r15
xchg r10, rcx
mov rcx, qword [rsp + 0x308]
xchg r10, rcx
mov r8, r13
mov dword [rsp - 0x30], ebx
mov r9, qword [rsp]
mov rbx, qword [rsp + 8]
mov rbp, qword [rsp + 0x10]
mov dword [rsp - 0xc], 0x12f0961c
xchg r8, rsi
mov r8, qword [rsp + 0x18]
xchg r8, rsi
mov rdi, qword [rsp + 0x20]
mov rsi, rsi
nop dword [rax + rax]
xchg rdx, rbx
mov rbx, rdx
xchg rdx, rbx
mov rax, rbx
xchg rbp, rbp
ror rax, 0x11
ror rax, 1
xchg r8, rcx
mov r8, rcx
xchg rcx, r8
ror rdx, 0xa
ror rdx, 0x13
ror rdx, 4
ror rdx, 1
ror rdx, 3
ror rdx, 1
ror rdx, 2
ror rdx, 1
xor rdx, rax
ror rcx, 0x13
ror rcx, 2
ror rcx, 0xd
ror rcx, 1
ror rcx, 3
ror rcx, 1
xchg rbx, rax
mov rbx, rax
xchg rbx, rax
ror rax, 2
ror rax, 6
ror rax, 3
ror rax, 2
ror rax, 1
xor rdx, rax
xchg rbp, rax
mov rbp, rax
xchg rbp, rax
xor rax, rsi
and rax, rbx
xchg rdi, rdi
xor rax, rsi
add rdx, rax
xchg r8, rdx
mov rax, rdx
xchg rdx, r8
add rdx, qword [r12 + r15]
mov r9, r9
add rdx, qword [rsp + r12 + 0x30]
ror rax, 0xd
ror rax, 0xb
ror rax, 4
ror rax, 2
ror rax, 3
ror rax, 1
add rdx, rdi
xor rcx, rax
mov dword [rsp - 0x34], 0x78ec5847
xchg rdx, r8
mov rax, rdx
xchg rdx, r8
ror rax, 9
ror rax, 9
ror rax, 8
ror rax, 1
ror rax, 1
xor rcx, rax
mov dword [rsp - 0x44], esp
xchg r12, r11
mov rax, r12
xchg r11, r12
and rax, r8
lea rdi, [r9 + rdx]
xchg r9, rbp
mov rbp, r11
xchg rbp, r9
or r9, r8
and r9, r10
or r9, rax
xchg r13, r13
lea rax, [rdx + rcx]
add r9, rax
mov rdx, rdi
xchg rdi, rdi
ror rdx, 0x19
ror rdx, 7
ror rdx, 6
ror rdx, 1
ror rdx, 2
xchg rdi, rax
mov rdi, rax
xchg rdi, rax
ror rax, 0xf
ror rax, 2
ror rax, 1
mov rcx, r9
mov dword [rsp - 0x2c], edi
xor rdx, rax
ror rcx, 0x1a
ror rcx, 6
ror rcx, 1
ror rcx, 2
ror rcx, 3
ror rcx, 1
xchg rbp, rax
mov rbp, rdi
xchg rbp, rax
ror rax, 5
ror rax, 1
ror rax, 4
ror rax, 1
ror rax, 1
ror rax, 1
ror rax, 1
xor rdx, rax
mov dword [rsp - 0x1c], 0x68baa9b5
mov rax, rbp
xor rax, rbx
and rax, rdi
mov r11, r11
xor rax, rbp
add rdx, rax
mov rax, r9
mov dword [rsp - 0x10], ebp
add rdx, qword [r12 + r15 + 8]
add rdx, qword [rsp + r12 + 0x38]
ror rax, 0xb
ror rax, 0x14
ror rax, 1
ror rax, 1
ror rax, 1
add rdx, rsi
mov dword [rsp - 0xc], edx
xor rcx, rax
mov rax, r9
ror rax, 0x17
ror rax, 2
ror rax, 2
ror rax, 1
xor rcx, rax
mov r10, r10
xchg rdi, r9
mov rax, rdi
xchg r9, rdi
lea rsi, [r10 + rdx]
and rax, r8
xchg r9, rdi
mov r10, rdi
xchg rdi, r9
or r10, r8
and r10, r11
mov rbx, rbx
or r10, rax
lea rax, [rdx + rcx]
add r10, rax
xchg rdx, r12
mov r12, rsi
xchg rdx, r12
ror rdx, 0x21
ror rdx, 5
ror rdx, 1
ror rdx, 1
ror rdx, 1
mov rax, rsi
ror rax, 0xd
ror rax, 3
ror rax, 1
ror rax, 1
xor rdx, rax
xchg rcx, rsi
mov rax, rcx
xchg rcx, rsi
ror rax, 4
ror rax, 3
ror rax, 4
ror rax, 1
ror rax, 1
ror rax, 1
xor rdx, rax
xchg r11, rax
mov r11, rdi
xchg r11, rax
xor rax, rbx
and rax, rsi
xor rax, rbx
xchg r9, r9
add rdx, rax
add rdx, qword [r12 + r15 + 0x10]
add rdx, qword [rsp + r12 + 0x40]
mov dword [rsp - 0x20], 0x1bc302c9
add rdx, rbp
mov rcx, r10
ror rcx, 0x24
ror rcx, 1
ror rcx, 1
ror rcx, 1
mov rax, r10
xchg r13, r13
ror rax, 0x1e
ror rax, 2
ror rax, 1
ror rax, 1
xor rcx, rax
mov dword [rsp - 0x10], edx
xchg r11, rax
mov r11, r10
xchg r11, rax
ror rax, 0x1a
ror rax, 1
ror rax, 1
lea rbp, [r11 + rdx]
xor rcx, rax
mov dword [rsp - 0x14], ecx
xchg r10, r13
mov r11, r13
xchg r13, r10
or r11, r9
mov rax, r10
xchg r8, r8
and rax, r9
and r11, r8
or r11, rax
mov r12, r12
lea rax, [rdx + rcx]
xchg rdx, rcx
mov rcx, rbp
xchg rdx, rcx
add r11, rax
ror rdx, 0xf
ror rdx, 0xc
ror rdx, 8
ror rdx, 1
ror rdx, 3
ror rdx, 1
ror rdx, 1
xchg rbp, r11
mov rax, r11
xchg r11, rbp
mov rcx, r11
ror rax, 7
ror rax, 2
ror rax, 5
ror rax, 1
ror rax, 2
ror rax, 1
xor rdx, rax
mov dword [rsp - 0x28], esp
ror rcx, 2
ror rcx, 1
ror rcx, 0x24
xchg r14, rax
mov r14, rbp
xchg r14, rax
ror rax, 0xb
ror rax, 1
ror rax, 1
ror rax, 1
xor rdx, rax
mov rbp, rbp
mov rax, rsi
xor rax, rdi
and rax, rbp
mov r8, r8
xor rax, rdi
add rdx, rax
xchg r8, rax
mov r8, r11
xchg r8, rax
add rdx, qword [r12 + r15 + 0x18]
mov dword [rsp - 0x30], 0x1637e027
add rdx, qword [rsp + r12 + 0x48]
ror rax, 0xd
ror rax, 0x14
ror rax, 1
add rdx, rbx
xor rcx, rax
mov dword [rsp - 0x24], 0x1b86e0f0
mov rbx, r11
or rbx, r10
xchg r8, rax
mov r8, r11
xchg r8, rax
ror rax, 0x16
ror rax, 3
ror rax, 2
ror rax, 1
and rbx, r9
xor rcx, rax
mov dword [rsp - 0x1c], ecx
lea r14, [r8 + rdx]
xchg r8, r11
mov rax, r8
xchg r11, r8
xchg r14, r10
mov r8, r10
xchg r10, r14
and rax, r10
xchg r12, r12
ror r8, 0x14
ror r8, 0x11
ror r8, 1
ror r8, 1
ror r8, 1
ror r8, 1
or rbx, rax
lea rax, [rdx + rcx]
mov dword [rsp - 0xc], 0x1b2eb10e
add rbx, rax
mov rax, r14
ror rax, 0x12
xchg rdi, rbx
mov rdx, rdi
xchg rbx, rdi
xor r8, rax
xchg rbp, rbp
ror rdx, 0x21
ror rdx, 5
ror rdx, 1
mov rax, r14
mov r10, r10
ror rax, 9
ror rax, 1
ror rax, 2
ror rax, 1
ror rax, 1
xor r8, rax
mov rax, rbp
mov dword [rsp - 0x44], 0x3c2ae4ef
xor rax, rsi
and rax, r14
xor rax, rsi
mov r14, r14
add r8, rax
xchg rbx, rax
mov rbx, rax
xchg rbx, rax
add r8, qword [r12 + r15 + 0x20]
add r8, qword [rsp + r12 + 0x50]
ror rax, 0x20
ror rax, 1
ror rax, 1
add r8, rdi
mov dword [rsp - 0x44], 0x1ee4dd4e
xor rdx, rax
xchg rcx, rbx
mov rax, rcx
xchg rbx, rcx
ror rax, 3
ror rax, 0x10
ror rax, 8
ror rax, 1
xor rdx, rax
mov rax, r11
xchg rdi, rdi
lea rdi, [r9 + r8]
xchg r9, rdi
mov rdi, r11
xchg r9, rdi
or r9, rbx
and r9, r10
mov dword [rsp - 0x34], 0x470aed14
and rax, rbx
or r9, rax
lea rax, [r8 + rdx]
mov dword [rsp - 0x30], 0x4d4f7df6
add r9, rax
xchg rdi, r8
mov rdi, r8
xchg r8, rdi
ror r8, 0x1d
ror r8, 8
ror r8, 1
ror r8, 2
ror r8, 1
xchg rdi, rax
mov rdi, rax
xchg rdi, rax
ror rax, 3
ror rax, 9
ror rax, 2
ror rax, 3
ror rax, 1
xchg rdx, r9
mov r9, rdx
xchg r9, rdx
xor r8, rax
mov dword [rsp - 0x44], 0x88f5f36
ror rdx, 9
ror rdx, 0xe
ror rdx, 1
ror rdx, 7
ror rdx, 5
ror rdx, 2
ror rdx, 1
mov rax, rdi
ror rax, 0xe
mov dword [rsp - 0x40], 0x95f3cb3
xor r8, rax
xchg r12, rbp
mov rax, r12
xchg r12, rbp
xor rax, r14
and rax, rdi
mov dword [rsp - 0x10], ecx
xor rax, rbp
add r8, rax
xchg r9, rax
mov r9, rax
xchg r9, rax
add r8, qword [r12 + r15 + 0x28]
mov r14, r14
add r8, qword [rsp + r12 + 0x58]
ror rax, 0x21
ror rax, 1
add r8, rsi
mov r8, r8
xor rdx, rax
xchg rdi, rax
mov rdi, r9
xchg rdi, rax
ror rax, 0x16
ror rax, 3
ror rax, 2
ror rax, 1
xor rdx, rax
mov rbx, rbx
mov rax, r9
and rax, rbx
lea rsi, [r10 + r8]
mov dword [rsp - 0x38], 0x26964f22
mov r10, r9
or r10, rbx
and r10, r11
or r10, rax
xchg r13, r13
lea rax, [r8 + rdx]
add r10, rax
xchg rsi, r8
mov rsi, r8
xchg r8, rsi
ror r8, 0x16
ror r8, 0xd
ror r8, 4
ror r8, 1
ror r8, 1
xchg rsi, rax
mov rsi, rax
xchg rsi, rax
ror rax, 0x12
mov dword [rsp - 0x18], ebp
mov rdx, r10
xor r8, rax
ror rdx, 0x21
ror rdx, 2
ror rdx, 2
ror rdx, 1
ror rdx, 1
xchg rsp, rax
mov rsp, rsi
xchg rsp, rax
ror rax, 0xe
mov dword [rsp - 0x44], 0x353aefc9
xor r8, rax
mov rax, rdi
xor rax, r14
xchg rdx, rdx
and rax, rsi
xor rax, r14
add r8, rax
xchg r14, r14
xchg r10, rdi
mov rax, rdi
xchg rdi, r10
add r8, qword [r12 + r15 + 0x30]
add r8, qword [rsp + r12 + 0x60]
mov dword [rsp - 0x3c], edx
ror rax, 2
ror rax, 0x15
ror rax, 6
ror rax, 1
ror rax, 2
ror rax, 1
ror rax, 1
add r8, rbp
mov r15, r15
xor rdx, rax
xchg rsi, rax
mov rsi, r10
xchg rsi, rax
ror rax, 7
ror rax, 0x11
ror rax, 2
ror rax, 1
ror rax, 1
xor rdx, rax
xchg r10, rdi
mov rax, rdi
xchg r10, rdi
lea rbp, [r11 + r8]
mov dword [rsp - 0x34], 0x326ec887
and rax, r9
xchg r9, r11
mov r9, r10
xchg r11, r9
or r11, r9
and r11, rbx
xchg rsi, rsi
or r11, rax
lea rax, [r8 + rdx]
add r11, rax
xchg rdx, rdx
xchg rbp, r8
mov rbp, r8
xchg r8, rbp
ror r8, 0x1c
ror r8, 0xc
ror r8, 1
xchg rbp, rax
mov rbp, rax
xchg rbp, rax
ror rax, 0xa
ror rax, 3
ror rax, 2
ror rax, 2
ror rax, 1
xor r8, rax
xchg rsi, rax
mov rsi, rbp
xchg rsi, rax
ror rax, 0xc
ror rax, 1
ror rax, 1
xor r8, rax
xchg rdx, rax
mov rdx, rsi
xchg rdx, rax
xor rax, rdi
mov dword [rsp - 0x30], edi
and rax, rbp
xor rax, rdi
add r8, rax
xchg r15, rdx
mov r15, r11
xchg rdx, r15
add r8, qword [r12 + r15 + 0x38]
mov dword [rsp - 0x30], 0x4c2fb35e
xchg r11, rax
mov r11, rax
xchg r11, rax
add r8, qword [rsp + r12 + 0x68]
mov dword [rsp - 0x38], 0x3c25ced2
xchg rcx, rbx
mov rbx, r11
xchg rcx, rbx
ror rax, 0x21
ror rax, 1
add r8, r14
xchg rdi, rdi
ror rdx, 0x1a
ror rdx, 0xc
ror rdx, 1
or rcx, r10
mov rbx, rbx
xor rdx, rax
add rbx, r8
and rcx, r9
mov rsp, rsp
xchg r11, rsp
mov rax, rsp
xchg rsp, r11
ror rax, 0xf
ror rax, 9
ror rax, 2
ror rax, 1
ror rax, 1
sub r12, 0xffffffffffffffc0
xor rdx, rax
mov dword [rsp - 0x34], 0x7507989f
mov rax, r11
and rax, r10
add r8, rdx
or rcx, rax
xchg r14, r14
add r8, rcx
cmp r12, 0x280
jl 0x1400e0e34
xchg r15, r12
mov r12, qword [rsp + 0x2f0]
xchg r12, r15
lea rax, [r8 + r13]
xchg rsp, rsp
xchg r8, rax
mov qword [r15 + 8], r8
xchg r8, rax
add qword [r15 + 0x10], r11
add qword [r15 + 0x18], r10
add qword [r15 + 0x20], r9
mov r8, r8
add qword [r15 + 0x28], rbx
add qword [r15 + 0x30], rbp
add qword [r15 + 0x38], rsi
mov r15, r15
add qword [r15 + 0x40], rdi
mov rbx, qword [rsp + 0x2f8]
xor eax, eax
mov dword [rsp - 0x34], ebp
add rsp, 0x5a6a1a2c
sub rsp, 0x5a6a177c
nop
mov r15, qword [rsp]
add rsp, 8
nop
add rsp, 8
mov r14, qword [rsp - 8]
pop r13
mov r13, r13
nop
mov r12, qword [rsp]
add rsp, 8
pop rdi
mov dword [rsp - 0x24], ebx
nop
add rsp, 8
mov rsi, qword [rsp - 8]
nop
add rsp, 8
mov rbp, qword [rsp - 8]
ret