Function at 0x1401273b0
Capabilities:
Encode data using xor
Get storage device properties

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x318
movapd xmmword [rsp + 0x300], xmm9
movapd xmmword [rsp + 0x2f0], xmm8
movapd xmmword [rsp + 0x2e0], xmm7
movapd xmmword [rsp + 0x2d0], xmm6
mov r12, r8
mov ebx, edx
mov rbp, rcx
mov rax, qword [0x140516758]
xor rax, rsp
mov qword [rsp + 0x2c8], rax
lea rdx, [0x1404f9910]
mov rcx, r8
call fcn.14011ca30
xorps xmm0, xmm0
movaps xmmword [rsp + 0x2b0], xmm0
movaps xmmword [rsp + 0x2a0], xmm0
mov word [rsp + 0x2c0], 0
movaps xmmword [rsp + 0x290], xmm0
movaps xmmword [rsp + 0x280], xmm0
movaps xmmword [rsp + 0x270], xmm0
movaps xmmword [rsp + 0x260], xmm0
movaps xmmword [rsp + 0x250], xmm0
movaps xmmword [rsp + 0x240], xmm0
movaps xmmword [rsp + 0x230], xmm0
movaps xmmword [rsp + 0x220], xmm0
movaps xmmword [rsp + 0x210], xmm0
movaps xmmword [rsp + 0x200], xmm0
movaps xmmword [rsp + 0x1f0], xmm0
movaps xmmword [rsp + 0x1e0], xmm0
movaps xmmword [rsp + 0x1d0], xmm0
movaps xmmword [rsp + 0x1c0], xmm0
movaps xmmword [rsp + 0x1b0], xmm0
movaps xmmword [rsp + 0x1a0], xmm0
lea rdx, [rsp + 0x2a0]
mov ecx, ebx
mov r8d, 0xa
call fcn.1404b4c8c
lea rcx, [rsp + 0x1a0]
call fcn.1404bc040
mov word [rsp + rax + 0x1a0], 0x5c5c
mov byte [rsp + rax + 0x1a2], 0
mov qword [rsp + 0x80], 0
mov qword [rsp + 0x78], 0
mov qword [rsp + 0x80], 0
mov qword [rsp + 0x78], 0
mov qword [rsp + 0x78], 0
movsd xmm1, qword [rsp + 0x78]
movsd xmm0, qword [0x1404d97b0]
ucomisd xmm0, xmm1
jbe 0x140127632
movabs rax, 0x8000000000000000
movapd xmm1, xmmword [0x1404d97c0]
movapd xmm2, xmmword [0x1404d97d0]
movsd xmm3, qword [0x1404d83f0]
movsd xmm4, qword [0x1404d97e0]
movsd xmm5, qword [0x1404d7b80]
jmp 0x140127590
movsd xmm6, qword [rsp + 0x78]
addsd xmm6, xmm5
movsd qword [rsp + 0x78], xmm6
movsd xmm6, qword [rsp + 0x78]
ucomisd xmm0, xmm6
jbe 0x140127632
movsd xmm6, qword [rsp + 0x78]
movsd xmm7, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x78]
xor rcx, rax
movq xmm8, rcx
movsd xmm9, qword [rsp + 0x78]
mulsd xmm9, xmm8
shufpd xmm9, xmm2, 2
movsd xmm8, qword [rsp + 0x78]
unpcklpd xmm6, xmm8
movsd xmm8, qword [rsp + 0x78]
unpcklpd xmm7, xmm8
mulpd xmm6, xmm1
mulpd xmm6, xmm7
addpd xmm6, xmm9
movapd xmm7, xmm6
unpckhpd xmm7, xmm6
divsd xmm6, xmm7
addsd xmm6, qword [rsp + 0x80]
movsd qword [rsp + 0x80], xmm6
movsd xmm6, qword [rsp + 0x80]
ucomisd xmm6, xmm3
jbe 0x140127570
movsd xmm6, qword [rsp + 0x78]
mulsd xmm6, xmm4
addsd xmm6, qword [rsp + 0x80]
movsd qword [rsp + 0x80], xmm6
jmp 0x140127570
movsd xmm0, qword [rsp + 0x80]
xorpd xmm1, xmm1
ucomisd xmm1, xmm0
jbe 0x140127654
call fcn.14049e6e4
call fcn.14049e704
jmp 0x14012802c
movaps xmm0, xmmword [0x1404d7900]
movaps xmmword [rsp + 0x90], xmm0
movaps xmm0, xmmword [0x1404d7910]
movaps xmmword [rsp + 0xa0], xmm0
movaps xmm0, xmmword [0x1404d7920]
movaps xmmword [rsp + 0xb0], xmm0
movaps xmm0, xmmword [0x1404d7930]
movaps xmmword [rsp + 0xc0], xmm0
movaps xmm0, xmmword [0x1404d7940]
movaps xmmword [rsp + 0xd0], xmm0
movaps xmm0, xmmword [0x1404d7950]
movaps xmmword [rsp + 0xe0], xmm0
movaps xmm0, xmmword [0x1404d7960]
movaps xmmword [rsp + 0xf0], xmm0
movaps xmm0, xmmword [0x1404d7970]
movaps xmmword [rsp + 0x100], xmm0
movaps xmm0, xmmword [0x1404d7980]
movaps xmmword [rsp + 0x110], xmm0
movaps xmm0, xmmword [0x1404d7990]
movaps xmmword [rsp + 0x120], xmm0
movaps xmm0, xmmword [0x1404d79a0]
movaps xmmword [rsp + 0x130], xmm0
movaps xmm0, xmmword [0x1404d79b0]
movaps xmmword [rsp + 0x140], xmm0
movaps xmm0, xmmword [0x1404d79c0]
movaps xmmword [rsp + 0x150], xmm0
movaps xmm0, xmmword [0x1404d79d0]
movaps xmmword [rsp + 0x160], xmm0
movaps xmm0, xmmword [0x1404d79e0]
movaps xmmword [rsp + 0x170], xmm0
movapd xmm0, xmmword [0x1404d79f0]
movapd xmmword [rsp + 0x180], xmm0
xor ecx, ecx
mov r8d, 0xff
lea r9, [fcn.14049e704]
lea r10, [0x140128208]
xor esi, esi
xor r11d, r11d
jmp 0x140127779
dec r8
je 0x1401278c5
mov edx, 1
cmp r8, 2
jb 0x140127799
mov edx, 1
nop dword [rax]
add edx, edx
inc edx
cmp r8, rdx
ja 0x140127790
mov edi, ntohs
nop
cmp r11d, 3
ja case.default.0x1401277b0
mov eax, r11d
movsxd rax, dword [r10 + rax*4]
add rax, r10
jmp rax
movzx esi, sil
movsd xmm0, qword [rsp + 0x80]
cvttsd2si rax, xmm0
jmp 0x140127840
movzx esi, sil
lea eax, [r11 - 4]
movzx eax, byte [rax + r9]
jmp 0x140127840
movsd xmm0, qword [rsp + 0x80]
cvttsd2si rax, xmm0
movzx esi, sil
shr eax, 8
jmp 0x140127840
movsd xmm0, qword [rsp + 0x80]
cvttsd2si rax, xmm0
movzx esi, sil
shr eax, 0x10
jmp 0x140127840
movsd xmm0, qword [rsp + 0x80]
cvttsd2si rax, xmm0
movzx esi, sil
shr eax, 0x18
nop word cs:[rax + rax]
add al, byte [rsp + rsi + 0x90]
inc r11d
lea esi, [rax + 0x1b]
cmp r11d, 0x1b
cmovae r11d, ecx
movzx eax, al
movzx esi, sil
cmovb esi, eax
mov eax, esi
and eax, edx
movzx eax, al
dec edi
je 0x140127880
mov ebx, eax
cmp r8, rbx
jb 0x1401277a0
jmp 0x140127887
xor edx, edx
div r8d
mov eax, edx
mov eax, eax
cmp r8, rax
je 0x140127770
movzx edx, byte [rsp + r8 + 0x90]
xor dl, byte [rsp + rax + 0x90]
mov byte [rsp + r8 + 0x90], dl
xor dl, byte [rsp + rax + 0x90]
mov byte [rsp + rax + 0x90], dl
xor byte [rsp + r8 + 0x90], dl
jmp 0x140127770
movzx r14d, byte [rsp + 0x91]
movzx eax, byte [rsp + 0x95]
movzx r13d, byte [rsp + 0x97]
movzx ecx, sil
movzx edx, byte [rsp + rcx + 0x90]
movzx r8d, byte [fcn.14049e6e4]
movzx ecx, byte [0x14049e6e5]
add cl, 0x5d
shl r8b, 4
add r8b, 0x60
or r8b, cl
movzx esi, byte [rsp + rdx + 0x90]
movzx r9d, byte [rsp + r14 + 0x90]
add r9b, byte [rsp + 0x93]
lea ecx, [r14 + 1]
movzx r11d, r9b
movzx r10d, byte [rsp + r11 + 0x90]
mov byte [rsp + rdx + 0x90], r10b
movzx r10d, r13b
movzx ebx, byte [rsp + r10 + 0x90]
mov byte [rsp + r11 + 0x90], bl
movzx ecx, cl
movzx ebx, byte [rsp + rcx + 0x90]
mov byte [rsp + r10 + 0x90], bl
mov byte [rsp + rcx + 0x90], sil
movabs rdi, 0x40d2798000000000
add al, byte [rsp + rsi + 0x90]
mov qword [rsp + 0x190], rdi
movabs rsi, 0x40c8a20000000000
mov qword [rsp + 0x70], rsi
movabs rsi, 0x40b8a20000000000
mov qword [rsp + 0x50], rsi
movsd xmm0, qword [rsp + 0x50]
movsd xmm1, qword [rsp + 0x70]
subsd xmm1, xmm0
movsd qword [rsp + 0x70], xmm1
movsd xmm0, qword [rsp + 0x50]
addsd xmm0, qword [rsp + 0x70]
movsd qword [rsp + 0x70], xmm0
movsd xmm0, qword [rsp + 0x50]
movsd xmm1, qword [rsp + 0x70]
mulsd xmm1, xmm0
movsd qword [rsp + 0x70], xmm1
movsd xmm0, qword [rsp + 0x50]
movsd xmm1, qword [rsp + 0x70]
ucomisd xmm1, xmm0
movsd xmm0, qword [rsp + 0x50]
mov qword [rsp + 0x68], r12
mov qword [rsp + 0x60], rbp
jbe 0x140127a9a
addsd xmm0, qword [rsp + 0x190]
movsd qword [rsp + 0x190], xmm0
movsd xmm0, qword [rsp + 0x70]
movsd xmm1, qword [rsp + 0x50]
subsd xmm1, xmm0
movsd qword [rsp + 0x50], xmm1
movzx ebx, byte [rsp + rcx + 0x90]
add bl, byte [rsp + r11 + 0x90]
movzx r11d, bl
movzx r13d, byte [rsp + r11 + 0x90]
movzx edx, byte [rsp + rdx + 0x90]
add dl, byte [rsp + r10 + 0x90]
movzx r10d, al
add dl, byte [rsp + r10 + 0x90]
movzx edx, dl
movzx edx, byte [rsp + rdx + 0x90]
xor r13b, byte [rsp + rdx + 0x90]
xor r13b, r8b
movsd xmm0, qword [rsp + 0x50]
movsd xmm1, qword [rsp + 0x190]
subsd xmm1, xmm0
movsd qword [rsp + 0x190], xmm1
jmp 0x140127adb
movsd xmm1, qword [rsp + 0x70]
subsd xmm1, xmm0
movsd qword [rsp + 0x70], xmm1
movsd xmm0, qword [rsp + 0x70]
movsd xmm1, qword [rsp + 0x190]
mulsd xmm1, xmm0
movsd qword [rsp + 0x190], xmm1
movsd xmm0, qword [rsp + 0x190]
addsd xmm0, qword [rsp + 0x50]
movsd qword [rsp + 0x50], xmm0
movzx ebp, byte [rsp + rcx + 0x90]
mov qword [rsp + 0x58], r14
lea ecx, [r14 + 2]
movzx r11d, cl
xor edi, edi
lea rdx, [fcn.14049e6e4]
movabs r12, 0x40b36e0000000000
jmp 0x140127bc0
subsd xmm1, xmm0
movsd qword [rsp + 0x48], xmm1
movsd xmm0, qword [rsp + 0x40]
movsd xmm1, qword [rsp + 0x48]
mulsd xmm1, xmm0
movsd qword [rsp + 0x48], xmm1
add al, byte [rsp + rbx + 0x90]
movsd xmm0, qword [rsp + 0x70]
addsd xmm0, qword [rsp + 0x40]
movsd qword [rsp + 0x40], xmm0
movsd xmm0, qword [rsp + 0x70]
movsd xmm1, qword [rsp + 0x40]
mulsd xmm1, xmm0
movsd qword [rsp + 0x40], xmm1
movzx ebp, byte [rsp + rbp + 0x90]
movzx ebx, byte [rsp + rsi + 0x90]
add bl, bpl
movzx ebx, bl
movzx ecx, byte [rsp + rcx + 0x90]
add cl, byte [rsp + r13 + 0x90]
movzx r13d, byte [rsp + rbx + 0x90]
movzx ebx, al
add cl, byte [rsp + rbx + 0x90]
movzx ecx, cl
movzx ecx, byte [rsp + rcx + 0x90]
xor r13b, byte [rsp + rcx + 0x90]
xor r13b, r8b
mov byte [rsp + r10 + 0x190], r13b
cmp rdi, 7
je 0x140127e4d
mov ecx, r9d
mov r10, rdi
mov r9d, ebp
add r9b, cl
inc rdi
movzx ecx, r8b
movzx r8d, byte [rdx + r10*2 + 2]
movzx ebx, byte [rsp + rcx + 0x90]
lea ebp, [r11 + r10]
movzx esi, r9b
movzx r14d, byte [rsp + rsi + 0x90]
mov byte [rsp + rcx + 0x90], r14b
movzx r13d, r13b
movzx r14d, byte [rsp + r13 + 0x90]
mov byte [rsp + rsi + 0x90], r14b
movzx ebp, bpl
movzx r14d, byte [rsp + rbp + 0x90]
mov byte [rsp + r13 + 0x90], r14b
movzx r14d, byte [rdx + r10*2 + 3]
add r14b, 0x5d
shl r8b, 4
add r8b, 0x60
mov byte [rsp + rbp + 0x90], bl
movabs r15, 0x40d36c8000000000
mov qword [rsp + 0x70], r15
movabs r15, 0x40cd230000000000
mov qword [rsp + 0x50], r15
movabs r15, 0x40c36d0000000000
mov qword [rsp + 0x48], r15
mov qword [rsp + 0x40], r12
movsd xmm0, qword [rsp + 0x40]
movsd xmm1, qword [rsp + 0x48]
mulsd xmm1, xmm0
movsd qword [rsp + 0x48], xmm1
movsd xmm0, qword [rsp + 0x40]
movsd xmm1, qword [rsp + 0x48]
mulsd xmm1, xmm0
movsd qword [rsp + 0x48], xmm1
movsd xmm0, qword [rsp + 0x40]
addsd xmm0, qword [rsp + 0x48]
or r8b, r14b
movsd qword [rsp + 0x48], xmm0
movsd xmm0, qword [rsp + 0x40]
movsd xmm1, qword [rsp + 0x48]
subsd xmm1, xmm0
movsd qword [rsp + 0x48], xmm1
movsd xmm0, qword [rsp + 0x40]
movsd xmm1, qword [rsp + 0x48]
ucomisd xmm0, xmm1
movsd xmm0, qword [rsp + 0x40]
movsd xmm1, qword [rsp + 0x48]
jbe 0x140127b10
mulsd xmm0, xmm1
movsd qword [rsp + 0x48], xmm0
movsd xmm0, qword [rsp + 0x70]
movsd xmm1, qword [rsp + 0x40]
subsd xmm1, xmm0
movsd qword [rsp + 0x40], xmm1
movsd xmm0, qword [rsp + 0x70]
movsd xmm1, qword [rsp + 0x40]
mulsd xmm1, xmm0
movsd qword [rsp + 0x40], xmm1
movsd xmm0, qword [rsp + 0x70]
addsd xmm0, qword [rsp + 0x40]
movsd qword [rsp + 0x40], xmm0
movsd xmm0, qword [rsp + 0x48]
addsd xmm0, qword [rsp + 0x70]
movsd qword [rsp + 0x70], xmm0
movsd xmm0, qword [rsp + 0x48]
addsd xmm0, qword [rsp + 0x70]
movsd qword [rsp + 0x70], xmm0
movsd xmm0, qword [rsp + 0x70]
movsd xmm1, qword [rsp + 0x48]
subsd xmm1, xmm0
movsd qword [rsp + 0x48], xmm1
movsd xmm0, qword [rsp + 0x40]
addsd xmm0, qword [rsp + 0x50]
movsd qword [rsp + 0x50], xmm0
movsd xmm0, qword [rsp + 0x48]
movsd xmm1, qword [rsp + 0x70]
ucomisd xmm1, xmm0
jbe 0x140127df0
movsd xmm0, qword [rsp + 0x70]
movsd xmm1, qword [rsp + 0x48]
mulsd xmm1, xmm0
movsd qword [rsp + 0x48], xmm1
movsd xmm0, qword [rsp + 0x50]
movsd xmm1, qword [rsp + 0x40]
subsd xmm1, xmm0
movsd qword [rsp + 0x40], xmm1
movsd xmm0, qword [rsp + 0x70]
movsd xmm1, qword [rsp + 0x48]
mulsd xmm1, xmm0
movsd qword [rsp + 0x48], xmm1
movsd xmm0, qword [rsp + 0x50]
addsd xmm0, qword [rsp + 0x40]
movsd qword [rsp + 0x40], xmm0
jmp 0x140127b5f
movsd xmm0, qword [rsp + 0x40]
movsd xmm1, qword [rsp + 0x50]
subsd xmm1, xmm0
movsd qword [rsp + 0x50], xmm1
movsd xmm0, qword [rsp + 0x40]
movsd xmm1, qword [rsp + 0x50]
mulsd xmm1, xmm0
movsd qword [rsp + 0x50], xmm1
movsd xmm0, qword [rsp + 0x50]
movsd xmm1, qword [rsp + 0x40]
subsd xmm1, xmm0
movsd qword [rsp + 0x40], xmm1
movsd xmm0, qword [rsp + 0x70]
movsd xmm1, qword [rsp + 0x48]
divsd xmm1, xmm0
movsd qword [rsp + 0x48], xmm1
jmp 0x140127b5f
movzx r9d, byte [0x14049e6f4]
movzx ecx, byte [0x14049e6f5]
add cl, 0x5d
shl r9b, 4
add r9b, 0x60
or r9b, cl
movzx r8d, r8b
movzx ecx, byte [rsp + r8 + 0x90]
add r11d, edi
add bpl, sil
movzx r10d, bpl
movzx ebx, byte [rsp + r10 + 0x90]
mov byte [rsp + r8 + 0x90], bl
movzx esi, r13b
movzx ebx, byte [rsp + rsi + 0x90]
mov byte [rsp + r10 + 0x90], bl
movzx r11d, r11b
movzx ebx, byte [rsp + r11 + 0x90]
mov byte [rsp + rsi + 0x90], bl
mov byte [rsp + r11 + 0x90], cl
add al, byte [rsp + rcx + 0x90]
movzx r10d, byte [rsp + r10 + 0x90]
add r10b, cl
movzx r10d, r10b
movzx r10d, byte [rsp + r10 + 0x90]
movzx r8d, byte [rsp + r8 + 0x90]
add r8b, byte [rsp + rsi + 0x90]
movzx r11d, al
add r8b, byte [rsp + r11 + 0x90]
movzx r8d, r8b
movzx r8d, byte [rsp + r8 + 0x90]
xor r10b, byte [rsp + r8 + 0x90]
xor r10b, r9b
mov byte [rsp + 0x197], r10b
mov r8, qword [rsp + 0x58]
add r8d, 3
movzx r8d, r8b
add r8, rdi
xor r11d, r11d
nop word cs:[rax + rax]
add bpl, cl
movzx esi, r9b
movzx r9d, byte [rdx + r11*2 + 0x12]
movzx ecx, byte [rsp + rsi + 0x90]
movzx edi, bpl
movzx ebx, byte [rsp + rdi + 0x90]
mov byte [rsp + rsi + 0x90], bl
movzx ebx, r10b
movzx r10d, byte [rsp + rbx + 0x90]
mov byte [rsp + rdi + 0x90], r10b
lea r10d, [r8 + r11]
movzx r10d, r10b
movzx r14d, byte [rsp + r10 + 0x90]
mov byte [rsp + rbx + 0x90], r14b
movzx r14d, byte [rdx + r11*2 + 0x13]
add r14b, 0x5d
shl r9b, 4
add r9b, 0x60
mov byte [rsp + r10 + 0x90], cl
add al, byte [rsp + rcx + 0x90]
or r9b, r14b
movzx r10d, byte [rsp + rdi + 0x90]
add r10b, cl
movzx r10d, r10b
movzx r10d, byte [rsp + r10 + 0x90]
movzx esi, byte [rsp + rsi + 0x90]
add sil, byte [rsp + rbx + 0x90]
movzx edi, al
add sil, byte [rsp + rdi + 0x90]
movzx esi, sil
movzx esi, byte [rsp + rsi + 0x90]
xor r10b, byte [rsp + rsi + 0x90]
xor r10b, r9b
mov byte [rsp + r11 + 0x198], r10b
inc r11
cmp r11, 8
jne 0x140127f40
mov byte [rsp + 0x19f], 0
mov r12, qword [rsp + 0x68]
mov rbp, qword [rsp + 0x60]
lea rbx, [rsp + 0x1a0]
lea rdx, [rsp + 0x190]
mov rcx, rbx
call fcn.1404bb960
lea rdx, [rsp + 0x2a0]
mov rcx, rbx
call fcn.1404bb960
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0
mov dword [rsp + 0x20], 3
mov rcx, rbx
xor edx, edx
mov r8d, 3
xor r9d, r9d
call qword [rbp + 0x120]
cmp rax, 0xffffffffffffffff
je 0x140128192
mov rbx, rax
mov dword [rsp + 0x88], 0
mov qword [rsp + 0x80], 0
mov qword [rsp + 0x78], 0
mov dword [rsp + 0x70], 0
lea rsi, [rsp + 0x70]
mov qword [rsp + 0x30], rsi
lea rax, [rsp + 0x78]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x38], 0
mov dword [rsp + 0x28], 8
lea r8, [rsp + 0x80]
mov rcx, rbx
mov edx, 0x2d1400
mov r9d, recvfrom
call qword [rbp + 0x100]
test eax, eax
je 0x14012819c
mov r15d, dword [rsp + 0x7c]
mov rcx, r15
call fcn.14049f2a0
mov r14, rax
mov rcx, rax
xor edx, edx
mov r8, r15
call fcn.1404a3cc0
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x28], r15d
mov qword [rsp + 0x20], r14
mov qword [rsp + 0x38], 0
lea r8, [rsp + 0x80]
mov rcx, rbx
mov edx, 0x2d1400
mov r9d, recvfrom
call qword [rbp + 0x100]
test eax, eax
je 0x1401281a6
mov eax, dword [r14 + 0x18]
test rax, rax
je 0x140128186
mov rdx, r14
add rdx, rax
lea rdi, [rsp + 0x90]
mov rcx, rdi
call fcn.14009a7a0
mov rcx, r12
mov rdx, rdi
call fcn.1400c5bd0
mov rcx, rdi
call fcn.14006ece0
mov rcx, r14
call fcn.14049f26c
xor esi, esi
jmp 0x1401281b6
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
jmp 0x1401281bf
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
jmp 0x1401281b6
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
mov rcx, r14
call fcn.14049f26c
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rsp + 0x2c8]
xor rcx, rsp
call fcn.14049f400
mov eax, esi
movaps xmm6, xmmword [rsp + 0x2d0]
movaps xmm7, xmmword [rsp + 0x2e0]
movaps xmm8, xmmword [rsp + 0x2f0]
movaps xmm9, xmmword [rsp + 0x300]
add rsp, 0x318
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret