Function at 0x1403aa1a5
Capabilities:
Encrypt data using speck

Disassembly:
push r15
push r14
cmc
stc
push r13
push r12
push rsi
adc si, 0x3599
shr si, 0xf
push rdi
add si, 0x11e2
xadd esi, edi
push rbp
btc esi, 0x21
btr edi, 0x12
shr ebp, cl
push rbx
sal ebp, cl
sub rsp, 0xa88
sbb sil, r12b
mov rsi, rcx
add di, r8w
inc rbp
mov qword [rsp + 0x40], 0
adc edi, ebx
mov bpl, dl
movabs rbp, 0xe78235ad970d2b55
sub di, 0x32d1
movabs rdi, 0x6cbb02d0d49b29be
clc
cmp dl, 1
jmp 0x1403aa214
mov qword [rsp + 0x128], r8
jmp 0x1403aa221
mov dword [rsp + 0x4c], r9d
jmp 0x1403aa22b
jne 0x1403aa2f6
movabs rax, 0xe7f735c197612b70
movzx rcx, r10w
mov cl, r10b
not cx
mov qword [rsp + 0x130], rax
cdqe
sete al
movzx cx, bh
mov rax, rdi
mov cl, ah
bswap cx
movsxd rcx, r9d
mov qword [rsp + 0x138], rax
movsx cx, dl
movzx rcx, r10w
setns cl
mov rcx, rbp
jmp 0x1403aa27c
mov qword [rsp + 0x280], rcx
jmp 0x1403aa289
mov qword [rsp + 0x288], rax
lea rax, [rsp + 0x280]
jmp 0x1403aa29e
movaps xmm0, xmmword [rsp + 0x130]
xorps xmm0, xmmword [rax]
movaps xmmword [rsp + 0x130], xmm0
cwd
lea rcx, [rsp + 0x200]
cqo
not r9w
lea r8, [rsp + 0x130]
mov edx, 0x40
bswap r9w
movsxd r9, r15d
mov r9, rsi
jmp 0x1403aa2dd
call fcn.1403ab080
mov ecx, 0x13ff
xor edx, edx
mov r8d, esi
jmp 0x1403aa2f1
jmp 0x1403aa631
mov ebx, edx
cdqe
movsx eax, si
movabs rax, 0xe7ee358897752b65
mov qword [rsp + 0x130], rax
cbw
movabs rax, 0x6cbb02d0d4c329d2
jmp 0x1403aa320
mov qword [rsp + 0x138], rax
lahf
mov rax, rbp
jmp 0x1403aa331
mov qword [rsp + 0x280], rax
not al
movsxd rax, edx
bswap eax
mov rax, rdi
jmp 0x1403aa348
mov qword [rsp + 0x288], rax
cwde
movzx rax, dx
lea rax, [rsp + 0x280]
jmp 0x1403aa362
movaps xmm0, xmmword [rsp + 0x130]
xorps xmm0, xmmword [rax]
movaps xmmword [rsp + 0x130], xmm0
lea rcx, [rsp + 0x200]
movzx r8, r9w
lea r8, [rsp + 0x130]
cmovnp edx, esi
setge dh
movsx edx, r15w
mov edx, 0x40
not r9b
mov r9w, 0x6d78
movsx r9, sp
mov r9, rsi
jmp 0x1403aa3ac
call fcn.1403ab080
test bl, bl
jmp 0x1403aa3b8
je 0x1403aa58e
movzx eax, bl
cmp r15w, 0x66c4
cmp eax, 2
jmp 0x1403aa3cf
jne 0x1403aa59b
movabs r14, 0xcbf29ce484222325
not rcx
mov ecx, esi
jmp 0x1403aa3e9
call sub.ntdll.dll_RtlNtStatusToDosError
mov r8d, eax
sub r11w, 0x7d70
cdq
or ax, 0x6c52
mov rax, qword gs:[0x30]
rcr edx, cl
shr cl, 0xee
mov rax, qword [rax + 0x60]
movzx ecx, si
ror r11d, 0xdb
sbb r15, r10
mov r11, qword [rax + 0x18]
sbb r15b, r11b
cdq
inc r15w
add r11, 0x10
setbe ch
cwd
movabs rdx, 0x2cc10c8855a9a8cd
jmp 0x1403aa446
movabs r15, 0x1d12a89b9e723ff5
jmp 0x1403aa45b
mov ecx, 0x1bff
jmp 0x1403aa465
jmp 0x1403aa478
cmp rax, rdx
jmp 0x1403aa472
je 0x1403aa5d2
mov r11, qword [r11]
sub r10b, 0x8f
sar r10w, cl
bts r10d, eax
mov r10, qword [r11 + 0x30]
test r10, r10
jmp 0x1403aa493
je 0x1403aa612
mov r12, qword [r11 + 0x60]
sbb bx, r12w
movzx ebx, r11w
mov rbx, 0xffffffffffffffff
nop word cs:[rax + rax]
cmp word [r12 + rbx*2 + 2], 0
jmp 0x1403aa4c4
lea rbx, [rbx + 1]
jmp 0x1403aa4cd
jne 0x1403aa4b8
mov rax, r14
clc
cmp al, dil
test rbx, rbx
je 0x1403aa46a
xor esi, esi
mov rbp, r14
rol ah, 0x3d
xadd r13b, r9b
bsf r9w, si
nop word [rax + rax]
rol dil, cl
btr edi, 0xb9
movzx eax, word [r12 + rsi*2]
sal r13b, cl
stc
xor r13d, 0x6347684d
lea edi, [rax - 0x41]
bswap r9
jmp 0x1403aa520
lea r13d, [rax - 0x410]
xadd r9d, r9d
lea r9d, [rax + 0x20]
clc
stc
cmp r13w, 0x20
jmp 0x1403aa53b
cmovb eax, r9d
cmp r10b, r10b
jmp 0x1403aa547
cmp di, 0x1a
jmp 0x1403aa550
cmovb eax, r9d
stc
clc
movzx eax, ax
clc
cmp cx, 0x7f48
jmp 0x1403aa564
xor rax, rbp
imul rax, r15
movsx ebp, si
movzx bp, r15b
inc esi
mov rbp, rax
cmp dl, 0xb0
cmp rsi, rbx
jmp 0x1403aa583
jb 0x1403aa501
jmp 0x1403aa46a
xor r13d, r13d
jmp 0x1403aa596
jmp 0x1403aa669
cmp bl, 3
movzx rcx, di
bswap cx
movzx r8w, r8b
movzx r8d, si
movsx cx, bpl
setae ch
cmovne r8d, esi
movzx rcx, r9w
not cl
sets ch
mov ecx, 0x13ff
jmp 0x1403aa5cd
jmp 0x1403aa62c
test r11, r11
xchg dx, dx
cmove r10, r11
mov rdx, r10
jmp 0x1403aa5ea
movabs rbp, 0xe78235ad970d2b55
movzx rdi, bx
movzx edi, si
mov dil, 0xfb
movabs rdi, 0x6cbb02d0d49b29be
jmp 0x1403aa60d
jmp 0x1403aa631
movabs rbp, 0xe78235ad970d2b55
jmp 0x1403aa621
movabs rdi, 0x6cbb02d0d49b29be
nop
sub edx, edx
or ah, 0x6e
lea rax, [rsp + 0x40]
test r10b, 0x5a
clc
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0
cmp rsp, rax
test ax, ax
xor r9d, r9d
call qword [sym.imp.KERNEL32.dll_FormatMessageW]
mov r13, qword [rsp + 0x40]
btr ecx, r10d
lea rcx, [rsp + 0x280]
rol r8b, 0xd2
mov r8d, 0x800
clc
test bpl, 0xd8
sub edx, edx
call fcn.14049e376
movabs rax, 0xe7ed35df977f2b10
cmova si, r11w
movzx rbx, r9w
movsx r14w, spl
mov qword [rsp + 0x50], rax
movsx r14, r10w
movsx r12w, spl
movabs rax, 0x6c9e02f0d4a129cc
xchg rbx, r14
not bh
mov qword [rsp + 0x58], rax
movsx si, r8b
setl r15b
movabs rax, 0xbb83b115fb5723ec
mov bh, 0xe5
mov qword [rsp + 0x60], rax
movsx r14d, ax
not r12b
jmp 0x1403aa6e8
movabs rax, 0xd2ef72cb161baac
mov qword [rsp + 0x68], rax
movzx rsi, r8w
cwde
movabs rax, 0x23396ef01c4484dc
cmovae r14w, dx
mov qword [rsp + 0x70], rax
cwde
movsx r14, r14w
movzx r12w, r8b
movabs rax, 0x17711b7cc255afae
movsxd rbx, ebp
mov qword [rsp + 0x78], rax
movzx si, dl
movabs rax, 0x314846d9144fae6f
mov qword [rsp + 0x80], rax
lahf
cmove bx, sp
movsx r12, r9w
movabs rax, 0x178dd9cfd41ab93e
mov qword [rsp + 0x88], rax
movsxd rax, r11d
mov al, spl
movsx si, cl
movabs rax, 0xafe3d510c4170ff7
mov r12w, 0x17d9
jmp 0x1403aa77e
mov qword [rsp + 0x90], rax
bswap r14
mov bl, 0x59
movabs rax, 0xf2b1d93b98f8762c
bswap esi
movsxd rsi, esp
mov qword [rsp + 0x98], rax
setl r12b
movsx rax, cx
movabs rax, 0x9086a47a193ab849
movsxd r12, r14d
movsx r14w, cl
movzx r15d, r12w
mov qword [rsp + 0xa0], rax
movzx r12w, r12b
movabs rax, 0xf9f44acd0c6a853c
mov qword [rsp + 0xa8], rax
seta bl
movsx bx, r13b
cdqe
movabs rax, 0x46ec87c61fbaad11
movzx bx, spl
setns r14b
mov qword [rsp + 0xb0], rax
bswap si
movsx r15d, bx
mov ax, r12w
movabs rax, 0x5102c52d8dbf581e
movsx rsi, r11w
bswap si
mov qword [rsp + 0xb8], rax
seta r14b
movsx bx, r13b
movabs rax, 0x9f52a16fed4b976f
mov qword [rsp + 0xc0], rax
movabs rax, 0xf6a5483bf0ec9ca3
xchg sil, r15b
jmp 0x1403aa858
mov qword [rsp + 0xc8], rax
movabs rax, 0x60e699bcbdc17680
movzx si, spl
mov qword [rsp + 0xd0], rax
movabs rax, 0xbd6f0372efe2893d
jmp 0x1403aa886
mov qword [rsp + 0xd8], rax
mov si, 0x69e2
movzx r15d, r10w
setbe bh
movabs rax, 0x98880c705ee3d44a
cmovp r12w, r15w
xchg r12, r14
mov qword [rsp + 0xe0], rax
bswap r15
movabs rax, 0x9b7661660ff4953f
jmp 0x1403aa8c5
mov qword [rsp + 0xe8], rax
movabs rax, 0x53d62999d3e90ae0
xchg ebx, esi
movzx r12, r8w
bswap r15
mov qword [rsp + 0xf0], rax
cmove r14, rdi
cbw
nop
movabs rax, 0xc69b1bd14864426
mov qword [rsp + 0xf8], rax
movsx r12w, dl
movzx r15, dx
movzx r14w, sil
movabs rax, 0x56abc9090122ed13
movzx r14, r13w
mov sil, r14b
mov qword [rsp + 0x100], rax
jmp 0x1403aa931
movabs rax, 0xf54db3f725dd577b
movsxd r14, esp
mov qword [rsp + 0x108], rax
movzx rsi, bx
bswap ax
lahf
movabs rax, 0x12e9428a7f611679
movzx bx, r11b
movzx rsi, r13w
mov qword [rsp + 0x110], rax
mov r15b, dil
movzx r14, di
movsx r12w, r13b
movabs rax, 0x187f5c28d0b2d517
mov sil, 0xe7
movzx r12w, r14b
not r14w
mov qword [rsp + 0x118], rax
movzx r12, ax
movsx ax, r9b
bswap r14
mov qword [rsp + 0x130], rbp
mov r14d, r12d
mov qword [rsp + 0x138], rdi
movsx esi, r12w
movzx r15w, dil
movabs rbx, 0xbbeab153fb5d239f
mov qword [rsp + 0x140], rbx
mov sil, dil
movsx rax, r10w
movabs rsi, 0xd0ef716b104bac0
cdqe
not r14b
bswap r12d
mov qword [rsp + 0x148], rsi
movsx r15w, dl
movabs r14, 0x230f6ec11c7484f9
mov qword [rsp + 0x150], r14
movzx r12d, r12w
bswap r12w
movsx rax, r8w
movabs r15, 0x177b1b24c239afc2
mov qword [rsp + 0x158], r15
not r12d
mov ah, 0x87
movsx r12d, ax
movabs rax, 0x312d46b71426ae23
movzx r12w, r8b
mov qword [rsp + 0x160], rax
setnp r12b
cbw
movabs rax, 0x17e9d9ead43ab904
mov qword [rsp + 0x168], rax
movzx r12d, r9w
movabs rax, 0xaf90d535c41d0ffd
not r12d
movsx r12, dx
movsxd r12, esi
mov qword [rsp + 0x170], rax
movzx r12, bx
movsx eax, si
mov r12w, r13w
movabs rax, 0xf2ded97898f27626
cmovl r12w, bp
bswap r12w
movzx r12d, bx
mov qword [rsp + 0x178], rax
movsx r12w, al
movzx ax, dh
movzx eax, r11w
movabs rax, 0x90e5a41b194eb827
setbe r12b
mov qword [rsp + 0x180], rax
movabs rax, 0xf9814abe0c4a8548
bswap r12
movzx r12w, r11b
mov qword [rsp + 0x188], rax
movsx r12, r11w
movzx r12w, r11b
cwde
movabs rax, 0x469e87a91fcaad61
not r12w
movsx r12w, dl
mov qword [rsp + 0x190], rax
movzx r12, r9w
movabs rax, 0x516cc54c8d9f586a
movzx r12w, bpl
xchg r12b, r12b
not r12w
mov qword [rsp + 0x198], rax
cbw
jmp 0x1403aab31
movabs rax, 0x9f20a11fed6b970b
not r12w
mov r12w, 0x2bf4
movzx r12d, r11w
mov qword [rsp + 0x1a0], rax
movzx r12w, r12b
jmp 0x1403aab5e
movabs rax, 0xf6c14852f09a9ccc
cmovl r12, rbx
movsx r12, r11w
mov qword [rsp + 0x1a8], rax
movsx r12w, r9b
cmovbe ax, ax
cdqe
movabs rax, 0x60c699ddbde176e5
mov qword [rsp + 0x1b0], rax
not al
movzx ax, ch
movabs rax, 0xbd0a0300ef81894e
not r12
mov qword [rsp + 0x1b8], rax
setnp ah
not r12b
lahf
movabs rax, 0x98e00c035e8dd42f
movzx r12, r11w
not r12b
mov qword [rsp + 0x1c0], rax
cbw
jmp 0x1403aabd7
movabs rax, 0x9b0161460f809550
cmovno r12w, r15w
movsx r12, dx
mov qword [rsp + 0x1c8], rax
bswap r12d
cbw
movabs rax, 0x53f629f1d39d0a89
not r12d
setno r12b
mov qword [rsp + 0x1d0], rax
movabs rax, 0xc1ab1d414ee4452
mov qword [rsp + 0x1d8], rax
movabs rax, 0x56cdc967014bed33
movsx r12, ax
mov qword [rsp + 0x1e0], rax
movabs rax, 0xf52cb39a25af5714
movzx r12w, al
mov r12w, si
mov qword [rsp + 0x1e8], rax
movsx ax, r11b
movabs rax, 0x128742e57f08160d
movsx r12, bp
bswap r12w
mov qword [rsp + 0x1f0], rax
movsx rax, r14w
movabs rax, 0x187f5c28d0b2d536
movzx r12, r11w
cmovo r12, r9
xchg r12b, r12b
mov qword [rsp + 0x1f8], rax
movzx r12d, sp
lea r12, [rsp + 0x130]
lahf
jmp 0x1403aaca8
mov rax, r12
jmp 0x1403aacb0
movaps xmm0, xmmword [rsp + 0x50]
xorps xmm0, xmmword [rax]
movaps xmmword [rsp + 0x50], xmm0
jmp 0x1403aacc2
movaps xmm0, xmmword [rsp + 0x60]
jmp 0x1403aaccc
xorps xmm0, xmmword [rax + 0x10]
movaps xmmword [rsp + 0x60], xmm0
jmp 0x1403aacda
movaps xmm0, xmmword [rsp + 0x70]
xorps xmm0, xmmword [rax + 0x20]
movaps xmmword [rsp + 0x70], xmm0
jmp 0x1403aaced
movaps xmm0, xmmword [rsp + 0x80]
jmp 0x1403aacfa
xorps xmm0, xmmword [rax + 0x30]
movaps xmmword [rsp + 0x80], xmm0
jmp 0x1403aad0b
movaps xmm0, xmmword [rsp + 0x90]
jmp 0x1403aad18
xorps xmm0, xmmword [rax + 0x40]
movaps xmmword [rsp + 0x90], xmm0
movaps xmm0, xmmword [rsp + 0xa0]
jmp 0x1403aad31
xorps xmm0, xmmword [rax + 0x50]
movaps xmmword [rsp + 0xa0], xmm0
jmp 0x1403aad42
movaps xmm0, xmmword [rsp + 0xb0]
jmp 0x1403aad4f
xorps xmm0, xmmword [rax + 0x60]
movaps xmmword [rsp + 0xb0], xmm0
movaps xmm0, xmmword [rsp + 0xc0]
jmp 0x1403aad68
xorps xmm0, xmmword [rax + 0x70]
movaps xmmword [rsp + 0xc0], xmm0
jmp 0x1403aad79
movaps xmm0, xmmword [rsp + 0xd0]
jmp 0x1403aad86
xorps xmm0, xmmword [rax + 0x80]
movaps xmmword [rsp + 0xd0], xmm0
jmp 0x1403aad9a
movaps xmm0, xmmword [rsp + 0xe0]
jmp 0x1403aada7
xorps xmm0, xmmword [rax + 0x90]
movaps xmmword [rsp + 0xe0], xmm0
jmp 0x1403aadbb
movaps xmm0, xmmword [rsp + 0xf0]
jmp 0x1403aadc8
xorps xmm0, xmmword [rax + 0xa0]
movaps xmmword [rsp + 0xf0], xmm0
jmp 0x1403aaddc
movaps xmm0, xmmword [rsp + 0x100]
jmp 0x1403aade9
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
cbw
rdtsc
mov qword [rsp + 0x30], r13
cmova r9w, ax
mov rax, 0x439b468d
movzx rdx, r10w
mov eax, dword [rsp + 0x4c]
movzx cx, dl
cwd
setae ch
mov dword [rsp + 0x28], eax
mov rax, qword [rsp + 0x128]
mov qword [rsp + 0x20], rax
cqo
not ch
lea r8, [rsp + 0x50]
cmovae r9w, r15w
movsx dx, cl
cqo
lea r9, [rsp + 0x200]
mov r13b, 0x38
movzx dx, bl
mov edx, 0x400
xchg r13b, cl
lea r13, [rsp + 0x280]
movsx rcx, si
movsx cx, r11b
mov rcx, r13
jmp 0x1403aae8a
call fcn.1403ab080
mov rcx, qword [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_LocalFree]
movabs rax, 0xe7e335d9976c2b13
jmp 0x1403aaea9
mov qword [rsp + 0x50], rax
movsx eax, ax
mov eax, 0x7bd60a55
movzx ax, r10b
movabs rax, 0x6cc902b5d4bb29d2
jmp 0x1403aaeca
mov qword [rsp + 0x58], rax
movzx rax, r14w
movzx eax, r10w
cdqe
movabs rax, 0xbbcab121fb3223ed
jmp 0x1403aaee8
mov qword [rsp + 0x60], rax
movabs rax, 0xd7bf775b167baaf
jmp 0x1403aaefc
mov qword [rsp + 0x68], rax
movsx eax, si
movabs rax, 0x236b6ea41c06848b
mov qword [rsp + 0x70], rax
movzx rax, bx
lahf
cwde
movabs rax, 0x177b1b24c239afe3
jmp 0x1403aaf28
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x130], rbp
jmp 0x1403aaf3a
mov qword [rsp + 0x138], rdi
jmp 0x1403aaf47
mov qword [rsp + 0x140], rbx
jmp 0x1403aaf54
mov qword [rsp + 0x148], rsi
jmp 0x1403aaf61
mov qword [rsp + 0x150], r14
jmp 0x1403aaf6e
mov qword [rsp + 0x158], r15
jmp 0x1403aaf7b
movaps xmm0, xmmword [rsp + 0x50]
jmp 0x1403aaf85
xorps xmm0, xmmword [r12]
movaps xmmword [rsp + 0x50], xmm0
movaps xmm0, xmmword [rsp + 0x60]
jmp 0x1403aaf99
xorps xmm0, xmmword [r12 + 0x10]
movaps xmmword [rsp + 0x60], xmm0
jmp 0x1403aafa9
movaps xmm0, xmmword [rsp + 0x70]
xorps xmm0, xmmword [r12 + 0x20]
movaps xmmword [rsp + 0x70], xmm0
mov r9b, 0xf3
btc r9d, 0x2f
rcr dh, 0xf4
lea r8, [rsp + 0x50]
test r10b, r13b
xchg dl, r9b
sub ecx, ecx
bswap dx
movsx edx, r10w
not dx
mov rdx, r13
xchg r9w, r9w
cmovo r9d, r8d
mov r9d, 0x10
jmp 0x1403aaff1
call qword [sym.imp.USER32.dll_MessageBoxW]
mov eax, dword [0x1400dd058]
bt r10d, 0xf7
bt r10, r10
mov r10, 0xffffffffffffffff
cmp r15w, 0x78e8
stc
test r12, 0x2627681a
sub edx, edx
jmp 0x1403ab022
syscall
add rsp, 0xa88
pop rbx
movsx bp, r15b
movzx edi, dx
movzx r13w, dil
pop rbp
mov rdi, 0xa6e5ee1
movzx r15, r9w
setae r15b
pop rdi
xchg r15, r13
bswap r14w
movzx r13, di
pop rsi
movzx r15w, r8b
mov r14d, edx
xchg r12b, r12b
pop r12
movzx r14d, di
cmovle r13w, ax
pop r13
movzx r15w, cl
pop r14
movzx r15, r8w
setne r15b
pop r15
ret