Function at 0x14004c0d0
Capabilities:
Encode data using xor
Hash data using sha512

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x198
lea rbp, [rsp + 0x80]
mov r13, r9
mov r10, r8
mov qword [rbp - 8], rdx
mov rsi, qword [rbp + 0x188]
mov r15, qword [rbp + 0x180]
movzx ebx, byte [rbp + 0x198]
movzx edi, byte [rbp + 0x190]
xor eax, eax
test al, al
jne 0x14004c176
mov eax, dword [0x140213520]
imul eax, dword [0x140213524]
mov edx, eax
and edx, 0x40fe9b06
mov r8d, edx
not r8d
mov r9d, eax
and r9d, 0x869102
and r8d, 0x46792e9d
imul r8d, r9d
and eax, 0x40780a04
or edx, 0x46792e9d
imul edx, eax
add edx, r8d
xor edx, 0xef5541d5
mov eax, 0x80
call fcn.1401516e0
sub rsp, rax
mov r12, rsp
cmp edx, 0xd3a07768
jbe 0x14004c190
mov eax, 0x80
call fcn.1401516e0
sub rsp, rax
jmp 0x14004c117
mov eax, dword [0x140213528]
xor edx, edx
div dword [0x14021352c]
imul eax, eax, 0xa911763
cmp eax, 0x14a2812d
je 0x14004c190
cmp cl, 2
mov qword [rbp + 8], r10
jne 0x14004c22d
mov eax, dword [0x140213530]
mov ecx, dword [0x140213534]
mov edx, ecx
not edx
mov r8d, eax
and r8d, edx
or edx, eax
not edx
imul edx, r8d
mov r8d, eax
and r8d, ecx
or eax, ecx
imul eax, r8d
add eax, edx
add eax, 0xc3d23162
mov ecx, eax
not ecx
and ecx, 0x8f10159b
and eax, 0x70efea64
sub eax, ecx
mov ecx, eax
not ecx
and ecx, 0xc04b4fdb
mov edx, eax
and edx, 0x3fb4b024
imul edx, ecx
mov ecx, eax
and ecx, 0xc04b4fdb
or eax, 0xc04b4fdb
imul eax, ecx
add eax, edx
cmp eax, 0x28839a02
mov r12, qword [rbp - 8]
jbe 0x14004c28a
jmp 0x14004c306
mov qword [rbp + 0xf8], rsi
mov eax, dword [0x140213548]
xor eax, dword [0x14021354c]
mov ecx, eax
not ecx
and ecx, 0x3c76b4c5
mov edx, eax
and edx, 0x3894b3a
imul edx, ecx
mov ecx, eax
and ecx, 0x3c76b4c5
or eax, 0x3c76b4c5
imul eax, ecx
add eax, edx
or eax, 0xc59a58b4
mov ecx, 0x9bb42fa7
imul rcx, rax
shr rcx, 0x3f
cmp ecx, 0xc1e60aea
jne 0x14004c388
jmp 0x14004c417
mov eax, dword [0x140213538]
add eax, dword [0x14021353c]
mov ecx, eax
xor ecx, 0x58946c5d
and ecx, eax
mov eax, ecx
not eax
mov edx, ecx
and edx, 0xe72a74ae
and eax, 0x18d58b51
imul eax, edx
mov edx, ecx
and edx, 0x18d58b51
or ecx, 0x18d58b51
imul ecx, edx
add ecx, eax
imul r14, rcx, 0x56f24bc5
shr r14, 0x3e
sub rsp, 0x40
mov byte [rsp + 0x30], bl
mov byte [rsp + 0x28], dil
mov qword [rsp + 0x20], rsi
mov rcx, r12
mov rdx, r10
mov r8, r13
mov r9, r15
call fcn.1400507d0
mov r10, qword [rbp + 8]
add rsp, 0x40
cmp r14d, 0xabe9d88b
jbe 0x14004c340
sub rsp, 0x40
mov byte [rsp + 0x30], bl
mov byte [rsp + 0x28], dil
mov qword [rsp + 0x20], rsi
mov rcx, r12
mov rdx, r10
mov r8, r13
mov r9, r15
call fcn.1400507d0
mov r10, qword [rbp + 8]
add rsp, 0x40
jmp 0x14004c28a
mov eax, dword [0x140213540]
mov ecx, dword [0x140213544]
mov edx, ecx
not edx
mov r8d, eax
and r8d, edx
or edx, eax
not edx
imul edx, r8d
mov r8d, eax
and r8d, ecx
or eax, ecx
imul eax, r8d
add eax, edx
and eax, 0x79230a9c
imul eax, eax, 0xc67f09fc
add eax, 0x4b21c0c
cmp eax, 0xd2dd296a
ja 0x14004c340
jmp 0x14005074a
mov eax, dword [0x140213550]
imul eax, dword [0x140213554]
add eax, 0xb2fac221
imul rax, rax, 0x1b8f9927
shr rax, 0x3c
not eax
and eax, 0xa8fb6923
xor eax, 0xf4b9a795
xor ecx, ecx
mov rdx, r10
sub rdx, 1
cmovae rcx, rdx
mov r11, qword [r13]
mov rbx, qword [r13 + 8]
mov r9, qword [r13 + 0x10]
mov r8, qword [r13 + 0x18]
mov rdx, qword [r13 + 0x20]
mov rdi, qword [r13 + 0x28]
mov r14, qword [r13 + 0x30]
mov rsi, qword [r13 + 0x38]
xorps xmm0, xmm0
movups xmmword [r12 + 0x70], xmm0
movups xmmword [r12 + 0x60], xmm0
movups xmmword [r12 + 0x50], xmm0
movups xmmword [r12 + 0x40], xmm0
movups xmmword [r12 + 0x30], xmm0
movups xmmword [r12 + 0x20], xmm0
movups xmmword [r12 + 0x10], xmm0
movups xmmword [r12], xmm0
cmp eax, 0x49a23a5a
jae 0x14004c44e
xorps xmm0, xmm0
movups xmmword [r12 + 0x70], xmm0
movups xmmword [r12 + 0x60], xmm0
movups xmmword [r12 + 0x50], xmm0
movups xmmword [r12 + 0x40], xmm0
movups xmmword [r12 + 0x30], xmm0
movups xmmword [r12 + 0x20], xmm0
movups xmmword [r12 + 0x10], xmm0
movups xmmword [r12], xmm0
jmp 0x14004c388
mov qword [rbp + 0x10], rsi
mov qword [rbp + 0x18], r8
mov qword [rbp + 0x30], rdx
mov qword [rbp + 0x20], rbx
mov qword [rbp - 0x50], r13
mov eax, ecx
not eax
or rax, 0xffffffffffffff80
lea rsi, [rcx + rax]
inc rsi
nop word cs:[rax + rax]
mov eax, dword [0x140213558]
add eax, dword [0x14021355c]
mov ecx, eax
and ecx, 0x77fff0fe
and eax, 0x766c7008
add eax, eax
sub ecx, eax
add ecx, 0x7864421e
cmp rsi, r10
mov rdx, r10
cmovb rdx, rsi
cmp ecx, 0x263a73d9
jb 0x14004c480
movabs rax, 0x7575fea3d6823c0b
mov r13, r10
sub r13, rax
sub r13, rdx
add r13, rax
add rdx, qword [rbp - 8]
mov qword [rbp], rdx
nop word cs:[rax + rax]
mov eax, dword [0x140213560]
sub eax, dword [0x140213564]
mov ecx, eax
or ecx, 0x6e18703a
mov edx, eax
not edx
and edx, 0x90858400
mov r8d, ecx
and r8d, 0x476a2bff
imul r8d, edx
and ecx, 0xb895d400
or eax, 0xfe9df43a
imul eax, ecx
add eax, r8d
mov ecx, eax
xor ecx, 0x22939c00
and ecx, eax
cmp ecx, 0x8533e9e
jb 0x14004c4e0
mov qword [rbp + 0x38], r14
mov eax, 0x80
mov qword [rbp - 0x28], rax
cmp r13, 0x7f
mov qword [rbp + 0x28], r11
ja 0x14004c611
mov qword [rbp - 0x10], r9
mov eax, dword [0x140213568]
mov ecx, dword [0x14021356c]
xor ecx, eax
not ecx
and ecx, eax
and ecx, 0xbc3df802
add ecx, 0x61f9bf15
mov eax, 0x8ac8d4a7
imul rax, rcx
shr rax, 0x3f
cmp eax, 0x50d9c52b
mov r14, qword [rbp]
je 0x14004c5a0
sub rsp, 0x20
mov rcx, r12
mov rdx, r14
mov r8, r13
call sub.VCRUNTIME140.dll_memcpy
add rsp, 0x20
xor eax, eax
test al, al
je 0x14004c5c0
sub rsp, 0x20
mov rcx, r12
mov rdx, r14
mov r8, r13
call sub.VCRUNTIME140.dll_memcpy
add rsp, 0x20
jmp 0x14004c584
mov eax, dword [0x140213570]
mov ecx, dword [0x140213574]
mov edx, eax
not edx
and edx, ecx
mov r8d, ecx
not r8d
and r8d, eax
imul r8d, edx
mov edx, eax
and edx, ecx
or eax, ecx
imul eax, edx
add eax, r8d
add eax, 0x5cae07df
or eax, 0x9b043fba
add eax, 0x37d5c48
cmp eax, 0x6742fbe1
jb 0x14004c5c0
mov qword [rbp], r12
mov qword [rbp - 0x28], r13
mov r10, qword [rbp + 8]
mov r9, qword [rbp - 0x10]
movabs rax, 0xa18ab236f4230ec8
movabs rcx, 0x3c6ef372fe94f82b
movzx r8d, byte [rbp + 0x198]
movzx edx, byte [rbp + 0x190]
or dl, r8b
movzx edx, dl
movzx r8d, r8b
dec rdx
mov qword [rbp - 0x38], rdx
dec r8
mov qword [rbp - 0x30], r8
add rcx, rax
mov qword [rbp - 0x40], rcx
xor r13d, r13d
mov r12, qword [rbp + 0x10]
mov qword [rbp - 0x48], rsi
nop
mov r8, qword [rbp - 8]
mov r11, qword [rbp + 0x28]
nop dword [rax + rax]
mov eax, dword [0x140213578]
mov ecx, dword [0x14021357c]
mov edx, ecx
not edx
and edx, eax
xor ecx, eax
add ecx, eax
sub ecx, edx
add ecx, 0xa38f1eac
xor ecx, 0xdf66311d
cmp ecx, 0x91d9aea3
ja 0x14004c670
cmp r13, rsi
jne 0x14004c770
mov eax, dword [0x140213580]
xor edx, edx
div dword [0x140213584]
mov r14, r9
nop word cs:[rax + rax]
mov eax, dword [0x140213588]
xor edx, edx
div dword [0x14021358c]
xor eax, 0x3b5d11ad
imul rcx, rax, 0x33211a67
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1d
lea ecx, [rax + 0x48329888]
add eax, eax
sub eax, ecx
cmp eax, 0xe829ed63
je 0x14004c6c0
lea rax, [r13 + 0x80]
mov qword [rbp - 0x18], rax
nop word cs:[rax + rax]
mov eax, dword [0x140213590]
add eax, dword [0x140213594]
mov ecx, eax
not ecx
and ecx, 0x712f941a
mov edx, eax
and edx, 0x8ed06be5
imul edx, ecx
mov ecx, eax
and ecx, 0x712f941a
or eax, 0x712f941a
imul eax, ecx
add eax, edx
xor eax, 0x9e01f8c8
add eax, 0x2827ca14
cmp eax, 0x25464fef
jbe 0x14004c710
mov rax, qword [rbp - 0x28]
mov rbx, qword [rbp]
mov r9, qword [rbp - 0x30]
mov rcx, qword [rbp - 0x38]
jmp 0x14004c890
xor eax, eax
test al, al
jne 0x14004c772
nop word cs:[rax + rax]
mov eax, dword [0x140213598]
xor eax, dword [0x14021359c]
mov ecx, eax
not ecx
and ecx, 0xd25f39f4
mov edx, eax
and edx, 0x2da0c60b
imul edx, ecx
mov ecx, eax
and ecx, 0xd25f39f4
or eax, 0xd25f39f4
imul eax, ecx
add eax, edx
imul rax, rax, 0x48ad4bcb
shr rax, 0x3b
or eax, 0x652efbc6
cmp eax, 0x9e36743
jb 0x14004c780
mov rax, r13
sub rax, 0xffffffffffffff80
mov qword [rbp - 0x18], rax
je 0x1400506a1
mov eax, dword [str.___L]
mov ecx, dword [0x1402135a4]
mov edx, eax
and edx, ecx
or eax, ecx
add eax, edx
or eax, 0x43000e88
and eax, 0x63080e88
cmp eax, 0xd4c8f7ff
ja 0x14004c7db
mov eax, dword [0x1402135a8]
mov ecx, dword [0x1402135ac]
not eax
not ecx
and ecx, eax
not ecx
add ecx, 0xa5222366
cmp ecx, 0x2f230aed
jb 0x14004c800
cmp qword [rbp - 0x18], r10
ja 0x1400506b9
mov r14, r9
mov eax, dword [0x1402135b0]
xor edx, edx
div dword [0x1402135b4]
mov eax, dword [0x1402135b8]
mov ecx, dword [0x1402135bc]
mov edx, eax
not edx
and edx, ecx
not ecx
and ecx, eax
sub ecx, edx
lea eax, [rcx + 0x4ee606b3]
not eax
or eax, 0x60c61873
add eax, ecx
add eax, 0x4ee606b4
mov ecx, eax
not ecx
or eax, 0xf622695c
or ecx, 0x9dd96a3
and ecx, eax
lea rbx, [r8 + r13]
mov eax, 0x80
cmp ecx, 0xb75af448
je 0x14004c83d
xor r9d, r9d
xor ecx, ecx
mov qword [rbp + 0x110], rcx
mov qword [rbp + 0x10], r12
mov qword [rbp - 0x78], r13
mov r13, qword [rbp + 0xf8]
mov ecx, dword [0x1402135d8]
and ecx, dword [0x1402135dc]
mov r8d, ecx
not r8d
mov r10d, ecx
and r10d, 0x5ac69770
and r8d, 0xa539688f
imul r8d, r10d
mov r10d, ecx
and r10d, 0xa539688f
or ecx, 0xa539688f
imul ecx, r10d
add ecx, r8d
mov r8d, ecx
not r8d
or ecx, 0x5563f9fa
or r8d, 0xaa9c0605
and r8d, ecx
not r8d
imul rcx, r8, 0x5e652f03
shr rcx, 0x3e
mov r8, r15
add r8, rax
mov rsi, r13
adc rsi, 0
cmp ecx, 0x955f265d
ja 0x14004c8a6
mov r15, qword [rbp + 0x30]
mov rax, r15
not rax
mov qword [rbp + 0x28], r11
sub rax, r11
mov r12, rbx
mov rcx, qword [rbx]
mov qword [rbp + 0x68], rcx
sub rax, rcx
not rax
mov rcx, rax
and rcx, r8
add rcx, rcx
mov qword [rbp - 0x70], r8
add r8, rax
sub r8, rcx
movabs r10, 0xa476c2a501af3190
mov rcx, r10
not rcx
xor rcx, r10
and r8, rcx
movabs r11, 0x510e527fade682d1
and rcx, r11
xor rcx, r10
xor rcx, r10
xor rcx, r8
rol rcx, 0x20
mov qword [rbp + 0x108], rcx
movabs r8, 0x6a09e667f3bcc908
lea r11, [rcx + r8]
mov qword [rbp + 0xf8], r11
not r11
mov r8, r11
mov qword [rbp + 0x30], r15
and r8, r15
or r11, r15
not r11
or r11, r8
mov r10, qword [rbx + 8]
mov qword [rbp + 0x48], r10
mov r8, rax
and r8, r10
xor rax, r10
lea rax, [rax + r8*2]
rol r11, 0x28
mov r8, rax
and r8, r11
or rax, r11
add rax, r8
mov qword [rbp + 0xb8], rax
mov rax, qword [rbx + 0x10]
mov qword [rbp + 0xa8], rax
mov r8, qword [rbp + 0x20]
lea r15, [r8 + rdi]
mov r13, rdi
mov qword [rbp - 0x68], rdi
add r15, rax
mov r8, r15
mov rdi, rsi
mov qword [rbp - 0x60], rsi
xor r8, rsi
not r8
and r8, rsi
add r8, r8
sub rdi, r8
add rdi, r15
movabs rax, 0x9b05688c2b3e6c1f
mov r10, rax
xor r10, rax
not r10
and r10, rdi
xor r10, rax
rol r10, 0x20
mov r8, r10
movabs rax, 0xbb67ae8584caa73b
and r8, rax
mov rdi, r10
xor rdi, rax
lea rdx, [rdi + r8*2]
mov rsi, qword [rbx + 0x20]
mov qword [rbp - 0x10], r14
mov rax, qword [rbp + 0x38]
lea r8, [r14 + rax]
mov rbx, rax
mov qword [rbp + 0x38], rax
mov rdi, r8
mov qword [rbp + 0x60], rsi
and rdi, rsi
xor r8, rsi
lea rcx, [r8 + rdi*2]
xor r9, rcx
mov rdi, r9
movabs rax, 0x1f83d9abfb41bd6b
and rdi, rax
or r9, rax
not rdi
and rdi, r9
movabs rax, 0xe236e37e2bcf426
sub r15, rax
rol rdi, 0x20
mov r8, qword [r12 + 0x18]
mov qword [rbp + 0x78], r8
add r8, rax
add r15, r8
mov r14, rdi
movabs rax, 0xa18ab236f4230ec8
sub r14, rax
add r14, qword [rbp - 0x40]
mov r9, r14
not r9
mov r8, rbx
not r8
mov rbx, r9
or rbx, r8
and r8, r9
mov r9, rdx
xor r9, r13
rol r9, 0x28
not r8
and r8, rbx
movabs rax, 0xa2df9751c1d71c5d
sub rcx, rax
mov rsi, qword [r12 + 0x28]
mov qword [rbp + 0xb0], rsi
add rcx, rsi
add rcx, rax
mov r13, r9
xor r13, r9
add r15, r9
xor r10, r15
rol r10, 0x30
add rdx, r10
mov qword [rbp + 0xe0], rdx
not r13
and r13, rdx
rol r8, 0x28
add rcx, r8
mov qword [rbp + 0x100], rcx
xor rdi, rcx
rol rdi, 0x30
mov qword [rbp + 0xc0], rdi
xor r13, r9
mov r9, rdi
and r9, r14
or r14, rdi
add r14, r9
mov r9, r14
and r9, r8
not r8
mov rax, r14
not rax
and rax, r8
not r9
not rax
and rax, r9
mov qword [rbp + 0xd8], rax
mov rdi, r12
mov r9, qword [r12 + 0x30]
mov qword [rbp + 0x80], r9
mov rax, qword [rbp + 0x18]
mov rsi, qword [rbp + 0x10]
lea r8, [rax + rsi]
add r8, r9
mov rdx, qword [rbp + 0x110]
xor rdx, r8
movabs r9, 0x544618328bc2f8f
mov r12, r9
not r12
xor r12, r9
and rdx, r12
movabs rax, 0x5be0cd19137e2179
and r12, rax
xor r12, r9
xor r12, r9
xor r12, rdx
rol r12, 0x20
movabs rax, 0xa54ff53a5f1d36f1
lea rdx, [r12 + rax]
mov r9, rdx
not r9
mov rax, r9
and rax, rsi
or r9, rsi
not r9
or r9, rax
rol r9, 0x28
mov rax, qword [rdi + 0x38]
mov qword [rbp + 0x98], rax
add r8, rax
mov rax, r8
and rax, r9
xor r8, r9
lea rcx, [r8 + rax*2]
mov qword [rbp + 0xe8], rcx
movabs rsi, 0x5b3961a25076836d
mov r8, rsi
not r8
xor r8, rsi
mov rax, r8
and r8, r9
xor r12, rcx
rol r12, 0x30
movabs r9, 0xa3c8f2f8bfc49558
add rdx, r9
add rdx, r12
sub rdx, r9
and rax, rdx
xor r8, rsi
xor r8, rsi
xor r8, rax
mov rbx, qword [rbp + 0x108]
mov rsi, qword [rbp + 0xb8]
xor rbx, rsi
mov r9, qword [rdi + 0x40]
mov rcx, rdi
mov qword [rbp + 0xa0], r9
movabs rax, 0x3fdd7b846933454e
sub r9, rax
add r9, rax
add r9, rsi
rol r13, 1
add r9, r13
xor r12, r9
rol r12, 0x20
mov rax, r12
and rax, r14
xor r14, r12
lea rax, [r14 + rax*2]
mov qword [rbp + 0xf0], rax
mov rdi, r13
xor rdi, r13
not rdi
and rdi, rax
xor rdi, r13
mov rsi, qword [rcx + 0x50]
mov rax, rcx
mov qword [rbp + 0xb8], rsi
mov r14, rsi
and r14, r15
xor r15, rsi
lea r14, [r15 + r14*2]
mov rcx, rbx
rol rcx, 0x30
mov r13, qword [rbp + 0xf8]
add r13, rcx
mov rbx, qword [rbp + 0xd8]
rol rbx, 1
add r14, rbx
not rcx
mov rsi, r14
or rsi, rcx
and rcx, r14
not rcx
and rcx, rsi
rol rdi, 0x28
mov r15, rax
mov rsi, qword [rax + 0x48]
mov qword [rbp + 0x88], rsi
add r9, rsi
add r9, rdi
mov rsi, r9
not rsi
and rsi, r12
not rsi
not r12
and r12, r9
not r12
not rcx
rol rcx, 0x20
and r12, rsi
mov rsi, rcx
and rsi, rdx
xor rdx, rcx
lea rax, [rdx + rsi*2]
mov qword [rbp + 0x110], rax
mov rdx, rax
and rdx, rbx
add rdx, rdx
add rbx, rax
sub rbx, rdx
rol rbx, 0x28
mov qword [rbp + 0xd8], rbx
mov rsi, r15
mov rax, qword [r15 + 0x58]
mov qword [rbp + 0x58], rax
add r14, rax
add r14, rbx
mov rdx, r14
xor rdx, rcx
not rdx
and rdx, rcx
add rdx, rdx
sub rcx, rdx
mov qword [rbp + 0x108], rcx
mov r15, qword [rsi + 0x60]
mov rbx, rsi
mov qword [rbp + 0x70], r15
movabs rsi, 0xfc631f92bc7af2d4
mov rax, qword [rbp + 0x100]
add rax, r15
add rax, rsi
rol r8, 1
sub rax, rsi
movabs rdx, 0xc3a8f7cf5aef5506
sub rax, rdx
add rax, rdx
add rax, r8
not r10
mov rsi, rax
or rsi, r10
and r10, rax
mov r15, rax
not rsi
or rsi, r10
mov rax, r13
xor r11, r13
rol rsi, 0x20
mov rdx, rsi
movabs r10, 0x122dc399c6da9d9e
sub rdx, r10
add rax, r10
add rax, rdx
xor r8, rax
rol r8, 0x28
mov rdx, qword [rbx + 0x68]
mov qword [rbp + 0x90], rdx
add r15, rdx
add r15, r8
mov qword [rbp + 0x100], r15
mov rdx, r15
and rdx, rsi
add rdx, rdx
add rsi, r15
sub rsi, rdx
rol r11, 1
mov rcx, qword [rbp + 0xe8]
add rcx, r11
movabs rdx, 0x7fa96a0ef10c30c1
sub rcx, rdx
mov r10, qword [rbx + 0x70]
add rdx, r10
mov r13, r10
mov qword [rbp + 0x40], r10
add rcx, rdx
movabs r15, 0x16b9042440b648ef
mov rdx, r15
not rdx
xor rdx, r15
mov r10, rdx
and rdx, qword [rbp + 0xc0]
and r10, rcx
xor rdx, r15
xor rdx, r15
xor rdx, r10
rol rdx, 0x20
mov r15, qword [rbp + 0xe0]
add r15, rdx
mov r10, r15
and r10, r11
add r10, r10
add r11, r15
sub r11, r10
rol r11, 0x28
mov r10, qword [rbx + 0x78]
mov qword [rbp + 0xc0], r10
add rcx, r10
add rcx, r11
mov qword [rbp + 0xe8], rcx
xor rdx, rcx
rol rdx, 0x30
add r15, rdx
mov r10, r15
mov qword [rbp + 0xe0], r15
xor r10, r11
not r10
and r10, r11
add r10, r10
sub r11, r10
mov rcx, qword [rbp + 0x108]
add rcx, r14
rol rcx, 0x30
add qword [rbp + 0x110], rcx
rol rsi, 0x30
add rax, rsi
add r11, r15
rol r11, 1
add r9, r13
add r9, r11
xor rcx, r9
rol rcx, 0x20
xor r8, rax
mov r10, rcx
movabs r15, 0xb20696420e277555
sub r10, r15
add rax, r15
add rax, r10
mov r10, rax
not r10
or r10, r11
not r11
or r11, rax
not r11
not r10
or r10, r11
rol r10, 0x28
add r9, qword [rbp + 0xb8]
add r9, r10
mov r11, r9
xor r11, rcx
not r11
and r11, rcx
add r11, r11
sub rcx, r11
add rcx, r9
rol rcx, 0x30
mov r11, rax
add r11, rcx
mov qword [rbp + 0xf8], r11
mov rax, r10
xor rax, r10
not rax
and rax, r11
xor rax, r10
mov qword [rbp + 0xd0], rax
not r12
rol r12, 0x30
mov r15, qword [rbp + 0xf0]
add r15, r12
xor rdi, r15
rol rdi, 1
add r14, qword [rbp + 0x60]
add r14, rdi
mov r13, rsi
xor r13, r14
not r13
and r13, r14
add r13, r13
mov r11, qword [rbp + 0xa0]
neg r11
mov qword [rbp - 0x20], r11
sub r11, r14
mov r10, r14
sub r10, r13
mov rbx, qword [rbp + 0xd8]
xor rbx, qword [rbp + 0x110]
rol rbx, 1
add r10, rsi
rol r10, 0x20
mov rsi, qword [rbp + 0xe0]
add rsi, r10
xor rdi, rsi
mov rax, rsi
rol rdi, 0x28
mov rsi, rdi
not rsi
add r11, rsi
not r11
not r10
mov r14, r11
or r14, r10
and r10, r11
not r10
and r10, r14
not r10
rol r10, 0x30
mov r14, r10
and r14, rax
or rax, r10
mov r13, qword [rbp + 0x100]
add r13, qword [rbp + 0x88]
add r13, rbx
mov qword [rbp + 0x100], r13
xor rdx, r13
rol rdx, 0x20
add rax, r14
mov qword [rbp + 0xe0], rax
mov r14, rdx
movabs r13, 0x1a11d46295143c9b
sub r14, r13
add r15, r13
add r15, r14
rol r8, 1
xor rsi, rdi
and rsi, rax
xor rbx, r15
rol rbx, 0x28
xor rsi, rdi
mov rdi, qword [rbp + 0xe8]
add rdi, qword [rbp + 0x90]
add rdi, r8
mov rax, rdi
xor rax, r12
not rax
and rax, r12
add rax, rax
sub r12, rax
mov rax, qword [rbp + 0x100]
add rax, qword [rbp + 0xc0]
add rax, rbx
mov qword [rbp + 0x100], rax
xor rdx, rax
rol rdx, 0x30
mov rax, rdx
and rax, r15
xor r15, rdx
add r12, rdi
rol r12, 0x20
lea r13, [r15 + rax*2]
mov rax, r12
mov r15, qword [rbp + 0x110]
and rax, r15
or r15, r12
add r15, rax
mov rax, r15
not rax
mov r14, r15
or r14, r8
not r8
or r8, rax
and r8, r14
mov rax, rdi
mov r14, qword [rbp + 0x80]
and rax, r14
xor rdi, r14
lea r14, [rdi + rax*2]
rol rsi, 1
mov rdi, r13
mov rax, r13
and rax, rbx
add rax, rax
add rbx, r13
rol r8, 0x28
add r14, r8
mov qword [rbp + 0xf0], r14
xor r12, r14
rol r12, 0x30
sub rbx, rax
mov rax, r12
movabs r14, 0x86c4fbad46309cf
sub rax, r14
add r15, r14
add r15, rax
add r9, qword [rbp + 0x48]
add r9, rsi
mov rax, r9
xor rax, r12
not rax
and rax, r12
add rax, rax
sub r12, rax
add r12, r9
rol r12, 0x20
mov rax, r12
movabs r14, 0x37d395bc55b536ec
sub rax, r14
add rdi, r14
add rdi, rax
mov qword [rbp + 0x108], rdi
mov r13, rsi
xor r13, rsi
not r13
and r13, rdi
xor r13, rsi
mov rax, r15
xor rax, r8
not rax
and rax, r8
add rax, rax
rol r13, 0x28
sub r8, rax
add r9, qword [rbp + 0x70]
add r9, r13
mov rax, r9
and rax, r12
add rax, rax
add r12, r9
sub r12, rax
rol rbx, 1
add r11, qword [rbp + 0x68]
mov rax, r11
and rax, rbx
xor r11, rbx
lea rax, [r11 + rax*2]
mov r11, qword [rbp + 0xa8]
lea rsi, [r11 + rax]
not rax
mov r11, rax
and r11, rcx
or rax, rcx
not r11
and rax, r11
add r8, r15
not rax
rol rax, 0x20
add r15, rax
xor rbx, r15
rol rbx, 0x28
movabs rcx, 0x22aa4bbdc6dadbcd
mov r11, rsi
sub r11, rcx
add r11, rcx
add r11, rbx
mov rcx, r11
mov qword [rbp + 0xe8], r11
xor rcx, rax
not rcx
and rcx, rax
add rcx, rcx
sub rax, rcx
add rax, r11
rol rax, 0x30
mov rcx, r15
add rcx, rax
mov qword [rbp + 0x110], rcx
not rcx
not rbx
mov r11, rcx
or r11, rbx
and rbx, rcx
not r11
or rbx, r11
mov r15, qword [rbp + 0x58]
not r15
sub r15, qword [rbp + 0x100]
rol r8, 1
not r15
movabs r11, 0x42d13bc6c9019b76
add r15, r11
add r15, r8
movabs rsi, 0xfff50566a39bd99e
mov rdi, rsi
not rdi
xor rdi, rsi
mov rcx, rdi
and rdi, r8
mov r14, qword [rbp + 0xd0]
rol r14, 1
sub r15, r11
xor r10, r15
rol r10, 0x20
mov r11, r10
mov qword [rbp + 0x100], r10
movabs r8, 0xfa62db41f6a7b2b5
mov r10, qword [rbp + 0xf8]
add r10, r8
add r10, r11
sub r10, r8
mov qword [rbp + 0xf8], r10
and rcx, r10
xor rdi, rsi
xor rdi, rsi
xor rdi, rcx
mov r10, qword [rbp + 0xf0]
add r10, qword [rbp + 0xb0]
mov r8, r14
add r10, r14
xor rdx, r10
rol rdx, 0x20
mov r14, qword [rbp + 0xe0]
add r14, rdx
mov rcx, r8
xor rcx, r8
not rcx
and rcx, r14
xor rcx, r8
movabs rsi, 0xbaaa8372dd289c6a
mov r11, rsi
not r11
xor r11, rsi
mov r8, r11
and r11, rdx
rol rcx, 0x28
add r10, qword [rbp + 0x78]
add r10, rcx
mov qword [rbp + 0xf0], r10
and r8, r10
xor r11, rsi
xor r11, rsi
xor r11, r8
rol rdi, 0x28
add r15, qword [rbp + 0x98]
add r15, rdi
mov rdx, r15
mov r10, qword [rbp + 0x100]
xor rdx, r10
not rdx
and rdx, r10
add rdx, rdx
rol r11, 0x30
add r14, r11
mov qword [rbp + 0xe0], r14
xor rcx, r14
rol rcx, 1
sub r10, rdx
add r9, qword [rbp + 0x58]
add r9, rcx
not rax
mov rsi, r9
or rsi, rax
and rax, r9
not rsi
or rsi, rax
mov rax, r10
add rax, r15
rol rax, 0x30
mov qword [rbp + 0x100], rax
mov r8, qword [rbp + 0xf8]
add r8, rax
xor rdi, r8
rol rsi, 0x20
mov rax, rsi
movabs rdx, 0x85e64a6f533a555
sub rax, rdx
add r8, rdx
add r8, rax
mov qword [rbp + 0xf8], r8
mov rax, rcx
xor rax, rcx
not rax
and rax, r8
xor rax, rcx
mov rcx, r9
mov rdx, qword [rbp + 0xa0]
and rcx, rdx
xor r9, rdx
lea r9, [r9 + rcx*2]
rol rax, 0x28
movabs rcx, 0x28f3e279081b5c2f
add r9, rcx
add r9, rax
movabs r8, 0x7ed85d984b1b2b0e
mov r10, r8
not r10
xor r10, r8
mov rdx, r10
and r10, rax
mov r14, qword [rbp + 0xe8]
mov rcx, r14
mov rax, qword [rbp + 0x70]
and rcx, rax
or r14, rax
add r14, rcx
rol r12, 0x30
mov rax, qword [rbp + 0x108]
add rax, r12
mov qword [rbp + 0x108], rax
xor r13, rax
rol r13, 1
movabs rax, 0x28f3e279081b5c2f
sub r9, rax
xor rsi, r9
rol rsi, 0x30
mov rax, qword [rbp + 0xf8]
add rax, rsi
mov qword [rbp + 0xf8], rax
and rdx, rax
xor r10, r8
xor r10, r8
add r14, r13
mov rax, qword [rbp + 0x100]
xor rax, r14
rol rax, 0x20
xor r10, rdx
mov rdx, qword [rbp + 0xe0]
add rdx, rax
mov rcx, rax
mov rax, rdx
mov r8, rdx
not rax
not r13
mov rdx, rax
or rdx, r13
and r13, rax
not r13
and r13, rdx
rol r13, 0x28
add r14, qword [rbp + 0x68]
mov rax, r14
and rax, r13
or r14, r13
add r14, rax
mov qword [rbp + 0xe8], r14
xor rcx, r14
rol rcx, 0x30
mov rax, rcx
and rax, r8
xor r8, rcx
lea rdx, [r8 + rax*2]
mov qword [rbp + 0x100], rdx
not rbx
rol rbx, 1
mov rax, rdx
and rax, r13
add rax, rax
add r13, rdx
add r15, qword [rbp + 0xb0]
add r15, rbx
xor r11, r15
rol r11, 0x20
sub r13, rax
mov rax, qword [rbp + 0x108]
add rax, r11
mov qword [rbp + 0x108], rax
mov rdx, rax
not rdx
or rax, rbx
not rbx
or rbx, rdx
rol rdi, 1
mov r8, qword [rbp + 0xf0]
add r8, qword [rbp + 0xc0]
mov rdx, r8
and rdx, rdi
xor r8, rdi
lea rdx, [r8 + rdx*2]
mov r8, rdx
and r8, r12
add r8, r8
add r12, rdx
sub r12, r8
mov r8, rdx
mov r14, qword [rbp + 0x90]
and r8, r14
xor rdx, r14
lea rdx, [rdx + r8*2]
rol r12, 0x20
mov r14, qword [rbp + 0x110]
add r14, r12
xor rdi, r14
rol rdi, 0x28
add rdx, rdi
mov r8, rdx
xor r8, r12
not r8
and r8, r12
add r8, r8
sub r12, r8
add r12, rdx
rol r12, 0x30
and rbx, rax
add r14, r12
mov qword [rbp + 0x110], r14
mov r8, r14
not r8
mov rax, r14
or rax, rdi
not rdi
or rdi, r8
rol r13, 1
not rdi
not rax
or rax, rdi
mov r8, r9
mov rdi, qword [rbp + 0xb8]
and r8, rdi
xor r9, rdi
lea r9, [r9 + r8*2]
rol rbx, 0x28
add r15, qword [rbp + 0xa8]
add r15, rbx
xor r11, r15
rol r11, 0x30
movabs r8, 0x9d13fa0a7ba07795
sub r9, r8
add r9, r8
add r9, r13
mov r8, r9
xor r8, r12
not r8
and r8, r12
add r8, r8
sub r12, r8
mov rdi, qword [rbp + 0x108]
add rdi, r11
xor rbx, rdi
add r12, r9
rol r12, 0x20
mov r8, r12
and r8, rdi
or rdi, r12
add rdi, r8
mov r8, rdi
mov r14, rdi
xor r8, r13
not r8
and r8, r13
add r8, r8
sub r13, r8
movabs rdi, 0xe6f55ec7fd15d125
mov r8, qword [rbp + 0x40]
add r8, rdi
add r9, r8
rol rbx, 1
add r13, r14
rol r13, 0x28
sub r9, rdi
movabs r8, 0x4bc88b74adf48e81
add r9, r8
add r9, r13
sub r9, r8
xor r12, r9
rol r12, 0x30
add r14, r12
mov qword [rbp + 0x108], r14
mov r8, r14
not r8
or r8, r13
not r13
or r13, r14
and r13, r8
mov r14, qword [rbp + 0xe8]
add r14, qword [rbp + 0x78]
add r14, rbx
not rsi
mov r8, r14
or r8, rsi
and rsi, r14
not rsi
and rsi, r8
not rsi
rol rsi, 0x20
movabs r8, 0x32d9c680c503e804
mov rdi, qword [rbp + 0x110]
add rdi, r8
add rdi, rsi
sub rdi, r8
mov qword [rbp + 0x110], rdi
mov r8, rdi
and r8, rbx
add r8, r8
add rbx, rdi
sub rbx, r8
not rax
rol rax, 1
movabs rdi, 0x8f78fc7bcaf33806
mov r8, qword [rbp + 0x80]
add r8, rdi
add r14, r8
mov qword [rbp + 0xe8], r14
add r15, qword [rbp + 0x98]
movabs r8, 0x9346015d1e5d280d
sub r15, r8
add r15, r8
add r15, rax
mov r14, rcx
xor r14, r15
rol r14, 0x20
mov r8, qword [rbp + 0xf8]
add r8, r14
mov qword [rbp + 0xf8], r8
mov rdi, r8
and rdi, rax
or rax, r8
not rdi
and rdi, rax
rol rbx, 0x28
mov qword [rbp + 0xd8], rbx
mov rax, qword [rbp + 0xe8]
movabs rcx, 0x8f78fc7bcaf33806
sub rax, rcx
add rax, rbx
mov qword [rbp + 0xe8], rax
mov rbx, rsi
xor rbx, rsi
not rbx
and rbx, rax
rol rdi, 0x28
xor rbx, rsi
mov r8, r15
mov rsi, qword [rbp + 0x48]
and r8, rsi
or r15, rsi
add r15, r8
add r15, rdi
mov r8, r15
xor r8, r14
not r8
and r8, r14
add r8, r8
sub r14, r8
rol r10, 1
add rdx, qword [rbp + 0x88]
mov r8, rdx
and r8, r10
xor rdx, r10
lea r8, [rdx + r8*2]
mov rdx, r11
xor rdx, r11
not rdx
and rdx, r8
xor rdx, r11
rol rdx, 0x20
mov rsi, rdx
mov rax, qword [rbp + 0x100]
and rsi, rax
or rax, rdx
add rax, rsi
mov rsi, rax
and rsi, r10
or r10, rax
not r10
or r10, rsi
not r10
rol r10, 0x28
add r8, qword [rbp + 0x60]
mov rsi, r8
and rsi, r10
xor r8, r10
lea rcx, [r8 + rsi*2]
mov qword [rbp + 0xd0], rcx
xor rdx, rcx
rol rdx, 0x30
add rax, rdx
mov r8, r10
xor r8, r10
not r8
and r8, rax
xor r8, r10
rol r8, 1
add r9, qword [rbp + 0x98]
movabs rcx, 0x867f09aa01788235
sub r9, rcx
add rcx, r8
add r9, rcx
rol rbx, 0x30
movabs r10, 0x7e0d2f140bd1d0fa
mov rcx, qword [rbp + 0x110]
add rcx, r10
add r14, r15
mov r11, r15
rol r14, 0x30
add rcx, rbx
mov qword [rbp + 0x110], rcx
movabs rcx, 0x44c6115b466cd08d
mov rsi, qword [rbp + 0xf8]
add rsi, rcx
add rsi, r14
sub rsi, rcx
xor rdi, rsi
xor rbx, r9
rol rbx, 0x20
add rsi, rbx
mov qword [rbp + 0xf8], rsi
mov r15, r8
xor r15, r8
not r15
and r15, rsi
xor r15, r8
mov r8, r9
mov rcx, qword [rbp + 0x88]
and r8, rcx
xor r9, rcx
lea rcx, [r9 + r8*2]
rol r15, 0x28
mov r8, rcx
and r8, r15
or rcx, r15
add rcx, r8
mov qword [rbp + 0xf0], rcx
not r13
rol r13, 1
mov rcx, qword [rbp + 0xe8]
add rcx, qword [rbp + 0x78]
add rcx, r13
mov r9, r14
xor r9, rcx
not r9
and r9, rcx
add r9, r9
mov r8, rcx
sub r8, r9
add r8, r14
movabs r10, 0x7c1254f804789a4a
mov rsi, r10
not rsi
xor rsi, r10
mov r9, rsi
and rsi, r13
rol r8, 0x20
add rax, r8
and r9, rax
mov r13, rax
xor rsi, r10
xor rsi, r10
xor rsi, r9
rol rsi, 0x28
mov rax, rcx
add rax, qword [rbp + 0x48]
add rax, rsi
mov qword [rbp + 0xe8], rax
mov rcx, r8
xor rcx, r8
not rcx
and rcx, rax
xor rcx, r8
mov r14, qword [rbp + 0x110]
movabs rax, 0x7e0d2f140bd1d0fa
sub r14, rax
mov r10, qword [rbp + 0xd8]
xor r10, r14
rol r10, 1
rol rcx, 0x30
mov qword [rbp + 0xe0], rcx
mov r8, rcx
movabs r9, 0x1284a15c4e14933a
sub r8, r9
add r13, r9
add r11, qword [rbp + 0x90]
add r11, r10
xor rdx, r11
rol rdx, 0x20
add r13, r8
mov qword [rbp + 0x100], r13
mov rax, qword [rbp + 0x108]
add rax, rdx
mov r8, rax
xor r8, r10
not r8
and r8, r10
add r8, r8
sub r10, r8
rol rdi, 1
movabs r8, 0xf7491182ac2528ab
sub r11, r8
mov rcx, qword [rbp + 0x70]
add r8, rcx
add r11, r8
mov rcx, qword [rbp + 0xd0]
add rcx, qword [rbp + 0x58]
add rcx, rdi
xor r12, rcx
rol r12, 0x20
add r14, r12
mov r8, r14
xor r8, rdi
not r8
and r8, rdi
add r8, r8
sub rdi, r8
add rdi, r14
rol rdi, 0x28
add rcx, qword [rbp + 0x40]
mov r8, rcx
and r8, rdi
or rcx, rdi
add rcx, r8
mov qword [rbp + 0xd0], rcx
add r10, rax
rol r10, 0x28
add r11, r10
mov r8, rdx
xor r8, rdx
not r8
and r8, r11
xor r12, rcx
rol r12, 0x30
xor r8, rdx
movabs r13, 0x15b72e7d781697ef
mov rcx, r13
not rcx
xor rcx, r13
mov rdx, rcx
and rcx, r12
movabs r9, 0x111d9983f1452825
sub r12, r9
add r14, r9
add r14, r12
mov qword [rbp + 0x110], r14
not rdi
mov r9, r14
or r9, rdi
and rdi, r14
not rdi
and rdi, r9
rol r8, 0x30
add rax, r8
mov qword [rbp + 0x108], rax
xor r10, rax
rol r10, 1
mov r12, r10
not r12
mov r9, r12
sub r9, qword [rbp + 0xb0]
not r9
add r9, qword [rbp + 0xe8]
mov rax, qword [rbp + 0xf0]
xor rbx, rax
rol rbx, 0x30
add qword [rbp + 0xf8], rbx
mov r14, r9
and r14, rbx
or rbx, r9
not rbx
or rbx, r14
xor rsi, qword [rbp + 0x100]
rol rsi, 1
add rax, qword [rbp + 0xa8]
add rax, rsi
mov qword [rbp + 0xf0], rax
and rdx, rax
mov r14, rcx
xor r14, r13
xor r14, r13
not rbx
rol rbx, 0x20
xor r14, rdx
mov r13, qword [rbp + 0x110]
add r13, rbx
mov qword [rbp + 0x110], r13
mov rdx, r13
not rdx
or rdx, r10
or r12, r13
and rdx, r12
mov r10, r9
mov rcx, qword [rbp + 0xb8]
and r10, rcx
or r9, rcx
add r9, r10
not rdx
rol rdx, 0x28
mov qword [rbp + 0xd8], rdx
mov r10, r9
and r10, rdx
or r9, rdx
add r9, r10
movabs rdx, 0xa3d94a4a85e85411
mov r12, rdx
not r12
xor r12, rdx
mov r10, r12
and r12, rbx
and r10, r9
xor r12, rdx
xor r12, rdx
xor r12, r10
mov r13, qword [rbp + 0xf8]
xor r15, r13
rol r15, 1
movabs rdx, 0x7136cadad096ce30
mov rax, qword [rbp + 0xc0]
lea r10, [rax + rdx]
add r10, r15
add r10, qword [rbp + 0xd0]
not rdi
rol rdi, 1
mov rcx, r11
add rcx, qword [rbp + 0x60]
mov rax, rcx
and rax, rdi
or rcx, rdi
sub r10, rdx
xor r8, r10
rol r8, 0x20
add rcx, rax
mov rdx, rcx
mov qword [rbp + 0xd0], rcx
mov rcx, qword [rbp + 0x100]
add rcx, r8
mov rax, rcx
mov rbx, rcx
xor rax, r15
not rax
and rax, r15
add rax, rax
sub r15, rax
mov rax, qword [rbp + 0xe0]
xor rax, rdx
rol rax, 0x20
mov qword [rbp + 0xe0], rax
mov r11, r13
add r11, rax
mov rax, r11
xor rax, rdi
not rax
and rax, rdi
add rax, rax
add r15, rcx
rol r15, 0x28
sub rdi, rax
add r10, qword [rbp + 0xa0]
add r10, r15
mov rax, r10
xor rax, r8
not rax
and rax, r8
add rax, rax
sub r8, rax
rol r14, 0x20
mov rax, qword [rbp + 0x108]
add rax, r14
mov qword [rbp + 0x108], rax
xor rsi, rax
rol rsi, 0x28
mov r13, qword [rbp + 0xf0]
add r13, qword [rbp + 0x80]
movabs rax, 0x46f157fd2bcb45a1
sub r13, rax
add r13, rax
add r13, rsi
xor r14, r13
mov qword [rbp + 0xe8], r14
mov rax, r13
mov rcx, qword [rbp + 0x88]
and rax, rcx
or r13, rcx
add r13, rax
rol r12, 0x30
add qword [rbp + 0x110], r12
add r8, r10
rol r8, 0x30
add rbx, r8
mov qword [rbp + 0x100], rbx
xor r15, rbx
rol r15, 1
add r13, r15
mov rax, r13
and rax, r12
add rax, rax
add r12, r13
sub r12, rax
add rdi, r11
rol rdi, 0x28
mov rcx, qword [rbp + 0x68]
mov rdx, qword [rbp + 0xd0]
add rdx, rcx
add rdx, rdi
mov qword [rbp + 0xd0], rdx
mov rax, qword [rbp + 0xe0]
xor rax, rdx
rol rax, 0x30
movabs rdx, 0xd764e10cf17d83a5
mov rbx, rdx
not rbx
xor rbx, rdx
mov r14, rbx
and rbx, r15
add r11, rax
mov r15, rax
not rdi
mov rax, r11
or rax, rdi
and rdi, r11
rol r12, 0x20
add r11, r12
and r14, r11
xor rbx, rdx
xor rbx, rdx
xor rbx, r14
rol rbx, 0x28
add r13, rcx
add r13, rbx
mov qword [rbp + 0xf0], r13
mov r14, r13
not r14
mov rcx, r14
and rcx, r12
or r14, r12
not r14
or r14, rcx
mov rdx, qword [rbp + 0xe8]
rol rdx, 0x30
mov qword [rbp + 0xe8], rdx
mov rcx, qword [rbp + 0x108]
add rcx, rdx
xor rsi, rcx
mov r12, rcx
rol rsi, 1
movabs rcx, 0x2dc48f07824cf07d
sub r9, rcx
mov rdx, qword [rbp + 0xb0]
add rcx, rdx
add r9, rcx
add r9, rsi
mov r13, r15
mov rcx, r15
and rcx, r9
add rcx, rcx
add r13, r9
sub r13, rcx
not rax
rol r14, 0x30
rol r13, 0x20
or rax, rdi
mov rcx, r13
mov rdx, qword [rbp + 0x100]
and rcx, rdx
xor rdx, r13
lea rdi, [rdx + rcx*2]
mov rcx, r9
mov rdx, qword [rbp + 0x98]
and rcx, rdx
or r9, rdx
add r9, rcx
add r11, r14
mov qword [rbp + 0xf8], r11
xor r11, rbx
not r11
and r11, rbx
add r11, r11
xor rsi, rdi
rol rsi, 0x28
movabs rdx, 0xc9759a5af1b171df
sub r9, rdx
add r9, rdx
add r9, rsi
xor r13, r9
rol r13, 0x30
mov qword [rbp + 0xe0], r13
sub rbx, r11
mov rcx, r13
mov rdx, rdi
and rcx, rdi
or rdx, r13
add rdx, rcx
mov rcx, rdx
mov r13, rdx
mov qword [rbp + 0x100], rdx
xor rcx, rsi
not rcx
and rcx, rsi
add rcx, rcx
sub rsi, rcx
mov rcx, qword [rbp + 0xd8]
mov r11, qword [rbp + 0x110]
xor rcx, r11
rol rcx, 1
mov r15, qword [rbp + 0xd0]
add r15, qword [rbp + 0xa8]
add r15, rcx
mov rdi, r8
xor rdi, r8
not rdi
and rdi, r15
xor rdi, r8
rol rdi, 0x20
add r12, rdi
mov qword [rbp + 0x108], r12
xor rcx, r12
rol rcx, 0x28
add r15, qword [rbp + 0x60]
add r15, rcx
mov r12, rdi
xor r12, rdi
not r12
and r12, r15
xor r12, rdi
rol rax, 1
add r10, qword [rbp + 0xb8]
mov r8, r10
and r8, rax
or r10, rax
add r10, r8
mov rdx, qword [rbp + 0xe8]
mov r8, rdx
xor r8, rdx
not r8
and r8, r10
xor r8, rdx
rol r8, 0x20
mov rdx, r8
and rdx, r11
or r11, r8
add r11, rdx
mov rdx, r11
not rdx
not rax
mov rdi, rdx
or rdi, rax
and rax, rdx
not rdi
or rax, rdi
not rax
rol rax, 0x28
add r10, qword [rbp + 0xc0]
mov rdx, r10
and rdx, rax
or r10, rax
add r10, rdx
mov rdi, r10
not rdi
mov rdx, rdi
and rdx, r8
or rdi, r8
not rdx
and rdi, rdx
not rdi
rol rdi, 0x30
mov rdx, rdi
and rdx, r11
or r11, rdi
add r11, rdx
mov qword [rbp + 0x110], r11
mov rdx, rax
xor rdx, rax
not rdx
and rdx, r11
xor rdx, rax
add rsi, r13
rol rsi, 1
mov r13, qword [rbp + 0xf0]
add r13, qword [rbp + 0x40]
add r13, rsi
not rdi
mov rax, r13
or rax, rdi
and rdi, r13
not rax
or rax, rdi
rol r12, 0x30
mov r8, qword [rbp + 0x108]
add r8, r12
xor rcx, r8
mov qword [rbp + 0xd8], rcx
rol rax, 0x20
add r8, rax
mov qword [rbp + 0x108], r8
xor rsi, r8
rol rsi, 0x28
add r13, qword [rbp + 0x48]
add r13, rsi
not rax
mov rcx, r13
not rcx
mov rdi, rcx
or rdi, rax
and rcx, rax
not rcx
and rcx, rdi
mov r8, rcx
mov rax, r9
mov r11, qword [rbp + 0x58]
and rax, r11
xor r9, r11
lea rcx, [r9 + rax*2]
mov r11, qword [rbp + 0xd8]
rol r11, 1
rol r8, 0x30
mov qword [rbp + 0xc8], r8
mov r9, qword [rbp + 0x108]
add r9, r8
mov qword [rbp + 0x108], r9
xor r9, rsi
not r9
and r9, rsi
add r9, r9
add rcx, r11
xor r14, rcx
rol r14, 0x20
mov rax, qword [rbp + 0x110]
add rax, r14
xor r11, rax
mov r8, rax
rol r11, 0x28
mov qword [rbp + 0xd8], r11
sub rsi, r9
add rcx, qword [rbp + 0x70]
add rcx, r11
mov r9, rcx
xor r9, r14
not r9
and r9, r14
add r9, r9
sub r14, r9
mov r9, r15
mov r11, qword [rbp + 0x80]
and r9, r11
xor r15, r11
lea r9, [r15 + r9*2]
mov rdi, qword [rbp + 0xf8]
add rbx, rdi
rol rdx, 1
add r9, rdx
mov r15, qword [rbp + 0xe0]
xor r15, r9
rol r15, 0x20
add rdi, r15
mov r11, rdx
xor r11, rdx
not r11
and r11, rdi
xor r11, rdx
rol r11, 0x28
add r9, qword [rbp + 0xa0]
mov rdx, r9
and rdx, r11
xor r9, r11
lea r9, [r9 + rdx*2]
mov qword [rbp + 0xf0], r9
rol rbx, 1
add r14, rcx
rol r14, 0x30
add r10, qword [rbp + 0x78]
add r10, rbx
mov rdx, r10
mov rax, r12
and rdx, r12
add rdx, rdx
add rax, r10
sub rax, rdx
mov rdx, r15
xor rdx, r9
rol rdx, 0x30
mov qword [rbp + 0xe0], rdx
mov r9, rdi
add r9, rdx
mov rdx, r9
mov rdi, r9
xor rdx, r11
not rdx
and rdx, r11
add rdx, rdx
rol rax, 0x20
sub r11, rdx
movabs rdx, 0x60ee55087ff04739
mov r12, qword [rbp + 0x100]
add r12, rdx
add r12, rax
sub r12, rdx
xor rbx, r12
rol rbx, 0x28
movabs r9, 0xe46d8147e240857a
mov rdx, qword [rbp + 0x90]
add rdx, r9
add r10, rdx
sub r10, r9
add r10, rbx
not rax
mov rdx, r10
or rdx, rax
and rax, r10
not rax
and rax, rdx
mov rdx, r13
mov r9, qword [rbp + 0xa8]
and rdx, r9
or r13, r9
add r13, rdx
add r8, r14
movabs r9, 0xde21cccaf8222472
mov r15, r9
not r15
xor r15, r9
mov rdx, r15
and r15, r14
not rax
rol rax, 0x30
mov qword [rbp + 0xd0], rax
add r12, rax
xor rbx, r12
mov rax, r12
rol rbx, 1
add r13, rbx
and rdx, r13
xor r15, r9
xor r15, r9
xor r15, rdx
movabs r14, 0xe1b8201ee9903c5e
mov rdx, r14
not rdx
xor rdx, r14
mov r9, rdx
and rdx, rbx
add r11, rdi
rol r15, 0x20
mov qword [rbp + 0xe8], r15
add rdi, r15
mov qword [rbp + 0xf8], rdi
and r9, rdi
xor rdx, r14
xor rdx, r14
xor rdx, r9
rol rdx, 0x28
add r13, qword [rbp + 0x70]
add r13, rdx
movabs r9, 0xec19a16d38774b83
mov r15, r9
not r15
xor r15, r9
mov qword [rbp + 0x50], r15
and r15, rdx
add rsi, qword [rbp + 0x108]
rol rsi, 1
add rcx, qword [rbp + 0x80]
add rcx, rsi
mov rdx, rcx
not rdx
mov r14, qword [rbp + 0xe0]
or rdx, r14
not r14
or r14, rcx
and r14, rdx
not r14
rol r14, 0x20
add rax, r14
mov r9, rsi
xor r9, rsi
not r9
and r9, rax
xor r9, rsi
rol r9, 0x28
add rcx, qword [rbp + 0xb8]
add rcx, r9
mov rdx, rcx
xor rdx, r14
not rdx
and rdx, r14
add rdx, rdx
sub r14, rdx
movabs r12, 0xd229151912796e21
mov rbx, r12
not rbx
xor rbx, r12
mov rsi, rbx
and rbx, r9
add r14, rcx
rol r14, 0x30
add rax, r14
mov qword [rbp + 0x100], rax
and rsi, rax
xor rbx, r12
xor rbx, r12
xor rbx, rsi
mov rdi, r8
mov r8, qword [rbp + 0xd8]
xor r8, rdi
rol r8, 1
mov rdx, qword [rbp + 0xf0]
add rdx, qword [rbp + 0x68]
add rdx, r8
mov qword [rbp + 0xf0], rdx
mov r9, qword [rbp + 0xd0]
xor r9, rdx
rol r9, 0x20
mov qword [rbp + 0xd0], r9
movabs rsi, 0x78f0cbf24fd28d63
sub r9, rsi
mov rdx, qword [rbp + 0x108]
add rdx, rsi
add rdx, r9
mov r12, rdx
mov rax, rdx
mov qword [rbp + 0x108], rdx
not r12
or r12, r8
not r8
or r8, rdx
not r8
not r12
or r12, r8
mov r9, r10
mov rsi, qword [rbp + 0xa0]
and r9, rsi
xor r10, rsi
lea rax, [r10 + r9*2]
rol r11, 1
add rax, r11
movabs rsi, 0x7a4cd6f65d308fdf
mov r9, rsi
not r9
xor r9, rsi
mov r10, r9
and r9, r11
mov r8, qword [rbp + 0xc8]
xor r8, rax
rol r8, 0x20
add rdi, r8
and r10, rdi
xor r9, rsi
xor r9, rsi
xor r9, r10
rol r9, 0x28
add rax, qword [rbp + 0x78]
add rax, r9
mov qword [rbp + 0xd8], rax
mov r10, rax
not r10
mov r11, r10
and r11, r8
or r10, r8
not r11
and r10, r11
xor qword [rbp + 0xe8], r13
rol rbx, 1
rol r12, 0x28
not r10
rol r10, 0x30
movabs r11, 0xe073e561820c672c
mov r8, qword [rbp + 0x60]
add r8, r11
add r13, r8
add rdi, r10
mov qword [rbp + 0x110], rdi
sub r13, r11
add r13, rbx
mov r8, r13
and r8, r10
add r8, r8
add r10, r13
sub r10, r8
mov rdx, qword [rbp + 0xf0]
add rdx, qword [rbp + 0x58]
add rdx, r12
mov qword [rbp + 0xf0], rdx
mov rax, qword [rbp + 0xd0]
xor rax, rdx
rol rax, 0x30
mov qword [rbp + 0xd0], rax
movabs r8, 0x770f7e0fc3ae3ff6
mov r11, qword [rbp + 0x108]
add r11, r8
add r11, rax
sub r11, r8
xor r12, r11
rol r10, 0x20
add r11, r10
mov r8, r11
not r8
or r8, rbx
not rbx
or rbx, r11
mov rdi, r11
and rbx, r8
mov r8, r13
mov rdx, qword [rbp + 0x90]
and r8, rdx
or r13, rdx
add r13, r8
not rbx
rol rbx, 0x28
add r13, rbx
mov rsi, r10
xor rsi, r10
not rsi
and rsi, r13
xor rsi, r10
mov rax, qword [rbp + 0xe8]
rol rax, 0x30
mov rdx, qword [rbp + 0xf8]
add rdx, rax
mov qword [rbp + 0xf8], rdx
mov r8, qword [rbp + 0x50]
and r8, rdx
movabs rdx, 0xec19a16d38774b83
xor r15, rdx
xor r15, rdx
rol rsi, 0x30
xor r15, r8
mov r8, rsi
and r8, r11
xor rdi, rsi
lea rdx, [rdi + r8*2]
mov qword [rbp + 0xc8], rdx
mov r8, rbx
xor r8, rdx
not r8
and r8, rbx
add r8, r8
sub rbx, r8
movabs r10, 0xa442ce56eab825bd
mov rdx, qword [rbp + 0x98]
add rcx, rdx
add rcx, r10
rol r12, 1
add rcx, r12
sub rcx, r10
mov r8, rax
xor r8, rcx
rol r8, 0x20
mov r10, qword [rbp + 0x110]
xor r9, r10
mov rdx, r8
mov rax, r8
movabs r8, 0x7348e558a0abf88
sub rdx, r8
add rdx, r8
add rdx, r10
xor r12, rdx
mov r11, rdx
rol r12, 0x28
add rcx, qword [rbp + 0xb0]
mov r8, rcx
and r8, r12
xor rcx, r12
lea rcx, [rcx + r8*2]
mov qword [rbp + 0x110], rcx
xor rax, rcx
rol rax, 0x30
mov rdx, rax
mov qword [rbp + 0xe8], rax
movabs r8, 0x246190e513178977
mov rcx, r8
not rcx
xor rcx, r8
mov rax, rcx
and rcx, r12
add r11, rdx
mov qword [rbp + 0x108], r11
and rax, r11
xor rcx, r8
xor rcx, r8
xor rcx, rax
mov qword [rbp + 0xe0], rcx
movabs r8, 0x7b4a306ede3a1fb1
mov rax, qword [rbp + 0xc0]
add rax, r8
mov rcx, qword [rbp + 0xf0]
add rcx, rax
rol r9, 1
add rcx, r9
sub rcx, r8
mov qword [rbp + 0xf0], rcx
mov r10, r14
xor r10, r14
not r10
and r10, rcx
xor r10, r14
rol r15, 1
mov rdi, qword [rbp + 0x48]
mov rax, qword [rbp + 0xd8]
add rax, rdi
add rax, r15
mov r14, qword [rbp + 0xd0]
xor r14, rax
mov rcx, rax
rol r14, 0x20
mov rdx, qword [rbp + 0x100]
add rdx, r14
mov rax, rdx
xor rax, r15
not rax
and rax, r15
add rax, rax
sub r15, rax
mov rax, rcx
mov r8, qword [rbp + 0x88]
and rax, r8
or rcx, r8
add rcx, rax
movabs r12, 0xfe1f317fe41aa443
mov r11, r12
not r11
xor r11, r12
mov rax, r11
and r11, r14
add r15, rdx
rol r15, 0x28
add rcx, r15
mov qword [rbp + 0xd8], rcx
and rax, rcx
xor r11, r12
xor r11, r12
xor r11, rax
rol r11, 0x30
add rdx, r11
mov qword [rbp + 0x100], rdx
xor r15, rdx
rol r15, 1
add r13, qword [rbp + 0x70]
mov rax, r13
and rax, r15
xor r13, r15
lea rax, [rax*2]
add rax, r13
add rbx, qword [rbp + 0xc8]
rol rbx, 1
mov r12, qword [rbp + 0xe8]
xor r12, rax
movabs rcx, 0x4d51879d7859bbb4
mov rdx, qword [rbp + 0xb0]
lea r8, [rcx + rdx]
add r8, rax
rol r10, 0x20
mov r14, qword [rbp + 0xf8]
add r14, r10
xor r9, r14
rol r9, 0x28
movabs rax, 0x618878ff1f344e41
lea rdx, [rax + rdi]
add rdx, qword [rbp + 0x110]
mov rdi, qword [rbp + 0x40]
mov r13, qword [rbp + 0xf0]
add r13, rdi
add r13, r9
xor r10, r13
rol r10, 0x30
add r14, r10
xor r9, r14
rol r12, 0x20
add r14, r12
xor r15, r14
rol r15, 0x28
sub r8, rcx
add r8, r15
xor r12, r8
rol r12, 0x30
mov qword [rbp + 0xe8], r12
add r14, r12
mov qword [rbp + 0xf8], r14
mov rcx, r14
xor rcx, r15
not rcx
and rcx, r15
add rcx, rcx
sub rdx, rax
movabs r14, 0x4f269d6688f51c5e
add rdx, r14
add rdx, rbx
sub rdx, r14
xor r10, rdx
rol r10, 0x20
sub r15, rcx
mov rcx, r10
movabs r14, 0x45971a60b83ad35f
sub rcx, r14
mov rax, qword [rbp + 0x100]
add rax, r14
add rax, rcx
mov qword [rbp + 0x100], rax
not rbx
mov r12, rax
or r12, rbx
and rbx, rax
not r12
or r12, rbx
movabs rbx, 0x72f629097e366985
mov rcx, qword [rbp + 0xc0]
add rcx, rbx
add rdx, rcx
mov rax, qword [rbp + 0xe0]
rol rax, 1
movabs rcx, 0x52907f8ad0df3001
sub r13, rcx
lea r14, [rdi + rcx]
add r14, rax
add r14, r13
mov rcx, r11
xor rcx, r11
not rcx
and rcx, r14
xor rcx, r11
rol rcx, 0x20
mov r11, qword [rbp + 0xc8]
add r11, rcx
xor rax, r11
rol rax, 0x28
add r14, qword [rbp + 0x90]
add r14, rax
mov r13, rax
not rcx
mov rax, r14
or rax, rcx
and rcx, r14
not rax
or rax, rcx
rol rax, 0x30
mov qword [rbp + 0xc8], rax
mov rcx, rax
and rcx, r11
xor r11, rax
lea rax, [r11 + rcx*2]
mov qword [rbp + 0x110], rax
mov rax, qword [rbp + 0xd8]
mov rcx, rax
mov r11, qword [rbp + 0x60]
and rcx, r11
xor rax, r11
lea rcx, [rax + rcx*2]
rol r9, 1
add rcx, r9
xor rsi, rcx
rol rsi, 0x20
mov rax, qword [rbp + 0x108]
add rax, rsi
mov r11, r9
xor r11, rax
mov rdi, rax
not r11
and r11, r9
add r11, r11
sub r9, r11
add r9, rax
rol r9, 0x28
mov rax, rcx
add rax, qword [rbp + 0xb8]
mov r11, rax
and r11, r9
or rax, r9
add rax, r11
mov r11, rax
mov qword [rbp + 0xf0], rax
not r11
or r11, rsi
not rsi
or rsi, rax
and rsi, r11
not rsi
rol rsi, 0x30
add rdi, rsi
mov qword [rbp + 0x108], rdi
mov r11, rdi
not r11
or rdi, r9
not r9
or r9, r11
and r9, rdi
mov r11, r8
mov rdi, qword [rbp + 0x68]
and r11, rdi
or r8, rdi
add r8, r11
rol r12, 0x28
sub rdx, rbx
movabs r11, 0x48b8ff4e04f389ef
sub rdx, r11
add rdx, r11
add rdx, r12
xor r10, rdx
rol r10, 0x30
mov rax, qword [rbp + 0x100]
add rax, r10
mov qword [rbp + 0x100], rax
xor r12, rax
rol r12, 1
add r8, r12
xor rsi, r8
mov r11, r8
mov rax, qword [rbp + 0x98]
and r11, rax
xor r8, rax
lea rcx, [r8 + r11*2]
mov rax, qword [rbp + 0x110]
mov r8, r13
xor r8, rax
rol rsi, 0x20
movabs r11, 0x370099117e66e334
add rax, r11
add rax, rsi
sub rax, r11
mov qword [rbp + 0x110], rax
xor r12, rax
rol r12, 0x28
mov qword [rbp + 0xd0], r12
mov r13, rcx
add r13, r12
mov qword [rbp + 0x50], r13
not r13
mov rax, r13
and rax, rsi
mov qword [rbp + 0xd8], rax
or r13, rsi
mov r11, rdx
mov rax, qword [rbp + 0x80]
and r11, rax
xor rdx, rax
lea rbx, [rdx + r11*2]
mov rdx, r8
rol rdx, 1
add rbx, rdx
mov rax, qword [rbp + 0xe8]
xor rax, rbx
rol rax, 0x20
mov rcx, qword [rbp + 0x108]
add rcx, rax
mov qword [rbp + 0x108], rcx
mov r8, rax
mov rax, rcx
and rax, rdx
add rax, rax
add rdx, rcx
sub rdx, rax
rol rdx, 0x28
mov qword [rbp + 0xe0], rdx
add rbx, qword [rbp + 0x78]
mov rax, rbx
and rax, rdx
or rbx, rdx
add rbx, rax
mov rax, rbx
and rax, r8
add rax, rax
add r8, rbx
sub r8, rax
mov rsi, r8
rol r9, 1
add r14, qword [rbp + 0x88]
add r14, r9
mov rdi, r10
xor rdi, r10
not rdi
and rdi, r14
xor rdi, r10
mov rdx, qword [rbp + 0xf8]
add r15, rdx
rol rdi, 0x20
add rdx, rdi
mov rax, rdx
mov r10, rdx
xor rax, r9
not rax
and rax, r9
add rax, rax
sub r9, rax
add r9, rdx
rol r9, 0x28
add r14, qword [rbp + 0xa8]
add r14, r9
mov rax, r14
not rax
mov r8, r14
and r8, rdi
not rdi
and rdi, rax
not r8
not rdi
and rdi, r8
movabs r11, 0x8bf246c645b8a6c3
mov rcx, r11
not rcx
xor rcx, r11
mov r8, rcx
and rcx, qword [rbp + 0xc8]
rol r15, 1
mov rax, qword [rbp + 0xf0]
add rax, qword [rbp + 0xa0]
movabs rdx, 0xba2acfed4644ab9c
sub rax, rdx
add rax, rdx
add rax, r15
mov qword [rbp + 0xf0], rax
and r8, rax
xor rcx, r11
xor rcx, r11
xor rcx, r8
rol rsi, 0x30
mov rax, rsi
rol rdi, 0x30
add r10, rdi
mov rdx, r10
xor rdx, r9
not rdx
and rdx, r9
add rdx, rdx
rol rcx, 0x20
sub r9, rdx
mov r12, rcx
movabs rdx, 0x1f6420f234d78900
sub r12, rdx
add r12, rdx
add r12, qword [rbp + 0x100]
mov rdx, r12
not rdx
and rdx, r15
not rdx
not r15
and r15, r12
not r15
and r15, rdx
mov r11, qword [rbp + 0x50]
mov rdx, r11
mov r8, qword [rbp + 0x90]
and rdx, r8
xor r11, r8
lea rsi, [r11 + rdx*2]
mov r8, rax
add qword [rbp + 0x108], rax
add r9, r10
not r15
rol r15, 0x28
mov r11, qword [rbp + 0x58]
mov rax, qword [rbp + 0xf0]
add rax, r11
add rax, r15
mov qword [rbp + 0xf0], rax
xor rcx, rax
rol rcx, 0x30
add r12, rcx
xor r15, r12
rol r15, 1
add rsi, r15
xor r8, rsi
rol r8, 0x20
add r10, r8
mov rdx, r10
and rdx, r15
add rdx, rdx
add r15, r10
sub r15, rdx
mov rax, qword [rbp + 0xd8]
not rax
rol r15, 0x28
and r13, rax
add rsi, r11
add rsi, r15
mov rdx, rsi
xor rdx, r8
not rdx
and rdx, r8
add rdx, rdx
sub r8, rdx
mov r11, qword [rbp + 0x108]
mov rdx, r11
mov rax, qword [rbp + 0xe0]
and rdx, rax
add rdx, rdx
add rax, r11
add r8, rsi
rol r8, 0x30
mov qword [rbp + 0xe8], r8
sub rax, rdx
add r10, r8
mov qword [rbp + 0xf8], r10
mov rdx, r15
xor rdx, r15
not rdx
and rdx, r10
xor rdx, r15
mov qword [rbp + 0xd8], rdx
mov rdx, rbx
mov r10, qword [rbp + 0x98]
and rdx, r10
or rbx, r10
add rbx, rdx
not r13
rol r13, 0x30
mov r10, qword [rbp + 0x110]
add r10, r13
mov rdx, qword [rbp + 0xd0]
xor rdx, r10
rol rdx, 1
add rbx, rdx
xor rdi, rbx
rol rdi, 0x20
add r12, rdi
mov r11, rdx
xor r11, rdx
not r11
and r11, r12
xor r11, rdx
mov rdx, rbx
mov r8, qword [rbp + 0x40]
and rdx, r8
or rbx, r8
add rbx, rdx
rol r11, 0x28
add rbx, r11
mov qword [rbp + 0xc8], rbx
mov rdx, rbx
and rdx, rdi
add rdx, rdx
add rdi, rbx
sub rdi, rdx
rol rdi, 0x30
add r12, rdi
mov qword [rbp + 0x100], r12
mov rdx, r12
and rdx, r11
add rdx, rdx
add r11, r12
sub r11, rdx
movabs r12, 0xbccaf1e234186b00
mov rdx, r12
not rdx
xor rdx, r12
mov rbx, rdx
and rdx, rcx
rol rax, 1
add r14, qword [rbp + 0x70]
add r14, rax
mov r15, rax
and rbx, r14
xor rdx, r12
xor rdx, r12
xor rdx, rbx
rol rdx, 0x20
mov rax, rdx
movabs rbx, 0x7342a236966c522d
sub rax, rbx
add r10, rbx
add r10, rax
mov rax, r14
mov r8, qword [rbp + 0x48]
and rax, r8
xor r14, r8
lea rbx, [r14 + rax*2]
mov rcx, r15
xor rcx, r10
rol rcx, 0x28
movabs rax, 0xaa31422a0902658e
add rbx, rax
add rbx, rcx
sub rbx, rax
xor rdx, rbx
rol rdx, 0x30
add r10, rdx
mov qword [rbp + 0x110], r10
mov rax, r10
and rax, rcx
add rax, rax
add rcx, r10
sub rcx, rax
mov qword [rbp + 0xe0], rcx
movabs r14, 0x21094ff9da08ccea
mov rax, qword [rbp + 0x78]
add rax, r14
mov rcx, qword [rbp + 0xf0]
add rcx, rax
rol r9, 1
sub rcx, r14
add rcx, r9
xor r13, rcx
rol r13, 0x20
mov r8, qword [rbp + 0x108]
add r8, r13
mov rax, r8
and rax, r9
add rax, rax
add r9, r8
sub r9, rax
rol r9, 0x28
add rcx, qword [rbp + 0x88]
movabs rax, 0x3d3b666a1e738a08
sub rcx, rax
add rcx, rax
add rcx, r9
mov rax, rcx
xor rax, r13
not rax
and rax, r13
add rax, rax
sub r13, rax
rol r11, 1
add r13, rcx
rol r13, 0x30
movabs rax, 0x5fc70acdfd1942a9
sub rsi, rax
mov r14, qword [rbp + 0xb0]
add rax, r14
add rsi, rax
add r8, r13
add rsi, r11
xor r13, rsi
rol r13, 0x20
movabs r12, 0xeb1e9e17b7be0ff7
mov rax, r12
not rax
xor rax, r12
mov r14, rax
and rax, r13
mov r15, r13
movabs r13, 0x2e8fc0715894868a
sub r15, r13
mov r10, qword [rbp + 0x110]
add r10, r13
add r10, r15
xor r11, r10
rol r11, 0x28
movabs r15, 0x60f6b12d8b29da93
sub rsi, r15
mov r13, qword [rbp + 0x68]
add r15, r13
add rsi, r15
add rsi, r11
mov qword [rbp + 0xf0], rsi
and r14, rsi
xor rax, r12
xor rax, r12
xor rax, r14
rol rax, 0x30
mov qword [rbp + 0xd0], rax
mov r14, r10
add r14, rax
mov qword [rbp + 0x110], r14
mov r15, r14
not r15
or r14, r11
not r11
or r11, r15
not r11
not r14
or r14, r11
mov rsi, qword [rbp + 0xc8]
mov r11, rsi
mov r15, qword [rbp + 0xc0]
and r11, r15
or rsi, r15
add rsi, r11
mov r10, qword [rbp + 0xe0]
rol r10, 1
add rsi, r10
mov r11, rsi
mov r13, qword [rbp + 0xe8]
xor r11, r13
not r11
and r11, r13
add r11, r11
sub r13, r11
xor r9, r8
add r13, rsi
rol r13, 0x20
mov r11, r13
and r11, r8
xor r8, r13
lea rax, [r8 + r11*2]
mov r11, rax
mov qword [rbp + 0x108], rax
xor r11, r10
not r11
and r11, r10
add r11, r11
sub r10, r11
movabs r11, 0x686cb88051ad214a
sub rsi, r11
mov r15, qword [rbp + 0x60]
add r11, r15
add rsi, r11
movabs r12, 0x234906d26ac770dd
mov r11, r12
not r11
xor r11, r12
mov r15, r11
and r11, rdi
rol r9, 1
add rbx, qword [rbp + 0xa0]
add rbx, r9
and r15, rbx
xor r11, r12
xor r11, r12
xor r11, r15
mov r8, r10
add r8, rax
rol r8, 0x28
mov qword [rbp + 0xe0], r8
add rsi, r8
mov r15, rsi
not r15
mov rdi, rsi
or rdi, r13
not r13
rol r11, 0x20
or r13, r15
mov r15, r11
mov r10, qword [rbp + 0xf8]
and r15, r10
or r10, r11
add r10, r15
mov r15, r10
and r15, r9
add r15, r15
add r9, r10
sub r9, r15
movabs r15, 0x7f46cfa96542651f
sub rbx, r15
mov rax, qword [rbp + 0x80]
add r15, rax
add rbx, r15
rol r9, 0x28
mov r15, rbx
and r15, r9
or rbx, r9
add rbx, r15
mov r15, rbx
xor r15, r11
not r15
and r15, r11
add r15, r15
sub r11, r15
add r11, rbx
rol r11, 0x30
and r13, rdi
movabs rdi, 0xbe0ef072aa2dcdef
add r10, rdi
add r10, r11
sub r10, rdi
mov r15, r9
xor r15, r9
not r15
and r15, r10
xor r15, r9
mov rax, qword [rbp + 0xd8]
rol rax, 1
movabs rdi, 0x8238651fb280db5f
mov r9, qword [rbp + 0xa8]
add r9, rdi
add rcx, r9
sub rcx, rdi
movabs r9, 0xe9f908a0f9b8ecc0
sub rcx, r9
add r9, rax
add rcx, r9
mov r9, rcx
and r9, rdx
add r9, r9
add rdx, rcx
sub rdx, r9
mov r9, rcx
mov rdi, qword [rbp + 0xb8]
and r9, rdi
xor rcx, rdi
lea r12, [rcx + r9*2]
rol rdx, 0x20
mov r8, qword [rbp + 0x100]
add r8, rdx
mov rcx, rax
xor rcx, r8
rol rcx, 0x28
movabs r9, 0x7c0fac35a656dab1
sub r12, r9
add r12, r9
add r12, rcx
mov rax, r12
mov qword [rbp + 0xc8], r12
movabs r12, 0xd3ef1059f372f9ed
mov rdi, r12
not rdi
xor rdi, r12
mov r9, rdi
and rdi, rcx
xor rdx, rax
rol rdx, 0x30
add r8, rdx
and r9, r8
mov rax, r8
xor rdi, r12
xor rdi, r12
xor rdi, r9
movabs r12, 0xa9a683c9294d0c1c
mov rcx, qword [rbp + 0x80]
mov r8, qword [rbp + 0xf0]
add r8, rcx
add r8, r12
rol r13, 0x30
add qword [rbp + 0x108], r13
rol rdi, 1
add r8, rdi
sub r8, r12
xor r13, r8
mov r12, r8
rol r13, 0x20
add r10, r13
mov r9, r10
and r9, rdi
add r9, r9
add rdi, r10
sub rdi, r9
rol rdi, 0x28
add r12, qword [rbp + 0xc0]
add r12, rdi
mov r9, r12
not r9
or r9, r13
not r13
or r13, r12
and r13, r9
mov r9, rsi
mov r8, qword [rbp + 0x40]
and r9, r8
xor rsi, r8
lea r8, [rsi + r9*2]
not r14
rol r14, 1
add r8, r14
mov r9, r8
not r9
not r11
mov rsi, r9
or rsi, r11
and r11, r9
not rsi
or r11, rsi
not r13
rol r13, 0x30
mov qword [rbp + 0xe8], r13
add r10, r13
mov qword [rbp + 0xf8], r10
not rdi
mov r9, r10
or r9, rdi
and rdi, r10
not rdi
not r11
rol r11, 0x20
mov r10, rax
add r10, r11
xor r14, r10
mov rax, r10
rol r14, 0x28
and rdi, r9
mov r9, r8
mov rsi, qword [rbp + 0x88]
and r9, rsi
or r8, rsi
add r8, r9
add r8, r14
mov qword [rbp + 0xd8], r8
mov rsi, r8
not rsi
mov r9, rsi
and r9, r11
or rsi, r11
not rsi
or rsi, r9
mov r10, qword [rbp + 0xe0]
mov r13, qword [rbp + 0x108]
xor r10, r13
rol r10, 1
rol rsi, 0x30
add rax, rsi
mov qword [rbp + 0x100], rax
not r14
mov r9, rax
or r9, r14
and r14, rax
not r14
and r14, r9
add rbx, qword [rbp + 0x58]
add rbx, r10
mov r11, rdx
xor r11, rdx
not r11
and r11, rbx
xor r11, rdx
rol r11, 0x20
mov rax, qword [rbp + 0x110]
add rax, r11
mov qword [rbp + 0x110], rax
mov rdx, rax
and rdx, r10
add rdx, rdx
add r10, rax
sub r10, rdx
mov rdx, rbx
mov r9, qword [rbp + 0x78]
and rdx, r9
or rbx, r9
add rbx, rdx
rol r15, 1
mov r9, qword [rbp + 0x68]
not r9
sub r9, qword [rbp + 0xc8]
sub r9, r15
not r9
mov rax, qword [rbp + 0xd0]
xor rax, r9
rol rax, 0x20
mov rcx, r13
add rcx, rax
mov r13, rcx
mov r8, rcx
not r13
mov rcx, r13
and rcx, r15
or r13, r15
not r13
or r13, rcx
mov rcx, r9
mov rdx, qword [rbp + 0xa0]
and rcx, rdx
or r9, rdx
add r9, rcx
rol r13, 0x28
add r9, r13
mov r15, rax
xor r15, rax
not r15
and r15, r9
xor r15, rax
rol r15, 0x30
mov rax, r15
movabs rcx, 0x923bd8f6fc1d091f
sub rax, rcx
add r8, rcx
add r8, rax
mov qword [rbp + 0x108], r8
not r14
rol r14, 1
add r12, qword [rbp + 0x70]
mov rax, r12
and rax, r14
or r12, r14
add r12, rax
mov rax, r12
not rax
mov rcx, r12
and rcx, r15
not r15
and r15, rax
not rcx
not r15
and r15, rcx
rol r10, 0x28
add rbx, r10
xor r11, rbx
rol r11, 0x30
mov rax, qword [rbp + 0x110]
add rax, r11
xor r10, rax
mov qword [rbp + 0xe0], r10
rol r15, 0x20
add rax, r15
mov qword [rbp + 0x110], rax
mov r8, rax
not r8
or r8, r14
not r14
or r14, rax
not r14
not r8
or r8, r14
movabs r14, 0x7381004042fbb274
mov rcx, r14
not rcx
xor rcx, r14
mov rax, rcx
and rcx, r15
rol r8, 0x28
add r12, qword [rbp + 0xa8]
add r12, r8
mov qword [rbp + 0xf0], r12
and rax, r12
xor rcx, r14
xor rcx, r14
xor rcx, rax
movabs r14, 0xad5822f2bc3a8e95
mov r10, qword [rbp + 0x48]
add rbx, r14
add rbx, r10
xor r13, qword [rbp + 0x108]
rol r13, 1
sub rbx, r14
mov rax, rbx
and rax, r13
xor rbx, r13
lea r14, [rbx + rax*2]
mov rbx, rsi
xor rbx, rsi
not rbx
and rbx, r14
xor rbx, rsi
rol rbx, 0x20
mov rdx, qword [rbp + 0xf8]
add rdx, rbx
xor r13, rdx
rol r13, 0x28
add r14, qword [rbp + 0x60]
add r14, r13
mov qword [rbp + 0xd0], r14
mov rax, r14
and rax, rbx
add rax, rax
add rbx, r14
sub rbx, rax
rol rbx, 0x30
movabs r12, 0xe77cb37fef080a9d
mov r15, r12
not r15
xor r15, r12
mov rax, r15
and r15, r13
movabs rsi, 0xef05ba8913f58357
add rdx, rsi
add rdx, rbx
sub rdx, rsi
mov qword [rbp + 0xf8], rdx
and rax, rdx
xor r15, r12
xor r15, r12
xor r15, rax
movabs r12, 0x49b028b6f11abde2
mov r14, r12
not r14
xor r14, r12
mov rax, r14
and r14, r11
not rdi
rol rdi, 1
add r9, qword [rbp + 0xb8]
add r9, rdi
and rax, r9
xor r14, r12
xor r14, r12
xor r14, rax
rol r14, 0x20
mov rax, qword [rbp + 0x100]
add rax, r14
mov qword [rbp + 0x100], rax
mov r11, rdi
xor r11, rdi
not r11
and r11, rax
xor r11, rdi
rol r15, 1
rol r11, 0x28
add r9, qword [rbp + 0xb0]
add r9, r11
mov rax, r9
and rax, r14
mov qword [rbp + 0xc8], rax
add r14, r9
movabs r12, 0xc64ffec281ba8cff
add r9, r12
add r9, r10
mov rax, r15
not rax
add rax, r12
not rax
add rax, r9
mov qword [rbp + 0x50], rax
rol rcx, 0x30
mov r12, rax
not r12
mov rax, r12
and rax, rcx
mov qword [rbp - 0x58], rax
or r12, rcx
movabs r9, 0x9a69638865c42ebf
sub rcx, r9
mov rax, qword [rbp + 0x110]
add rax, r9
add rax, rcx
mov qword [rbp + 0x110], rax
mov rcx, rax
mov rdi, r8
and rcx, r8
or rdi, rax
not rdi
or rdi, rcx
mov r10, qword [rbp + 0xe0]
rol r10, 1
mov rsi, qword [rbp + 0xd8]
add rsi, qword [rbp + 0x90]
add rsi, r10
mov rcx, rsi
mov r13, qword [rbp + 0xe8]
xor rcx, r13
not rcx
and rcx, r13
add rcx, rcx
sub r13, rcx
add r13, rsi
rol r13, 0x20
mov r8, qword [rbp + 0x108]
add r8, r13
mov rcx, r8
xor rcx, r10
not rcx
and rcx, r10
add rcx, rcx
sub r10, rcx
movabs r9, 0xfd55746c2584f3ce
mov rax, qword [rbp + 0x98]
add rsi, rax
add rsi, r9
add r10, r8
rol r10, 0x28
add rsi, r10
sub rsi, r9
xor r13, rsi
rol r13, 0x30
add r8, r13
mov rcx, r8
xor rcx, r10
not rcx
and rcx, r10
add rcx, rcx
sub r10, rcx
mov rax, qword [rbp + 0xc8]
add rax, rax
sub r14, rax
rol r14, 0x30
mov rcx, qword [rbp + 0x100]
add rcx, r14
mov qword [rbp + 0x100], rcx
not rcx
not r11
mov r9, rcx
or r9, r11
and r11, rcx
not r11
and r11, r9
rol r11, 1
mov rax, qword [rbp + 0xf0]
add rax, qword [rbp + 0xb8]
add rax, r11
xor r13, rax
rol r13, 0x20
mov rdx, qword [rbp + 0xf8]
add rdx, r13
mov qword [rbp + 0xf8], rdx
not r11
mov rcx, rdx
or rcx, r11
and r11, rdx
not r11
and r11, rcx
movabs rcx, 0x717e7e8008431311
sub rax, rcx
mov r9, qword [rbp + 0xa8]
add rcx, r9
add rax, rcx
not r11
rol r11, 0x28
add rax, r11
mov qword [rbp + 0xf0], rax
xor r13, rax
rol r13, 0x30
movabs r9, 0x8ff398c64f9c33c6
mov rcx, r9
not rcx
xor rcx, r9
mov rdx, rcx
and rcx, r11
movabs r11, 0x7bcd455fbfefed05
mov rax, qword [rbp + 0xf8]
add rax, r11
add rax, r13
sub rax, r11
mov qword [rbp + 0xf8], rax
and rdx, rax
xor rcx, r9
xor rcx, r9
xor rcx, rdx
mov qword [rbp + 0xe0], rcx
not rdi
rol rdi, 1
mov rcx, rdi
not rcx
mov r9, rcx
sub r9, qword [rbp + 0xa0]
not r9
add r9, rsi
xor rbx, r9
rol rbx, 0x20
mov rsi, qword [rbp + 0x100]
add rsi, rbx
xor rcx, rsi
and rcx, rdi
add rcx, rcx
sub rdi, rcx
mov rcx, r9
mov r11, qword [rbp + 0x60]
and rcx, r11
xor r9, r11
lea r11, [r9 + rcx*2]
add rdi, rsi
rol rdi, 0x28
add r11, rdi
not rbx
mov rcx, r11
or rcx, rbx
and rbx, r11
not rbx
and rbx, rcx
not rbx
rol rbx, 0x30
mov rcx, rbx
and rcx, rsi
xor rsi, rbx
lea rax, [rsi + rcx*2]
mov rcx, rax
mov qword [rbp + 0x100], rax
xor rcx, rdi
not rcx
and rcx, rdi
add rcx, rcx
sub rdi, rcx
mov qword [rbp + 0xc8], rdi
add r10, r8
rol r10, 1
mov rdx, qword [rbp + 0xd0]
add rdx, qword [rbp + 0x98]
add rdx, r10
mov rcx, rdx
not rcx
mov r9, rcx
and r9, r14
or rcx, r14
not rcx
or rcx, r9
rol rcx, 0x20
mov rdi, qword [rbp + 0x110]
add rdi, rcx
mov r9, rdi
xor r9, r10
not r9
and r9, r10
add r9, r9
sub r10, r9
movabs r9, 0x2552b509f734427d
sub rdx, r9
mov rsi, qword [rbp + 0x80]
add r9, rsi
add rdx, r9
add r10, rdi
rol r10, 0x28
add rdx, r10
mov r9, rdx
and r9, rcx
add r9, r9
add rcx, rdx
sub rcx, r9
rol rcx, 0x30
mov qword [rbp + 0xd8], rcx
add rdi, rcx
not r10
mov rsi, rdi
or rsi, r10
and r10, rdi
mov r14, rdi
not rsi
or rsi, r10
mov rcx, qword [rbp - 0x58]
not rcx
and r12, rcx
not r12
rol r12, 0x20
add r8, r12
xor r15, r8
rol r15, 0x28
mov rcx, qword [rbp + 0x50]
add rcx, qword [rbp + 0xb0]
add rcx, r15
mov qword [rbp + 0x50], rcx
xor r12, rcx
rol r12, 0x30
add r8, r12
mov qword [rbp + 0x108], r8
mov rdi, r15
xor rdi, r15
not rdi
and rdi, r8
xor rdi, r15
movabs r10, 0x2b53ddff5b5c1933
mov r9, qword [rbp + 0xc0]
add r9, r10
mov r15, qword [rbp + 0xf0]
add r15, r9
mov rcx, qword [rbp + 0xc8]
add rcx, rax
rol rcx, 1
mov rax, rcx
not rax
add rax, r10
not rax
add rax, r15
mov r8, r12
xor r8, r12
not r8
and r8, rax
xor r8, r12
rol r8, 0x20
movabs r15, 0x5ce8ff4d30d5fe42
mov r12, r15
not r12
xor r12, r15
mov r9, r12
and r12, r8
movabs r10, 0xc50b1bc4e1448cc6
sub r8, r10
add r14, r10
add r14, r8
mov qword [rbp + 0x110], r14
mov r8, rax
mov r10, qword [rbp + 0x58]
and r8, r10
or rax, r10
add rax, r8
xor rcx, r14
rol rcx, 0x28
mov qword [rbp + 0xc8], rcx
movabs r8, 0xeadef018c4905a94
add rax, r8
add rax, rcx
sub rax, r8
and r9, rax
xor r12, r15
xor r12, r15
xor r12, r9
mov qword [rbp + 0xd0], r12
rol rsi, 1
add r11, qword [rbp + 0x88]
mov r10, rsi
not r10
sub r10, r11
not r10
mov r8, r10
xor r8, r13
not r8
and r8, r13
add r8, r8
sub r13, r8
add r13, r10
mov r8, r10
mov r9, qword [rbp + 0x40]
and r8, r9
or r10, r9
add r10, r8
rol rdi, 1
add rdx, qword [rbp + 0x78]
mov r8, rdx
and r8, rdi
xor rdx, rdi
lea r8, [rdx + r8*2]
mov r9, r8
not r9
and r9, rbx
not r9
not rbx
and rbx, r8
not rbx
and rbx, r9
not rbx
rol rbx, 0x20
mov rdx, qword [rbp + 0xf8]
add rdx, rbx
mov r14, rdx
mov r12, rdx
not r14
mov r9, r14
and r9, rdi
or r14, rdi
not r14
or r14, r9
mov r9, r8
mov r11, qword [rbp + 0x70]
and r9, r11
xor r8, r11
lea r11, [r8 + r9*2]
mov rcx, qword [rbp + 0x50]
mov r8, rcx
mov r9, qword [rbp + 0x90]
and r8, r9
xor rcx, r9
lea r15, [rcx + r8*2]
mov rdx, qword [rbp + 0xe0]
rol rdx, 1
rol r14, 0x28
movabs r8, 0xf84c546976f44b3d
sub r11, r8
add r11, r8
add r11, r14
mov r8, r11
not r8
and r8, rbx
not r8
not rbx
and rbx, r11
not rbx
add r15, rdx
mov rcx, qword [rbp + 0xd8]
xor rcx, r15
rol rcx, 0x20
and rbx, r8
mov r8, rcx
mov r9, qword [rbp + 0x100]
and r8, r9
or r9, rcx
add r9, r8
not rbx
rol rbx, 0x30
mov r8, r9
and r8, rdx
add r8, r8
add rdx, r9
sub rdx, r8
add r12, rbx
mov qword [rbp + 0xf8], r12
mov r8, r14
xor r8, r14
not r8
and r8, r12
rol rdx, 0x28
xor r8, r14
mov qword [rbp + 0x50], r8
mov rdi, qword [rbp + 0x68]
add r15, rdi
add r15, rdx
mov qword [rbp + 0xd8], r15
mov r14, rcx
xor r14, r15
rol r14, 0x30
mov rcx, r9
add rcx, r14
mov r15, r14
mov r9, rcx
and r9, rdx
add r9, r9
add rdx, rcx
sub rdx, r9
rol rdx, 1
movabs r9, 0x12acde4a2fff0d5f
sub rax, r9
add rdi, r9
add rdi, rdx
add rdi, rax
rol r13, 0x20
mov r12, qword [rbp + 0x108]
add r12, r13
xor rsi, r12
rol rsi, 0x28
add r10, rsi
xor r13, r10
rol r13, 0x30
add r12, r13
mov r9, rdi
xor r9, r13
not r9
and r9, r13
add r9, r9
sub r13, r9
add r13, rdi
rol r13, 0x20
mov r14, qword [rbp + 0xf8]
add r14, r13
xor rdx, r14
rol rdx, 0x28
add rdi, qword [rbp + 0x48]
mov r9, rdi
and r9, rdx
xor rdi, rdx
mov rax, rdx
lea rdx, [rdi + r9*2]
mov qword [rbp + 0xf0], rdx
xor r13, rdx
rol r13, 0x30
mov qword [rbp + 0xe8], r13
movabs r9, 0x5fa9d739aa68756b
mov rdx, r14
add rdx, r9
add rdx, r13
sub rdx, r9
mov qword [rbp + 0xf8], rdx
mov r9, rdx
and r9, rax
add r9, r9
add rax, rdx
sub rax, r9
mov qword [rbp + 0xe0], rax
mov rax, qword [rbp + 0xd0]
rol rax, 0x30
mov qword [rbp + 0xd0], rax
mov rdx, qword [rbp + 0x110]
add rdx, rax
mov rdi, qword [rbp + 0xc8]
xor rdi, rdx
mov rax, rdx
rol rdi, 1
add r10, qword [rbp + 0xa8]
movabs r9, 0x2c12705c5191183c
sub r10, r9
add r10, r9
add r10, rdi
mov rdx, rdi
mov rdi, rbx
xor rdi, rbx
not rdi
and rdi, r10
xor rdi, rbx
rol rdi, 0x20
add rcx, rdi
mov r13, rdx
xor r13, rdx
not r13
and r13, rcx
xor r13, rdx
movabs rdx, 0xb2618d840ccfa791
sub r10, rdx
mov r9, qword [rbp + 0x78]
add rdx, r9
add r10, rdx
movabs rbx, 0x43e4357e89ec579
mov rdx, rbx
not rdx
xor rdx, rbx
mov r9, rdx
and rdx, rdi
xor rsi, r12
rol rsi, 1
rol r13, 0x28
movabs rdi, 0xf7c47f8346ecc4a2
sub r10, rdi
add r10, rdi
add r10, r13
and r9, r10
xor rdx, rbx
xor rdx, rbx
xor rdx, r9
movabs r9, 0xab5cb1a9cfeeb7ab
sub r11, r9
mov rdi, qword [rbp + 0x60]
lea r14, [rdi + r9]
movabs r9, 0x983315b8d0597e8b
add r14, r9
add r14, r11
add r14, rsi
sub r14, r9
mov r9, r14
and r9, r15
add r9, r9
add r15, r14
sub r15, r9
rol rdx, 0x30
movabs r9, 0xfd21fb891524c9a4
mov rdi, r9
not rdi
xor rdi, r9
mov qword [rbp + 0xc8], rdi
and rdi, rdx
movabs r9, 0x1dcbea4b6cba93d6
sub rdx, r9
mov r8, rcx
add r8, r9
rol r15, 0x20
add r8, rdx
mov qword [rbp + 0x100], r8
mov rdx, r15
and rdx, rax
xor rax, r15
lea rcx, [rax + rdx*2]
mov rdx, rcx
not rdx
mov r9, rcx
and r9, rsi
not rsi
and rsi, rdx
not r9
not rsi
and rsi, r9
rol rsi, 0x28
add r14, qword [rbp + 0xb0]
movabs rdx, 0x65d2c35a61691c93
sub r14, rdx
add r14, rdx
add r14, rsi
mov rdx, r14
xor rdx, r15
not rdx
and rdx, r15
add rdx, rdx
sub r15, rdx
mov rbx, qword [rbp + 0x50]
rol rbx, 1
mov rax, qword [rbp + 0xd8]
add rax, qword [rbp + 0x80]
mov rdx, rax
and rdx, rbx
xor rax, rbx
lea rdx, [rax + rdx*2]
mov r9, rdx
mov rax, qword [rbp + 0xd0]
and r9, rax
add r9, r9
add rax, rdx
sub rax, r9
rol rax, 0x20
mov r11, r12
add r11, rax
not rbx
mov r9, r11
or r9, rbx
and rbx, r11
mov r12, r11
not r9
or r9, rbx
mov rbx, r13
xor rbx, r13
not rbx
and rbx, r8
add r15, r14
rol r15, 0x30
mov qword [rbp + 0xd8], r15
rol r9, 0x28
xor rbx, r13
mov r8, rdx
mov r11, qword [rbp + 0x98]
and r8, r11
xor rdx, r11
lea rdx, [rdx + r8*2]
mov r8, rdx
and r8, r9
or rdx, r9
add rdx, r8
movabs r8, 0xf7731cadf2fb12e3
add rcx, r8
add rcx, r15
sub rcx, r8
mov r8, rcx
xor r8, rsi
not r8
and r8, rsi
add r8, r8
xor rax, rdx
rol rax, 0x30
sub rsi, r8
mov r8, rax
mov r11, r12
and r8, r12
or r11, rax
add r11, r8
movabs r12, 0xff1eab0bd080c087
mov r13, r12
not r13
xor r13, r12
mov r8, r13
and r13, r9
and r8, r11
xor r13, r12
xor r13, r12
xor r13, r8
rol rbx, 1
mov r8, qword [rbp + 0xf0]
add r8, qword [rbp + 0xa0]
add r8, rbx
mov r9, rax
xor r9, rax
not r9
and r9, r8
mov r15, r8
xor r9, rax
add rsi, rcx
rol r9, 0x20
movabs rax, 0x2616ec78ba293e81
add rcx, rax
add rcx, r9
sub rcx, rax
mov qword [rbp + 0x110], rcx
mov rax, rcx
and rax, rbx
add rax, rax
add rbx, rcx
sub rbx, rax
rol rsi, 1
add r10, qword [rbp + 0xb8]
mov rax, r10
and rax, rsi
or r10, rsi
add r10, rax
mov r8, r10
not r8
mov rax, qword [rbp + 0xe8]
or r8, rax
not rax
or rax, r10
not rax
not r8
or r8, rax
rol r8, 0x20
mov r12, r11
add r12, r8
mov qword [rbp + 0x108], r12
mov rax, r12
not rax
and r12, rsi
not rsi
and rsi, rax
not r12
not rsi
and rsi, r12
rol rbx, 0x28
add r15, qword [rbp + 0x88]
add r15, rbx
mov qword [rbp + 0xf0], r15
mov r12, r9
xor r12, r9
not r12
and r12, r15
rol rsi, 0x28
xor r12, r9
add r10, qword [rbp + 0x58]
add r10, rsi
mov qword [rbp + 0xe8], r10
movabs r15, 0x8daeda3127152157
mov rax, r15
not rax
xor rax, r15
mov r9, rax
and rax, rsi
rol r13, 1
add r14, qword [rbp + 0x70]
movabs r11, 0xc2f613b3e31d52e8
sub r14, r11
add r14, r11
add r14, r13
mov rcx, qword [rbp + 0xc8]
and rcx, r14
movabs r10, 0xfd21fb891524c9a4
xor rdi, r10
xor rdi, r10
xor rdi, rcx
rol rdi, 0x20
mov rsi, rdi
mov rcx, qword [rbp + 0xf8]
and rsi, rcx
xor rcx, rdi
lea r10, [rcx + rsi*2]
mov rsi, r10
and rsi, r13
add rsi, rsi
add r13, r10
sub r13, rsi
movabs r11, 0x582af5ca593c2c9
sub r14, r11
mov rsi, qword [rbp + 0x90]
add rsi, r11
add r14, rsi
rol r13, 0x28
mov rsi, r14
and rsi, r13
or r14, r13
add r14, rsi
mov rsi, rdi
xor rsi, rdi
not rsi
and rsi, r14
xor rsi, rdi
xor r8, qword [rbp + 0xe8]
rol r8, 0x30
mov rcx, qword [rbp + 0x108]
add rcx, r8
mov qword [rbp + 0x108], rcx
and r9, rcx
xor rax, r15
xor rax, r15
rol rsi, 0x30
xor rax, r9
add r10, rsi
mov r9, r10
and r9, r13
or r13, r10
not r13
or r13, r9
movabs r11, 0xc91fd8c6c71dcee1
mov r9, qword [rbp + 0x40]
add r9, r11
add rdx, r9
mov rdi, qword [rbp + 0xe0]
rol rdi, 1
add rdx, rdi
sub rdx, r11
mov rcx, qword [rbp + 0xd8]
xor rcx, rdx
rol rcx, 0x20
mov r15, qword [rbp + 0x100]
add r15, rcx
xor rdi, r15
rol rdi, 0x28
mov r11, qword [rbp + 0xc0]
add rdx, r11
mov r9, rdx
and r9, rdi
xor rdx, rdi
lea r9, [rdx + r9*2]
mov qword [rbp + 0xa0], r9
mov rdx, r9
and rdx, rcx
add rdx, rdx
add rcx, r9
sub rcx, rdx
rol rcx, 0x30
mov qword [rbp + 0xd8], rcx
mov rdx, rcx
and rdx, r15
or r15, rcx
add r15, rdx
mov rdx, r15
mov rcx, r15
xor rdx, rdi
not rdx
and rdx, rdi
add rdx, rdx
sub rdi, rdx
mov r11, qword [rbp + 0xf0]
add r11, qword [rbp + 0x40]
add rdi, r15
rol rdi, 1
add r11, rdi
xor r8, r11
rol r8, 0x20
mov rdx, r8
and rdx, r10
or r10, r8
add r10, rdx
mov qword [rbp + 0xf8], r10
mov rdx, r10
and rdx, rdi
add rdx, rdx
add rdi, r10
sub rdi, rdx
add r11, qword [rbp + 0xb8]
rol rdi, 0x28
mov qword [rbp + 0xe0], rdi
add r11, rdi
mov rdx, r8
xor rdx, r8
not rdx
and rdx, r11
mov rdi, r11
xor rdx, r8
mov r10, qword [rbp + 0xe8]
mov r8, r10
mov r9, qword [rbp + 0x60]
and r8, r9
xor r10, r9
lea r8, [r10 + r8*2]
rol r12, 0x30
mov r15, qword [rbp + 0x110]
add r15, r12
xor rbx, r15
rol rbx, 1
movabs r10, 0x85eea67a2f0ec25d
add r8, r10
add r8, rbx
sub r8, r10
mov r9, r8
and r9, rsi
add r9, r9
add rsi, r8
sub rsi, r9
rol rsi, 0x20
add rcx, rsi
xor rbx, rcx
rol rbx, 0x28
mov r9, qword [rbp - 0x20]
sub r9, r8
sub r9, rbx
mov r8, r9
mov qword [rbp - 0x20], r9
neg r8
xor r8, rsi
not r8
and r8, rsi
add r8, r8
sub rsi, r8
sub rsi, r9
rol rsi, 0x30
mov r8, rsi
movabs r9, 0x62c51fdd85afa48e
sub r8, r9
add rcx, r9
add rcx, r8
mov qword [rbp + 0x100], rcx
add r14, qword [rbp + 0x88]
rol rax, 1
add r14, rax
mov rcx, qword [rbp + 0xd8]
mov r10, rcx
xor r10, rcx
not r10
and r10, r14
xor r10, rcx
rol r10, 0x20
add r15, r10
xor rax, r15
rol rax, 0x28
movabs rcx, 0x4a06c66413b22756
mov r8, qword [rbp + 0xc0]
add r8, rcx
add r8, r14
sub r8, rcx
mov rcx, r8
and rcx, rax
xor r8, rax
lea r9, [r8 + rcx*2]
mov qword [rbp + 0xe8], r9
not r9
mov r8, r9
and r8, r10
or r9, r10
mov r10, qword [rbp + 0xa0]
add r10, qword [rbp + 0x90]
not r13
rol r13, 1
add r10, r13
mov r11, r12
xor r11, r12
not r11
and r11, r10
xor r11, r12
not r9
rol r11, 0x20
or r9, r8
mov r8, r11
mov rcx, qword [rbp + 0x108]
and r8, rcx
xor rcx, r11
lea r12, [rcx + r8*2]
mov r8, r13
not r8
mov r13, r12
or r13, r8
and r8, r12
not r13
or r13, r8
mov rcx, r10
add rcx, qword [rbp + 0x80]
rol r13, 0x28
add rcx, r13
mov r8, rcx
xor r8, r11
not r8
and r8, r11
add r8, r8
sub r11, r8
rol r9, 0x30
add r15, r9
mov r10, rax
xor r10, rax
not r10
and r10, r15
add r11, rcx
rol r11, 0x30
xor r10, rax
add r12, r11
mov rax, r12
not rax
mov r14, r12
or r14, r13
not r13
or r13, rax
mov rax, rdi
mov r8, qword [rbp + 0x48]
and rax, r8
xor rdi, r8
lea rdi, [rdi + rax*2]
xor rbx, qword [rbp + 0x100]
rol rbx, 1
mov rax, rdi
and rax, rbx
or rdi, rbx
add rdi, rax
not r13
not r14
xor r11, rdi
rol r11, 0x20
or r14, r13
mov rax, r11
and rax, r15
or r15, r11
add r15, rax
mov qword [rbp + 0x110], r15
xor rbx, r15
rol rbx, 0x28
add rdi, qword [rbp + 0x70]
mov rax, rdi
and rax, rbx
or rdi, rbx
add rdi, rax
mov qword [rbp + 0x108], rdi
mov rax, rdi
and rax, r11
add rax, rax
add r11, rdi
sub r11, rax
rol r10, 1
mov r8, qword [rbp + 0x68]
sub r8, qword [rbp - 0x20]
mov rax, r8
and rax, r10
or r8, r10
add r8, rax
rol rdx, 0x30
mov r15, qword [rbp + 0xf8]
add r15, rdx
mov qword [rbp + 0xf8], r15
mov rax, r8
not rax
mov r13, r8
or r13, rdx
not rdx
or rdx, rax
not rdx
not r13
or r13, rdx
not r13
rol r13, 0x20
mov rax, r13
and rax, r12
or r12, r13
add r12, rax
mov rdi, r10
xor rdi, r10
not rdi
and rdi, r12
xor rdi, r10
add r8, qword [rbp + 0xa8]
rol rdi, 0x28
add r8, rdi
mov rdx, r8
mov r10, r8
mov qword [rbp + 0x68], r8
xor rdx, r13
not rdx
and rdx, r13
add rdx, rdx
sub r13, rdx
add rcx, qword [rbp + 0xb0]
mov rax, qword [rbp + 0xe0]
xor rax, r15
rol rax, 1
add rcx, rax
xor r9, rcx
rol r9, 0x20
mov qword [rbp + 0xa8], r9
mov rdx, r9
mov r8, qword [rbp + 0x100]
and rdx, r8
xor r8, r9
lea rdx, [r8 + rdx*2]
mov qword [rbp + 0xc0], rdx
add rcx, qword [rbp + 0x78]
add r13, r10
rol r13, 0x30
xor rax, rdx
rol rax, 0x28
mov qword [rbp + 0xe0], rax
add rcx, rax
movabs rax, 0x74905b96cda168b0
mov rdx, rax
not rdx
xor rdx, rax
mov rax, rdx
and rax, rcx
mov qword [rbp + 0xb0], rax
xor rcx, qword [rbp + 0x18]
add r12, r13
mov r9, r12
not r9
movabs r8, 0xd70d544420245d72
mov rax, r8
and rax, r9
xor r9, r12
and r9, rcx
mov r15, r8
not r15
xor r9, r12
mov qword [rbp + 0x18], r9
and r12, r15
or r12, rax
xor r15, r8
and r15, rdi
xor r15, r8
xor r15, r12
mov r9, qword [rbp + 0xe8]
add r9, qword [rbp + 0x58]
not r14
rol r14, 1
add r9, r14
xor rsi, r9
rol rsi, 0x20
mov r10, qword [rbp + 0xf8]
add r10, rsi
mov rax, r10
and rax, r14
add rax, rax
add r14, r10
sub r14, rax
mov rax, r9
mov r8, qword [rbp + 0x98]
and rax, r8
xor r9, r8
lea rcx, [r9 + rax*2]
rol r14, 0x28
movabs r8, 0x90a62340d5ba7c65
sub rcx, r8
add rcx, r8
add rcx, r14
not rsi
mov r9, rcx
or r9, rsi
and rsi, rcx
not r9
or r9, rsi
rol r11, 0x30
mov rax, qword [rbp + 0x110]
add rax, r11
mov qword [rbp + 0x110], rax
xor rbx, rax
rol rbx, 1
mov r8, qword [rbp - 0x68]
mov rsi, r8
xor rsi, r8
not rsi
and rsi, rbx
rol r9, 0x30
xor rsi, r8
movabs r12, 0x586da609089cc8f
mov rdi, r12
not rdi
xor rdi, r12
and rsi, rdi
and rdi, r9
movabs r8, 0xb3cff7a00cc52e5f
sub r9, r8
add r10, r8
add r10, r9
and rdx, qword [rbp + 0xa8]
movabs rax, 0x74905b96cda168b0
xor rdx, rax
xor rdx, rax
xor rdx, qword [rbp + 0xb0]
rol rdx, 0x30
mov r12, qword [rbp + 0xc0]
add r12, rdx
mov r9, r12
mov rbx, qword [rbp + 0xe0]
and r9, rbx
add r9, r9
add rbx, r12
sub rbx, r9
mov r9, qword [rbp + 0x108]
mov rax, r9
mov r8, qword [rbp + 0x28]
and rax, r8
add r9, r8
add rax, rax
sub r9, rax
xor r14, r10
xor r9, r10
mov qword [rbp + 0x28], r9
mov r8, qword [rbp + 0x20]
xor r8, r12
xor r8, qword [rbp + 0x68]
mov qword [rbp + 0x20], r8
mov r9, qword [rbp + 0x110]
xor r9, qword [rbp - 0x10]
mov r8, r9
and r8, rcx
add r9, rcx
rol rbx, 1
add r8, r8
sub r9, r8
mov r8, qword [rbp + 0x30]
mov rax, r8
and rax, rbx
add rbx, r8
add rax, rax
sub rbx, rax
mov rax, rbx
xor rax, r13
mov qword [rbp + 0x30], rax
rol r15, 1
movabs rax, 0x586da609089cc8f
xor rdi, rax
xor rdi, rax
xor rdi, rsi
xor r15, qword [rbp + 0x38]
mov rax, r15
and rax, rdx
add r15, rdx
add rax, rax
sub r15, rax
mov qword [rbp + 0x38], r15
rol r14, 1
movabs rdx, 0x5414c3fb999fc607
mov rax, rdx
not rax
xor rax, rdx
mov r8, qword [rbp + 0x10]
and r8, rax
and rax, r14
xor r8, rdx
xor rax, rdx
xor rax, r8
mov rdx, rax
and rdx, r11
add rax, r11
add rdx, rdx
mov r12, rax
sub r12, rdx
mov r15, qword [rbp - 0x70]
mov rax, qword [rbp - 0x60]
mov qword [rbp + 0xf8], rax
mov rsi, qword [rbp - 0x48]
cmp qword [rbp - 0x78], rsi
mov r13, qword [rbp - 0x18]
mov rcx, qword [rbp - 0x50]
mov r10, qword [rbp + 8]
jne 0x14004c660
mov eax, dword [0x1402135e0]
xor edx, edx
div dword [0x1402135e4]
imul eax, eax, 0xc34b36fc
add eax, 0xff526b02
cmp eax, 0x301f8779
mov rbx, qword [rbp + 0x20]
mov rdx, qword [rbp + 0x30]
mov r8, qword [rbp + 0x18]
mov r10, qword [rbp + 0x38]
mov r11, qword [rbp + 0x28]
jae 0x1400506ed
jmp 0x140050729
ud2
mov eax, dword [0x1402135c0]
xor edx, edx
div dword [0x1402135c4]
imul rcx, rax, 0x48e4de21
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1d
imul eax, eax, 0xa2cc5828
cmp eax, 0xe15cd606
jne 0x140050760
jmp 0x140050788
mov eax, dword [0x1402135e8]
and eax, dword [0x1402135ec]
add eax, 0x8cafc95b
and eax, 0xfa6d4f97
mov qword [rcx], r11
mov qword [rcx + 8], rbx
mov qword [rcx + 0x10], r9
mov qword [rcx + 0x18], r8
mov qword [rcx + 0x20], rdx
mov qword [rcx + 0x28], rdi
mov qword [rcx + 0x30], r10
mov qword [rcx + 0x38], r12
cmp eax, 0xfc53f95b
jne 0x14005074a
mov qword [rcx], r11
mov qword [rcx + 8], rbx
mov qword [rcx + 0x10], r9
mov qword [rcx + 0x18], r8
mov qword [rcx + 0x20], rdx
mov qword [rcx + 0x28], rdi
mov qword [rcx + 0x30], r10
mov qword [rcx + 0x38], r12
jmp 0x1400506ed
lea rsp, [rbp + 0x118]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
mov eax, dword [0x1402135c8]
or eax, dword [0x1402135cc]
mov ecx, eax
not ecx
or ecx, 0x768307
add eax, ecx
inc eax
or eax, 0xfdeef4bd
ud2
ud2