Function at 0x1403a8612
Capabilities:
Encrypt data using speck

Disassembly:
push r15
push r14
cmp r15, 0x2e534021
push r13
jmp 0x1403a8629
push r12
test spl, 0x82
clc
push rsi
shr rsi, 0x69
movsx esi, cx
push rdi
push rbp
rcr dil, 0x43
ror bpl, 0x9c
push rbx
sub rsp, 0xa88
mov si, 0xf6f
adc dil, r10b
mov rsi, rcx
ror bpl, cl
shl bpl, cl
mov qword [rsp + 0x40], 0
movabs rbp, 0xe78235ad970d2b55
sub dil, r8b
movabs rdi, 0x6cbb02d0d49b29be
jmp 0x1403a867f
cmp dl, 1
mov qword [rsp + 0x128], r8
jmp 0x1403a868f
mov dword [rsp + 0x4c], r9d
jmp 0x1403a8699
jne 0x1403a8776
movabs rax, 0xe7f735c197612b70
mov qword [rsp + 0x130], rax
movsxd rax, r12d
cbw
movsx ecx, r14w
mov rax, rdi
movzx ecx, r12w
movzx cx, r8b
mov qword [rsp + 0x138], rax
bswap rcx
mov rcx, rbp
mov qword [rsp + 0x280], rcx
jmp 0x1403a86e1
mov qword [rsp + 0x288], rax
cbw
movsx eax, di
cmovl ax, r8w
lea rax, [rsp + 0x280]
jmp 0x1403a8700
movaps xmm0, xmmword [rsp + 0x130]
jmp 0x1403a870d
xorps xmm0, xmmword [rax]
movaps xmmword [rsp + 0x130], xmm0
xchg r9b, r8b
mov r9b, 0x7b
jmp 0x1403a8723
lea rcx, [rsp + 0x200]
not r9b
cwd
lea r8, [rsp + 0x130]
bswap r9
mov edx, 0x40
not r9d
mov r9, rsi
jmp 0x1403a874b
call fcn.1403a93ea
mov ecx, 0x13ff
adc r8w, r13w
shld r8, rbp, 0x24
xor r8b, r10b
xor edx, edx
mov r8d, 0x2e9d2398
mov r8d, esi
jmp 0x1403a8771
jmp 0x1403a8a55
mov ebx, edx
mov eax, edi
cdqe
movabs rax, 0xe7ee358897752b65
mov qword [rsp + 0x130], rax
movsxd rax, r11d
movabs rax, 0x6cbb02d0d4c329d2
jmp 0x1403a87a0
mov qword [rsp + 0x138], rax
cdqe
movsx rax, r15w
setne al
mov rax, rbp
jmp 0x1403a87b9
mov qword [rsp + 0x280], rax
mov rax, rdi
jmp 0x1403a87c9
mov qword [rsp + 0x288], rax
lea rax, [rsp + 0x280]
movaps xmm0, xmmword [rsp + 0x130]
xorps xmm0, xmmword [rax]
movaps xmmword [rsp + 0x130], xmm0
bswap r9d
cqo
lea rcx, [rsp + 0x200]
lea r8, [rsp + 0x130]
mov edx, 0x40
not r9b
xchg r9b, r9b
mov r9, rsi
call fcn.1403a93ea
test bl, bl
je 0x1403a89a2
movzx eax, bl
test r11b, 0x3d
cmc
cmp eax, 2
jne 0x1403a89af
movabs r14, 0xcbf29ce484222325
mov ecx, esi
jmp 0x1403a883e
call sub.ntdll.dll_RtlNtStatusToDosError
mov r8d, eax
cmp r9, rdx
mov rax, qword gs:[0x30]
bt r11d, 0x44
btr ecx, r8d
add cx, ax
mov rax, qword [rax + 0x60]
xor cl, bpl
inc dh
test dil, r12b
mov r11, qword [rax + 0x18]
add r11, 0x10
movabs rdx, 0x2cc10c8855a9a8cd
movabs r15, 0x1d12a89b9e723ff5
movsx ecx, cx
setae ch
mov ecx, 0x1bff
jmp 0x1403a8896
jmp 0x1403a88a4
cmp rax, rdx
je 0x1403a89e3
mov r11, qword [r11]
sets r10b
mov r10, qword [r11 + 0x30]
test r10, r10
jmp 0x1403a88b7
je 0x1403a8a26
mov r12, qword [r11 + 0x60]
neg bx
or rbx, 0x6b1c68a8
sar bx, cl
mov rbx, 0xffffffffffffffff
stc
nop word cs:[rax + rax]
cmp word [r12 + rbx*2 + 2], 0
jmp 0x1403a88ee
lea rbx, [rbx + 1]
jne 0x1403a88e2
mov rax, r14
jmp 0x1403a8900
test rbx, rbx
je 0x1403a889b
sub esi, esi
movzx bp, r8b
test bl, r10b
mov rbp, r14
nop word [rax + rax]
inc dil
movzx eax, word [r12 + rsi*2]
sbb r13b, bl
and r9d, r12d
sal r13w, 0xf
lea edi, [rax - 0x41]
not r9w
lea r13d, [rax - 0x410]
add r9w, sp
rcr r9b, 0xa2
movzx r9d, sp
lea r9d, [rax + 0x20]
test dx, r12w
cmp r13w, 0x20
jmp 0x1403a895b
cmovb eax, r9d
cmp di, 0x1a
cmovb eax, r9d
cmc
movzx eax, ax
xor rax, rbp
sal bp, cl
rcr bpl, cl
sbb bp, r11w
imul rax, r15
setne bpl
inc esi
sub bpl, cl
sub bpl, 0x3d
sar bp, cl
mov rbp, rax
cmp rsi, rbx
jmp 0x1403a8997
jb 0x1403a891f
jmp 0x1403a889b
sub r13d, r13d
jmp 0x1403a89aa
jmp 0x1403a8a8a
cmp bl, 3
bswap r8d
xchg rcx, rcx
movzx r8d, si
cmovne cx, bp
movsxd rcx, r8d
movzx cx, r14b
cmovne r8d, esi
movsx rcx, r12w
cmovne cx, di
mov ecx, 0x13ff
jmp 0x1403a89de
jmp 0x1403a8a46
test r11, r11
cmove r10, r11
movsx di, sil
mov rdx, r10
mov ebp, r10d
xchg edi, edi
cmova bp, r14w
movabs rbp, 0xe78235ad970d2b55
movzx di, r14b
movsx rdi, bx
not dil
movabs rdi, 0x6cbb02d0d49b29be
jmp 0x1403a8a21
jmp 0x1403a8a55
movabs rbp, 0xe78235ad970d2b55
shld ax, di, 0x90
movabs rdi, 0x6cbb02d0d49b29be
btr rax, 0x67
inc ah
sub edx, edx
add rax, 0x2a6e64cb
movzx rax, di
shr ah, cl
lea rax, [rsp + 0x40]
clc
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x30], 0
stc
mov dword [rsp + 0x28], 0
xor r9d, r9d
jmp 0x1403a8a7a
call qword [sym.imp.KERNEL32.dll_FormatMessageW]
mov r13, qword [rsp + 0x40]
inc ch
and r8b, r10b
lea rcx, [rsp + 0x280]
mov r8d, 0x800
test r15b, 0x1c
stc
xor edx, edx
call fcn.14049ceb9
movabs rax, 0xe7ed35df977f2b10
cmovle r15w, cx
movsxd r15, r10d
mov bl, 0x68
mov qword [rsp + 0x50], rax
movsx rsi, r13w
movabs rax, 0x6c9e02f0d4a129cc
movzx r15, ax
not r12b
mov qword [rsp + 0x58], rax
movabs rax, 0xbb83b115fb5723ec
mov qword [rsp + 0x60], rax
movabs rax, 0xd2ef72cb161baac
xchg r14b, r15b
mov qword [rsp + 0x68], rax
movzx esi, r14w
movabs rax, 0x23396ef01c4484dc
movsx r15, r10w
bswap r15w
mov qword [rsp + 0x70], rax
jmp 0x1403a8b1f
movabs rax, 0x17711b7cc255afae
mov bl, r11b
mov r14w, 0x2150
mov qword [rsp + 0x78], rax
movabs rax, 0x314846d9144fae6f
mov qword [rsp + 0x80], rax
cbw
movabs rax, 0x178dd9cfd41ab93e
bswap ebx
jmp 0x1403a8b60
mov qword [rsp + 0x88], rax
movabs rax, 0xafe3d510c4170ff7
movzx si, dl
mov qword [rsp + 0x90], rax
cdqe
movzx r15d, bx
movabs rax, 0xf2b1d93b98f8762c
mov qword [rsp + 0x98], rax
setns r12b
xchg r15d, r12d
movabs rax, 0x9086a47a193ab849
mov r14b, r12b
mov qword [rsp + 0xa0], rax
mov r14b, dl
movabs rax, 0xf9f44acd0c6a853c
mov qword [rsp + 0xa8], rax
movzx esi, sp
movabs rax, 0x46ec87c61fbaad11
mov qword [rsp + 0xb0], rax
cwde
cmovns r15d, edx
movzx r12d, r9w
movabs rax, 0x5102c52d8dbf581e
mov qword [rsp + 0xb8], rax
bswap r14
mov r15, 0x25b30a60
mov r14b, bl
movabs rax, 0x9f52a16fed4b976f
setns r14b
not bl
movsxd r15, r8d
mov qword [rsp + 0xc0], rax
movzx bx, ch
cbw
movsx r15d, r9w
movabs rax, 0xf6a5483bf0ec9ca3
xchg bl, r15b
movsx r15w, al
mov qword [rsp + 0xc8], rax
movzx r12d, r11w
cdqe
movsx ax, dil
movabs rax, 0x60e699bcbdc17680
mov sil, r13b
cmovae ebx, r14d
mov qword [rsp + 0xd0], rax
xchg r14w, ax
movabs rax, 0xbd6f0372efe2893d
mov qword [rsp + 0xd8], rax
xchg sil, r12b
seta r15b
movabs rax, 0x98880c705ee3d44a
movsxd rbx, ebp
mov qword [rsp + 0xe0], rax
bswap r15w
movzx r14d, ax
movabs rax, 0x9b7661660ff4953f
mov si, 0x7c08
not r15d
cmovne si, dx
mov qword [rsp + 0xe8], rax
movzx bx, bl
movabs rax, 0x53d62999d3e90ae0
bswap r15w
mov r15, rbp
movsx r12w, r11b
mov qword [rsp + 0xf0], rax
jmp 0x1403a8ce4
movabs rax, 0xc69b1bd14864426
cmovs si, r8w
mov qword [rsp + 0xf8], rax
cbw
movabs rax, 0x56abc9090122ed13
xchg r15, r12
jmp 0x1403a8d12
mov qword [rsp + 0x100], rax
setl sil
movabs rax, 0xf54db3f725dd577b
mov qword [rsp + 0x108], rax
mov r14b, 0x6b
bswap ebx
movabs rax, 0x12e9428a7f611679
mov sil, dl
mov qword [rsp + 0x110], rax
movabs rax, 0x187f5c28d0b2d517
movsx r12d, r8w
movsxd rbx, r9d
bswap r14w
mov qword [rsp + 0x118], rax
bswap si
mov qword [rsp + 0x130], rbp
movzx rax, r12w
mov qword [rsp + 0x138], rdi
movabs rbx, 0xbbeab153fb5d239f
movzx r14, r10w
movsx r15d, r11w
mov qword [rsp + 0x140], rbx
movsxd r14, ebp
cwde
cmovb r15, rdx
movabs rsi, 0xd0ef716b104bac0
bswap r12
mov qword [rsp + 0x148], rsi
movsx ax, ch
movabs r14, 0x230f6ec11c7484f9
mov qword [rsp + 0x150], r14
movsx ax, r10b
cdqe
jmp 0x1403a8dd7
movabs r15, 0x177b1b24c239afc2
cmovns eax, ebp
cbw
mov r12d, r8d
mov qword [rsp + 0x158], r15
jmp 0x1403a8df6
movabs rax, 0x312d46b71426ae23
xchg r12b, r12b
mov qword [rsp + 0x160], rax
movsx ax, ah
movsx eax, r12w
cdqe
movabs rax, 0x17e9d9ead43ab904
mov qword [rsp + 0x168], rax
movsx rax, r13w
seta ah
movsx eax, r9w
movabs rax, 0xaf90d535c41d0ffd
xchg r12w, r12w
mov qword [rsp + 0x170], rax
movsx r12w, al
movabs rax, 0xf2ded97898f27626
movsx r12, r15w
mov qword [rsp + 0x178], rax
movzx eax, si
cbw
setbe al
movabs rax, 0x90e5a41b194eb827
mov qword [rsp + 0x180], rax
movzx r12d, di
jmp 0x1403a8e86
movabs rax, 0xf9814abe0c4a8548
movsxd r12, r8d
xchg r12d, r12d
movzx r12, sp
mov qword [rsp + 0x188], rax
movabs rax, 0x469e87a91fcaad61
mov qword [rsp + 0x190], rax
bswap r12
cbw
movabs rax, 0x516cc54c8d9f586a
movzx r12, r11w
sets r12b
mov qword [rsp + 0x198], rax
movsx eax, r8w
movabs rax, 0x9f20a11fed6b970b
xchg r12d, r12d
bswap r12d
movzx r12, bp
mov qword [rsp + 0x1a0], rax
movabs rax, 0xf6c14852f09a9ccc
mov r12w, 0x7711
movzx r12, bp
mov qword [rsp + 0x1a8], rax
not r12w
cdqe
setge ah
movabs rax, 0x60c699ddbde176e5
mov r12, 0x3b6b0a5b
setnp r12b
mov qword [rsp + 0x1b0], rax
movzx r12w, r12b
mov al, r8b
movabs rax, 0xbd0a0300ef81894e
mov qword [rsp + 0x1b8], rax
movsxd r12, ebx
setbe r12b
mov r12b, 0x1a
movabs rax, 0x98e00c035e8dd42f
movzx r12d, r13w
setp r12b
bswap r12
mov qword [rsp + 0x1c0], rax
cmovge eax, esi
movsx rax, ax
movsx eax, r8w
movabs rax, 0x9b0161460f809550
movzx r12w, r8b
mov qword [rsp + 0x1c8], rax
movsx r12, di
setg al
movabs rax, 0x53f629f1d39d0a89
not r12b
movsx r12d, dx
mov qword [rsp + 0x1d0], rax
movzx rax, r12w
movabs rax, 0xc1ab1d414ee4452
movsx r12w, al
movzx r12d, cx
mov qword [rsp + 0x1d8], rax
mov r12b, 0x5e
movabs rax, 0x56cdc967014bed33
movzx r12, r15w
setg r12b
mov qword [rsp + 0x1e0], rax
not al
jmp 0x1403a8ffa
movabs rax, 0xf52cb39a25af5714
mov qword [rsp + 0x1e8], rax
lahf
movabs rax, 0x128742e57f08160d
not r12b
movzx r12w, r15b
mov qword [rsp + 0x1f0], rax
mov r12b, cl
movabs rax, 0x187f5c28d0b2d536
mov qword [rsp + 0x1f8], rax
not ah
mov ah, 0x33
jmp 0x1403a9046
lea r12, [rsp + 0x130]
cmovle eax, r14d
cwde
mov rax, r12
jmp 0x1403a905b
movaps xmm0, xmmword [rsp + 0x50]
jmp 0x1403a9065
xorps xmm0, xmmword [rax]
movaps xmmword [rsp + 0x50], xmm0
jmp 0x1403a9072
movaps xmm0, xmmword [rsp + 0x60]
xorps xmm0, xmmword [rax + 0x10]
movaps xmmword [rsp + 0x60], xmm0
movaps xmm0, xmmword [rsp + 0x70]
xorps xmm0, xmmword [rax + 0x20]
movaps xmmword [rsp + 0x70], xmm0
movaps xmm0, xmmword [rsp + 0x80]
jmp 0x1403a909b
xorps xmm0, xmmword [rax + 0x30]
movaps xmmword [rsp + 0x80], xmm0
jmp 0x1403a90ac
movaps xmm0, xmmword [rsp + 0x90]
jmp 0x1403a90b9
xorps xmm0, xmmword [rax + 0x40]
movaps xmmword [rsp + 0x90], xmm0
jmp 0x1403a90ca
movaps xmm0, xmmword [rsp + 0xa0]
jmp 0x1403a90d7
xorps xmm0, xmmword [rax + 0x50]
movaps xmmword [rsp + 0xa0], xmm0
jmp 0x1403a90e8
movaps xmm0, xmmword [rsp + 0xb0]
jmp 0x1403a90f5
xorps xmm0, xmmword [rax + 0x60]
movaps xmmword [rsp + 0xb0], xmm0
jmp 0x1403a9106
movaps xmm0, xmmword [rsp + 0xc0]
jmp 0x1403a9113
xorps xmm0, xmmword [rax + 0x70]
movaps xmmword [rsp + 0xc0], xmm0
jmp 0x1403a9124
movaps xmm0, xmmword [rsp + 0xd0]
xorps xmm0, xmmword [rax + 0x80]
movaps xmmword [rsp + 0xd0], xmm0
jmp 0x1403a9140
movaps xmm0, xmmword [rsp + 0xe0]
jmp 0x1403a914d
xorps xmm0, xmmword [rax + 0x90]
movaps xmmword [rsp + 0xe0], xmm0
jmp 0x1403a9161
movaps xmm0, xmmword [rsp + 0xf0]
jmp 0x1403a916e
xorps xmm0, xmmword [rax + 0xa0]
movaps xmmword [rsp + 0xf0], xmm0
jmp 0x1403a9182
movaps xmm0, xmmword [rsp + 0x100]
jmp 0x1403a918f
xorps xmm0, xmmword [rax + 0xb0]
movaps xmmword [rsp + 0x100], xmm0
jmp 0x1403a91a3
movaps xmm0, xmmword [rsp + 0x110]
xorps xmm0, xmmword [rax + 0xc0]
movaps xmmword [rsp + 0x110], xmm0
movzx cx, bh
cwde
mov qword [rsp + 0x30], r13
rdtsc
movsx r8, si
mov eax, dword [rsp + 0x4c]
mov dword [rsp + 0x28], eax
movsx r8w, sil
movsx rcx, r15w
setae ah
mov rax, qword [rsp + 0x128]
movzx r13d, r9w
jmp 0x1403a91ef
mov qword [rsp + 0x20], rax
movzx rdx, r15w
lea r8, [rsp + 0x50]
lea r9, [rsp + 0x200]
cmovne r13d, r10d
bswap dx
mov edx, 0x400
lea r13, [rsp + 0x280]
mov rcx, r13
call fcn.1403a93ea
mov rcx, qword [rsp + 0x40]
jmp 0x1403a922b
call qword [sym.imp.KERNEL32.dll_LocalFree]
movabs rax, 0xe7e335d9976c2b13
jmp 0x1403a9240
mov qword [rsp + 0x50], rax
movsxd rax, r11d
movabs rax, 0x6cc902b5d4bb29d2
jmp 0x1403a9257
mov qword [rsp + 0x58], rax
cwde
bswap eax
cdqe
movabs rax, 0xbbcab121fb3223ed
jmp 0x1403a9270
mov qword [rsp + 0x60], rax
cdqe
movabs rax, 0xd7bf775b167baaf
jmp 0x1403a9286
mov qword [rsp + 0x68], rax
cbw
bswap rax
cwde
movabs rax, 0x236b6ea41c06848b
jmp 0x1403a92a0
mov qword [rsp + 0x70], rax
cdqe
movabs rax, 0x177b1b24c239afe3
mov qword [rsp + 0x78], rax
jmp 0x1403a92bb
mov qword [rsp + 0x130], rbp
jmp 0x1403a92c8
mov qword [rsp + 0x138], rdi
jmp 0x1403a92d5
mov qword [rsp + 0x140], rbx
mov qword [rsp + 0x148], rsi
jmp 0x1403a92ea
mov qword [rsp + 0x150], r14
jmp 0x1403a92f7
mov qword [rsp + 0x158], r15
jmp 0x1403a9304
movaps xmm0, xmmword [rsp + 0x50]
jmp 0x1403a930e
xorps xmm0, xmmword [r12]
movaps xmmword [rsp + 0x50], xmm0
jmp 0x1403a931d
movaps xmm0, xmmword [rsp + 0x60]
xorps xmm0, xmmword [r12 + 0x10]
movaps xmmword [rsp + 0x60], xmm0
jmp 0x1403a9332
movaps xmm0, xmmword [rsp + 0x70]
jmp 0x1403a933c
xorps xmm0, xmmword [r12 + 0x20]
movaps xmmword [rsp + 0x70], xmm0
or r8w, r10w
shl r9, cl
or r9, 0x6db36538
lea r8, [rsp + 0x50]
sub ecx, ecx
movzx r9, r10w
movsxd rdx, ecx
movsx r9, r9w
mov rdx, r13
jmp 0x1403a9374
mov r9d, 0x10
jmp 0x1403a937f
call qword [sym.imp.USER32.dll_MessageBoxW]
mov eax, dword [0x1400dd058]
mov r10, 0xffffffffffffffff
test al, bpl
xor edx, edx
jmp 0x1403a939c
syscall
add rsp, 0xa88
movzx r12w, al
setle r12b
jmp 0x1403a93b3
pop rbx
movzx r12, si
pop rbp
movzx rsi, r14w
not rdi
mov r15d, ebx
pop rdi
pop rsi
movsx r12w, r13b
bswap r13w
pop r12
not r13b
movsx r14, r12w
sete r13b
pop r13
pop r14
not r15b
pop r15
jmp 0x1403a93e9
ret