Function at 0x1400e3a90
Capabilities:
Contain obfuscated stackstrings

Disassembly:
xchg rdx, rcx
mov qword [rsp + 8], rdx
xchg rdx, rcx
push rbx
xchg r8, r8
push rbp
nop
mov qword [rsp - 8], rsi
sub rsp, 8
nop
sub rsp, 8
mov qword [rsp], rdi
nop
sub rsp, 8
mov qword [rsp], r12
push r14
mov qword [rsp], r13
push r14
mov dword [rsp - 0x20], 0x6fc47343
push r15
nop
add rsp, 0x23cef16
sub rsp, 0x23cef7e
movzx esi, byte [rcx + 0x31]
xchg rcx, r10
mov rcx, r10
xchg r10, rcx
movzx eax, byte [rcx + 0x30]
and esi, 0x7f
xchg r9, r9
movzx r9d, byte [rcx + 0x34]
movzx ebp, byte [rcx + 0x37]
and r9d, 0xf
movzx r8d, byte [rcx + 0x39]
xchg r10, r10
and ebp, 1
movzx edi, byte [rcx + 0x3c]
and r8d, 0x3f
mov r15, r15
movzx edx, byte [rcx + 0x3f]
and edi, 7
movzx r13d, byte [rcx + 0x27]
xchg rdi, rdi
movzx r12d, byte [rcx + 0x2c]
and r13d, 7
shl r9, 1
shl r9, 4
shl r9, 1
shl r9, 1
shl r9, 1
shl rbp, 5
shl rbp, 2
shl rbp, 1
shl rdi, 4
shl rdi, 4
shl rdx, 6
shl rdx, 1
shl rdx, 1
shl rsi, 8
or rsi, rax
shl r8, 8
mov dword [rsp - 0x38], 0x5c279742
movzx eax, byte [rcx + 0x2f]
shr rax, 2
shl r12, 0x10
shl rsi, 4
shl rsi, 1
shl rsi, 1
or rsi, rax
mov dword [rsp - 0x18], esp
movzx eax, byte [rcx + 0x33]
or r9, rax
movzx eax, byte [rcx + 0x32]
shl r9, 4
shl r9, 3
shl r9, 1
or r9, rax
mov dword [rsp - 0x24], edx
movzx eax, byte [rcx + 0x31]
shr rax, 1
shr rax, 3
shr rax, 2
shr rax, 1
add r9, r9
mov dword [rsp - 0x14], 0xfcab769
or r9, rax
movzx eax, byte [rcx + 0x36]
or rbp, rax
xchg rsp, rsp
movzx eax, byte [rcx + 0x35]
shl rbp, 2
shl rbp, 2
shl rbp, 2
shl rbp, 1
shl rbp, 1
or rbp, rax
xchg rsp, rsp
movzx eax, byte [rcx + 0x34]
shr rax, 4
shl rbp, 4
or rbp, rax
mov dword [rsp - 0x14], edx
movzx eax, byte [rcx + 0x38]
or r8, rax
movzx eax, byte [rcx + 0x37]
shr rax, 1
mov dword [rsp - 0x44], esp
shl r8, 1
shl r8, 3
shl r8, 1
shl r8, 1
shl r8, 1
or r8, rax
mov dword [rsp - 0x38], 0x6bf12800
movzx eax, byte [rcx + 0x3b]
or rdi, rax
movzx eax, byte [rcx + 0x3a]
shl rdi, 5
shl rdi, 2
shl rdi, 1
or rdi, rax
movzx eax, byte [rcx + 0x39]
mov dword [rsp - 0x14], esi
shr rax, 5
shr rax, 1
shl rdi, 2
mov rcx, rcx
or rdi, rax
movzx eax, byte [rcx + 0x3e]
or rdx, rax
xchg r13, r13
movzx eax, byte [rcx + 0x3d]
shl rdx, 4
shl rdx, 2
shl rdx, 2
or rdx, rax
movzx eax, byte [rcx + 0x3c]
shr rax, 2
shr rax, 1
shl rdx, 2
shl rdx, 2
shl rdx, 1
or rdx, rax
xchg rbp, rbp
movzx eax, byte [rcx + 0x2a]
or r12, rax
movzx eax, byte [rcx + 0x2b]
mov dword [rsp - 0x30], ebp
shl rax, 1
shl rax, 1
shl rax, 5
shl rax, 1
and r12d, 0x1fffff
or r12, rax
mov rdx, rdx
imul rax, rdx, 0xa6f7d
sub r12, rax
movzx eax, byte [rcx + 0x26]
mov dword [rsp - 0x20], ebx
mov qword [rsp + 0x20], r12
shl r13, 4
shl r13, 3
shl r13, 1
movzx r15d, byte [rcx + 0x22]
mov r10, r10
or r13, rax
movzx eax, byte [rcx + 0x25]
and r15d, 1
mov r9, r9
movzx r14d, byte [rcx + 0x12]
movzx r11d, byte [rcx + 0x17]
and r14d, 7
shl r15, 2
shl r15, 3
shl r15, 3
shl r13, 1
shl r13, 6
shl r13, 1
or r13, rax
mov rdx, rdx
shl r14, 6
shl r14, 1
shl r14, 1
movzx eax, byte [rcx + 0x24]
xchg r13, r13
shr rax, 2
shr rax, 2
shr rax, 1
shr rax, 1
shl r13, 1
shl r13, 1
or r13, rax
shl r11, 0xe
shl r11, 1
shl r11, 1
imul rax, r8, 0xa6f7d
sub r13, rax
imul rax, rdx, 0xf39ad
xchg r12, r12
sub r13, rax
imul rax, rdi, 0x215d1
add r13, rax
mov dword [rsp - 0x44], 0xba4730a
movzx eax, byte [rcx + 0x21]
or r15, rax
xchg r13, rdx
mov qword [rsp + 0x18], rdx
xchg rdx, r13
movzx eax, byte [rcx + 0x20]
shl r15, 6
shl r15, 2
or r15, rax
mov dword [rsp - 0x14], ebx
movzx eax, byte [rcx + 0x1f]
shr rax, 3
shr rax, 1
shl r15, 2
shl r15, 1
shl r15, 1
or r15, rax
mov r15, r15
imul rax, rdi, 0x9fb67
add r15, rax
imul rax, r9, 0xa6f7d
sub r15, rax
mov dword [rsp - 0x40], 0x5b822fe5
imul rax, r8, 0xf39ad
sub r15, rax
imul rax, rdx, 0x72d18
add r15, rax
mov dword [rsp - 0x44], esi
imul rax, rbp, 0x215d1
add r15, rax
movzx eax, byte [rcx + 0x11]
or r14, rax
mov dword [rsp - 0x3c], 0x340c824a
mov qword [rsp], r15
movzx eax, byte [rcx + 0x10]
shl r14, 3
shl r14, 2
shl r14, 1
shl r14, 1
shl r14, 1
or r14, rax
mov dword [rsp - 0x10], esi
movzx eax, byte [rcx + 0xf]
shr rax, 1
shr rax, 5
shl r14, 2
mov r13, r13
or r14, rax
imul rax, rsi, 0xa2c13
add r14, rax
xchg r15, r15
movzx eax, byte [rcx + 0x15]
or r11, rax
movzx eax, byte [rcx + 0x16]
xchg rbx, rbx
movzx ecx, byte [rcx + 0x1c]
and r11d, 0x1fffff
shl rax, 2
shl rax, 4
shl rax, 2
and ecx, 0x7f
xchg rsp, rsp
or r11, rax
shl rcx, 3
shl rcx, 3
shl rcx, 1
shl rcx, 1
imul rax, rsi, 0x9fb67
mov dword [rsp - 0x1c], 0x4acfbcf2
add r11, rax
imul rax, r9, 0x72d18
add r11, rax
mov r11, r11
imul rax, rbp, 0xa2c13
add r11, rax
movzx eax, byte [r10 + 0x1b]
xchg rsp, rsp
or rcx, rax
xchg rbp, r11
mov qword [rsp + 0xc0], rbp
xchg r11, rbp
movzx eax, byte [r10 + 0x1a]
mov r15, r15
shr rax, 1
shr rax, 1
shl rcx, 1
shl rcx, 4
shl rcx, 1
or rcx, rax
mov dword [rsp - 0x2c], esi
imul rax, rbp, 0x9fb67
add rcx, rax
imul rax, r9, 0xf39ad
sub rcx, rax
mov dword [rsp - 0x40], 0x12660060
imul rax, r8, 0x72d18
add rcx, rax
lea rbx, [r14 + 0x100000]
mov dword [rsp - 0x18], 0x6694645b
imul rax, rdi, 0xa2c13
sar rbx, 0x10
sar rbx, 3
sar rbx, 1
sar rbx, 1
add r11, 0x1818cf8c
sub r11, 0x1808cf8c
add rcx, rax
xchg r11, r11
shr r11, 2
shr r11, 0xf
shr r11, 1
shr r11, 1
shr r11, 1
shr r11, 1
imul rax, rsi, 0x215d1
xchg r8, r8
add rcx, rax
movzx eax, byte [r10 + 0x13]
mov qword [rsp + 0xb8], rcx
mov dword [rsp - 0x34], edi
movzx ecx, byte [r10 + 0x14]
shl rcx, 6
shl rcx, 1
shl rcx, 1
or rcx, rax
movzx eax, byte [r10 + 0x12]
mov dword [rsp - 0x18], 0x5367f6d9
shr rax, 2
shr rax, 1
shl rcx, 1
shl rcx, 2
shl rcx, 1
shl rcx, 1
or rcx, rax
imul r10, r9, 0xa2c13
imul rax, rsi, 0x72d18
xchg rcx, rcx
add rax, rbx
add rax, rcx
add r10, rax
xchg r15, r15
xchg r14, r10
mov qword [rsp + 0xc8], r14
xchg r10, r14
mov r10, qword [rsp + 0xb0]
xchg r13, r13
movzx ecx, byte [r10 + 0x1a]
movzx eax, byte [r10 + 0x19]
and ecx, 3
mov r8, r8
shl rcx, 5
shl rcx, 2
shl rcx, 1
or rcx, rax
mov r8, r8
movzx eax, byte [r10 + 0x18]
shl rcx, 1
shl rcx, 1
shl rcx, 1
shl rcx, 2
shl rcx, 1
shl rcx, 1
shl rcx, 1
or rcx, rax
movzx eax, byte [r10 + 0x17]
mov r11, r11
shr rax, 4
shr rax, 1
shl rcx, 3
mov rdx, rdx
or rcx, rax
imul rax, r9, 0x9fb67
imul r10, r8, 0xa2c13
mov dword [rsp - 0x38], edi
imul r9, r9, 0x215d1
add rcx, rax
imul rax, rsi, 0xf39ad
sub rcx, rax
mov r11, r11
imul rax, rbp, 0x72d18
add rax, r11
add rax, rcx
add r10, rax
xchg rbx, rbx
xchg rdx, rax
mov rdx, qword [rsp + 0xb0]
xchg rdx, rax
xchg r10, r9
mov qword [rsp + 8], r9
xchg r9, r10
mov r10, qword [rsp + 0xb8]
mov r9, r9
add r10, 0x4845ec32
sub r10, 0x4835ec32
movzx ecx, byte [rax + 0x1f]
mov dword [rsp - 0x44], 0xa7889ef
movzx eax, byte [rax + 0x1e]
and ecx, 0xf
shl rcx, 2
shl rcx, 6
or rcx, rax
sar r10, 6
sar r10, 0xb
sar r10, 3
sar r10, 1
mov rax, qword [rsp + 0xb0]
mov dword [rsp - 0x18], ebp
shl rcx, 2
shl rcx, 6
movzx eax, byte [rax + 0x1d]
or rcx, rax
xchg r15, r15
mov rax, qword [rsp + 0xb0]
add rcx, rcx
movzx eax, byte [rax + 0x1c]
xchg r10, r10
shr rax, 5
shr rax, 1
shr rax, 1
or rcx, rax
imul rax, r8, 0x9fb67
add rcx, rax
mov dword [rsp - 0xc], 0x4b44fd68
imul rax, rsi, 0xa6f7d
sub rcx, rax
imul rax, rbp, 0xf39ad
mov dword [rsp - 0x10], edi
sub rcx, rax
imul rax, rdi, 0x72d18
add rcx, rax
imul rax, rdx, 0xa2c13
mov rsi, rsi
add rax, r10
add rax, rcx
add r9, rax
mov qword [rsp + 0x10], r9
mov dword [rsp - 0x18], 0x677e2e1d
lea r9, [r15 + 0x100000]
sar r9, 0x13
sar r9, 1
sar r9, 1
mov r15, qword [rsp + 0xb0]
imul rsi, r8, 0x215d1
movzx ecx, byte [r15 + 0x24]
mov dword [rsp - 0x18], 0x577bcd30
lea r8, [r13 + 0x100000]
movzx eax, byte [r15 + 0x23]
and ecx, 0x3f
mov dword [rsp - 0x18], 0x17aae334
shl rcx, 3
shl rcx, 1
shl rcx, 1
shl rcx, 1
shl rcx, 1
shl rcx, 1
or rcx, rax
mov r9, r9
sar r8, 0xc
sar r8, 3
sar r8, 2
sar r8, 3
sar r8, 1
movzx eax, byte [r15 + 0x22]
shr rax, 1
xchg rbx, rbx
shl rcx, 3
shl rcx, 2
shl rcx, 2
or rcx, rax
mov dword [rsp - 0x34], 0x7813a63e
imul rax, rdx, 0x9fb67
imul r13, rdx, 0x215d1
add rcx, rax
mov dword [rsp - 0x28], 0x6ea763b7
lea rdx, [r12 + 0x100000]
mov r12, qword [rsp + 0x10]
imul rax, rbp, 0xa6f7d
xchg rbp, rbp
movzx ebp, byte [r15 + 0x2f]
neg r12
add r12, 0xfffffffffff00000
neg r12
sub rcx, rax
mov dword [rsp - 0x24], 0x46ca7a66
sar rdx, 6
sar rdx, 0xc
sar rdx, 2
sar rdx, 1
and ebp, 3
sar r12, 0xb
sar r12, 4
sar r12, 1
sar r12, 1
sar r12, 1
sar r12, 1
sar r12, 1
sar r12, 1
imul rax, rdi, 0xf39ad
xchg r12, r12
shl rbp, 5
shl rbp, 1
shl rbp, 2
sub rcx, rax
lea rax, [r9 + rcx]
mov dword [rsp - 0x40], edi
movzx ecx, byte [r15 + 0x29]
add rsi, rax
shl rcx, 2
shl rcx, 3
shl rcx, 2
shl rcx, 1
movzx eax, byte [r15 + 0x28]
or rcx, rax
shl r9, 0xa
shl r9, 2
shl r9, 8
shl r9, 1
movzx eax, byte [r15 + 0x27]
shr rax, 2
shr rax, 1
shl rcx, 3
shl rcx, 1
shl rcx, 1
or rcx, rax
imul rax, rdi, 0xa6f7d
mov rbp, rbp
xchg rdi, rcx
mov rcx, qword [rsp + 0xc8]
xchg rdi, rcx
sub rcx, rax
mov dword [rsp - 0x20], 0x7a42d09a
sub rdi, 0x181ccc79
add rdi, 0x182ccc79
sar rdi, 0x12
sar rdi, 2
sar rdi, 1
lea rax, [r8 + rcx]
mov dword [rsp - 0x34], 0x747108cf
shl r8, 0xd
shl r8, 3
shl r8, 4
shl r8, 1
add r13, rax
mov dword [rsp - 0x34], 0xd98b048
lea rcx, [rsi + 0x100000]
movzx eax, byte [r15 + 0x2e]
or rbp, rax
sar rcx, 1
sar rcx, 4
sar rcx, 8
sar rcx, 6
sar rcx, 1
sar rcx, 1
movzx eax, byte [r15 + 0x2d]
xchg r14, r14
shl rbp, 7
shl rbp, 1
or rbp, rax
mov rcx, rcx
movzx eax, byte [r15 + 0x2c]
xchg r11, r15
mov r11, qword [rsp + 8]
xchg r15, r11
shr rax, 2
shr rax, 1
shr rax, 2
add r15, 0x100000
shl rbp, 3
xchg r8, r8
or rbp, rax
sar r15, 0xb
sar r15, 1
sar r15, 8
sar r15, 1
add rbp, rdx
mov rdi, rdi
mov rax, r12
sub rax, r9
shl rdx, 0x13
shl rdx, 2
add qword [rsp], rax
mov rax, rcx
xchg r11, r11
xchg r9, rbx
mov rbx, qword [rsp + 0x20]
xchg r9, rbx
sub rax, r8
xchg rcx, r8
mov rcx, qword [rsp + 0x18]
xchg rcx, r8
shl rcx, 2
shl rcx, 0x12
shl rcx, 1
add r8, rax
sub rsi, rcx
mov dword [rsp - 0x38], edi
mov qword [rsp + 0x50], rbp
lea rcx, [r13 + 0x100000]
xchg r8, r13
mov qword [rsp + 0x18], r13
xchg r8, r13
sar rcx, 0x15
mov rsi, rsi
xchg rcx, r9
mov rax, r9
xchg rcx, r9
mov qword [rsp + 0x48], rsi
sub rax, rdx
mov r9, r9
add r9, rax
shl r11, 1
shl r11, 5
shl r11, 8
shl r11, 2
shl r11, 4
shl r11, 1
shl rcx, 0xa
shl rcx, 9
shl rcx, 1
shl rcx, 1
sub r13, rcx
xchg r9, rsi
mov qword [rsp + 0x20], rsi
xchg r9, rsi
imul rcx, r9, 0x215d1
xchg rsp, rsp
imul rax, rbp, 0xfffffffffff59083
imul rdx, r13, 0xfffffffffff59083
shl r10, 6
shl r10, 8
shl r10, 5
shl r10, 1
shl r10, 1
sub rax, r10
mov rdx, rdx
shl rbx, 6
shl rbx, 3
shl rbx, 7
shl rbx, 1
shl rbx, 2
shl rbx, 1
shl rbx, 1
add rax, r15
xchg r11, r11
add qword [rsp + 0xb8], rax
imul rax, rbp, 0xf39ad
sub rdx, r11
mov r11, r11
sub rdx, rax
lea rax, [rdi + rdx]
add rcx, rax
mov dword [rsp - 0x10], esi
add qword [rsp + 0xc0], rcx
imul rcx, r9, 0x9fb67
imul rax, rsi, 0xa6f7d
mov dword [rsp - 0x10], ebx
sub rcx, rbx
xchg rbx, r14
mov r14, qword [rsp]
xchg r14, rbx
sub rcx, rax
mov r14, r14
imul rax, r13, 0xf39ad
sub rcx, rax
imul rax, rbp, 0x72d18
mov dword [rsp - 0x18], ebx
xchg rbp, rcx
mov rcx, qword [rsp + 0xb0]
xchg rbp, rcx
add rcx, rax
mov dword [rsp - 0x10], ebx
imul rax, r8, 0x215d1
movzx r9d, byte [rbp + 7]
movzx edx, byte [rbp + 2]
add rax, r14
xchg rdx, rdx
movzx r11d, byte [rbp + 0xd]
add rax, rcx
movzx ecx, byte [rbp + 5]
xchg r12, r12
and r11d, 1
xchg rbp, rax
mov qword [rsp + 0x28], rbp
xchg rbp, rax
and r9d, 0x7f
movzx eax, byte [rbp]
mov dword [rsp - 0xc], 0x6fbaa11a
mov r8d, edx
shl r11, 3
shl r11, 5
shl r9, 8
shl r8, 0xe
shl r8, 1
shl r8, 1
or r8, rax
xchg rdi, rdi
movzx eax, byte [rbp + 1]
shl rax, 3
shl rax, 3
shl rax, 1
shl rax, 1
and r8d, 0x1fffff
mov dword [rsp - 0x38], edx
or r8, rax
imul rax, rbx, 0xa2c13
add r8, rax
mov dword [rsp - 0x30], 0x7b0a4468
movzx eax, byte [rbp + 6]
or r9, rax
xchg r8, r13
mov qword [rsp], r13
xchg r13, r8
shl r9, 6
mov r10, r10
mov eax, ecx
shr rax, 1
shr rax, 1
or r9, rax
imul rax, rbx, 0x9fb67
mov rsp, rsp
add r9, rax
imul rax, rsi, 0x72d18
add r9, rax
mov rdi, rdi
imul rax, qword [rsp + 0x18], 0xa2c13
add r9, rax
movzx eax, byte [rbp + 0xc]
or r11, rax
mov rbx, rbx
xchg r13, r9
mov qword [rsp + 0x38], r13
xchg r13, r9
movzx eax, byte [rbp + 0xb]
xchg r12, r12
shl r11, 8
or r11, rax
movzx eax, byte [rbp + 0xa]
mov r15, r15
shr rax, 1
shr rax, 3
shl r11, 3
shl r11, 1
or r11, rax
imul rax, qword [rsp + 0x18], 0x9fb67
mov dword [rsp - 0x18], 0x5ccd5bce
add r11, rax
imul rax, rsi, 0xf39ad
sub r11, rax
imul rax, r13, 0x72d18
xchg rbp, rbp
add r11, rax
imul rax, qword [rsp + 0x20], 0xa2c13
add r11, rax
xchg r8, r8
and ecx, 3
shr rdx, 2
shr rdx, 3
shl rcx, 4
shl rcx, 2
shl rcx, 1
shl rcx, 1
lea r14, [r8 + 0x100000]
xchg rdi, r8
mov rdi, qword [rsp + 0x28]
xchg r8, rdi
imul r10, rsi, 0xa2c13
imul rax, rbx, 0x215d1
mov dword [rsp - 0x2c], esp
sar r14, 0x11
sar r14, 3
sar r14, 1
sub r8, 0x36375ca3
add r8, 0x36475ca3
shl rdi, 0xf
shl rdi, 3
shl rdi, 2
shl rdi, 1
sar r8, 4
sar r8, 0xf
sar r8, 2
add r11, rax
movzx eax, byte [rbp + 4]
or rcx, rax
mov dword [rsp - 0xc], 0x2f266d78
mov qword [rsp + 0x40], r11
movzx eax, byte [rbp + 3]
lea rbp, [r9 + 0x100000]
xchg r9, r10
mov r10, qword [rsp + 0xb0]
xchg r9, r10
shl rcx, 2
shl rcx, 6
or rcx, rax
mov rdi, rdi
sar rbp, 4
sar rbp, 5
sar rbp, 9
sar rbp, 2
sar rbp, 1
shl rcx, 1
shl rcx, 2
or rcx, rdx
imul rax, rbx, 0x72d18
xchg r8, r8
imul rdx, r13, 0xa2c13
add rax, r14
add rax, rcx
movzx ecx, byte [r9 + 0xa]
mov dword [rsp - 0x3c], 0x1d88d077
add r10, rax
and ecx, 0xf
movzx eax, byte [r9 + 9]
shl rcx, 1
shl rcx, 3
shl rcx, 4
or rcx, rax
mov dword [rsp - 0x40], 0x57340a67
xchg r10, rbx
mov qword [rsp + 0x30], rbx
xchg r10, rbx
movzx eax, byte [r9 + 8]
xchg rbx, rbx
shl rcx, 7
shl rcx, 1
or rcx, rax
mov dword [rsp - 0x3c], 0x1a0934bf
movzx eax, byte [r9 + 7]
shr rax, 2
shr rax, 5
add rcx, rcx
or rcx, rax
imul rax, rsi, 0x9fb67
mov dword [rsp - 0x40], 0x2bc8b454
lea rsi, [r11 + 0x100000]
mov r11, qword [rsp + 0x20]
add rcx, rax
mov dword [rsp - 0x20], ebx
sar rsi, 0x12
sar rsi, 2
sar rsi, 1
imul rax, rbx, 0xf39ad
mov dword [rsp - 0xc], 0x4461e16a
sub rcx, rax
imul rax, qword [rsp + 0x18], 0x72d18
add rax, rbp
add rax, rcx
xchg r15, r15
movzx ecx, byte [r9 + 0xf]
add rdx, rax
and ecx, 0x3f
mov dword [rsp - 0x44], esp
movzx eax, byte [r9 + 0xe]
shl rcx, 3
shl rcx, 4
shl rcx, 1
or rcx, rax
xchg r9, rdx
mov qword [rsp + 0x58], r9
xchg rdx, r9
movzx eax, byte [r9 + 0xd]
imul rdx, qword [rsp + 0x48], 0x215d1
mov dword [rsp - 0x14], 0x3995b07e
xchg r9, r15
mov r15, qword [rsp + 0x50]
xchg r15, r9
shr rax, 1
shl rcx, 2
shl rcx, 4
shl rcx, 1
or rcx, rax
imul rax, r13, 0x9fb67
xchg r14, r14
add rcx, rax
imul rax, rbx, 0xa6f7d
sub rcx, rax
imul rax, qword [rsp + 0x18], 0xf39ad
mov r8, r8
sub rcx, rax
imul rax, r11, 0x72d18
add rcx, rax
imul rax, r9, 0xa2c13
mov r13, r13
add rax, rsi
add rax, rcx
add rdx, rax
imul rax, qword [rsp + 0x18], 0xa6f7d
xchg rdx, rdx
xchg rcx, rdx
mov qword [rsp + 0x48], rcx
xchg rdx, rcx
imul rdx, r9, 0x9fb67
xchg rbx, rbx
sub rdx, rdi
sub rdx, rax
xchg r9, rbx
mov r9, qword [rsp + 8]
xchg rbx, r9
mov rdi, qword [rsp + 0x10]
xchg r14, r14
imul rax, r11, 0xf39ad
imul rcx, r13, 0x215d1
mov r13, qword [rsp + 0x48]
mov r15, r15
sub rdx, rax
shl r15, 0x14
shl r15, 1
shl r12, 0xa
shl r12, 0xb
shl rbp, 0xf
shl rbp, 5
shl rbp, 1
lea rax, [r8 + rdx]
shl rsi, 0x15
mov dword [rsp - 0x18], ecx
mov rdx, qword [rsp + 0xc0]
add rcx, rax
add qword [rsp + 0xc8], rcx
mov dword [rsp - 0x40], 0x5654b222
sub rdx, 0xfffffffffff00000
imul rcx, r9, 0x215d1
imul rax, r11, 0xfffffffffff59083
xchg r10, r10
shl r8, 0xf
shl r8, 3
shl r8, 1
shl r8, 1
shl r8, 1
lea r9, [r10 + 0x100000]
sar rdx, 2
sar rdx, 3
sar rdx, 7
sar rdx, 7
sar rdx, 1
sar rdx, 1
lea r11, [r13 + 0x100000]
xchg rbp, rbp
sar r11, 8
sar r11, 6
sar r11, 2
sar r11, 5
sar r9, 0xf
sar r9, 1
sar r9, 4
sar r9, 1
shl r14, 1
shl r14, 4
shl r14, 8
shl r14, 6
shl r14, 2
sub rax, r15
mov r15, qword [rsp + 0x28]
mov dword [rsp - 0x10], esp
add rax, rdx
shl rdx, 0x10
shl rdx, 4
shl rdx, 1
add rcx, rax
xchg rcx, rcx
add rbx, rcx
mov rcx, qword [rsp + 0xb8]
sub rcx, 0xfffffffffff00000
mov qword [rsp + 8], rbx
mov dword [rsp - 0x24], esp
sar rcx, 6
sar rcx, 8
sar rcx, 3
sar rcx, 3
sar rcx, 1
sub rbx, 0x5279cdb9
add rbx, 0x5289cdb9
xchg r14, rax
mov r14, rcx
xchg r14, rax
sar rbx, 0xb
sar rbx, 8
sar rbx, 1
sar rbx, 1
sub rax, r12
shl rcx, 0xd
shl rcx, 3
shl rcx, 1
shl rcx, 1
shl rcx, 2
shl rcx, 1
mov r12, qword [rsp + 0x58]
mov dword [rsp - 0x14], 0xf63b49f
add rdi, rax
xchg rdi, r11
mov qword [rsp + 0x10], r11
xchg rdi, r11
xchg r11, rax
mov r11, rax
xchg r11, rax
sub rax, r8
mov dword [rsp - 0x18], esp
neg rdi
add rdi, 0xfffffffffff00000
neg rdi
mov r8, qword [rsp + 0xc8]
xchg rdi, rdi
add r15, rax
sar rdi, 0xb
sar rdi, 8
sar rdi, 1
sar rdi, 1
lea r10, [r12 + 0x100000]
mov dword [rsp - 0x44], 0x71dc94b0
sub r8, 0x71033a47
add r8, 0x71133a47
sar r10, 1
sar r10, 0xd
sar r10, 1
sar r10, 5
sar r10, 1
sar r8, 0xd
sar r8, 2
sar r8, 5
sar r8, 1
xchg r8, rax
mov r8, rax
xchg r8, rax
sub rax, rdx
mov dword [rsp - 0x1c], edi
xchg rdx, r12
mov r12, qword [rsp + 0x30]
xchg rdx, r12
add qword [rsp + 0xc0], rax
mov dword [rsp - 0x3c], 0x5fae9ced
xchg rsp, rbx
mov rax, rsp
xchg rsp, rbx
sub rax, rcx
mov dword [rsp - 0x34], 0x7242ef52
xchg r11, rcx
mov r11, qword [rsp]
xchg rcx, r11
add qword [rsp + 0xb8], rax
xchg r11, r11
imul rax, rdi, 0xa2c13
sub rax, r14
add rcx, rax
imul rax, rdi, 0x9fb67
xchg r15, r15
xchg r9, rcx
mov qword [rsp], r9
xchg r9, rcx
sub rax, rbp
xchg rsi, rsi
sar rcx, 0xc
sar rcx, 8
sar rcx, 1
xchg r14, rbp
mov r14, qword [rsp + 0x38]
xchg rbp, r14
add rax, r9
mov r13, r13
add rbp, rax
shl r9, 6
shl r9, 0xb
shl r9, 2
shl r9, 1
shl r9, 1
imul rax, rdi, 0x215d1
xchg r12, r12
sub rax, rsi
mov rsi, qword [rsp + 0x40]
add rax, r10
add rsi, rax
mov rsp, rsp
imul rax, rdi, 0x72d18
sub rax, r9
add rax, rcx
mov dword [rsp - 0xc], ecx
add rdx, rax
xchg r14, rdx
mov qword [rsp + 0x30], r14
xchg r14, rdx
imul rax, rdi, 0xfffffffffff0c653
mov dword [rsp - 0x34], esi
sar rdx, 0xf
sar rdx, 2
sar rdx, 3
sar rdx, 1
add rbp, rdx
shl rcx, 0xd
shl rcx, 4
shl rcx, 1
shl rcx, 2
shl rcx, 1
shl r10, 4
shl r10, 0xd
shl r10, 3
shl r10, 1
xchg r8, r9
mov r8, rbp
xchg r8, r9
sub rax, r10
sar r9, 3
sar r9, 2
sar r9, 0xe
sar r9, 1
sar r9, 1
add rax, r9
mov r15, r15
shl r8, 0x12
shl r8, 2
shl r8, 1
add r12, rax
mov dword [rsp - 0x1c], 0x2fd84456
shl r11, 0x11
shl r11, 2
shl r11, 1
shl r11, 1
imul rax, rdi, 0xfffffffffff59083
shl rbx, 3
shl rbx, 0xf
shl rbx, 1
shl rbx, 1
shl rbx, 1
xchg r12, rbx
mov r10, rbx
xchg rbx, r12
sub rax, r11
shl rdi, 0x12
shl rdi, 2
shl rdi, 1
mov qword [rsp + 0x38], rbp
mov dword [rsp - 0x30], ebx
sar r10, 7
sar r10, 0xb
sar r10, 2
sar r10, 1
add rsi, r10
shl rdx, 2
shl rdx, 0xf
shl rdx, 1
shl rdx, 3
mov qword [rsp + 0x40], rsi
sar rsi, 7
sar rsi, 0xe
add rax, rsi
shl r9, 0x13
shl r9, 1
shl r9, 1
add r13, rax
xchg r9, r9
xchg r11, r13
mov r13, r11
xchg r13, r11
sar r11, 0xb
sar r11, 6
sar r11, 3
sar r11, 1
add r15, r11
mov r10, r10
xchg rdi, rbp
mov rdi, r15
xchg rdi, rbp
xchg r15, r11
mov qword [rsp + 0x28], r11
xchg r15, r11
sar rbp, 0x13
sar rbp, 1
sar rbp, 1
xchg rdi, rax
mov rdi, rbp
xchg rdi, rax
sub rax, r8
xchg rsi, rsi
mov r8, qword [rsp + 0xc8]
add r8, rax
mov rax, qword [rsp + 0xc0]
mov dword [rsp - 0xc], 0x530419bf
xchg r9, r8
mov qword [rsp + 0xc8], r9
xchg r8, r9
sar r8, 2
sar r8, 1
sar r8, 9
sar r8, 1
sar r8, 3
sar r8, 1
sar r8, 1
sar r8, 2
sar r8, 1
add rax, r8
xchg r14, r13
mov r13, rax
xchg r14, r13
xchg r14, rax
mov qword [rsp + 0xc0], r14
xchg r14, rax
sar r14, 2
sar r14, 1
sar r14, 0x12
xchg r14, rax
mov r14, rax
xchg r14, rax
sub rax, rbx
mov rbx, qword [rsp + 8]
mov dword [rsp - 0x3c], edx
add rbx, rax
xchg r13, rax
mov r13, qword [rsp + 0xb8]
xchg r13, rax
xchg rdi, rbx
mov qword [rsp + 8], rdi
xchg rbx, rdi
sar rbx, 1
sar rbx, 7
sar rbx, 0xc
sar rbx, 1
add rax, rbx
mov dword [rsp - 0x1c], 0x45fd64a6
xchg r9, rax
mov r15, r9
xchg r9, rax
mov qword [rsp + 0xb8], rax
sar r15, 0x11
sar r15, 1
sar r15, 1
sar r15, 1
sar r15, 1
xchg rsp, rax
mov rsp, r15
xchg rsp, rax
sub rax, rdi
xchg r12, rdi
mov r12, qword [rsp + 0x10]
xchg rdi, r12
add rdi, rax
mov qword [rsp + 0x10], rdi
sar rdi, 0x12
sar rdi, 1
sar rdi, 1
sar rdi, 1
imul rax, rdi, 0xa2c13
sub rax, rcx
mov dword [rsp - 0x18], 0x73def0d1
xchg rcx, rsi
mov rsi, qword [rsp]
xchg rcx, rsi
add rcx, rax
xchg rcx, r11
mov qword [rsp], r11
xchg rcx, r11
sar rcx, 0xb
sar rcx, 2
sar rcx, 4
sar rcx, 2
sar rcx, 1
sar rcx, 1
imul rax, rdi, 0x72d18
xchg r8, r8
sub rax, rdx
mov rdx, qword [rsp + 0x30]
add rax, rcx
xchg rbp, rbp
shl rcx, 0x10
shl rcx, 1
shl rcx, 3
shl rcx, 1
sub qword [rsp], rcx
add rdx, rax
mov rcx, rcx
imul rax, rdi, 0x9fb67
xchg rbx, rcx
mov rbx, rdx
xchg rbx, rcx
sub rax, r9
sar rcx, 0xc
sar rcx, 4
sar rcx, 4
sar rcx, 1
xchg r9, r15
mov r15, qword [rsp + 0x38]
xchg r9, r15
add rax, rcx
add r9, rax
shl rcx, 1
shl rcx, 2
shl rcx, 0xb
shl rcx, 3
shl rcx, 1
shl rcx, 2
shl rcx, 1
sub rdx, rcx
mov r10, r10
shl r10, 0x13
shl r10, 1
shl r10, 1
shl rsi, 0xd
shl rsi, 5
shl rsi, 2
shl rsi, 1
xchg r9, rcx
mov r9, rcx
xchg r9, rcx
sar rcx, 0xb
sar rcx, 5
sar rcx, 2
sar rcx, 2
sar rcx, 1
shl r11, 1
shl r11, 0xc
shl r11, 2
shl r11, 5
shl r11, 1
imul rax, rdi, 0xfffffffffff0c653
shl rbp, 7
shl rbp, 8
shl rbp, 5
shl rbp, 1
sub rax, r10
shl rbx, 8
shl rbx, 6
shl rbx, 6
shl rbx, 1
add rax, rcx
mov dword [rsp - 0x30], 0xe1c1f88
mov r10, qword [rsp + 0x40]
shl rcx, 0x12
shl rcx, 1
shl rcx, 1
shl rcx, 1
add r12, rax
mov dword [rsp - 0x38], 0x34e5d5fe
sub r9, rcx
shl r14, 6
shl r14, 0xa
shl r14, 4
shl r14, 1
imul rax, rdi, 0x215d1
mov rcx, r12
mov dword [rsp - 0x10], esi
shl r8, 4
shl r8, 2
shl r8, 4
shl r8, 7
shl r8, 1
shl r8, 1
shl r8, 1
shl r8, 1
sar rcx, 1
sar rcx, 0xb
sar rcx, 9
sub rax, rsi
add rax, rcx
xchg rsi, r13
mov r13, qword [rsp + 0xc8]
xchg rsi, r13
shl rcx, 0xf
shl rcx, 4
shl rcx, 1
shl rcx, 1
add r10, rax
mov rdx, rdx
sub r12, rcx
shl r15, 1
shl r15, 6
shl r15, 8
shl r15, 4
shl r15, 2
imul rax, rdi, 0xfffffffffff59083
xchg rcx, r8
mov r8, r10
xchg r8, rcx
shl rdi, 0xe
shl rdi, 3
shl rdi, 3
shl rdi, 1
sar rcx, 0x10
sar rcx, 3
sar rcx, 1
sar rcx, 1
sub rax, r11
mov rsi, rsi
mov r11, qword [rsp + 0x28]
add rax, rcx
shl rcx, 8
shl rcx, 9
shl rcx, 1
shl rcx, 1
shl rcx, 1
shl rcx, 1
add r13, rax
mov r14, r14
sub r10, rcx
xchg r12, r13
mov rcx, r12
xchg r12, r13
sar rcx, 7
sar rcx, 7
sar rcx, 5
sar rcx, 1
sar rcx, 1
xchg rcx, rax
mov rcx, rax
xchg rcx, rax
shl rcx, 1
shl rcx, 9
shl rcx, 0xa
shl rcx, 1
sub rax, rbp
mov r9, r9
sub r13, rcx
xchg rcx, rbp
mov rcx, qword [rsp + 0xc0]
xchg rbp, rcx
add r11, rax
xchg r11, rcx
mov r11, rcx
xchg r11, rcx
sar rcx, 0x10
sar rcx, 4
sar rcx, 1
mov rax, rcx
mov dword [rsp - 0x10], ebp
shl rcx, 0x13
shl rcx, 1
shl rcx, 1
sub r11, rcx
mov r9, r9
sub rax, r8
xchg r8, rbx
mov rbx, qword [rsp + 0x10]
xchg r8, rbx
add rsi, rax
xchg r9, rsi
mov rcx, r9
xchg r9, rsi
sar rcx, 6
sar rcx, 1
sar rcx, 0xc
sar rcx, 1
sar rcx, 1
mov rax, rcx
shl rcx, 2
shl rcx, 7
shl rcx, 0xa
shl rcx, 1
shl rcx, 1
sub rax, r14
sub rsi, rcx
mov r14, qword [rsp + 0xb8]
mov dword [rsp - 0x3c], esi
add rbp, rax
mov rcx, rbp
sar rcx, 0xb
sar rcx, 3
sar rcx, 5
sar rcx, 1
sar rcx, 1
xchg r13, rax
mov r13, rcx
xchg r13, rax
shl rcx, 0xe
shl rcx, 3
shl rcx, 3
shl rcx, 1
sub rax, rbx
sub rbp, rcx
xchg rbp, rbx
mov rbp, qword [rsp + 8]
xchg rbx, rbp
add rbx, rax
mov dword [rsp - 0x3c], 0x58c3f869
xchg rdx, rcx
mov rdx, rbx
xchg rcx, rdx
sar rcx, 1
sar rcx, 0xb
sar rcx, 2
sar rcx, 3
sar rcx, 3
sar rcx, 1
mov rax, rcx
shl rcx, 5
shl rcx, 8
shl rcx, 7
shl rcx, 1
sub rax, r15
mov rdx, rdx
sub rbx, rcx
add r14, rax
xchg r13, rcx
mov r13, r14
xchg r13, rcx
sar rcx, 0x11
sar rcx, 3
sar rcx, 1
xchg rcx, r9
mov rax, r9
xchg r9, rcx
sub rax, rdi
mov r8, r8
add r8, rax
xchg r10, rdi
mov r10, qword [rsp + 0xb0]
xchg rdi, r10
shl rcx, 0x15
sub r14, rcx
mov dword [rsp - 0xc], esp
xchg rcx, rdx
mov rdx, qword [rsp]
xchg rcx, rdx
mov rax, rcx
mov r10, r10
sar rax, 8
mov byte [rdi + 1], al
movzx eax, dl
mov r10, r10
shl al, 3
shl al, 2
mov byte [rdi], cl
sar rcx, 9
sar rcx, 6
sar rcx, 1
or al, cl
mov dword [rsp - 0x14], ecx
mov byte [rdi + 0x15], bpl
mov byte [rdi + 2], al
mov rax, rdx
mov dword [rsp - 0x3c], 0x1635724d
sar rax, 1
sar rax, 1
sar rax, 1
mov byte [rdi + 3], al
mov rax, rdx
mov r8, r8
sar rax, 0xb
mov byte [rdi + 4], al
movzx eax, r9b
mov dword [rsp - 0x2c], edx
shl al, 2
sar rdx, 0xb
sar rdx, 4
sar rdx, 3
sar rdx, 1
or dl, al
xchg r9, r11
mov rax, r11
xchg r9, r11
sar rax, 2
sar rax, 3
sar rax, 1
mov byte [rdi + 6], al
movzx eax, r12b
mov dword [rsp - 0x30], 0x66ba254d
shl al, 7
sar r9, 6
sar r9, 6
sar r9, 1
sar r9, 1
or al, r9b
mov dword [rsp - 0x28], 0x993338d
mov byte [rdi + 5], dl
mov byte [rdi + 7], al
xchg r12, rax
mov r12, rax
xchg r12, rax
sar rax, 1
xchg r10, r10
mov byte [rdi + 8], al
xchg r12, rax
mov r12, rax
xchg r12, rax
sar rax, 1
sar rax, 6
sar rax, 1
sar rax, 1
mov byte [rdi + 9], al
mov r13, r13
movzx eax, r10b
shl al, 4
sar r12, 0x11
or r12b, al
xchg rbx, rbx
xchg rbp, rax
mov rbp, r10
xchg rbp, rax
sar rax, 3
sar rax, 1
mov byte [rdi + 0xb], al
mov rax, r10
sar rax, 3
sar rax, 8
sar rax, 1
mov byte [rdi + 0xc], al
movzx eax, r13b
mov r12, r12
add al, al
sar r10, 9
sar r10, 9
sar r10, 1
sar r10, 1
or r10b, al
mov byte [rdi + 0xa], r12b
xchg r12, r13
mov rax, r12
xchg r12, r13
mov byte [rdi + 0xd], r10b
sar rax, 7
xchg r8, r8
mov byte [rdi + 0xe], al
movzx eax, r11b
shl al, 6
sar r13, 6
sar r13, 5
sar r13, 2
sar r13, 1
sar r13, 1
or al, r13b
xchg rbp, rbp
mov byte [rdi + 0xf], al
xchg rsp, rax
mov rsp, r11
xchg rsp, rax
sar rax, 1
sar rax, 1
mov byte [rdi + 0x10], al
xchg r11, rax
mov r11, rax
xchg r11, rax
sar rax, 2
sar rax, 5
sar rax, 2
sar rax, 1
mov byte [rdi + 0x11], al
movzx eax, sil
shl al, 3
mov dword [rsp - 0x18], edx
sar r11, 0xa
sar r11, 7
sar r11, 1
or r11b, al
xchg rbx, rsi
mov rax, rbx
xchg rbx, rsi
sar rax, 1
sar rax, 3
sar rax, 1
mov byte [rdi + 0x13], al
mov rcx, rcx
mov rax, rbp
sar rsi, 0xb
sar rsi, 1
sar rsi, 1
sar rax, 4
sar rax, 3
sar rax, 1
mov byte [rdi + 0x12], r11b
xchg rdi, rdi
mov byte [rdi + 0x14], sil
mov byte [rdi + 0x16], al
movzx eax, bl
xchg r15, r15
shl al, 3
shl al, 1
shl al, 1
sar rbp, 5
sar rbp, 1
sar rbp, 1
sar rbp, 1
sar rbp, 6
sar rbp, 1
sar rbp, 1
or al, bpl
mov rdx, rdx
mov byte [rdi + 0x17], al
mov rax, rbx
sar rax, 1
sar rax, 2
mov byte [rdi + 0x18], al
xchg r10, rax
mov r10, rbx
xchg r10, rax
sar rax, 7
sar rax, 2
sar rax, 1
sar rax, 1
mov byte [rdi + 0x19], al
mov dword [rsp - 0x14], edx
movzx eax, r14b
shl al, 2
sar rbx, 0x12
sar rbx, 1
or bl, al
xchg r13, r13
xchg rdx, r14
mov rax, rdx
xchg r14, rdx
sar rax, 6
mov byte [rdi + 0x1b], al
xchg rdi, rdi
movzx eax, r8b
shl al, 7
sar r14, 1
sar r14, 5
sar r14, 2
sar r14, 4
sar r14, 1
sar r14, 1
or al, r14b
mov byte [rdi + 0x1a], bl
mov byte [rdi + 0x1c], al
xchg r10, r10
xchg r8, rax
mov r8, rax
xchg r8, rax
sar rax, 1
mov dword [rsp - 0xc], edi
mov byte [rdi + 0x1d], al
mov rax, r8
sar rax, 4
sar rax, 1
sar rax, 2
sar rax, 1
sar rax, 1
sar r8, 5
sar r8, 9
sar r8, 2
sar r8, 1
mov byte [rdi + 0x1f], r8b
xchg rsp, rsp
mov byte [rdi + 0x1e], al
sub rsp, 0xffffffffffffff98
nop
mov r15, qword [rsp]
add rsp, 8
pop r14
pop r13
pop r12
mov dword [rsp - 0x3c], ebx
nop
mov rdi, qword [rsp]
add rsp, 8
pop rsi
nop
add rsp, 8
mov rbp, qword [rsp - 8]
nop
mov rbx, qword [rsp]
add rsp, 8
ret