Function at 0x1400e4450
Capabilities:
Contain obfuscated stackstrings

Disassembly:
xchg rbx, rcx
mov qword [rsp + 8], rbx
xchg rcx, rbx
push rbx
nop
push r11
mov qword [rsp], rbp
nop
mov qword [rsp - 8], rsi
sub rsp, 8
nop
sub rsp, 8
mov qword [rsp], rdi
push rcx
mov qword [rsp], r12
nop
mov qword [rsp - 8], r13
sub rsp, 8
push r14
mov dword [rsp - 0x10], ebx
nop
sub rsp, 8
mov qword [rsp], r15
add rsp, 0xffffffffffffff98
movzx esi, byte [rcx + 0x31]
xchg rsi, rcx
mov r10, rsi
xchg rcx, rsi
movzx eax, byte [rcx + 0x30]
and esi, 0x7f
xchg rbx, rbx
movzx r9d, byte [rcx + 0x34]
movzx ebp, byte [rcx + 0x37]
and r9d, 0xf
movzx r8d, byte [rcx + 0x39]
mov r12, r12
and ebp, 1
movzx edi, byte [rcx + 0x3c]
and r8d, 0x3f
xchg r15, r15
movzx edx, byte [rcx + 0x3f]
and edi, 7
movzx r13d, byte [rcx + 0x27]
movzx r12d, byte [rcx + 0x2c]
mov dword [rsp - 0x18], edx
and r13d, 7
shl r9, 8
shl rbp, 3
shl rbp, 5
shl rdi, 5
shl rdi, 2
shl rdi, 1
shl rdx, 3
shl rdx, 3
shl rdx, 1
shl rdx, 1
shl rsi, 1
shl rsi, 3
shl rsi, 1
shl rsi, 2
shl rsi, 1
or rsi, rax
mov dword [rsp - 0x2c], 0x22018613
shl r8, 7
shl r8, 1
movzx eax, byte [rcx + 0x2f]
mov dword [rsp - 0x38], 0x1d1e4198
shr rax, 2
shl r12, 6
shl r12, 0xa
shl rsi, 2
shl rsi, 1
shl rsi, 1
shl rsi, 1
shl rsi, 1
or rsi, rax
mov rbx, rbx
movzx eax, byte [rcx + 0x33]
or r9, rax
movzx eax, byte [rcx + 0x32]
shl r9, 7
shl r9, 1
or r9, rax
movzx eax, byte [rcx + 0x31]
shr rax, 3
shr rax, 2
shr rax, 1
shr rax, 1
add r9, r9
or r9, rax
movzx eax, byte [rcx + 0x36]
mov dword [rsp - 0x2c], 0x18dcd409
or rbp, rax
movzx eax, byte [rcx + 0x35]
shl rbp, 4
shl rbp, 1
shl rbp, 1
shl rbp, 1
shl rbp, 1
or rbp, rax
mov dword [rsp - 0x34], ebx
movzx eax, byte [rcx + 0x34]
shr rax, 2
shr rax, 2
shl rbp, 1
shl rbp, 3
or rbp, rax
movzx eax, byte [rcx + 0x38]
or r8, rax
mov dword [rsp - 0x2c], esi
movzx eax, byte [rcx + 0x37]
shr rax, 1
shl r8, 1
shl r8, 6
or r8, rax
mov rdi, rdi
movzx eax, byte [rcx + 0x3b]
or rdi, rax
movzx eax, byte [rcx + 0x3a]
mov dword [rsp - 0x30], edi
shl rdi, 2
shl rdi, 5
shl rdi, 1
or rdi, rax
mov dword [rsp - 0x1c], 0x3a10d66f
movzx eax, byte [rcx + 0x39]
shr rax, 6
shl rdi, 2
mov dword [rsp - 0x34], 0x512f97cc
or rdi, rax
movzx eax, byte [rcx + 0x3e]
or rdx, rax
movzx eax, byte [rcx + 0x3d]
mov dword [rsp - 0x10], ebx
shl rdx, 4
shl rdx, 1
shl rdx, 1
shl rdx, 1
shl rdx, 1
or rdx, rax
movzx eax, byte [rcx + 0x3c]
mov dword [rsp - 0x38], ecx
shr rax, 1
shr rax, 1
shr rax, 1
shl rdx, 5
xchg r8, r8
or rdx, rax
movzx eax, byte [rcx + 0x2a]
or r12, rax
mov dword [rsp - 0x44], 0x1b5649c3
movzx eax, byte [rcx + 0x2b]
shl rax, 4
shl rax, 3
shl rax, 1
and r12d, 0x1fffff
or r12, rax
imul rax, rdx, 0xa6f7d
mov r12, r12
sub r12, rax
movzx eax, byte [rcx + 0x26]
mov qword [rsp + 0x20], r12
shl r13, 2
shl r13, 2
shl r13, 2
shl r13, 1
shl r13, 1
movzx r15d, byte [rcx + 0x22]
or r13, rax
mov dword [rsp - 0x1c], ebx
movzx eax, byte [rcx + 0x25]
and r15d, 1
movzx r14d, byte [rcx + 0x12]
movzx r11d, byte [rcx + 0x17]
mov dword [rsp - 0x44], 0x3c31a52b
and r14d, 7
shl r15, 1
shl r15, 1
shl r15, 1
shl r15, 4
shl r15, 1
shl r13, 7
shl r13, 1
or r13, rax
mov dword [rsp - 0x30], esi
shl r14, 6
shl r14, 2
movzx eax, byte [rcx + 0x24]
shr rax, 1
shr rax, 1
shr rax, 3
shr rax, 1
shl r13, 1
shl r13, 1
or r13, rax
mov rdi, rdi
shl r11, 8
shl r11, 6
shl r11, 1
shl r11, 1
imul rax, r8, 0xa6f7d
mov dword [rsp - 0x38], 0x51b6f91
sub r13, rax
imul rax, rdx, 0xf39ad
sub r13, rax
imul rax, rdi, 0x215d1
mov dword [rsp - 0x24], 0x6d8f0a1f
add r13, rax
movzx eax, byte [rcx + 0x21]
or r15, rax
mov dword [rsp - 0x2c], esp
xchg r13, rsi
mov qword [rsp + 0x18], rsi
xchg rsi, r13
movzx eax, byte [rcx + 0x20]
xchg r8, r8
shl r15, 2
shl r15, 4
shl r15, 1
shl r15, 1
or r15, rax
movzx eax, byte [rcx + 0x1f]
mov dword [rsp - 0x1c], esp
shr rax, 4
shl r15, 3
shl r15, 1
or r15, rax
mov dword [rsp - 0x1c], 0x269f592a
imul rax, rdi, 0x9fb67
add r15, rax
imul rax, r9, 0xa6f7d
mov dword [rsp - 0x3c], 0xd3af4da
sub r15, rax
imul rax, r8, 0xf39ad
sub r15, rax
imul rax, rdx, 0x72d18
xchg rcx, rcx
add r15, rax
imul rax, rbp, 0x215d1
add r15, rax
mov dword [rsp - 0x14], 0x3716359a
movzx eax, byte [rcx + 0x11]
or r14, rax
xchg rdx, r15
mov qword [rsp], rdx
xchg rdx, r15
movzx eax, byte [rcx + 0x10]
shl r14, 2
shl r14, 2
shl r14, 3
shl r14, 1
or r14, rax
movzx eax, byte [rcx + 0xf]
shr rax, 1
shr rax, 4
shr rax, 1
shl r14, 1
shl r14, 1
or r14, rax
xchg r13, r13
imul rax, rsi, 0xa2c13
add r14, rax
movzx eax, byte [rcx + 0x15]
or r11, rax
mov dword [rsp - 0x14], 0x4b5a2552
movzx eax, byte [rcx + 0x16]
movzx ecx, byte [rcx + 0x1c]
and r11d, 0x1fffff
mov dword [rsp - 0x10], 0x5100e2e8
shl rax, 4
shl rax, 1
shl rax, 1
shl rax, 1
shl rax, 1
and ecx, 0x7f
or r11, rax
shl rcx, 8
mov rdi, rdi
imul rax, rsi, 0x9fb67
add r11, rax
imul rax, r9, 0x72d18
add r11, rax
xchg rcx, rcx
imul rax, rbp, 0xa2c13
add r11, rax
movzx eax, byte [r10 + 0x1b]
or rcx, rax
mov rbp, rbp
xchg r11, rdi
mov qword [rsp + 0xc0], rdi
xchg r11, rdi
movzx eax, byte [r10 + 0x1a]
mov r13, r13
shr rax, 2
shl rcx, 6
or rcx, rax
mov rcx, rcx
imul rax, rbp, 0x9fb67
add rcx, rax
imul rax, r9, 0xf39ad
xchg rdi, rdi
sub rcx, rax
imul rax, r8, 0x72d18
add rcx, rax
lea rbx, [r14 + 0x100000]
mov dword [rsp - 0x2c], 0x4953aace
imul rax, rdi, 0xa2c13
sar rbx, 8
sar rbx, 8
sar rbx, 3
sar rbx, 1
sar rbx, 1
add r11, 0x100000
add rcx, rax
xchg r15, r15
shr r11, 8
shr r11, 8
shr r11, 4
shr r11, 1
imul rax, rsi, 0x215d1
add rcx, rax
mov dword [rsp - 0x2c], 0x1de84b79
movzx eax, byte [r10 + 0x13]
mov qword [rsp + 0xb8], rcx
movzx ecx, byte [r10 + 0x14]
xchg rdi, rdi
shl rcx, 5
shl rcx, 3
or rcx, rax
mov dword [rsp - 0xc], ecx
movzx eax, byte [r10 + 0x12]
shr rax, 1
shr rax, 2
shl rcx, 2
shl rcx, 2
shl rcx, 1
or rcx, rax
mov r14, r14
imul r10, r9, 0xa2c13
imul rax, rsi, 0x72d18
add rax, rbx
mov dword [rsp - 0x18], 0x75516170
add rax, rcx
add r10, rax
xchg rbp, r10
mov qword [rsp + 0xc8], rbp
xchg r10, rbp
mov r10, qword [rsp + 0xb0]
movzx ecx, byte [r10 + 0x1a]
movzx eax, byte [r10 + 0x19]
mov dword [rsp - 0x18], edi
and ecx, 3
shl rcx, 8
or rcx, rax
mov dword [rsp - 0x40], 0x5a15b7b8
movzx eax, byte [r10 + 0x18]
shl rcx, 2
shl rcx, 3
shl rcx, 2
shl rcx, 1
or rcx, rax
movzx eax, byte [r10 + 0x17]
xchg r9, r9
shr rax, 5
shl rcx, 2
shl rcx, 1
or rcx, rax
xchg rcx, rcx
imul rax, r9, 0x9fb67
imul r10, r8, 0xa2c13
imul r9, r9, 0x215d1
xchg r15, r15
add rcx, rax
imul rax, rsi, 0xf39ad
sub rcx, rax
imul rax, rbp, 0x72d18
mov dword [rsp - 0x44], esi
add rax, r11
add rax, rcx
add r10, rax
xchg rcx, rcx
mov rax, qword [rsp + 0xb0]
xchg r10, rdx
mov qword [rsp + 8], rdx
xchg rdx, r10
xchg r10, rcx
mov rcx, qword [rsp + 0xb8]
xchg r10, rcx
add r10, 0x253247da
sub r10, 0x252247da
movzx ecx, byte [rax + 0x1f]
mov rbx, rbx
movzx eax, byte [rax + 0x1e]
and ecx, 0xf
shl rcx, 2
shl rcx, 6
or rcx, rax
sar r10, 4
sar r10, 0xe
sar r10, 1
sar r10, 1
sar r10, 1
mov rax, qword [rsp + 0xb0]
shl rcx, 1
shl rcx, 2
shl rcx, 2
shl rcx, 2
shl rcx, 1
movzx eax, byte [rax + 0x1d]
xchg r9, r9
or rcx, rax
mov rax, qword [rsp + 0xb0]
add rcx, rcx
movzx eax, byte [rax + 0x1c]
mov dword [rsp - 0x40], ebx
shr rax, 6
shr rax, 1
or rcx, rax
mov dword [rsp - 0x28], 0x1a77a80
imul rax, r8, 0x9fb67
add rcx, rax
imul rax, rsi, 0xa6f7d
mov dword [rsp - 0x2c], esp
sub rcx, rax
imul rax, rbp, 0xf39ad
sub rcx, rax
imul rax, rdi, 0x72d18
xchg rsi, rsi
add rcx, rax
imul rax, rdx, 0xa2c13
add rax, r10
mov dword [rsp - 0xc], ebx
add rax, rcx
add r9, rax
mov qword [rsp + 0x10], r9
xchg r10, r10
lea r9, [r15 + 0x100000]
sar r9, 3
sar r9, 7
sar r9, 9
sar r9, 1
sar r9, 1
xchg rbp, r15
mov rbp, qword [rsp + 0xb0]
xchg rbp, r15
imul rsi, r8, 0x215d1
mov rdi, rdi
movzx ecx, byte [r15 + 0x24]
lea r8, [r13 + 0x100000]
movzx eax, byte [r15 + 0x23]
mov dword [rsp - 0x44], esp
and ecx, 0x3f
shl rcx, 8
or rcx, rax
mov dword [rsp - 0x20], edi
sar r8, 0x15
movzx eax, byte [r15 + 0x22]
shr rax, 1
shl rcx, 5
shl rcx, 1
shl rcx, 1
or rcx, rax
imul rax, rdx, 0x9fb67
xchg rdi, rdi
imul r13, rdx, 0x215d1
add rcx, rax
lea rdx, [r12 + 0x100000]
xchg r8, r8
xchg r12, r8
mov r8, qword [rsp + 0x10]
xchg r8, r12
imul rax, rbp, 0xa6f7d
movzx ebp, byte [r15 + 0x2f]
xchg r8, r8
neg r12
add r12, 0xfffffffffff00000
neg r12
sub rcx, rax
mov dword [rsp - 0x38], 0x7cf9bb74
sar rdx, 0xe
sar rdx, 7
and ebp, 3
sar r12, 8
sar r12, 1
sar r12, 5
sar r12, 6
sar r12, 1
imul rax, rdi, 0xf39ad
shl rbp, 4
shl rbp, 2
shl rbp, 1
shl rbp, 1
sub rcx, rax
lea rax, [r9 + rcx]
mov r13, r13
movzx ecx, byte [r15 + 0x29]
add rsi, rax
shl rcx, 8
movzx eax, byte [r15 + 0x28]
xchg r13, r13
or rcx, rax
shl r9, 9
shl r9, 2
shl r9, 2
shl r9, 8
movzx eax, byte [r15 + 0x27]
xchg rbp, rbp
shr rax, 1
shr rax, 2
shl rcx, 5
or rcx, rax
mov dword [rsp - 0x1c], 0x3975309e
imul rax, rdi, 0xa6f7d
xchg rdi, rcx
mov rcx, qword [rsp + 0xc8]
xchg rcx, rdi
sub rcx, rax
xchg r15, r15
add rdi, 0x5a464799
sub rdi, 0x5a364799
sar rdi, 0xf
sar rdi, 1
sar rdi, 3
sar rdi, 1
sar rdi, 1
lea rax, [r8 + rcx]
xchg rsi, rsi
shl r8, 0xc
shl r8, 5
shl r8, 1
shl r8, 3
add r13, rax
lea rcx, [rsi + 0x100000]
movzx eax, byte [r15 + 0x2e]
xchg r10, r10
or rbp, rax
sar rcx, 0xd
sar rcx, 6
sar rcx, 2
movzx eax, byte [r15 + 0x2d]
shl rbp, 4
shl rbp, 2
shl rbp, 1
shl rbp, 1
or rbp, rax
movzx eax, byte [r15 + 0x2c]
mov dword [rsp - 0x1c], 0x2430842b
xchg r9, r15
mov r9, qword [rsp + 8]
xchg r15, r9
shr rax, 1
shr rax, 2
shr rax, 1
shr rax, 1
sub r15, 0x7ec810f2
add r15, 0x7ed810f2
shl rbp, 2
shl rbp, 1
or rbp, rax
sar r15, 0xe
sar r15, 6
sar r15, 1
add rbp, rdx
mov rsi, rsi
xchg r12, rax
mov r12, rax
xchg r12, rax
sub rax, r9
shl rdx, 2
shl rdx, 0xe
shl rdx, 2
shl rdx, 1
shl rdx, 1
shl rdx, 1
add qword [rsp], rax
xchg rbp, rax
mov rbp, rcx
xchg rbp, rax
xchg r9, r11
mov r11, qword [rsp + 0x20]
xchg r11, r9
sub rax, r8
xchg rbx, r8
mov rbx, qword [rsp + 0x18]
xchg rbx, r8
shl rcx, 0xf
shl rcx, 3
shl rcx, 2
shl rcx, 1
add r8, rax
sub rsi, rcx
xchg rbp, r14
mov qword [rsp + 0x50], r14
xchg rbp, r14
lea rcx, [r13 + 0x100000]
mov dword [rsp - 0x24], 0x4a17c4ee
mov qword [rsp + 0x18], r8
sar rcx, 2
sar rcx, 6
sar rcx, 3
sar rcx, 9
sar rcx, 1
xchg rcx, rax
mov rcx, rax
xchg rcx, rax
mov qword [rsp + 0x48], rsi
xchg r11, r11
sub rax, rdx
add r9, rax
shl r11, 4
shl r11, 4
shl r11, 0xb
shl r11, 1
shl r11, 1
shl rcx, 0xf
shl rcx, 3
shl rcx, 1
shl rcx, 1
shl rcx, 1
sub r13, rcx
mov r14, r14
xchg rcx, r9
mov qword [rsp + 0x20], rcx
xchg r9, rcx
imul rcx, r9, 0x215d1
mov r10, r10
imul rax, rbp, 0xfffffffffff59083
imul rdx, r13, 0xfffffffffff59083
shl r10, 0xe
shl r10, 5
shl r10, 1
shl r10, 1
sub rax, r10
mov r10, r10
shl rbx, 0x12
shl rbx, 2
shl rbx, 1
add rax, r15
add qword [rsp + 0xb8], rax
imul rax, rbp, 0xf39ad
mov rbx, rbx
sub rdx, r11
sub rdx, rax
lea rax, [rdi + rdx]
mov r11, r11
add rcx, rax
add qword [rsp + 0xc0], rcx
imul rcx, r9, 0x9fb67
mov dword [rsp - 0x38], ecx
imul rax, rsi, 0xa6f7d
sub rcx, rbx
xchg rbx, rsi
mov rsi, qword [rsp]
xchg rbx, rsi
sub rcx, rax
imul rax, r13, 0xf39ad
mov dword [rsp - 0x2c], ebp
sub rcx, rax
imul rax, rbp, 0x72d18
xchg r13, rbp
mov r13, qword [rsp + 0xb0]
xchg rbp, r13
add rcx, rax
mov dword [rsp - 0x40], 0x3e007e0d
imul rax, r8, 0x215d1
movzx r9d, byte [rbp + 7]
movzx edx, byte [rbp + 2]
xchg rdx, rdx
add rax, r14
movzx r11d, byte [rbp + 0xd]
add rax, rcx
mov dword [rsp - 0x30], esp
movzx ecx, byte [rbp + 5]
and r11d, 1
mov qword [rsp + 0x28], rax
xchg r15, r15
and r9d, 0x7f
movzx eax, byte [rbp]
mov r8d, edx
shl r11, 5
shl r11, 2
shl r11, 1
shl r9, 2
shl r9, 5
shl r9, 1
shl r8, 0xc
shl r8, 2
shl r8, 1
shl r8, 1
or r8, rax
movzx eax, byte [rbp + 1]
xchg rbp, rbp
shl rax, 1
shl rax, 2
shl rax, 1
shl rax, 1
shl rax, 1
shl rax, 1
shl rax, 1
and r8d, 0x1fffff
xchg r10, r10
or r8, rax
imul rax, rbx, 0xa2c13
add r8, rax
movzx eax, byte [rbp + 6]
mov rsp, rsp
or r9, rax
xchg r8, r9
mov qword [rsp], r9
xchg r8, r9
shl r9, 1
shl r9, 2
shl r9, 2
shl r9, 1
mov eax, ecx
shr rax, 2
or r9, rax
xchg rdi, rdi
imul rax, rbx, 0x9fb67
add r9, rax
imul rax, rsi, 0x72d18
add r9, rax
mov dword [rsp - 0x1c], 0x5b351e9
imul rax, qword [rsp + 0x18], 0xa2c13
add r9, rax
movzx eax, byte [rbp + 0xc]
or r11, rax
mov dword [rsp - 0x30], 0x152e8e51
xchg r13, r9
mov qword [rsp + 0x38], r13
xchg r9, r13
movzx eax, byte [rbp + 0xb]
shl r11, 4
shl r11, 3
shl r11, 1
or r11, rax
movzx eax, byte [rbp + 0xa]
mov dword [rsp - 0x24], ebx
shr rax, 3
shr rax, 1
shl r11, 2
shl r11, 2
or r11, rax
xchg rsp, rsp
imul rax, qword [rsp + 0x18], 0x9fb67
add r11, rax
imul rax, rsi, 0xf39ad
sub r11, rax
mov r12, r12
imul rax, r13, 0x72d18
add r11, rax
imul rax, qword [rsp + 0x20], 0xa2c13
mov dword [rsp - 0x10], edx
add r11, rax
and ecx, 3
shr rdx, 4
shr rdx, 1
shl rcx, 6
shl rcx, 1
shl rcx, 1
lea r14, [r8 + 0x100000]
mov r8, qword [rsp + 0x28]
xchg r14, r14
imul r10, rsi, 0xa2c13
imul rax, rbx, 0x215d1
sar r14, 3
sar r14, 6
sar r14, 6
sar r14, 2
sar r14, 2
sar r14, 1
sar r14, 1
sub r8, 0x4109e8a0
add r8, 0x4119e8a0
shl rdi, 0x10
shl rdi, 3
shl rdi, 1
shl rdi, 1
sar r8, 7
sar r8, 0xe
add r11, rax
mov r13, r13
movzx eax, byte [rbp + 4]
or rcx, rax
xchg rsi, r11
mov qword [rsp + 0x40], rsi
xchg r11, rsi
movzx eax, byte [rbp + 3]
lea rbp, [r9 + 0x100000]
mov r9, qword [rsp + 0xb0]
mov rdx, rdx
shl rcx, 1
shl rcx, 1
shl rcx, 3
shl rcx, 1
shl rcx, 1
shl rcx, 1
or rcx, rax
sar rbp, 7
sar rbp, 5
sar rbp, 8
sar rbp, 1
shl rcx, 3
mov dword [rsp - 0x2c], 0x1f7de904
or rcx, rdx
imul rax, rbx, 0x72d18
imul rdx, r13, 0xa2c13
mov r15, r15
add rax, r14
add rax, rcx
movzx ecx, byte [r9 + 0xa]
add r10, rax
mov rbx, rbx
and ecx, 0xf
movzx eax, byte [r9 + 9]
shl rcx, 1
shl rcx, 2
shl rcx, 2
shl rcx, 2
shl rcx, 1
or rcx, rax
xchg r14, r14
mov qword [rsp + 0x30], r10
movzx eax, byte [r9 + 8]
shl rcx, 6
shl rcx, 1
shl rcx, 1
or rcx, rax
mov rsp, rsp
movzx eax, byte [r9 + 7]
shr rax, 5
shr rax, 1
shr rax, 1
add rcx, rcx
mov rdx, rdx
or rcx, rax
imul rax, rsi, 0x9fb67
lea rsi, [r11 + 0x100000]
xchg r15, r11
mov r15, qword [rsp + 0x20]
xchg r15, r11
add rcx, rax
mov dword [rsp - 0x20], edx
sar rsi, 0x14
sar rsi, 1
imul rax, rbx, 0xf39ad
sub rcx, rax
mov dword [rsp - 0x44], ebp
imul rax, qword [rsp + 0x18], 0x72d18
add rax, rbp
add rax, rcx
xchg rsi, rsi
movzx ecx, byte [r9 + 0xf]
add rdx, rax
and ecx, 0x3f
movzx eax, byte [r9 + 0xe]
xchg r11, r11
shl rcx, 1
shl rcx, 4
shl rcx, 2
shl rcx, 1
or rcx, rax
xchg r11, rdx
mov qword [rsp + 0x58], r11
xchg r11, rdx
movzx eax, byte [r9 + 0xd]
mov dword [rsp - 0x24], esp
imul rdx, qword [rsp + 0x48], 0x215d1
xchg rdx, r9
mov rdx, qword [rsp + 0x50]
xchg r9, rdx
shr rax, 1
mov dword [rsp - 0x28], edx
shl rcx, 3
shl rcx, 1
shl rcx, 3
or rcx, rax
mov dword [rsp - 0x44], 0x5a484b87
imul rax, r13, 0x9fb67
add rcx, rax
imul rax, rbx, 0xa6f7d
sub rcx, rax
xchg rbp, rbp
imul rax, qword [rsp + 0x18], 0xf39ad
sub rcx, rax
imul rax, r11, 0x72d18
add rcx, rax
xchg r10, r10
imul rax, r9, 0xa2c13
add rax, rsi
add rax, rcx
add rdx, rax
xchg r13, r13
imul rax, qword [rsp + 0x18], 0xa6f7d
xchg rdx, r10
mov qword [rsp + 0x48], r10
xchg rdx, r10
imul rdx, r9, 0x9fb67
mov rdx, rdx
sub rdx, rdi
sub rdx, rax
xchg r15, rbx
mov r15, qword [rsp + 8]
xchg r15, rbx
mov rdi, qword [rsp + 0x10]
mov rdx, rdx
imul rax, r11, 0xf39ad
imul rcx, r13, 0x215d1
xchg r11, r13
mov r11, qword [rsp + 0x48]
xchg r13, r11
sub rdx, rax
shl r15, 8
shl r15, 0xb
shl r15, 1
shl r15, 1
shl r12, 1
shl r12, 7
shl r12, 0xb
shl r12, 1
shl r12, 1
shl rbp, 7
shl rbp, 3
shl rbp, 9
shl rbp, 1
shl rbp, 1
lea rax, [r8 + rdx]
shl rsi, 0x13
shl rsi, 1
shl rsi, 1
mov rdx, qword [rsp + 0xc0]
add rcx, rax
add qword [rsp + 0xc8], rcx
mov r15, r15
sub rdx, 0x2369dab5
add rdx, 0x2379dab5
imul rcx, r9, 0x215d1
imul rax, r11, 0xfffffffffff59083
mov rbp, rbp
shl r8, 8
shl r8, 8
shl r8, 4
shl r8, 1
lea r9, [r10 + 0x100000]
sar rdx, 0xa
sar rdx, 6
sar rdx, 4
sar rdx, 1
lea r11, [r13 + 0x100000]
sar r11, 0xd
sar r11, 1
sar r11, 2
sar r11, 1
sar r11, 1
sar r11, 2
sar r11, 1
sar r9, 2
sar r9, 0xc
sar r9, 5
sar r9, 1
sar r9, 1
shl r14, 0xa
shl r14, 2
shl r14, 6
shl r14, 2
shl r14, 1
sub rax, r15
mov r8, r8
mov r15, qword [rsp + 0x28]
add rax, rdx
shl rdx, 9
shl rdx, 1
shl rdx, 8
shl rdx, 2
shl rdx, 1
add rcx, rax
add rbx, rcx
mov r9, r9
mov rcx, qword [rsp + 0xb8]
neg rcx
add rcx, 0xfffffffffff00000
neg rcx
mov qword [rsp + 8], rbx
sar rcx, 2
sar rcx, 6
sar rcx, 1
sar rcx, 1
sar rcx, 5
sar rcx, 4
sar rcx, 1
sar rcx, 1
sub rbx, 0x77880767
add rbx, 0x77980767
xchg r12, rax
mov r12, rcx
xchg r12, rax
sar rbx, 6
sar rbx, 6
sar rbx, 7
sar rbx, 1
sar rbx, 1
sub rax, r12
mov dword [rsp - 0x10], 0x5fd58817
shl rcx, 0xf
shl rcx, 5
shl rcx, 1
xchg r12, rbx
mov rbx, qword [rsp + 0x58]
xchg r12, rbx
add rdi, rax
mov dword [rsp - 0x10], 0x3a0a478e
mov qword [rsp + 0x10], rdi
mov rax, r11
sub rax, r8
mov dword [rsp - 0x28], edi
sub rdi, 0xfffffffffff00000
mov r8, qword [rsp + 0xc8]
add r15, rax
sar rdi, 3
sar rdi, 0xb
sar rdi, 6
sar rdi, 1
lea r10, [r12 + 0x100000]
mov dword [rsp - 0x10], esi
add r8, 0x6d8e045
sub r8, 0x6c8e045
sar r10, 0x13
sar r10, 1
sar r10, 1
sar r8, 0x12
sar r8, 2
sar r8, 1
mov rax, r8
sub rax, rdx
mov dword [rsp - 0x20], 0xcaaedee
mov rdx, qword [rsp + 0x30]
add qword [rsp + 0xc0], rax
xchg rbx, rax
mov rbx, rax
xchg rbx, rax
sub rax, rcx
mov rcx, qword [rsp]
xchg r8, r8
add qword [rsp + 0xb8], rax
imul rax, rdi, 0xa2c13
sub rax, r14
xchg rsi, rsi
add rcx, rax
imul rax, rdi, 0x9fb67
mov qword [rsp], rcx
mov r8, r8
sub rax, rbp
sar rcx, 0x13
sar rcx, 1
sar rcx, 1
xchg rbp, r14
mov r14, qword [rsp + 0x38]
xchg r14, rbp
add rax, r9
xchg r13, r13
add rbp, rax
shl r9, 0x12
shl r9, 1
shl r9, 1
shl r9, 1
imul rax, rdi, 0x215d1
sub rax, rsi
mov dword [rsp - 0x20], 0x126c3fdb
xchg r8, rsi
mov r8, qword [rsp + 0x40]
xchg r8, rsi
add rax, r10
mov r9, r9
add rsi, rax
imul rax, rdi, 0x72d18
sub rax, r9
add rax, rcx
mov r15, r15
add rdx, rax
xchg rdx, r10
mov qword [rsp + 0x30], r10
xchg r10, rdx
imul rax, rdi, 0xfffffffffff0c653
sar rdx, 0xb
sar rdx, 4
sar rdx, 1
sar rdx, 3
sar rdx, 1
sar rdx, 1
add rbp, rdx
shl rcx, 6
shl rcx, 0xc
shl rcx, 1
shl rcx, 1
shl rcx, 1
shl r10, 8
shl r10, 5
shl r10, 6
shl r10, 1
shl r10, 1
xchg r12, rbp
mov r9, r12
xchg r12, rbp
sub rax, r10
mov dword [rsp - 0x2c], 0x1ed69d6d
sar r9, 4
sar r9, 0xc
sar r9, 1
sar r9, 1
sar r9, 1
sar r9, 2
add rax, r9
mov dword [rsp - 0x1c], edi
shl r8, 0xf
shl r8, 3
shl r8, 1
shl r8, 1
shl r8, 1
add r12, rax
shl r11, 0xf
shl r11, 5
shl r11, 1
imul rax, rdi, 0xfffffffffff59083
shl rbx, 4
shl rbx, 0xf
shl rbx, 1
shl rbx, 1
xchg r12, rcx
mov r10, rcx
xchg rcx, r12
sub rax, r11
xchg rbp, rbp
shl rdi, 2
shl rdi, 0xc
shl rdi, 4
shl rdi, 2
shl rdi, 1
xchg rbp, r11
mov qword [rsp + 0x38], r11
xchg r11, rbp
sar r10, 0x11
sar r10, 2
sar r10, 1
sar r10, 1
add rsi, r10
mov dword [rsp - 0x3c], 0x46f01965
shl rdx, 0x11
shl rdx, 2
shl rdx, 1
shl rdx, 1
xchg rsi, r11
mov qword [rsp + 0x40], r11
xchg r11, rsi
sar rsi, 0x11
sar rsi, 4
add rax, rsi
shl r9, 5
shl r9, 5
shl r9, 4
shl r9, 6
shl r9, 1
add r13, rax
xchg rdi, r11
mov rdi, r13
xchg rdi, r11
sar r11, 0xd
sar r11, 4
sar r11, 1
sar r11, 2
sar r11, 1
add r15, r11
xchg rcx, rcx
xchg rbp, r15
mov r15, rbp
xchg r15, rbp
mov qword [rsp + 0x28], r15
sar rbp, 3
sar rbp, 9
sar rbp, 7
sar rbp, 1
sar rbp, 1
mov rax, rbp
sub rax, r8
mov r8, qword [rsp + 0xc8]
mov dword [rsp - 0x44], edx
add r8, rax
xchg r8, rax
mov r8, qword [rsp + 0xc0]
xchg r8, rax
xchg r8, r12
mov qword [rsp + 0xc8], r12
xchg r12, r8
sar r8, 4
sar r8, 0xd
sar r8, 3
sar r8, 1
add rax, r8
xchg r10, r14
mov r10, rax
xchg r14, r10
xchg rbx, rax
mov qword [rsp + 0xc0], rbx
xchg rbx, rax
sar r14, 4
sar r14, 1
sar r14, 7
sar r14, 3
sar r14, 4
sar r14, 1
sar r14, 1
mov rax, r14
xchg rdi, rdi
sub rax, rbx
xchg rbx, rcx
mov rcx, qword [rsp + 8]
xchg rbx, rcx
add rbx, rax
mov r12, r12
mov rax, qword [rsp + 0xb8]
xchg r8, rbx
mov qword [rsp + 8], r8
xchg r8, rbx
sar rbx, 0xb
sar rbx, 9
sar rbx, 1
add rax, rbx
mov r15, rax
xchg rdi, rdi
mov qword [rsp + 0xb8], rax
sar r15, 0x14
sar r15, 1
xchg r13, rax
mov r13, r15
xchg r13, rax
sub rax, rdi
xchg rdi, r9
mov r9, qword [rsp + 0x10]
xchg rdi, r9
add rdi, rax
mov qword [rsp + 0x10], rdi
mov dword [rsp - 0x38], edi
sar rdi, 0xd
sar rdi, 2
sar rdi, 1
sar rdi, 2
sar rdi, 2
sar rdi, 1
imul rax, rdi, 0xa2c13
xchg r10, r10
sub rax, rcx
mov rcx, qword [rsp]
add rcx, rax
xchg rcx, rbp
mov qword [rsp], rbp
xchg rbp, rcx
sar rcx, 0x12
sar rcx, 1
sar rcx, 1
sar rcx, 1
imul rax, rdi, 0x72d18
sub rax, rdx
xchg r13, r13
mov rdx, qword [rsp + 0x30]
add rax, rcx
shl rcx, 1
shl rcx, 0xb
shl rcx, 4
shl rcx, 3
shl rcx, 1
shl rcx, 1
sub qword [rsp], rcx
mov dword [rsp - 0x44], esi
add rdx, rax
imul rax, rdi, 0x9fb67
mov rcx, rdx
mov dword [rsp - 0x40], 0x1d7f6e38
sub rax, r9
sar rcx, 0x15
mov r9, qword [rsp + 0x38]
add rax, rcx
mov r14, r14
add r9, rax
shl rcx, 2
shl rcx, 3
shl rcx, 9
shl rcx, 3
shl rcx, 1
shl rcx, 2
shl rcx, 1
sub rdx, rcx
shl r10, 0x14
shl r10, 1
shl rsi, 7
shl rsi, 2
shl rsi, 5
shl rsi, 1
shl rsi, 1
shl rsi, 1
shl rsi, 1
shl rsi, 1
shl rsi, 1
shl rsi, 1
mov rcx, r9
sar rcx, 0x15
shl r11, 6
shl r11, 0xa
shl r11, 3
shl r11, 1
shl r11, 1
imul rax, rdi, 0xfffffffffff0c653
mov dword [rsp - 0xc], 0x6123678d
shl rbp, 4
shl rbp, 6
shl rbp, 6
shl rbp, 2
shl rbp, 1
shl rbp, 1
shl rbp, 1
sub rax, r10
shl rbx, 0x12
shl rbx, 2
shl rbx, 1
add rax, rcx
mov r11, r11
mov r10, qword [rsp + 0x40]
shl rcx, 0x10
shl rcx, 1
shl rcx, 2
shl rcx, 1
shl rcx, 1
add r12, rax
sub r9, rcx
shl r14, 0xa
shl r14, 4
shl r14, 5
shl r14, 1
shl r14, 1
imul rax, rdi, 0x215d1
xchg rsi, rcx
mov rsi, r12
xchg rcx, rsi
shl r8, 0xb
shl r8, 7
shl r8, 1
shl r8, 1
shl r8, 1
sar rcx, 9
sar rcx, 1
sar rcx, 8
sar rcx, 1
sar rcx, 1
sar rcx, 1
sub rax, rsi
add rax, rcx
mov dword [rsp - 0x3c], 0x7be952cd
mov rsi, qword [rsp + 0xc8]
shl rcx, 0xa
shl rcx, 5
shl rcx, 5
shl rcx, 1
add r10, rax
sub r12, rcx
mov dword [rsp - 0x3c], 0x618a1b0d
shl r15, 0x13
shl r15, 1
shl r15, 1
imul rax, rdi, 0xfffffffffff59083
xchg r14, r14
xchg rcx, r10
mov r10, rcx
xchg rcx, r10
shl rdi, 0xc
shl rdi, 1
shl rdi, 3
shl rdi, 1
shl rdi, 2
shl rdi, 1
shl rdi, 1
sar rcx, 8
sar rcx, 1
sar rcx, 3
sar rcx, 2
sar rcx, 5
sar rcx, 2
sub rax, r11
mov r9, r9
xchg r11, rsi
mov rsi, qword [rsp + 0x28]
xchg rsi, r11
add rax, rcx
xchg rdx, rdx
shl rcx, 0x11
shl rcx, 1
shl rcx, 1
shl rcx, 1
shl rcx, 1
add r13, rax
sub r10, rcx
mov rcx, r13
mov dword [rsp - 0x38], 0x24d3c554
sar rcx, 3
sar rcx, 0x12
xchg r11, rax
mov r11, rcx
xchg r11, rax
shl rcx, 0x15
sub rax, rbp
sub r13, rcx
mov dword [rsp - 0x24], ebx
xchg rcx, rbp
mov rcx, qword [rsp + 0xc0]
xchg rcx, rbp
add r11, rax
xchg rbx, rcx
mov rbx, r11
xchg rbx, rcx
sar rcx, 0x13
sar rcx, 1
sar rcx, 1
xchg r15, rax
mov r15, rcx
xchg r15, rax
shl rcx, 4
shl rcx, 2
shl rcx, 9
shl rcx, 4
shl rcx, 1
shl rcx, 1
sub r11, rcx
sub rax, r8
xchg r8, r15
mov r15, qword [rsp + 0x10]
xchg r15, r8
add rsi, rax
mov dword [rsp - 0x24], ebx
xchg rcx, rsi
mov rsi, rcx
xchg rsi, rcx
sar rcx, 0x10
sar rcx, 2
sar rcx, 1
sar rcx, 1
sar rcx, 1
xchg r11, rax
mov r11, rcx
xchg r11, rax
shl rcx, 0x15
sub rax, r14
mov dword [rsp - 0x14], 0x7ab0f3a5
sub rsi, rcx
mov r14, qword [rsp + 0xb8]
add rbp, rax
xchg rbp, rcx
mov rbp, rcx
xchg rbp, rcx
sar rcx, 0x15
mov r12, r12
xchg rsp, rcx
mov rax, rsp
xchg rcx, rsp
shl rcx, 0x10
shl rcx, 4
shl rcx, 1
sub rax, rbx
sub rbp, rcx
mov dword [rsp - 0x28], 0x3e79be31
mov rbx, qword [rsp + 8]
add rbx, rax
mov rcx, rbx
mov dword [rsp - 0x24], edx
sar rcx, 4
sar rcx, 9
sar rcx, 1
sar rcx, 6
sar rcx, 1
xchg rcx, rax
mov rcx, rax
xchg rcx, rax
shl rcx, 7
shl rcx, 4
shl rcx, 2
shl rcx, 3
shl rcx, 2
shl rcx, 2
shl rcx, 1
sub rax, r15
xchg r10, r10
sub rbx, rcx
add r14, rax
xchg r8, r14
mov rcx, r8
xchg r8, r14
sar rcx, 1
sar rcx, 0xc
sar rcx, 7
sar rcx, 1
mov rax, rcx
sub rax, rdi
mov rcx, rcx
add r8, rax
xchg rdx, rdi
mov rdx, qword [rsp + 0xb0]
xchg rdi, rdx
shl rcx, 0xb
shl rcx, 3
shl rcx, 5
shl rcx, 1
shl rcx, 1
sub r14, rcx
xchg rcx, rcx
mov rcx, qword [rsp]
xchg r10, rcx
mov rax, r10
xchg r10, rcx
sar rax, 7
sar rax, 1
mov byte [rdi + 1], al
movzx eax, dl
xchg rcx, rcx
shl al, 1
shl al, 1
shl al, 1
shl al, 1
shl al, 1
mov byte [rdi], cl
mov dword [rsp - 0x44], 0x5836e7fa
sar rcx, 3
sar rcx, 3
sar rcx, 2
sar rcx, 7
sar rcx, 1
or al, cl
mov byte [rdi + 0x15], bpl
xchg r9, r9
mov byte [rdi + 2], al
xchg rdx, rax
mov rdx, rax
xchg rdx, rax
sar rax, 2
sar rax, 1
mov byte [rdi + 3], al
xchg rdx, rax
mov rdx, rax
xchg rdx, rax
sar rax, 5
sar rax, 4
sar rax, 1
sar rax, 1
mov byte [rdi + 4], al
movzx eax, r9b
shl al, 2
mov dword [rsp - 0x14], 0x2cee0f32
sar rdx, 0x10
sar rdx, 2
sar rdx, 1
or dl, al
mov dword [rsp - 0x14], 0xd4828df
xchg rsp, rax
mov rsp, r9
xchg rsp, rax
sar rax, 2
sar rax, 4
mov byte [rdi + 6], al
xchg rbx, rbx
movzx eax, r12b
shl al, 7
sar r9, 0xe
or al, r9b
xchg r10, r10
mov byte [rdi + 5], dl
mov byte [rdi + 7], al
xchg r12, rsp
mov rax, rsp
xchg rsp, r12
sar rax, 1
mov dword [rsp - 0x24], ecx
mov byte [rdi + 8], al
xchg r12, rbp
mov rax, rbp
xchg rbp, r12
sar rax, 8
sar rax, 1
mov byte [rdi + 9], al
mov dword [rsp - 0xc], 0x445b9758
movzx eax, r10b
shl al, 2
shl al, 2
sar r12, 6
sar r12, 1
sar r12, 1
sar r12, 5
sar r12, 3
sar r12, 1
or r12b, al
xchg rcx, rax
mov rcx, r10
xchg rcx, rax
sar rax, 4
xchg r8, r8
mov byte [rdi + 0xb], al
xchg r12, rax
mov r12, r10
xchg r12, rax
sar rax, 0xc
mov byte [rdi + 0xc], al
movzx eax, r13b
mov dword [rsp - 0x44], ebp
add al, al
sar r10, 0x10
sar r10, 1
sar r10, 2
sar r10, 1
or r10b, al
mov dword [rsp - 0x10], ebx
mov byte [rdi + 0xa], r12b
xchg rbp, rax
mov rbp, r13
xchg rbp, rax
mov byte [rdi + 0xd], r10b
xchg r14, r14
sar rax, 4
sar rax, 2
sar rax, 1
mov byte [rdi + 0xe], al
mov dword [rsp - 0x30], edx
movzx eax, r11b
shl al, 4
shl al, 2
sar r13, 9
sar r13, 1
sar r13, 1
sar r13, 1
sar r13, 3
or al, r13b
mov dword [rsp - 0x10], 0x77384123
mov byte [rdi + 0xf], al
xchg r11, rax
mov r11, rax
xchg r11, rax
sar rax, 1
sar rax, 1
mov byte [rdi + 0x10], al
xchg rbx, rax
mov rbx, r11
xchg rbx, rax
sar rax, 1
sar rax, 4
sar rax, 2
sar rax, 1
sar rax, 1
sar rax, 1
mov byte [rdi + 0x11], al
mov dword [rsp - 0x34], ebp
movzx eax, sil
shl al, 3
sar r11, 5
sar r11, 1
sar r11, 6
sar r11, 4
sar r11, 1
sar r11, 1
or r11b, al
xchg rsi, rax
mov rsi, rax
xchg rsi, rax
sar rax, 1
sar rax, 2
sar rax, 1
sar rax, 1
mov byte [rdi + 0x13], al
mov dword [rsp - 0x20], 0x646da974
mov rax, rbp
sar rsi, 1
sar rsi, 6
sar rsi, 2
sar rsi, 1
sar rsi, 2
sar rsi, 1
sar rax, 2
sar rax, 1
sar rax, 5
mov byte [rdi + 0x12], r11b
mov dword [rsp - 0x1c], 0x71be22fa
mov byte [rdi + 0x14], sil
mov byte [rdi + 0x16], al
movzx eax, bl
shl al, 3
shl al, 1
shl al, 1
sar rbp, 7
sar rbp, 3
sar rbp, 3
sar rbp, 2
sar rbp, 1
or al, bpl
mov dword [rsp - 0x30], edx
mov byte [rdi + 0x17], al
mov rax, rbx
sar rax, 3
mov dword [rsp - 0x40], edx
mov byte [rdi + 0x18], al
xchg rbx, rax
mov rbx, rax
xchg rbx, rax
sar rax, 6
sar rax, 4
sar rax, 1
mov byte [rdi + 0x19], al
movzx eax, r14b
shl al, 1
shl al, 1
sar rbx, 0xd
sar rbx, 1
sar rbx, 3
sar rbx, 1
sar rbx, 1
or bl, al
xchg r14, rsi
mov rax, rsi
xchg r14, rsi
sar rax, 3
sar rax, 2
sar rax, 1
mov byte [rdi + 0x1b], al
movzx eax, r8b
mov r12, r12
shl al, 1
shl al, 4
shl al, 1
shl al, 1
sar r14, 6
sar r14, 3
sar r14, 2
sar r14, 2
sar r14, 1
or al, r14b
mov byte [rdi + 0x1a], bl
mov byte [rdi + 0x1c], al
mov dword [rsp - 0x24], ebp
xchg r8, rax
mov r8, rax
xchg r8, rax
sar rax, 1
mov byte [rdi + 0x1d], al
mov dword [rsp - 0xc], 0x1a3641a6
mov rax, r8
sar rax, 8
sar rax, 1
sar r8, 0xb
sar r8, 4
sar r8, 1
sar r8, 1
mov byte [rdi + 0x1f], r8b
mov byte [rdi + 0x1e], al
mov rbx, rbx
add rsp, 0x68
nop
mov r15, qword [rsp]
add rsp, 8
nop
add rsp, 8
mov r14, qword [rsp - 8]
nop
add rsp, 8
mov r13, qword [rsp - 8]
nop
mov r12, qword [rsp]
add rsp, 8
nop
add rsp, 8
mov rdi, qword [rsp - 8]
nop
mov rsi, qword [rsp]
add rsp, 8
nop
mov rbp, qword [rsp]
add rsp, 8
nop
add rsp, 8
mov rbx, qword [rsp - 8]
ret