Function at 0x140008750
Capabilities:
Query or enumerate registry value

Disassembly:
mov rax, rsp
sub rsp, 0x68
cmp byte [0x140060708], 0
jne 0x14000944c
mov qword [rax - 8], rbx
mov qword [rax - 0x10], rbp
mov qword [rax - 0x18], rsi
mov qword [rax - 0x20], rdi
mov qword [rax - 0x28], r12
mov qword [rax - 0x30], r14
lea rbp, str.0:db0:lk0:hs0:ld0:ll0:hb0:pj21.5_.4202:zb0.1:bb
mov qword [rax - 0x38], r15
mov byte [0x140060708], 1
mov rcx, rbp
call fcn.14000cd5c
lea rcx, [0x14005f450]
xor edx, edx
mov r8d, 0x12a0
call fcn.14000eb10
lea rdx, [0x14005f46e]
lea rcx, [0x14001ddb8]
xor r8d, r8d
call fcn.140008620
lea rdx, [0x14005f66c]
lea rcx, [0x14001ddc0]
xor r8d, r8d
call fcn.140008620
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_lstrlenW]
lea r15, [0x14001ddc8]
mov rcx, r15
movsxd rbx, eax
call qword [sym.imp.KERNEL32.dll_lstrlenW]
xor r9d, r9d
xor edx, edx
mov r11, rbx
lea r14d, [r9 + 1]
movsxd rsi, eax
test ebx, ebx
jle 0x140008899
nop dword [rax]
xor r10d, r10d
xor r8d, r8d
test esi, esi
jle 0x14000884b
lea rbx, [rdx + rdx]
sub rbx, r15
add rbx, rbp
nop word [rax + rax]
movzx eax, word [r15 + r8*2]
lea rcx, [rbx + r8*2]
cmp word [rcx + r15], ax
jne 0x14000884b
inc r8
inc r10d
cmp r8, rsi
jl 0x140008830
cmp r10d, esi
jne 0x140008873
add rdx, rsi
add r9d, esi
cmp rdx, r11
jge 0x140008873
nop dword [rax + rax]
cmp word [rbp + rdx*2], 0x7c
je 0x140008880
inc rdx
inc r9d
cmp rdx, r11
jl 0x140008860
inc rdx
inc r9d
cmp rdx, r11
jl 0x140008810
jmp 0x140008899
mov ecx, dword [0x14005f6a8]
movsxd rax, r9d
cmp word [rbp + rax*2 - 2], 0x31
cmove ecx, r14d
mov dword [0x14005f6a8], ecx
lea rdx, [0x14005f6ac]
lea rcx, [0x14001ddd0]
xor r8d, r8d
call fcn.140008620
lea rdx, [0x14005f8aa]
lea rcx, [0x14001ddd8]
xor r8d, r8d
call fcn.140008620
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_lstrlenW]
lea r12, [0x14001dde0]
mov rcx, r12
movsxd rbx, eax
call qword [sym.imp.KERNEL32.dll_lstrlenW]
xor r9d, r9d
xor edx, edx
mov r11, rbx
movsxd rsi, eax
test ebx, ebx
jle 0x140008979
xor r10d, r10d
xor r8d, r8d
test esi, esi
jle 0x14000892b
lea rbx, [rdx + rdx]
sub rbx, r12
add rbx, rbp
nop dword [rax + rax]
movzx eax, word [r12 + r8*2]
lea rcx, [rbx + r8*2]
cmp word [rcx + r12], ax
jne 0x14000892b
inc r8
inc r10d
cmp r8, rsi
jl 0x140008910
cmp r10d, esi
jne 0x140008953
add rdx, rsi
add r9d, esi
cmp rdx, r11
jge 0x140008953
nop dword [rax + rax]
cmp word [rbp + rdx*2], 0x7c
je 0x140008960
inc rdx
inc r9d
cmp rdx, r11
jl 0x140008940
inc rdx
inc r9d
cmp rdx, r11
jl 0x1400088f4
jmp 0x140008979
mov ecx, dword [0x14005f8e8]
movsxd rax, r9d
cmp word [rbp + rax*2 - 2], 0x31
cmove ecx, r14d
mov dword [0x14005f8e8], ecx
lea rdx, [0x14005f8ec]
lea rcx, [0x14001dde8]
xor r8d, r8d
call fcn.140008620
lea rdx, [0x14005faea]
lea rcx, [0x14001ddf0]
xor r8d, r8d
call fcn.140008620
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_lstrlenW]
lea r14, [0x14001ddf8]
mov rcx, r14
movsxd rbx, eax
call qword [sym.imp.KERNEL32.dll_lstrlenW]
xor r9d, r9d
xor edx, edx
mov r11, rbx
movsxd rsi, eax
test ebx, ebx
jle 0x140008a5d
xor r10d, r10d
xor r8d, r8d
test esi, esi
jle 0x140008a0b
lea rbx, [rdx + rdx]
sub rbx, r14
add rbx, rbp
nop dword [rax + rax]
movzx eax, word [r14 + r8*2]
lea rcx, [rbx + r8*2]
cmp word [rcx + r14], ax
jne 0x140008a0b
inc r8
inc r10d
cmp r8, rsi
jl 0x1400089f0
cmp r10d, esi
jne 0x140008a33
add rdx, rsi
add r9d, esi
cmp rdx, r11
jge 0x140008a33
nop dword [rax + rax]
cmp word [rbp + rdx*2], 0x7c
je 0x140008a40
inc rdx
inc r9d
cmp rdx, r11
jl 0x140008a20
inc rdx
inc r9d
cmp rdx, r11
jl 0x1400089d4
jmp 0x140008a5d
mov ecx, dword [0x14005fb28]
movsxd rax, r9d
cmp word [rbp + rax*2 - 2], 0x31
mov eax, 1
cmove ecx, eax
mov dword [0x14005fb28], ecx
lea rdx, [0x14005fb2c]
lea rcx, [0x14001de00]
xor r8d, r8d
call fcn.140008620
lea rdx, [0x14005fb68]
lea rcx, [0x14001de08]
xor r8d, r8d
call fcn.140008620
lea rdx, [0x14005fba4]
lea rcx, [0x14001de10]
xor r8d, r8d
call fcn.140008620
lea rdx, [0x14005fc08]
lea rcx, [0x14001de18]
xor r8d, r8d
call fcn.140008620
lea rdx, [0x14005fc6c]
lea rcx, [0x14001de20]
xor r8d, r8d
call fcn.140008620
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_lstrlenW]
lea r12, [0x14001de28]
mov rcx, r12
movsxd rbx, eax
call qword [sym.imp.KERNEL32.dll_lstrlenW]
xor r9d, r9d
xor edx, edx
mov r11, rbx
movsxd rsi, eax
test ebx, ebx
jle 0x140008b8d
nop word [rax + rax]
xor r10d, r10d
xor r8d, r8d
test esi, esi
jle 0x140008b3b
lea rbx, [rdx + rdx]
sub rbx, r12
add rbx, rbp
nop word [rax + rax]
movzx eax, word [r12 + r8*2]
lea rcx, [rbx + r8*2]
cmp word [rcx + r12], ax
jne 0x140008b3b
inc r8
inc r10d
cmp r8, rsi
jl 0x140008b20
cmp r10d, esi
jne 0x140008b63
add rdx, rsi
add r9d, esi
cmp rdx, r11
jge 0x140008b63
nop dword [rax + rax]
cmp word [rbp + rdx*2], 0x7c
je 0x140008b70
inc rdx
inc r9d
cmp rdx, r11
jl 0x140008b50
inc rdx
inc r9d
cmp rdx, r11
jl 0x140008b00
jmp 0x140008b8d
mov ecx, dword [0x14005fcd0]
movsxd rax, r9d
cmp word [rbp + rax*2 - 2], 0x31
mov eax, 1
cmove ecx, eax
mov dword [0x14005fcd0], ecx
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_lstrlenW]
lea r12, [0x14001de30]
mov rcx, r12
movsxd rbx, eax
call qword [sym.imp.KERNEL32.dll_lstrlenW]
xor r9d, r9d
xor edx, edx
mov r11, rbx
movsxd rsi, eax
test ebx, ebx
jle 0x140008c4d
nop dword [rax]
xor r10d, r10d
xor r8d, r8d
test esi, esi
jle 0x140008bfb
lea rbx, [rdx + rdx]
sub rbx, r12
add rbx, rbp
nop word [rax + rax]
movzx eax, word [r12 + r8*2]
lea rcx, [rbx + r8*2]
cmp word [rcx + r12], ax
jne 0x140008bfb
inc r8
inc r10d
cmp r8, rsi
jl 0x140008be0
cmp r10d, esi
jne 0x140008c23
add rdx, rsi
add r9d, esi
cmp rdx, r11
jge 0x140008c23
nop dword [rax + rax]
cmp word [rbp + rdx*2], 0x7c
je 0x140008c30
inc rdx
inc r9d
cmp rdx, r11
jl 0x140008c10
inc rdx
inc r9d
cmp rdx, r11
jl 0x140008bc0
jmp 0x140008c4d
mov ecx, dword [0x14005fcd4]
movsxd rax, r9d
cmp word [rbp + rax*2 - 2], 0x31
mov eax, 1
cmove ecx, eax
mov dword [0x14005fcd4], ecx
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_lstrlenW]
lea r12, [0x14001de38]
mov rcx, r12
movsxd rbx, eax
call qword [sym.imp.KERNEL32.dll_lstrlenW]
xor r9d, r9d
xor edx, edx
mov r11, rbx
movsxd rsi, eax
test ebx, ebx
jle 0x140008d0d
nop dword [rax]
xor r10d, r10d
xor r8d, r8d
test esi, esi
jle 0x140008cbb
lea rbx, [rdx + rdx]
sub rbx, r12
add rbx, rbp
nop word [rax + rax]
movzx eax, word [r12 + r8*2]
lea rcx, [rbx + r8*2]
cmp word [rcx + r12], ax
jne 0x140008cbb
inc r8
inc r10d
cmp r8, rsi
jl 0x140008ca0
cmp r10d, esi
jne 0x140008ce3
add rdx, rsi
add r9d, esi
cmp rdx, r11
jge 0x140008ce3
nop dword [rax + rax]
cmp word [rbp + rdx*2], 0x7c
je 0x140008cf0
inc rdx
inc r9d
cmp rdx, r11
jl 0x140008cd0
inc rdx
inc r9d
cmp rdx, r11
jl 0x140008c80
jmp 0x140008d0d
mov ecx, dword [0x14005fcd8]
movsxd rax, r9d
cmp word [rbp + rax*2 - 2], 0x31
mov eax, 1
cmove ecx, eax
mov dword [0x14005fcd8], ecx
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_lstrlenW]
lea r12, [0x14001de40]
mov rcx, r12
movsxd rbx, eax
call qword [sym.imp.KERNEL32.dll_lstrlenW]
xor r9d, r9d
xor edx, edx
mov r11, rbx
movsxd rsi, eax
test ebx, ebx
jle 0x140008dcd
nop dword [rax]
xor r10d, r10d
xor r8d, r8d
test esi, esi
jle 0x140008d7b
lea rbx, [rdx + rdx]
sub rbx, r12
add rbx, rbp
nop word [rax + rax]
movzx eax, word [r12 + r8*2]
lea rcx, [rbx + r8*2]
cmp word [rcx + r12], ax
jne 0x140008d7b
inc r8
inc r10d
cmp r8, rsi
jl 0x140008d60
cmp r10d, esi
jne 0x140008da3
add rdx, rsi
add r9d, esi
cmp rdx, r11
jge 0x140008da3
nop dword [rax + rax]
cmp word [rbp + rdx*2], 0x7c
je 0x140008db0
inc rdx
inc r9d
cmp rdx, r11
jl 0x140008d90
inc rdx
inc r9d
cmp rdx, r11
jl 0x140008d40
jmp 0x140008dcd
mov ecx, dword [0x14005fcdc]
movsxd rax, r9d
cmp word [rbp + rax*2 - 2], 0x31
mov eax, 1
cmove ecx, eax
mov dword [0x14005fcdc], ecx
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_lstrlenW]
lea r12, [0x14001de48]
mov rcx, r12
movsxd rbx, eax
call qword [sym.imp.KERNEL32.dll_lstrlenW]
xor r9d, r9d
xor edx, edx
mov r11, rbx
movsxd rsi, eax
test ebx, ebx
jle 0x140008e8d
nop dword [rax]
xor r10d, r10d
xor r8d, r8d
test esi, esi
jle 0x140008e3b
lea rbx, [rdx + rdx]
sub rbx, r12
add rbx, rbp
nop word [rax + rax]
movzx eax, word [r12 + r8*2]
lea rcx, [rbx + r8*2]
cmp word [rcx + r12], ax
jne 0x140008e3b
inc r8
inc r10d
cmp r8, rsi
jl 0x140008e20
cmp r10d, esi
jne 0x140008e63
add rdx, rsi
add r9d, esi
cmp rdx, r11
jge 0x140008e63
nop dword [rax + rax]
cmp word [rbp + rdx*2], 0x7c
je 0x140008e70
inc rdx
inc r9d
cmp rdx, r11
jl 0x140008e50
inc rdx
inc r9d
cmp rdx, r11
jl 0x140008e00
jmp 0x140008e8d
mov ecx, dword [0x14005fce0]
movsxd rax, r9d
cmp word [rbp + rax*2 - 2], 0x31
mov eax, 1
cmove ecx, eax
mov dword [0x14005fce0], ecx
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_lstrlenW]
lea r12, [0x14001de50]
mov rcx, r12
movsxd rbx, eax
call qword [sym.imp.KERNEL32.dll_lstrlenW]
xor r9d, r9d
xor edx, edx
mov r11, rbx
movsxd rsi, eax
test ebx, ebx
jle 0x140008f4d
nop dword [rax]
xor r10d, r10d
xor r8d, r8d
test esi, esi
jle 0x140008efb
lea rbx, [rdx + rdx]
sub rbx, r12
add rbx, rbp
nop word [rax + rax]
movzx eax, word [r12 + r8*2]
lea rcx, [rbx + r8*2]
cmp word [rcx + r12], ax
jne 0x140008efb
inc r8
inc r10d
cmp r8, rsi
jl 0x140008ee0
cmp r10d, esi
jne 0x140008f23
add rdx, rsi
add r9d, esi
cmp rdx, r11
jge 0x140008f23
nop dword [rax + rax]
cmp word [rbp + rdx*2], 0x7c
je 0x140008f30
inc rdx
inc r9d
cmp rdx, r11
jl 0x140008f10
inc rdx
inc r9d
cmp rdx, r11
jl 0x140008ec0
jmp 0x140008f4d
mov ecx, dword [0x14005fce4]
movsxd rax, r9d
cmp word [rbp + rax*2 - 2], 0x31
mov eax, 1
cmove ecx, eax
mov dword [0x14005fce4], ecx
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_lstrlenW]
lea r12, [0x14001de58]
mov rcx, r12
movsxd rbx, eax
call qword [sym.imp.KERNEL32.dll_lstrlenW]
xor r9d, r9d
xor edx, edx
mov r11, rbx
movsxd rsi, eax
test ebx, ebx
jle 0x14000900d
nop dword [rax]
xor r10d, r10d
xor r8d, r8d
test esi, esi
jle 0x140008fbb
lea rbx, [rdx + rdx]
sub rbx, r12
add rbx, rbp
nop word [rax + rax]
movzx eax, word [r12 + r8*2]
lea rcx, [rbx + r8*2]
cmp word [rcx + r12], ax
jne 0x140008fbb
inc r8
inc r10d
cmp r8, rsi
jl 0x140008fa0
cmp r10d, esi
jne 0x140008fe3
add rdx, rsi
add r9d, esi
cmp rdx, r11
jge 0x140008fe3
nop dword [rax + rax]
cmp word [rbp + rdx*2], 0x7c
je 0x140008ff0
inc rdx
inc r9d
cmp rdx, r11
jl 0x140008fd0
inc rdx
inc r9d
cmp rdx, r11
jl 0x140008f80
jmp 0x14000900d
mov ecx, dword [0x14005fce8]
movsxd rax, r9d
cmp word [rbp + rax*2 - 2], 0x31
mov eax, 1
cmove ecx, eax
mov dword [0x14005fce8], ecx
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_lstrlenW]
lea r12, [0x14001de60]
mov rcx, r12
movsxd rbx, eax
call qword [sym.imp.KERNEL32.dll_lstrlenW]
xor r9d, r9d
xor edx, edx
mov r11, rbx
movsxd rsi, eax
test ebx, ebx
jle 0x1400090cd
nop dword [rax]
xor r10d, r10d
xor r8d, r8d
test esi, esi
jle 0x14000907b
lea rbx, [rdx + rdx]
sub rbx, r12
add rbx, rbp
nop word [rax + rax]
movzx eax, word [r12 + r8*2]
lea rcx, [rbx + r8*2]
cmp word [rcx + r12], ax
jne 0x14000907b
inc r8
inc r10d
cmp r8, rsi
jl 0x140009060
cmp r10d, esi
jne 0x1400090a3
add rdx, rsi
add r9d, esi
cmp rdx, r11
jge 0x1400090a3
nop dword [rax + rax]
cmp word [rbp + rdx*2], 0x7c
je 0x1400090b0
inc rdx
inc r9d
cmp rdx, r11
jl 0x140009090
inc rdx
inc r9d
cmp rdx, r11
jl 0x140009040
jmp 0x1400090cd
mov ecx, dword [0x14005fcec]
movsxd rax, r9d
cmp word [rbp + rax*2 - 2], 0x31
mov eax, 1
cmove ecx, eax
mov dword [0x14005fcec], ecx
lea rax, [rsp + 0x80]
lea rdx, str.Console
mov r9d, 0x20019
xor r8d, r8d
mov rcx, 0xffffffff80000001
mov dword [rsp + 0x78], 3
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x70], 0
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x14000913b
mov rcx, qword [rsp + 0x80]
lea rax, [rsp + 0x70]
lea r9, [rsp + 0x78]
mov qword [rsp + 0x28], rax
lea rdx, str.IpDate
xor r8d, r8d
mov qword [rsp + 0x20], 0
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
cmp dword [rsp + 0x70], 0xa
jbe 0x140009429
xor edx, edx
mov r8d, 0x7d0
mov rcx, rbp
call fcn.14000eb10
mov rcx, qword [rsp + 0x80]
lea r11, [rsp + 0x70]
mov qword [rsp + 0x28], r11
lea r9, [rsp + 0x78]
lea rdx, str.IpDate
xor r8d, r8d
mov qword [rsp + 0x20], rbp
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
lea rdx, [0x14005f46e]
lea rcx, [0x14001ddb8]
xor r8d, r8d
call fcn.140008620
lea rdx, [0x14005f66c]
lea rcx, [0x14001ddc0]
xor r8d, r8d
call fcn.140008620
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_lstrlenW]
mov rcx, r15
movsxd rbx, eax
call qword [sym.imp.KERNEL32.dll_lstrlenW]
xor r9d, r9d
xor edx, edx
mov r11, rbx
movsxd rsi, eax
test ebx, ebx
jle 0x140009242
xor r10d, r10d
xor r8d, r8d
test esi, esi
jle 0x14000920b
lea rbx, [rdx + rdx]
sub rbx, r15
add rbx, rbp
nop word [rax + rax]
movzx eax, word [r15 + r8*2]
lea rcx, [rbx + r8*2]
cmp word [rcx + r15], ax
jne 0x14000920b
inc r8
inc r10d
cmp r8, rsi
jl 0x1400091f0
cmp r10d, esi
jne 0x140009237
add rdx, rsi
add r9d, esi
cmp rdx, r11
jge 0x140009237
nop dword [rax + rax]
cmp word [rbp + rdx*2], 0x7c
je 0x140009310
inc rdx
inc r9d
cmp rdx, r11
jl 0x140009220
inc rdx
inc r9d
cmp rdx, r11
jl 0x1400091d2
mov r15d, 1
lea rdx, [0x14005f6ac]
lea rcx, [0x14001ddd0]
xor r8d, r8d
call fcn.140008620
lea rdx, [0x14005f8aa]
lea rcx, [0x14001ddd8]
xor r8d, r8d
call fcn.140008620
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_lstrlenW]
lea r12, [0x14001dde0]
mov rcx, r12
movsxd rbx, eax
call qword [sym.imp.KERNEL32.dll_lstrlenW]
xor r9d, r9d
xor edx, edx
mov r11, rbx
movsxd rsi, eax
test ebx, ebx
jle 0x14000934d
xor r10d, r10d
xor r8d, r8d
test esi, esi
jle 0x1400092db
lea rbx, [rdx + rdx]
sub rbx, r12
add rbx, rbp
nop word [rax + rax]
movzx eax, word [r12 + r8*2]
lea rcx, [rbx + r8*2]
cmp word [rcx + r12], ax
jne 0x1400092db
inc r8
inc r10d
cmp r8, rsi
jl 0x1400092c0
cmp r10d, esi
jne 0x140009303
add rdx, rsi
add r9d, esi
cmp rdx, r11
jge 0x140009303
nop dword [rax + rax]
cmp word [rbp + rdx*2], 0x7c
je 0x140009334
inc rdx
inc r9d
cmp rdx, r11
jl 0x1400092f0
inc rdx
inc r9d
cmp rdx, r11
jl 0x1400092a3
jmp 0x14000934d
mov ecx, dword [0x14005f6a8]
movsxd rax, r9d
mov r15d, 1
cmp word [rbp + rax*2 - 2], 0x31
cmove ecx, r15d
mov dword [0x14005f6a8], ecx
jmp 0x140009248
mov ecx, dword [0x14005f8e8]
movsxd rax, r9d
cmp word [rbp + rax*2 - 2], 0x31
cmove ecx, r15d
mov dword [0x14005f8e8], ecx
lea rdx, [0x14005f8ec]
lea rcx, [0x14001dde8]
xor r8d, r8d
call fcn.140008620
lea rdx, [0x14005faea]
lea rcx, [0x14001ddf0]
xor r8d, r8d
call fcn.140008620
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_lstrlenW]
mov rcx, r14
movsxd rbx, eax
call qword [sym.imp.KERNEL32.dll_lstrlenW]
xor r9d, r9d
xor edx, edx
mov r11, rbx
movsxd rsi, eax
test ebx, ebx
jle 0x140009429
xor r10d, r10d
xor r8d, r8d
test esi, esi
jle 0x1400093db
lea rbx, [rdx + rdx]
sub rbx, r14
add rbx, rbp
nop word [rax + rax]
movzx eax, word [r14 + r8*2]
lea rcx, [rbx + r8*2]
cmp word [rcx + r14], ax
jne 0x1400093db
inc r8
inc r10d
cmp r8, rsi
jl 0x1400093c0
cmp r10d, esi
jne 0x140009403
add rdx, rsi
add r9d, esi
cmp rdx, r11
jge 0x140009403
nop dword [rax + rax]
cmp word [rbp + rdx*2], 0x7c
je 0x140009410
inc rdx
inc r9d
cmp rdx, r11
jl 0x1400093f0
inc rdx
inc r9d
cmp rdx, r11
jl 0x1400093a1
jmp 0x140009429
mov ecx, dword [0x14005fb28]
movsxd rax, r9d
cmp word [rbp + rax*2 - 2], 0x31
cmove ecx, r15d
mov dword [0x14005fb28], ecx
mov r14, qword [rsp + 0x38]
mov r12, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x60]
mov r15, qword [rsp + 0x30]
add rsp, 0x68
ret