Function at 0x140369490
Capabilities:
Encrypt data using speck

Disassembly:
push r15
test rbx, 0x1ae50796
push r14
bts r15w, cx
push r13
push r12
jmp 0x1403694a9
push rsi
shr r13d, 0x6e
xor r13w, r13w
not r13w
push rdi
btc rdi, 0xe5
push rbp
rol dil, 0xa0
push rbx
sub rsp, 0xa88
bt si, 0xb5
mov ebp, r9d
mov sil, r11b
mov rdi, r8
mov sil, r12b
btc rsi, rax
mov rsi, rcx
setg r13b
mov qword [rsp + 0x40], 0
or r15w, 0x21b0
btr r13w, r13w
rol r15d, 0xfa
movabs r15, 0xb9a16afd8d3fbf35
shld r13w, bp, 0x4f
movzx r13d, r11w
movabs r13, 0x1426e200639e264a
cmp dl, 1
mov qword [rsp + 0x128], r8
jmp 0x14036952b
mov dword [rsp + 0x4c], r9d
jmp 0x140369535
jne 0x1403695eb
movabs rax, 0xb9d46a918d53bf10
mov qword [rsp + 0x130], rax
mov rax, r13
movzx ecx, r9w
movsx rcx, r13w
xchg ecx, ecx
mov qword [rsp + 0x138], rax
movsx ecx, r11w
jmp 0x14036956b
mov rcx, r15
jmp 0x140369573
mov qword [rsp + 0x280], rcx
jmp 0x140369580
mov qword [rsp + 0x288], rax
movsx eax, r12w
movzx eax, di
lea rax, [rsp + 0x280]
movaps xmm0, xmmword [rsp + 0x130]
jmp 0x1403695a4
xorps xmm0, xmmword [rax]
movaps xmmword [rsp + 0x130], xmm0
cqo
lea rcx, [rsp + 0x200]
lea r8, [rsp + 0x130]
mov edx, 0x40
mov r9, rsi
jmp 0x1403695ce
call fcn.14036a2a4
mov ecx, 0x13ff
movzx r8d, sp
sub edx, edx
mov r8d, esi
jmp 0x1403695e6
jmp 0x1403698e6
mov ebx, edx
mov ax, 0x5cec
cmovbe eax, r8d
movsx rax, r13w
movabs rax, 0xb9cd6ad88d47bf05
mov qword [rsp + 0x130], rax
movzx ax, ah
movsx ax, spl
movsx eax, bx
movabs rax, 0x1426e20063c62626
jmp 0x140369626
mov qword [rsp + 0x138], rax
xchg al, ah
mov al, sil
cbw
mov rax, r15
jmp 0x14036963d
mov qword [rsp + 0x280], rax
cbw
not ah
movsx rax, bp
mov rax, r13
jmp 0x140369655
mov qword [rsp + 0x288], rax
bswap rax
lea rax, [rsp + 0x280]
jmp 0x14036966d
movaps xmm0, xmmword [rsp + 0x130]
jmp 0x14036967a
xorps xmm0, xmmword [rax]
movaps xmmword [rsp + 0x130], xmm0
lea rcx, [rsp + 0x200]
cmovle dx, r15w
lea r8, [rsp + 0x130]
movsx rdx, r8w
mov edx, 0x40
setnp r9b
bswap r9
mov r9, rsi
jmp 0x1403696b2
call fcn.14036a2a4
test bl, bl
jmp 0x1403696be
je 0x1403698a1
cmp bl, 2
jmp 0x1403696cc
jne 0x1403698ad
mov ecx, esi
jmp 0x1403696d9
call sub.ntdll.dll_RtlNtStatusToDosError
mov r8d, eax
inc cx
shl cl, 0x1c
rol r11, cl
mov rax, qword gs:[0x30]
rol r11b, cl
mov rax, qword [rax + 0x60]
mov rax, qword [rax + 0x18]
movzx cx, dh
setl r11b
mov r14, qword [rax + 0x10]
and r11b, bpl
mov r11, qword [r14 + 0x30]
bt cx, 0xc6
stc
mov ecx, 0x1bff
clc
sub edx, edx
cmp r10d, r13d
test r11, r11
jmp 0x14036972a
je 0x1403698e6
movabs r13, 0xcbf29ce484222325
cmovp r15d, r13d
setnp r15b
jmp 0x140369747
movabs r15, 0x1d12a89b9e723ff5
jmp 0x140369756
jmp 0x14036976e
mov r14, qword [r14]
inc r11b
mov r11, qword [r14 + 0x30]
test r11, r11
je 0x14036987e
mov r12, qword [r14 + 0x60]
stc
or bpl, bpl
sub bp, r8w
mov rbp, 0xffffffffffffffff
jmp 0x140369787
nop dword [rax + rax]
cmp word [r12 + rbp*2 + 2], 0
lea rbp, [rbp + 1]
jmp 0x14036979c
jne 0x14036978c
test rbp, rbp
jmp 0x1403697aa
je 0x14036975b
xor eax, eax
mov rbx, r13
mov r9b, 0x10
cmovnp r10w, sp
nop word [rax + rax]
sal si, cl
mov esi, 0x21130a0d
sal r9w, 0x76
movzx esi, word [r12 + rax*2]
cmc
lea edi, [rsi - 0x41]
mov r10b, 0xc3
rcr r9w, 0x63
bsf r9, rbp
lea r9d, [rsi - 0x410]
rol r10b, 0x2d
lea r10d, [rsi + 0x20]
cmp r9w, 0x20
jmp 0x140369801
cmovb esi, r10d
cmp di, 0x1a
setns dil
mov dil, bl
cmovb esi, r10d
mov di, 0x6934
bts rdi, rax
movzx edi, si
cmp r15b, 0x27
xor rbx, rdi
test dil, r9b
stc
cmp edi, 0x5e7c14a7
imul rbx, r15
test r13b, 0x3f
add eax, 1
stc
cmp rax, rbp
jb 0x1403697d3
movabs rax, 0x2cc10c8855a9a8cd
stc
cmp rbx, rax
jmp 0x140369858
jne 0x14036975b
test r14, r14
setnp r15b
movsx dx, al
cmove r11, r14
jmp 0x140369876
mov rdx, r11
cmovge r15w, si
movabs r13, 0x1426e200639e264a
movzx r15w, r10b
movabs r15, 0xb9a16afd8d3fbf35
jmp 0x14036989c
jmp 0x1403698e6
sub edi, edi
jmp 0x1403698a8
jmp 0x140369918
cmp bl, 3
movzx r8, r12w
movsx rcx, r10w
movzx r8d, si
movsx ecx, bx
movsx cx, bh
lahf
cmovne r8d, esi
shrd cx, ax, 0xe1
mov ecx, 0x13ff
sar al, 0x36
movsx ax, r10b
sub edx, edx
movsxd rax, r12d
sub ax, r13w
test rdi, rbp
lea rax, [rsp + 0x40]
mov qword [rsp + 0x20], rax
stc
mov qword [rsp + 0x30], 0
cmp r13b, r11b
mov dword [rsp + 0x28], 0
sub r9d, r9d
jmp 0x14036990d
call qword [sym.imp.KERNEL32.dll_FormatMessageW]
mov rdi, qword [rsp + 0x40]
lea rcx, [rsp + 0x280]
mov r8d, 0x800
cmp r10w, 0x765e
clc
test r13b, sil
xor edx, edx
call fcn.1404580e6
movabs rax, 0xb9ce6a8f8d4dbf70
seta r12b
mov qword [rsp + 0x50], rax
movsxd rbp, r13d
movzx rax, r14w
movabs rax, 0x1403e22063a42638
movsx ebx, r10w
not r14b
mov qword [rsp + 0x58], rax
lahf
cdqe
sets r12b
movabs rax, 0xcb5d0299bf2221a4
not r14b
mov qword [rsp + 0x60], rax
movzx ebx, r13w
bswap r12w
jmp 0x14036998d
movabs rax, 0x8693ba283324bf90
mov r12b, 0x20
mov qword [rsp + 0x68], rax
movzx eax, r11w
cbw
movabs rax, 0x457dec00005c919c
mov qword [rsp + 0x70], rax
movsx rbp, r8w
movzx ebp, r15w
mov rax, r14
movabs rax, 0x468b1e4c1fa54152
mov qword [rsp + 0x78], rax
movabs rax, 0x7ac8b86d71102657
seto r14b
not r12w
movsx ebx, r13w
mov qword [rsp + 0x80], rax
mov sil, dil
movsx r14d, r15w
bswap bx
movabs rax, 0xfb47767395c41a8a
not bpl
cmovg r14w, dx
mov qword [rsp + 0x88], rax
movsx rbx, cx
movabs rax, 0xcd8278008133be97
mov qword [rsp + 0x90], rax
movzx r12, r12w
movsx rsi, r11w
movabs rax, 0x1ca5c72bccadc0f8
bswap bx
mov qword [rsp + 0x98], rax
bswap bx
cbw
setge bpl
movabs rax, 0xc3cc3146847de511
bswap r12w
movsxd r14, r10d
mov bp, 0x4b7b
mov qword [rsp + 0xa0], rax
cwde
movzx r14d, si
movabs rax, 0x9f64bfc9173c4810
mov qword [rsp + 0xa8], rax
movabs rax, 0x4150d5f673707c51
movsx r12, ax
xchg r14w, bp
movsx esi, bp
mov qword [rsp + 0xb0], rax
movabs rax, 0x5dcfef5d4a28f3d2
movzx rbp, si
mov qword [rsp + 0xb8], rax
setb r12b
movsx r14d, r14w
movabs rax, 0x67dbbafbfe100227
movsx esi, si
sete sil
bswap rbp
mov qword [rsp + 0xc0], rax
mov r14w, 0x474
cmovo rsi, rbx
movsx r12w, spl
movabs rax, 0xf578417da9e5597
setno bpl
movsx ebx, r11w
jmp 0x140369afc
mov qword [rsp + 0xc8], rax
not r12b
cwde
cdqe
movabs rax, 0xeaa8264cfb711aa0
jmp 0x140369b1f
mov qword [rsp + 0xd0], rax
movabs rax, 0x3b61994203fd8ca9
movsx bp, r13b
jmp 0x140369b40
mov qword [rsp + 0xd8], rax
movabs rax, 0x94bf9d7cc7f17a82
not r12b
movzx bp, r10b
movsx r12, r10w
mov qword [rsp + 0xe0], rax
movabs rax, 0x649149622fcd4c63
cmovae bx, cx
movzx r12w, r14b
movsx bp, bpl
mov qword [rsp + 0xe8], rax
movabs rax, 0x15699089838be8a0
movzx ebp, dx
movzx r14w, r12b
mov qword [rsp + 0xf0], rax
movabs rax, 0xe9483add16cf93a
not bp
bswap esi
mov qword [rsp + 0xf8], rax
movabs rax, 0xcc5fecdd8fa1510b
movzx rsi, dx
cmova r12d, r9d
mov qword [rsp + 0x100], rax
mov esi, eax
movabs rax, 0x5e78e46bcf3290af
mov ebx, 0x26be1572
mov qword [rsp + 0x108], rax
movsxd r14, edi
mov r12, 0x2717c74
cbw
movabs rax, 0xd3b236ba314f6159
not bp
jmp 0x140369c0f
mov qword [rsp + 0x110], rax
movzx r12w, r12b
cwde
jmp 0x140369c22
movabs rax, 0xcf11a498cf8bb1a3
bswap si
mov qword [rsp + 0x118], rax
xchg bpl, al
seto al
mov qword [rsp + 0x130], r15
jmp 0x140369c4a
mov qword [rsp + 0x138], r13
bswap bp
movabs rbx, 0xcb3402dfbf2821d7
cbw
movzx bp, r13b
movzx r14d, r10w
mov qword [rsp + 0x140], rbx
movabs rsi, 0x86b3ba123341bffc
mov qword [rsp + 0x148], rsi
movsx ebp, bp
movabs r14, 0x454bec31006c91b9
jmp 0x140369c9d
mov qword [rsp + 0x150], r14
cbw
setp bpl
movsxd rax, esi
mov rbp, r15
movabs r15, 0x46811e141fc9413e
cwde
cdqe
not eax
mov qword [rsp + 0x158], r15
mov eax, 0x51a90836
mov r12b, r14b
movabs rax, 0x7aadb8037179261b
not r12w
mov r12d, 0x688b7dbe
mov qword [rsp + 0x160], rax
movabs rax, 0xfb23765695e41ab0
movsx r12w, r11b
movzx r12w, r15b
mov qword [rsp + 0x168], rax
movabs rax, 0xcdf178258139be9d
mov qword [rsp + 0x170], rax
cwde
lahf
not r12d
movabs rax, 0x1ccac768cca7c0f2
bswap r12w
mov qword [rsp + 0x178], rax
jmp 0x140369d3b
movabs rax, 0xc3af31278409e57f
bswap r12
cmovs r12w, si
mov qword [rsp + 0x180], rax
movzx rax, r9w
cdqe
movsx r12w, bpl
movabs rax, 0x9f11bfba171c4864
mov qword [rsp + 0x188], rax
movzx rax, di
cdqe
movsx r12w, al
movabs rax, 0x4122d59973007c21
movsxd r12, r10d
movzx r12, r12w
mov qword [rsp + 0x190], rax
movabs rax, 0x5da1ef3c4a08f3a6
bswap r12d
cmovns r12d, r10d
mov qword [rsp + 0x198], rax
xchg r12b, r12b
setg r12b
movsx r12, r14w
movabs rax, 0x67a9ba8bfe300243
bswap r12w
movsx r12, r11w
setbe r12b
mov qword [rsp + 0x1a0], rax
cmovbe r12w, si
bswap r12
movabs rax, 0xf33847edae855f8
mov qword [rsp + 0x1a8], rax
movabs rax, 0xea88262dfb511ac5
mov r12w, si
mov qword [rsp + 0x1b0], rax
movzx eax, r9w
movsx r12, r10w
movabs rax, 0x3b049930039e8cda
movzx r12, r14w
movsx r12w, dil
mov qword [rsp + 0x1b8], rax
cwde
mov rax, 0x4eab3d25
movabs rax, 0x94d79d0fc79f7ae7
mov qword [rsp + 0x1c0], rax
movabs rax, 0x64e649422fb94c0c
movsx r12d, dx
mov qword [rsp + 0x1c8], rax
mov r12d, r10d
movabs rax, 0x154990e183ffe8c9
mov qword [rsp + 0x1d0], rax
movsx ax, r11b
lahf
movabs rax, 0xee783c4d104f94e
mov qword [rsp + 0x1d8], rax
jmp 0x140369e93
movabs rax, 0xcc39ecb38fc8512b
bswap r12w
movzx r12d, r14w
cmovle r12w, r11w
mov qword [rsp + 0x1e0], rax
movabs rax, 0x5e19e406cf4090c0
bswap r12w
mov qword [rsp + 0x1e8], rax
cmovae r12w, dx
xchg r12b, al
movzx ax, dil
movabs rax, 0xd3dc36d53126612d
not r12b
setno r12b
mov qword [rsp + 0x1f0], rax
cdqe
bswap ax
movabs rax, 0xcf11a498cf8bb182
movsx r12, si
mov r12b, 0xea
mov qword [rsp + 0x1f8], rax
xchg ah, al
movzx eax, r13w
movsxd rax, r11d
lea r12, [rsp + 0x130]
mov rax, r12
movaps xmm0, xmmword [rsp + 0x50]
xorps xmm0, xmmword [rax]
movaps xmmword [rsp + 0x50], xmm0
jmp 0x140369f32
movaps xmm0, xmmword [rsp + 0x60]
xorps xmm0, xmmword [rax + 0x10]
movaps xmmword [rsp + 0x60], xmm0
jmp 0x140369f45
movaps xmm0, xmmword [rsp + 0x70]
jmp 0x140369f4f
xorps xmm0, xmmword [rax + 0x20]
movaps xmmword [rsp + 0x70], xmm0
jmp 0x140369f5d
movaps xmm0, xmmword [rsp + 0x80]
xorps xmm0, xmmword [rax + 0x30]
movaps xmmword [rsp + 0x80], xmm0
jmp 0x140369f76
movaps xmm0, xmmword [rsp + 0x90]
xorps xmm0, xmmword [rax + 0x40]
movaps xmmword [rsp + 0x90], xmm0
jmp 0x140369f8f
movaps xmm0, xmmword [rsp + 0xa0]
jmp 0x140369f9c
xorps xmm0, xmmword [rax + 0x50]
movaps xmmword [rsp + 0xa0], xmm0
jmp 0x140369fad
movaps xmm0, xmmword [rsp + 0xb0]
jmp 0x140369fba
xorps xmm0, xmmword [rax + 0x60]
movaps xmmword [rsp + 0xb0], xmm0
jmp 0x140369fcb
movaps xmm0, xmmword [rsp + 0xc0]
jmp 0x140369fd8
xorps xmm0, xmmword [rax + 0x70]
movaps xmmword [rsp + 0xc0], xmm0
jmp 0x140369fe9
movaps xmm0, xmmword [rsp + 0xd0]
jmp 0x140369ff6
xorps xmm0, xmmword [rax + 0x80]
movaps xmmword [rsp + 0xd0], xmm0
jmp 0x14036a00a
movaps xmm0, xmmword [rsp + 0xe0]
jmp 0x14036a017
xorps xmm0, xmmword [rax + 0x90]
movaps xmmword [rsp + 0xe0], xmm0
jmp 0x14036a02b
movaps xmm0, xmmword [rsp + 0xf0]
xorps xmm0, xmmword [rax + 0xa0]
movaps xmmword [rsp + 0xf0], xmm0
jmp 0x14036a047
movaps xmm0, xmmword [rsp + 0x100]
jmp 0x14036a054
xorps xmm0, xmmword [rax + 0xb0]
movaps xmmword [rsp + 0x100], xmm0
jmp 0x14036a068
movaps xmm0, xmmword [rsp + 0x110]
jmp 0x14036a075
xorps xmm0, xmmword [rax + 0xc0]
movaps xmmword [rsp + 0x110], xmm0
mov qword [rsp + 0x30], rdi
mov eax, dword [rsp + 0x4c]
mov dword [rsp + 0x28], eax
cqo
bswap ax
mov rax, qword [rsp + 0x128]
bswap r8d
cwd
movzx rdx, di
mov qword [rsp + 0x20], rax
cdq
movsx r9w, dl
mov ecx, r12d
lea r8, [rsp + 0x50]
movsx cx, dl
movzx dx, bl
seto dil
lea r9, [rsp + 0x200]
mov edx, 0x400
mov dil, spl
mov edi, 0x3dda10d3
lea rdi, [rsp + 0x280]
mov rcx, rdi
jmp 0x14036a0eb
call fcn.14036a2a4
mov rcx, qword [rsp + 0x40]
jmp 0x14036a0fa
call qword [sym.imp.KERNEL32.dll_LocalFree]
movabs rax, 0xb9c06a898d5ebf73
jmp 0x14036a10f
mov qword [rsp + 0x50], rax
movsx eax, r12w
mov al, bpl
movabs rax, 0x1454e26563be2626
mov qword [rsp + 0x58], rax
movabs rax, 0xcb1402adbf4721a5
mov qword [rsp + 0x60], rax
nop
movabs rax, 0x86c6ba713322bf93
jmp 0x14036a149
mov qword [rsp + 0x68], rax
movzx ax, r10b
cmovno rax, rax
movsx rax, bx
movabs rax, 0x452fec54001e91cb
jmp 0x14036a16a
mov qword [rsp + 0x70], rax
cwde
movzx eax, di
movabs rax, 0x46811e141fc9411f
jmp 0x14036a182
mov qword [rsp + 0x78], rax
jmp 0x14036a18c
mov qword [rsp + 0x130], rbp
jmp 0x14036a199
mov qword [rsp + 0x138], r13
jmp 0x14036a1a6
mov qword [rsp + 0x140], rbx
mov qword [rsp + 0x148], rsi
jmp 0x14036a1bb
mov qword [rsp + 0x150], r14
jmp 0x14036a1c8
mov qword [rsp + 0x158], r15
jmp 0x14036a1d5
movaps xmm0, xmmword [rsp + 0x50]
xorps xmm0, xmmword [r12]
movaps xmmword [rsp + 0x50], xmm0
movaps xmm0, xmmword [rsp + 0x60]
jmp 0x14036a1ee
xorps xmm0, xmmword [r12 + 0x10]
movaps xmmword [rsp + 0x60], xmm0
jmp 0x14036a1fe
movaps xmm0, xmmword [rsp + 0x70]
xorps xmm0, xmmword [r12 + 0x20]
movaps xmmword [rsp + 0x70], xmm0
lea r8, [rsp + 0x50]
xor dl, 0xe
and r9b, 0x35
sub dl, bl
sub ecx, ecx
cdq
movzx dx, r11b
movsx edx, bx
mov rdx, rdi
not r9b
mov r9d, 0x10
jmp 0x14036a238
call qword [sym.imp.USER32.dll_MessageBoxW]
mov eax, dword [0x1400da058]
add r10b, cl
cmovo r10w, r9w
mov r10, 0xffffffffffffffff
test r9w, r11w
clc
xor edx, edx
jmp 0x14036a25f
syscall
add rsp, 0xa88
not rbx
setne r13b
pop rbx
setle sil
pop rbp
xchg r14b, r13b
movzx si, r8b
bswap r12w
pop rdi
not r15b
pop rsi
pop r12
pop r13
not r14w
movsx r15d, r13w
movsx r14w, bl
pop r14
bswap r15d
pop r15
jmp 0x14036a2a3
ret