Function at 0x43ff40
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0xd8
mov rsi, qword [rcx + 0x10]
mov qword [rsp + 0x120], rcx
mov rcx, qword [rcx + 0x18]
mov r10, qword [rsp + 0x120]
mov rbx, qword [rsp + 0x120]
mov r15, qword [rsp + 0x120]
mov qword [rsp + 0x130], r8
mov qword [rsp + 0x138], r9
mov qword [rsp + 0xc8], rsi
add rsi, r9
mov r9, qword [rsp + 0x130]
mov rdi, qword [rbx + 0x20]
mov qword [rsp + 0x28], rcx
mov r11, qword [r10 + 0x50]
mov rcx, qword [r15 + 0x58]
mov r13, qword [r10 + 0x28]
shl r9, 6
mov rbp, qword [r10 + 0x30]
mov r12, qword [r10 + 0x38]
mov r14, qword [r10 + 0x40]
mov r8, qword [r10 + 0x48]
add r9, rdx
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x128], rdx
mov rsi, rdi
mov qword [rsp + 0x18], r11
mov qword [rsp + 0xc0], r9
mov qword [rsp + 8], rdi
mov qword [rsp + 0x10], rcx
xor rsi, r13
movabs rdx, 0x1bd11bdaa9fc1a22
mov rdi, qword [rsp + 0x18]
xor rsi, rdx
mov rcx, qword [rsp + 0x128]
mov r10, qword [rsp + 0x28]
xor rsi, rbp
mov rax, qword [rsp + 0x30]
xor rsi, r12
xor rsi, r14
mov r9, qword [rcx + 0x18]
mov rcx, qword [rsp + 0x128]
xor rsi, r8
mov r15, r10
add r10, rdi
xor rsi, rdi
xor rsi, qword [rsp + 0x10]
xor r15, rax
mov qword [rsp + 0x60], r9
mov r9, qword [rsp + 0x128]
add rax, r8
mov rcx, qword [rcx + 0x28]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x20], rsi
mov rsi, qword [rsp + 0x128]
mov qword [rsp + 0xb8], rcx
add rcx, rax
mov rax, rcx
mov rdx, qword [rsi]
mov r11, qword [rsi + 8]
mov rbx, qword [rsi + 0x10]
mov rsi, qword [rsp + 0x128]
mov qword [rsp + 0xa8], rdx
mov qword [rsp + 0xb0], r11
mov qword [rsp + 0x58], rbx
mov rbx, qword [rsi + 0x20]
mov rsi, qword [r9 + 0x30]
mov qword [rsp + 0x68], rbx
mov rbx, qword [r9 + 0x38]
mov qword [rsp + 0x70], rsi
mov rcx, qword [rsp + 0x70]
mov r9, qword [rsp + 8]
mov qword [rsp + 0x78], rbx
mov rbx, qword [rsp + 0x58]
add rcx, r10
lea rsi, [rdx + r9]
lea r9, [r11 + r13]
mov rdx, qword [rsp + 0x60]
mov r11, qword [rsp + 0x68]
mov qword [rsp + 0x38], r10
mov r10, rcx
mov rdi, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x10]
add rsi, r9
add rdx, r12
add rbx, rbp
ror r9, 0x12
add r11, r14
xor r9, rsi
add rbx, rdx
add rdi, rcx
add r11, rax
ror rdx, 0x1c
add r10, rdi
rol rax, 0x13
ror rdi, 0x1b
xor rdx, rbx
xor rax, r11
xor rdi, r10
add rbx, r9
ror r9, 0x1f
add qword [rsp + 0x128], 0x40
xor r9, rbx
add r11, rdi
add r10, rax
rol rdi, 0x1b
rol rax, 0xe
add rsi, rdx
xor rdi, r11
xor rax, r10
ror rdx, 0x16
xor rdx, rsi
add r11, r9
add rsi, rax
add rbx, rdi
rol r9, 0x11
ror rax, 0x1c
ror rdi, 0x19
xor r9, r11
add r10, rdx
xor rax, rsi
xor rdi, rbx
ror rdx, 0xf
add rsi, rdi
add rbx, rax
xor rdx, r10
rol rdi, 9
add r10, r9
ror rax, 0xa
ror r9, 0x14
xor rdi, rsi
xor rax, rbx
xor r9, r10
add r11, rdx
mov qword [rsp + 0x48], r15
ror rdx, 8
add r15, rcx
add rax, qword [rsp + 0x38]
mov qword [rsp + 0x50], r15
add r10, r15
mov r15, qword [rsp + 0x20]
add r9, rbp
xor rdx, r11
add rsi, r13
add r11, r8
add rdx, r14
add rsi, r9
lea rdi, [r15 + rdi + 1]
add r11, rax
add rbx, r12
ror r9, 0x19
ror rax, 0x1e
add rbx, rdx
add r10, rdi
rol rdi, 0x18
xor r9, rsi
xor rax, r11
xor rdi, r10
rol rdx, 0x1e
add r11, rdi
add r10, rax
xor rdx, rbx
ror rdi, 0xe
add rbx, r9
rol rax, 0xa
rol r9, 0xd
xor rdi, r11
xor rax, r10
xor r9, rbx
add rsi, rdx
rol rdx, 0x11
xor rdx, rsi
add r11, r9
rol r9, 0x19
add r10, rdx
rol rdx, 0x1d
xor r9, r11
xor rdx, r10
add rsi, rax
add rbx, rdi
ror rax, 0x19
ror rdi, 0x15
add r10, r9
xor rax, rsi
xor rdi, rbx
add r11, rdx
rol r9, 8
rol rdx, 0x16
add rsi, rdi
add rbx, rax
xor r9, r10
xor rdx, r11
ror rdi, 0x1d
ror rax, 8
add r9, r12
add rdx, r8
xor rdi, rsi
xor rax, rbx
add rsi, rbp
add rax, qword [rsp + 0x50]
add rbx, r14
add r11, qword [rsp + 0x18]
add r15, qword [rsp + 0x30]
add rbx, rdx
ror rdx, 0x1c
add rsi, r9
ror r9, 0x12
xor rdx, rbx
xor r9, rsi
add rsi, rdx
ror rdx, 0x16
add rbx, r9
mov rcx, r15
add r10, r15
mov r15, qword [rsp + 8]
add r11, rax
rol rax, 0x13
xor rdx, rsi
xor rax, r11
ror r9, 0x1f
mov qword [rsp + 0x80], rcx
lea rdi, [r15 + rdi + 2]
xor r9, rbx
mov r15, qword [rsp + 0x28]
add r10, rdi
ror rdi, 0x1b
xor rdi, r10
add r10, rax
rol rax, 0xe
add r11, rdi
xor rax, r10
rol rdi, 0x1b
add r10, rdx
ror rdx, 0xf
xor rdi, r11
xor rdx, r10
add r11, r9
rol r9, 0x11
xor r9, r11
add rsi, rax
add rbx, rdi
add r11, rdx
ror rdi, 0x19
ror rdx, 8
add r15, qword [rsp + 8]
xor rdi, rbx
xor rdx, r11
ror rax, 0x1c
add rdx, qword [rsp + 0x18]
add r10, r9
xor rax, rsi
ror r9, 0x14
add rsi, rdi
add r11, qword [rsp + 0x10]
rol rdi, 9
add rbx, rax
xor r9, r10
xor rdi, rsi
ror rax, 0xa
add r9, r14
xor rax, rbx
add rsi, r12
add rbx, r8
lea rdi, [r13 + rdi + 3]
add rsi, r9
add rbx, rdx
add rax, rcx
add r10, r15
ror r9, 0x19
rol rdx, 0x1e
mov qword [rsp + 0x88], r15
xor r9, rsi
xor rdx, rbx
add r11, rax
add r10, rdi
ror rax, 0x1e
rol rdi, 0x18
xor rax, r11
xor rdi, r10
add rbx, r9
rol r9, 0xd
add r11, rdi
add r10, rax
xor r9, rbx
add rsi, rdx
ror rdi, 0xe
rol rax, 0xa
rol rdx, 0x11
xor rdi, r11
xor rax, r10
xor rdx, rsi
add r11, r9
rol r9, 0x19
add r10, rdx
add rsi, rax
xor r9, r11
rol rdx, 0x1d
ror rax, 0x19
xor rdx, r10
xor rax, rsi
add rbx, rdi
add r10, r9
ror rdi, 0x15
rol r9, 8
xor rdi, rbx
xor r9, r10
add rbx, rax
ror rax, 8
add r11, rdx
rol rdx, 0x16
xor rax, rbx
xor rdx, r11
add rbx, qword [rsp + 0x18]
add rdx, qword [rsp + 0x10]
add rax, r15
add r11, qword [rsp + 0x20]
mov r15, qword [rsp + 0x48]
add rsi, rdi
ror rdi, 0x1d
add r9, r8
xor rdi, rsi
add rsi, r14
add rsi, r9
lea rdi, [rbp + rdi + 4]
ror r9, 0x12
add r15, r13
xor r9, rsi
add rbx, rdx
add r11, rax
add r10, r15
ror rdx, 0x1c
rol rax, 0x13
xor rdx, rbx
add r10, rdi
xor rax, r11
add rbx, r9
ror rdi, 0x1b
ror r9, 0x1f
xor rdi, r10
mov qword [rsp + 0x90], r15
xor r9, rbx
add r10, rax
rol rax, 0xe
add r11, rdi
xor rax, r10
add rsi, rdx
rol rdi, 0x1b
ror rdx, 0x16
xor rdi, r11
xor rdx, rsi
add rsi, rax
ror rax, 0x1c
add r11, r9
add rbx, rdi
xor rax, rsi
rol r9, 0x11
ror rdi, 0x19
xor r9, r11
add r10, rdx
xor rdi, rbx
ror rdx, 0xf
add rbx, rax
ror rax, 0xa
add rsi, rdi
xor rdx, r10
xor rax, rbx
add r10, r9
rol rdi, 9
ror r9, 0x14
xor r9, r10
xor rdi, rsi
add r11, rdx
ror rdx, 8
add rax, r15
mov r15, qword [rsp + 0x30]
add r9, qword [rsp + 0x18]
xor rdx, r11
add r11, qword [rsp + 8]
add rdx, qword [rsp + 0x20]
add rbx, qword [rsp + 0x10]
lea rdi, [r12 + rdi + 5]
add r15, rbp
add rsi, r8
add r10, r15
add rsi, r9
add r11, rax
add r10, rdi
ror r9, 0x19
ror rax, 0x1e
rol rdi, 0x18
xor r9, rsi
add rbx, rdx
xor rax, r11
xor rdi, r10
rol rdx, 0x1e
add r10, rax
add r11, rdi
xor rdx, rbx
ror rdi, 0xe
add rbx, r9
rol rax, 0xa
rol r9, 0xd
xor r9, rbx
xor rdi, r11
xor rax, r10
add rsi, rdx
rol rdx, 0x11
add r11, r9
xor rdx, rsi
add rsi, rax
ror rax, 0x19
add r10, rdx
xor rax, rsi
add rbx, rdi
rol r9, 0x19
rol rdx, 0x1d
ror rdi, 0x15
xor r9, r11
xor rdx, r10
xor rdi, rbx
add rbx, rax
ror rax, 8
add r10, r9
add rsi, rdi
add r11, rdx
xor rax, rbx
rol r9, 8
ror rdi, 0x1d
rol rdx, 0x16
add rax, r15
xor r9, r10
xor rdi, rsi
add r9, qword [rsp + 0x10]
xor rdx, r11
add rsi, qword [rsp + 0x18]
add rdx, qword [rsp + 8]
add rbx, qword [rsp + 0x20]
add r11, r13
mov qword [rsp + 0x98], r15
mov r15, qword [rsp + 0x28]
lea rdi, [r14 + rdi + 6]
mov rcx, qword [rsp + 0x40]
add r15, r12
add rsi, r9
add rbx, rdx
add r10, r15
ror r9, 0x12
ror rdx, 0x1c
xor r9, rsi
xor rdx, rbx
add r11, rax
add r10, rdi
rol rax, 0x13
ror rdi, 0x1b
xor rax, r11
xor rdi, r10
add rbx, r9
add rsi, rdx
ror r9, 0x1f
ror rdx, 0x16
xor r9, rbx
add r11, rdi
add r10, rax
xor rdx, rsi
rol rdi, 0x1b
rol rax, 0xe
xor rdi, r11
xor rax, r10
add r11, r9
add r10, rdx
rol r9, 0x11
ror rdx, 0xf
xor r9, r11
xor rdx, r10
add rsi, rax
ror rax, 0x1c
add rbx, rdi
ror rdi, 0x19
xor rax, rsi
xor rdi, rbx
add r10, r9
add rbx, rax
ror rax, 0xa
add rsi, rdi
xor rax, rbx
ror r9, 0x14
rol rdi, 9
xor r9, r10
xor rdi, rsi
add r9, qword [rsp + 0x20]
add rsi, qword [rsp + 0x10]
add rbx, qword [rsp + 8]
add rax, r15
mov qword [rsp + 0xa0], r15
mov r15, qword [rsp + 0x48]
add r11, rdx
ror rdx, 8
lea rdi, [r8 + rdi + 7]
xor rdx, r11
add r11, rbp
add r15, r14
add rdx, r13
add rsi, r9
add rbx, rdx
add r10, r15
ror r9, 0x19
rol rdx, 0x1e
xor r9, rsi
mov qword [rsp + 0x48], r15
xor rdx, rbx
add r11, rax
add r10, rdi
ror rax, 0x1e
rol rdi, 0x18
add rbx, r9
xor rax, r11
xor rdi, r10
rol r9, 0xd
xor r9, rbx
add r11, rdi
add r10, rax
add rsi, rdx
ror rdi, 0xe
rol rax, 0xa
rol rdx, 0x11
xor rdi, r11
xor rax, r10
xor rdx, rsi
add r11, r9
rol r9, 0x19
xor r9, r11
add r10, rdx
add rsi, rax
rol rdx, 0x1d
ror rax, 0x19
add rbx, rdi
xor rdx, r10
xor rax, rsi
add r10, r9
ror rdi, 0x15
rol r9, 8
xor rdi, rbx
xor r9, r10
add rbx, rax
ror rax, 8
add rsi, rdi
ror rdi, 0x1d
xor rax, rbx
add r9, qword [rsp + 8]
xor rdi, rsi
add rax, r15
add rsi, qword [rsp + 0x20]
mov r15, qword [rsp + 0x18]
add r11, rdx
rol rdx, 0x16
add rbx, r13
xor rdx, r11
add r10, rcx
add r11, r12
lea rdi, [r15 + rdi + 8]
add rdx, rbp
add r11, rax
add rsi, r9
ror r9, 0x12
add rbx, rdx
xor r9, rsi
add r10, rdi
ror rdx, 0x1c
rol rax, 0x13
ror rdi, 0x1b
xor rdx, rbx
xor rax, r11
add rbx, r9
xor rdi, r10
ror r9, 0x1f
mov r15, qword [rsp + 0x38]
xor r9, rbx
add r11, rdi
add r10, rax
rol rax, 0xe
add rsi, rdx
rol rdi, 0x1b
xor rax, r10
ror rdx, 0x16
xor rdi, r11
xor rdx, rsi
add rsi, rax
ror rax, 0x1c
add r11, r9
add r10, rdx
xor rax, rsi
add rbx, rdi
rol r9, 0x11
ror rdx, 0xf
ror rdi, 0x19
xor r9, r11
xor rdx, r10
xor rdi, rbx
add rbx, rax
ror rax, 0xa
add r10, r9
add rsi, rdi
xor rax, rbx
add r11, rdx
ror r9, 0x14
rol rdi, 9
ror rdx, 8
xor r9, r10
xor rdi, rsi
xor rdx, r11
add rax, rcx
add rsi, qword [rsp + 8]
mov rcx, qword [rsp + 0x10]
add r9, r13
add r11, r14
add rdx, r12
add r11, rax
add rbx, rbp
add r10, r15
ror rax, 0x1e
add rbx, rdx
lea rdi, [rcx + rdi + 9]
add rsi, r9
ror r9, 0x19
xor r9, rsi
xor rax, r11
rol rdx, 0x1e
add r10, rdi
rol rdi, 0x18
xor rdx, rbx
xor rdi, r10
add rbx, r9
add r10, rax
rol r9, 0xd
rol rax, 0xa
add rsi, rdx
xor rax, r10
xor r9, rbx
add r11, rdi
rol rdx, 0x11
ror rdi, 0xe
mov rcx, qword [rsp + 0x50]
xor rdx, rsi
xor rdi, r11
add r11, r9
add rsi, rax
ror rax, 0x19
add rbx, rdi
xor rax, rsi
ror rdi, 0x15
add r10, rdx
xor rdi, rbx
add rbx, rax
ror rax, 8
xor rax, rbx
rol r9, 0x19
rol rdx, 0x1d
xor r9, r11
xor rdx, r10
add rax, r15
mov r15, qword [rsp + 0x20]
add r10, r9
add rsi, rdi
add r11, rdx
rol r9, 8
ror rdi, 0x1d
rol rdx, 0x16
xor r9, r10
xor rdi, rsi
xor rdx, r11
add rsi, r13
add r9, rbp
add rdx, r14
add rbx, r12
add r11, r8
lea rdi, [r15 + rdi + 0xa]
add r10, rcx
add rsi, r9
ror r9, 0x12
add rbx, rdx
add r11, rax
ror rdx, 0x1c
rol rax, 0x13
xor r9, rsi
xor rdx, rbx
xor rax, r11
add r10, rdi
ror rdi, 0x1b
add rsi, rdx
add rbx, r9
xor rdi, r10
ror r9, 0x1f
add r10, rax
ror rdx, 0x16
rol rax, 0xe
add r11, rdi
xor rax, r10
xor rdx, rsi
xor r9, rbx
rol rdi, 0x1b
add r10, rdx
add rsi, rax
xor rdi, r11
ror rdx, 0xf
add r11, r9
ror rax, 0x1c
rol r9, 0x11
xor rdx, r10
xor r9, r11
xor rax, rsi
add rbx, rdi
ror rdi, 0x19
add r11, rdx
ror rdx, 8
xor rdi, rbx
add rbx, rax
ror rax, 0xa
xor rax, rbx
xor rdx, r11
mov r15, qword [rsp + 8]
add r11, qword [rsp + 0x18]
add r10, r9
add rsi, rdi
add rax, rcx
ror r9, 0x14
mov rcx, qword [rsp + 0x80]
rol rdi, 9
xor r9, r10
add rdx, r8
xor rdi, rsi
add r9, r12
add rsi, rbp
add rbx, r14
lea rdi, [r15 + rdi + 0xb]
add rsi, r9
add rbx, rdx
add r11, rax
add r10, rcx
ror r9, 0x19
rol rdx, 0x1e
ror rax, 0x1e
xor r9, rsi
xor rdx, rbx
xor rax, r11
add r10, rdi
rol rdi, 0x18
add rbx, r9
xor rdi, r10
rol r9, 0xd
add r10, rax
add r11, rdi
ror rdi, 0xe
xor r9, rbx
xor rdi, r11
add rsi, rdx
rol rax, 0xa
rol rdx, 0x11
xor rax, r10
add r11, r9
xor rdx, rsi
add rbx, rdi
rol r9, 0x19
ror rdi, 0x15
xor r9, r11
add r10, rdx
add rsi, rax
xor rdi, rbx
rol rdx, 0x1d
ror rax, 0x19
xor rdx, r10
add r10, r9
xor rax, rsi
rol r9, 8
add rsi, rdi
ror rdi, 0x1d
mov r15, qword [rsp + 0x88]
xor r9, r10
xor rdi, rsi
add rbx, rax
add r11, rdx
rol rdx, 0x16
lea rdi, [r13 + rdi + 0xc]
ror rax, 8
xor rdx, r11
add r11, qword [rsp + 0x10]
add rdx, qword [rsp + 0x18]
add r9, r14
xor rax, rbx
add rsi, r12
add r10, r15
add rax, rcx
add rsi, r9
add r10, rdi
add rbx, r8
ror r9, 0x12
ror rdi, 0x1b
xor r9, rsi
add rbx, rdx
add r11, rax
xor rdi, r10
ror rdx, 0x1c
rol rax, 0x13
xor rdx, rbx
add rbx, r9
xor rax, r11
ror r9, 0x1f
add r11, rdi
rol rdi, 0x1b
xor r9, rbx
add r10, rax
xor rdi, r11
rol rax, 0xe
add rsi, rdx
xor rax, r10
ror rdx, 0x16
add r11, r9
xor rdx, rsi
rol r9, 0x11
add rsi, rax
ror rax, 0x1c
xor r9, r11
add r10, rdx
xor rax, rsi
add rbx, rdi
ror rdx, 0xf
ror rdi, 0x19
xor rdx, r10
add r10, r9
xor rdi, rbx
ror r9, 0x14
add rbx, rax
ror rax, 0xa
add rsi, rdi
add r11, rdx
xor r9, r10
xor rax, rbx
rol rdi, 9
ror rdx, 8
add r9, r8
xor rdi, rsi
add rbx, qword [rsp + 0x18]
add rsi, r14
xor rdx, r11
add rdx, qword [rsp + 0x10]
add rax, r15
add r11, qword [rsp + 0x20]
mov r15, qword [rsp + 0x90]
lea rdi, [rbp + rdi + 0xd]
add rsi, r9
ror r9, 0x19
xor r9, rsi
add r10, r15
add rbx, rdx
add r11, rax
add r10, rdi
rol rdx, 0x1e
ror rax, 0x1e
rol rdi, 0x18
xor rdx, rbx
xor rax, r11
xor rdi, r10
add rbx, r9
rol r9, 0xd
xor r9, rbx
add r11, rdi
add r10, rax
add rsi, rdx
ror rdi, 0xe
rol rax, 0xa
rol rdx, 0x11
xor rdi, r11
xor rax, r10
add r11, r9
xor rdx, rsi
rol r9, 0x19
xor r9, r11
add r10, rdx
rol rdx, 0x1d
add rsi, rax
ror rax, 0x19
xor rdx, r10
xor rax, rsi
add rbx, rdi
ror rdi, 0x15
xor rdi, rbx
add r10, r9
add rbx, rax
add r11, rdx
rol r9, 8
ror rax, 8
rol rdx, 0x16
xor r9, r10
xor rax, rbx
add r9, qword [rsp + 0x18]
xor rdx, r11
add rbx, qword [rsp + 0x10]
add rdx, qword [rsp + 0x20]
add rsi, rdi
add rax, r15
add r11, qword [rsp + 8]
mov r15, qword [rsp + 0x98]
ror rdi, 0x1d
xor rdi, rsi
add rsi, r8
lea rdi, [r12 + rdi + 0xe]
add rsi, r9
ror r9, 0x12
add r10, r15
add rbx, rdx
ror rdx, 0x1c
xor r9, rsi
xor rdx, rbx
add r11, rax
add r10, rdi
rol rax, 0x13
ror rdi, 0x1b
xor rax, r11
xor rdi, r10
add rbx, r9
add r11, rdi
add r10, rax
ror r9, 0x1f
rol rdi, 0x1b
rol rax, 0xe
xor r9, rbx
xor rdi, r11
xor rax, r10
add rsi, rdx
ror rdx, 0x16
add r11, r9
add rbx, rdi
xor rdx, rsi
rol r9, 0x11
add rsi, rax
ror rdi, 0x19
ror rax, 0x1c
add r10, rdx
xor rax, rsi
xor rdi, rbx
xor r9, r11
ror rdx, 0xf
xor rdx, r10
add r10, r9
ror r9, 0x14
add rsi, rdi
add rbx, rax
rol rdi, 9
ror rax, 0xa
add r11, rdx
xor r9, r10
xor rdi, rsi
xor rax, rbx
add rsi, qword [rsp + 0x18]
ror rdx, 8
add r9, qword [rsp + 0x10]
add rax, r15
xor rdx, r11
mov r15, qword [rsp + 0xa0]
add rdx, qword [rsp + 8]
add rbx, qword [rsp + 0x20]
lea rdi, [r14 + rdi + 0xf]
add r11, r13
add r11, rax
ror rax, 0x1e
mov rcx, qword [rsp + 0x48]
add rsi, r9
add r10, r15
ror r9, 0x19
xor r9, rsi
add r10, rdi
rol rdi, 0x18
add rbx, rdx
rol rdx, 0x1e
xor rax, r11
xor rdx, rbx
xor rdi, r10
add rbx, r9
rol r9, 0xd
xor r9, rbx
add r11, rdi
add r10, rax
ror rdi, 0xe
rol rax, 0xa
add rsi, rdx
xor rdi, r11
xor rax, r10
rol rdx, 0x11
xor rdx, rsi
add r11, r9
add rsi, rax
add rbx, rdi
rol r9, 0x19
ror rax, 0x19
ror rdi, 0x15
xor r9, r11
add r10, rdx
xor rax, rsi
xor rdi, rbx
rol rdx, 0x1d
add rsi, rdi
add rbx, rax
xor rdx, r10
ror rdi, 0x1d
add r10, r9
ror rax, 8
rol r9, 8
xor rdi, rsi
xor rax, rbx
xor r9, r10
add r11, rdx
rol rdx, 0x16
add r9, qword [rsp + 0x20]
add rsi, qword [rsp + 0x10]
lea r8, [r8 + rdi + 0x10]
add rbx, qword [rsp + 8]
xor rdx, r11
add r10, rcx
add rdx, r13
add rax, r15
add r10, r8
add r11, rbp
ror r8, 0x1b
mov rdi, qword [rsp + 0x18]
add rsi, r9
ror r9, 0x12
add r11, rax
xor r9, rsi
add rbx, rdx
xor r8, r10
ror rdx, 0x1c
rol rax, 0x13
movabs r15, 0xbfffffffffffffff
xor rdx, rbx
xor rax, r11
add rbx, r9
add r11, r8
ror r9, 0x1f
rol r8, 0x1b
xor r9, rbx
xor r8, r11
add r10, rax
add rsi, rdx
rol rax, 0xe
ror rdx, 0x16
xor rax, r10
xor rdx, rsi
add r11, r9
add rbx, r8
rol r9, 0x11
ror r8, 0x19
xor r9, r11
add r10, rdx
add rsi, rax
xor r8, rbx
ror rdx, 0xf
ror rax, 0x1c
xor rdx, r10
xor rax, rsi
add r10, r9
add rsi, r8
ror r9, 0x14
rol r8, 9
xor r8, rsi
xor r9, r10
add rsi, qword [rsp + 0x20]
add r9, qword [rsp + 8]
add rbx, rax
add r11, rdx
add r10, qword [rsp + 0x40]
ror rax, 0xa
ror rdx, 8
xor rax, rbx
xor rdx, r11
add rbx, r13
add rdx, rbp
add rax, rcx
add r11, r12
lea rdi, [rdi + r8 + 0x11]
add rsi, r9
add rbx, rdx
add r11, rax
ror r9, 0x19
rol rdx, 0x1e
ror rax, 0x1e
xor r9, rsi
xor rdx, rbx
xor rax, r11
add r10, rdi
rol rdi, 0x18
xor rdi, r10
add rbx, r9
add r10, rax
add rsi, rdx
rol r9, 0xd
rol rax, 0xa
rol rdx, 0x11
xor r9, rbx
add r11, rdi
xor rax, r10
xor rdx, rsi
ror rdi, 0xe
xor rdi, r11
add r10, rdx
add r11, r9
add rsi, rax
rol r9, 0x19
rol rdx, 0x1d
ror rax, 0x19
xor r9, r11
xor rdx, r10
mov r8, qword [rsp + 8]
xor rax, rsi
add rbx, rdi
ror rdi, 0x15
add r11, rdx
add r10, r9
xor rdi, rbx
add rbx, rax
ror rax, 8
add rsi, rdi
ror rdi, 0x1d
xor rax, rbx
add r8, rsi
xor rdi, rsi
add rbp, rbx
mov rsi, qword [rsp + 0xa8]
mov rbx, qword [rsp + 0x40]
rol r9, 8
rol rdx, 0x16
xor r9, r10
add r10, qword [rsp + 0x38]
xor rdx, r11
xor r10, qword [rsp + 0x70]
add r13, r9
xor rsi, r8
xor r13, qword [rsp + 0xb0]
xor rbp, qword [rsp + 0x58]
add r12, rdx
add r14, r11
xor r12, qword [rsp + 0x60]
xor r14, qword [rsp + 0x68]
lea r8, [rax + rbx]
xor r8, qword [rsp + 0xb8]
mov rcx, qword [rsp + 0x120]
mov qword [rsp + 8], rsi
mov qword [rsp + 0x18], r10
mov qword [rcx + 0x20], rsi
mov qword [rcx + 0x28], r13
mov rdx, rcx
mov qword [rcx + 0x30], rbp
mov qword [rcx + 0x38], r12
mov qword [rcx + 0x40], r14
mov qword [rcx + 0x48], r8
mov qword [rcx + 0x50], r10
mov r11, qword [rsp + 0x10]
and qword [rsp + 0x28], r15
mov r9, qword [rsp + 0xc0]
lea rax, [r11 + rdi + 0x12]
xor rax, qword [rsp + 0x78]
mov qword [rcx + 0x58], rax
mov rcx, qword [rsp + 0x138]
add qword [rsp + 0x30], rcx
cmp qword [rsp + 0x128], r9
mov qword [rsp + 0x10], rax
jne 0x43fff1
mov r13, qword [rsp + 0x130]
mov rbp, qword [rsp + 0x28]
imul r13, qword [rsp + 0x138]
mov qword [rdx + 0x18], rbp
add r13, qword [rsp + 0xc8]
mov qword [rdx + 0x10], r13
add rsp, 0xd8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret