Function at 0x1403a994e
Capabilities:
Encrypt data using speck

Disassembly:
push r15
test bl, r12b
push r14
test cx, cx
jmp 0x1403a9961
push r13
push r12
test dh, 0x19
clc
push rsi
btc si, 0x88
rcl sil, 0x3e
push rdi
rcr rdi, cl
bts si, si
mov di, 0x1330
push rbp
push rbx
sbb dil, cl
ror sil, cl
sub rsp, 0xa88
stc
shl rsi, 0xa6
sub rsi, rax
mov rsi, rcx
mov qword [rsp + 0x40], 0
btc rbp, 0xf9
movabs rbp, 0xe78235ad970d2b55
shr edi, cl
xadd dil, dil
sar di, 0x79
movabs rdi, 0x6cbb02d0d49b29be
test r15, r14
cmp dl, 1
jmp 0x1403a99d0
mov qword [rsp + 0x128], r8
jmp 0x1403a99dd
mov dword [rsp + 0x4c], r9d
jmp 0x1403a99e7
jne 0x1403a9aaa
movabs rax, 0xe7f735c197612b70
cmovg cx, r14w
not ch
mov qword [rsp + 0x130], rax
mov ah, 0x12
movzx ecx, bx
mov rax, rdi
setge ch
mov qword [rsp + 0x138], rax
bswap rcx
movzx cx, bpl
mov cx, cx
mov rcx, rbp
mov qword [rsp + 0x280], rcx
mov qword [rsp + 0x288], rax
movsx rax, bp
lea rax, [rsp + 0x280]
movaps xmm0, xmmword [rsp + 0x130]
jmp 0x1403a9a51
xorps xmm0, xmmword [rax]
movaps xmmword [rsp + 0x130], xmm0
lea rcx, [rsp + 0x200]
movsx r9, di
bswap r8w
lea r8, [rsp + 0x130]
mov r9b, dl
mov edx, 0x40
movsxd r9, r15d
mov r9, rsi
jmp 0x1403a9a87
call fcn.1403aa755
mov ecx, 0x13ff
neg r8b
xor edx, edx
movzx r8, r8w
bswap r8d
mov r8d, esi
jmp 0x1403a9aa5
jmp 0x1403a9d8f
mov ebx, edx
movsx ax, r9b
movabs rax, 0xe7ee358897752b65
mov qword [rsp + 0x130], rax
bswap ax
movabs rax, 0x6cbb02d0d4c329d2
jmp 0x1403a9ad5
mov qword [rsp + 0x138], rax
xchg al, ah
mov eax, esp
mov ah, 0x24
mov rax, rbp
jmp 0x1403a9aec
mov qword [rsp + 0x280], rax
jmp 0x1403a9aff
mov rax, rdi
mov qword [rsp + 0x288], rax
xchg al, ah
lahf
cmovne rax, r11
lea rax, [rsp + 0x280]
movaps xmm0, xmmword [rsp + 0x130]
xorps xmm0, xmmword [rax]
movaps xmmword [rsp + 0x130], xmm0
cwd
movsx cx, r15b
bswap r9w
lea rcx, [rsp + 0x200]
lea r8, [rsp + 0x130]
cwd
mov dl, 0
movsx r9, r11w
mov edx, 0x40
bswap r9w
jmp 0x1403a9b5d
mov r9, rsi
jmp 0x1403a9b65
call fcn.1403aa755
test bl, bl
jmp 0x1403a9b71
je 0x1403a9cf6
movzx eax, bl
cmp eax, 2
jmp 0x1403a9b82
jne 0x1403a9cfe
movabs r14, 0xcbf29ce484222325
mov ecx, esi
jmp 0x1403a9b99
call fcn.14011fde0
mov r8d, eax
sal dx, cl
neg r15w
sub ax, ax
mov rax, qword gs:[0x30]
btr ecx, 0
mov rax, qword [rax + 0x60]
rcl r15w, cl
seto dh
rcl r15d, 0x41
mov r11, qword [rax + 0x18]
add r11, 0x10
cdq
movsx edx, r12w
movabs rdx, 0x2cc10c8855a9a8cd
movsx r15, sp
movabs r15, 0x1d12a89b9e723ff5
movzx rcx, bx
mov ecx, 0x1bff
jmp 0x1403a9c08
cmp rax, rdx
jmp 0x1403a9c02
je 0x1403a9d22
mov r11, qword [r11]
rol r10b, 0xfa
sub r10b, r12b
movsxd r10, r14d
mov r10, qword [r11 + 0x30]
test r10, r10
jmp 0x1403a9c21
je 0x1403a9d6a
mov r12, qword [r11 + 0x60]
mov rbx, 0xffffffffffffffff
stc
nop word cs:[rax + rax]
cmp word [r12 + rbx*2 + 2], 0
jmp 0x1403a9c4b
lea rbx, [rbx + 1]
jne 0x1403a9c3f
mov rax, r14
test ecx, r10d
test rbx, rbx
je 0x1403a9bfa
xor esi, esi
cmovle bp, r15w
test bp, 0x35b4
bt di, sp
mov rbp, r14
nop word [rax + rax]
movzx eax, word [r12 + rsi*2]
bts r13w, r8w
movzx edi, cx
lea edi, [rax - 0x41]
lea r13d, [rax - 0x410]
add r9b, al
stc
ror r9b, 0xe8
lea r9d, [rax + 0x20]
cmp edx, 0x2f992ede
cmp r13w, 0x20
jmp 0x1403a9cb0
cmovb eax, r9d
cmp dh, 0x75
jmp 0x1403a9cbc
cmp di, 0x1a
cmovb eax, r9d
movzx eax, ax
jmp 0x1403a9ccc
xor rax, rbp
imul rax, r15
inc esi
mov rbp, rax
jmp 0x1403a9ce3
cmp rsi, rbx
jmp 0x1403a9ceb
jb 0x1403a9c7d
jmp 0x1403a9bfa
sub r13d, r13d
jmp 0x1403a9dc9
cmp bl, 3
movzx r8d, si
movsx cx, bh
movzx ecx, cx
cmovne r8d, esi
not ch
movsxd rcx, r11d
movsx ecx, ax
mov ecx, 0x13ff
jmp 0x1403a9d87
test r11, r11
xchg di, di
mov dil, 0xfd
cmove r10, r11
bswap edi
cmovns di, cx
mov rdx, r10
movzx rbp, sp
bswap bp
jmp 0x1403a9d44
movabs rbp, 0xe78235ad970d2b55
xchg rdi, rdi
movzx di, sil
movabs rdi, 0x6cbb02d0d49b29be
jmp 0x1403a9d65
jmp 0x1403a9d8f
movabs rbp, 0xe78235ad970d2b55
add eax, r12d
sbb al, dil
sal dil, cl
movabs rdi, 0x6cbb02d0d49b29be
sub edx, edx
test r10w, 0x123d
lea rax, [rsp + 0x40]
clc
test sil, al
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0
stc
xor r9d, r9d
jmp 0x1403a9db7
call qword [sym.imp.KERNEL32.dll_FormatMessageW]
mov r13, qword [rsp + 0x40]
stc
shld cx, r14w, 0x5d
lea rcx, [rsp + 0x280]
bts r8, r14
rol r8b, 0xda
mov r8d, 0x800
test dh, 0xd0
clc
xor edx, edx
jmp 0x1403a9dea
call fcn.14049dd9a
movabs rax, 0xe7ed35df977f2b10
mov r12b, spl
mov qword [rsp + 0x50], rax
movzx r15w, r9b
movzx rax, r12w
movabs rax, 0x6c9e02f0d4a129cc
mov qword [rsp + 0x58], rax
movabs rax, 0xbb83b115fb5723ec
movzx r15w, sil
mov r12w, 0xa00
movzx rbx, di
mov qword [rsp + 0x60], rax
movsxd r12, ecx
mov bx, 0x7288
cbw
movabs rax, 0xd2ef72cb161baac
mov qword [rsp + 0x68], rax
movsx r12, bx
cmovs eax, r8d
xchg rsi, rsi
movabs rax, 0x23396ef01c4484dc
bswap r15d
mov r15, 0x783a1cc8
movzx r14d, ax
mov qword [rsp + 0x70], rax
cbw
movabs rax, 0x17711b7cc255afae
mov qword [rsp + 0x78], rax
movabs rax, 0x314846d9144fae6f
movzx si, spl
movsxd rbx, r11d
mov qword [rsp + 0x80], rax
xchg bx, ax
not bx
cwde
movabs rax, 0x178dd9cfd41ab93e
mov r12w, 0x6b78
mov bl, r14b
mov qword [rsp + 0x88], rax
mov sil, 0x74
setno ah
mov r12b, dl
movabs rax, 0xafe3d510c4170ff7
mov bl, 0xa6
movzx esi, ax
mov qword [rsp + 0x90], rax
jmp 0x1403a9ee8
movabs rax, 0xf2b1d93b98f8762c
movzx si, r15b
cmovl rbx, rdi
mov qword [rsp + 0x98], rax
lahf
movabs rax, 0x9086a47a193ab849
movzx r12d, r9w
cmovno r12w, r9w
movsx r14d, sp
mov qword [rsp + 0xa0], rax
cwde
movzx eax, r11w
jmp 0x1403a9f2d
movabs rax, 0xf9f44acd0c6a853c
cmovns r12w, r10w
mov qword [rsp + 0xa8], rax
movabs rax, 0x46ec87c61fbaad11
movsx rbx, sp
not r15b
mov qword [rsp + 0xb0], rax
movsx r12d, si
sets sil
cmova bx, r9w
movabs rax, 0x5102c52d8dbf581e
movsxd rsi, r13d
setle sil
mov sil, 0xe
mov qword [rsp + 0xb8], rax
movsxd r12, r11d
bswap bx
movabs rax, 0x9f52a16fed4b976f
movzx rsi, r11w
mov r14w, 0x1c4a
movsx rsi, cx
mov qword [rsp + 0xc0], rax
movzx r15, r9w
movabs rax, 0xf6a5483bf0ec9ca3
movzx r12, si
movzx si, r8b
jmp 0x1403a9fc7
mov qword [rsp + 0xc8], rax
movabs rax, 0x60e699bcbdc17680
bswap ebx
jmp 0x1403a9fe0
mov qword [rsp + 0xd0], rax
not r12w
movabs rax, 0xbd6f0372efe2893d
movsx r14d, cx
jmp 0x1403a9fff
mov qword [rsp + 0xd8], rax
movabs rax, 0x98880c705ee3d44a
mov qword [rsp + 0xe0], rax
movsx r14d, ax
cdqe
movabs rax, 0x9b7661660ff4953f
movzx si, dil
xchg sil, bl
jmp 0x1403aa036
mov qword [rsp + 0xe8], rax
cmove r15, rdx
xchg sil, sil
movabs rax, 0x53d62999d3e90ae0
bswap si
sete r15b
jmp 0x1403aa05b
mov qword [rsp + 0xf0], rax
movsx r14, bx
movabs rax, 0xc69b1bd14864426
xchg r15w, r12w
bswap si
cmovge bx, r14w
mov qword [rsp + 0xf8], rax
jmp 0x1403aa091
movabs rax, 0x56abc9090122ed13
movzx bx, r13b
cmovne si, r12w
mov qword [rsp + 0x100], rax
movabs rax, 0xf54db3f725dd577b
mov bl, spl
not r14d
mov qword [rsp + 0x108], rax
movsx rbx, r11w
movabs rax, 0x12e9428a7f611679
jmp 0x1403aa0df
mov qword [rsp + 0x110], rax
cbw
cmova esi, r11d
movsxd rbx, r11d
movabs rax, 0x187f5c28d0b2d517
movsx esi, cx
mov qword [rsp + 0x118], rax
cmovg r12w, r13w
mov qword [rsp + 0x130], rbp
movsx r15d, sp
mov qword [rsp + 0x138], rdi
bswap ebx
movzx r14, r13w
cmovb si, r14w
movabs rbx, 0xbbeab153fb5d239f
movsx r14d, r15w
mov qword [rsp + 0x140], rbx
movsx eax, bp
movabs rsi, 0xd0ef716b104bac0
cdqe
mov qword [rsp + 0x148], rsi
movsx rax, r13w
movabs r14, 0x230f6ec11c7484f9
cbw
movsx r15, ax
mov al, r14b
mov qword [rsp + 0x150], r14
movabs r15, 0x177b1b24c239afc2
movzx r12w, r15b
mov qword [rsp + 0x158], r15
not rax
jmp 0x1403aa194
movabs rax, 0x312d46b71426ae23
bswap r12w
mov qword [rsp + 0x160], rax
mov r12b, 0xa3
lahf
movsx r12d, dx
movabs rax, 0x17e9d9ead43ab904
mov qword [rsp + 0x168], rax
movabs rax, 0xaf90d535c41d0ffd
mov qword [rsp + 0x170], rax
mov r12w, 0x567
jmp 0x1403aa1e4
movabs rax, 0xf2ded97898f27626
movsx r12d, r10w
movsx r12, r14w
movzx r12w, r10b
mov qword [rsp + 0x178], rax
movsxd rax, esi
movabs rax, 0x90e5a41b194eb827
jmp 0x1403aa21d
mov qword [rsp + 0x180], rax
cbw
movabs rax, 0xf9814abe0c4a8548
cmova r12d, r10d
movzx r12d, cx
mov qword [rsp + 0x188], rax
cbw
bswap ax
movabs rax, 0x469e87a91fcaad61
mov qword [rsp + 0x190], rax
movsxd r12, ebp
jmp 0x1403aa265
movabs rax, 0x516cc54c8d9f586a
movsx r12w, r12b
movzx r12d, r15w
bswap r12w
mov qword [rsp + 0x198], rax
movsx r12w, bl
cbw
setp r12b
movabs rax, 0x9f20a11fed6b970b
mov qword [rsp + 0x1a0], rax
movabs rax, 0xf6c14852f09a9ccc
movsx r12w, r14b
setg r12b
xchg r12b, r12b
mov qword [rsp + 0x1a8], rax
movabs rax, 0x60c699ddbde176e5
movsx r12d, r8w
setns r12b
mov qword [rsp + 0x1b0], rax
movabs rax, 0xbd0a0300ef81894e
jmp 0x1403aa2e8
mov qword [rsp + 0x1b8], rax
mov r12b, 0xfa
cmovp r12w, si
mov r12b, sil
movabs rax, 0x98e00c035e8dd42f
mov qword [rsp + 0x1c0], rax
movsx ax, bh
setp r12b
movabs rax, 0x9b0161460f809550
mov r12w, 0x320f
mov qword [rsp + 0x1c8], rax
cdqe
cbw
movabs rax, 0x53f629f1d39d0a89
mov qword [rsp + 0x1d0], rax
movabs rax, 0xc1ab1d414ee4452
jmp 0x1403aa354
mov qword [rsp + 0x1d8], rax
movabs rax, 0x56cdc967014bed33
mov qword [rsp + 0x1e0], rax
not ax
movabs rax, 0xf52cb39a25af5714
mov qword [rsp + 0x1e8], rax
not eax
cwde
cmovbe eax, edx
movabs rax, 0x128742e57f08160d
not r12b
setne r12b
mov qword [rsp + 0x1f0], rax
not r12d
cwde
movabs rax, 0x187f5c28d0b2d536
xchg r12d, r12d
jmp 0x1403aa3bc
mov qword [rsp + 0x1f8], rax
mov r12w, r8w
lea r12, [rsp + 0x130]
cwde
bswap ax
movsx rax, sp
mov rax, r12
movaps xmm0, xmmword [rsp + 0x50]
xorps xmm0, xmmword [rax]
movaps xmmword [rsp + 0x50], xmm0
jmp 0x1403aa3ed
movaps xmm0, xmmword [rsp + 0x60]
xorps xmm0, xmmword [rax + 0x10]
movaps xmmword [rsp + 0x60], xmm0
jmp 0x1403aa400
movaps xmm0, xmmword [rsp + 0x70]
jmp 0x1403aa40a
xorps xmm0, xmmword [rax + 0x20]
movaps xmmword [rsp + 0x70], xmm0
movaps xmm0, xmmword [rsp + 0x80]
xorps xmm0, xmmword [rax + 0x30]
movaps xmmword [rsp + 0x80], xmm0
movaps xmm0, xmmword [rsp + 0x90]
xorps xmm0, xmmword [rax + 0x40]
movaps xmmword [rsp + 0x90], xmm0
jmp 0x1403aa440
movaps xmm0, xmmword [rsp + 0xa0]
jmp 0x1403aa44d
xorps xmm0, xmmword [rax + 0x50]
movaps xmmword [rsp + 0xa0], xmm0
jmp 0x1403aa45e
movaps xmm0, xmmword [rsp + 0xb0]
xorps xmm0, xmmword [rax + 0x60]
movaps xmmword [rsp + 0xb0], xmm0
movaps xmm0, xmmword [rsp + 0xc0]
jmp 0x1403aa47f
xorps xmm0, xmmword [rax + 0x70]
movaps xmmword [rsp + 0xc0], xmm0
jmp 0x1403aa490
movaps xmm0, xmmword [rsp + 0xd0]
jmp 0x1403aa49d
xorps xmm0, xmmword [rax + 0x80]
movaps xmmword [rsp + 0xd0], xmm0
jmp 0x1403aa4b1
movaps xmm0, xmmword [rsp + 0xe0]
jmp 0x1403aa4be
xorps xmm0, xmmword [rax + 0x90]
movaps xmmword [rsp + 0xe0], xmm0
jmp 0x1403aa4d2
movaps xmm0, xmmword [rsp + 0xf0]
jmp 0x1403aa4df
xorps xmm0, xmmword [rax + 0xa0]
movaps xmmword [rsp + 0xf0], xmm0
jmp 0x1403aa4f3
movaps xmm0, xmmword [rsp + 0x100]
jmp 0x1403aa500
xorps xmm0, xmmword [rax + 0xb0]
movaps xmmword [rsp + 0x100], xmm0
movaps xmm0, xmmword [rsp + 0x110]
xorps xmm0, xmmword [rax + 0xc0]
movaps xmmword [rsp + 0x110], xmm0
jmp 0x1403aa52b
mov qword [rsp + 0x30], r13
movzx edx, r8w
seta dh
mov eax, dword [rsp + 0x4c]
mov dword [rsp + 0x28], eax
movsx r8w, r9b
mov rax, qword [rsp + 0x128]
mov qword [rsp + 0x20], rax
mov ch, 0x62
sets dl
cmovno rcx, rsp
lea r8, [rsp + 0x50]
lea r9, [rsp + 0x200]
mov r13w, r12w
movzx rdx, bp
movsxd rcx, r15d
mov edx, 0x400
movzx cx, spl
movzx r13, cx
movsx r13, r15w
lea r13, [rsp + 0x280]
movzx cx, r12b
xchg ch, cl
movsx cx, dh
mov rcx, r13
call fcn.1403aa755
mov rcx, qword [rsp + 0x40]
jmp 0x1403aa5aa
call qword [sym.imp.KERNEL32.dll_LocalFree]
movabs rax, 0xe7e335d9976c2b13
jmp 0x1403aa5bf
mov qword [rsp + 0x50], rax
mov ah, 0xd
setge al
movabs rax, 0x6cc902b5d4bb29d2
mov qword [rsp + 0x58], rax
sete al
not al
movabs rax, 0xbbcab121fb3223ed
jmp 0x1403aa5ed
mov qword [rsp + 0x60], rax
movabs rax, 0xd7bf775b167baaf
jmp 0x1403aa601
mov qword [rsp + 0x68], rax
movsx rax, r9w
mov rax, 0x6652603f
movzx eax, cx
movabs rax, 0x236b6ea41c06848b
jmp 0x1403aa623
mov qword [rsp + 0x70], rax
bswap ax
movabs rax, 0x177b1b24c239afe3
jmp 0x1403aa63a
mov qword [rsp + 0x78], rax
jmp 0x1403aa644
mov qword [rsp + 0x130], rbp
jmp 0x1403aa651
mov qword [rsp + 0x138], rdi
jmp 0x1403aa65e
mov qword [rsp + 0x140], rbx
mov qword [rsp + 0x148], rsi
jmp 0x1403aa673
mov qword [rsp + 0x150], r14
jmp 0x1403aa680
mov qword [rsp + 0x158], r15
jmp 0x1403aa68d
movaps xmm0, xmmword [rsp + 0x50]
jmp 0x1403aa697
xorps xmm0, xmmword [r12]
movaps xmmword [rsp + 0x50], xmm0
movaps xmm0, xmmword [rsp + 0x60]
xorps xmm0, xmmword [r12 + 0x10]
movaps xmmword [rsp + 0x60], xmm0
jmp 0x1403aa6b6
movaps xmm0, xmmword [rsp + 0x70]
jmp 0x1403aa6c0
xorps xmm0, xmmword [r12 + 0x20]
movaps xmmword [rsp + 0x70], xmm0
lea r8, [rsp + 0x50]
stc
sub ecx, ecx
movsx dx, bpl
movzx r9w, cl
mov rdx, r13
movzx r9, r9w
movsx r9d, r11w
mov r9d, 0x10
jmp 0x1403aa6f3
call qword [sym.imp.USER32.dll_MessageBoxW]
mov eax, dword [0x1400dd058]
shr r10w, 0xcb
neg r10w
mov r10, 0xffffffffffffffff
stc
xor edx, edx
jmp 0x1403aa717
syscall
add rsp, 0xa88
pop rbx
jmp 0x1403aa726
pop rbp
movsxd r12, r11d
bswap r14w
pop rdi
pop rsi
movsx r12d, r14w
movzx r13w, spl
pop r12
xchg r13b, r13b
pop r13
movsxd r15, edx
movsx r15, si
pop r14
movsx r15, si
pop r15
jmp 0x1403aa754
ret