Function at 0x1403b3ff8
Capabilities:
Encrypt data using speck

Disassembly:
push r15
jmp 0x1403b400b
push r14
push r13
cmp dil, 0x6c
test r14w, 0x30bd
push r12
push rsi
push rdi
push rbp
xchg esi, edi
movsxd rbp, r8d
bsr si, cx
push rbx
sub rsp, 0xa88
mov rsi, rcx
mov qword [rsp + 0x40], 0
movabs rbp, 0xe78235ad970d2b55
movabs rdi, 0x6cbb02d0d49b29be
cmp dl, 1
mov qword [rsp + 0x128], r8
jmp 0x1403b405f
mov dword [rsp + 0x4c], r9d
jmp 0x1403b4069
jne 0x1403b4122
movabs rax, 0xe7f735c197612b70
movsx ecx, di
movsx cx, r13b
sets ch
mov qword [rsp + 0x130], rax
mov rax, rdi
cmovp cx, bp
mov qword [rsp + 0x138], rax
bswap cx
movsx cx, bpl
mov ecx, edi
mov rcx, rbp
mov qword [rsp + 0x280], rcx
jmp 0x1403b40b5
mov qword [rsp + 0x288], rax
bswap rax
lahf
lea rax, [rsp + 0x280]
movaps xmm0, xmmword [rsp + 0x130]
jmp 0x1403b40d6
xorps xmm0, xmmword [rax]
movaps xmmword [rsp + 0x130], xmm0
lea rcx, [rsp + 0x200]
sete dl
xchg r9w, r8w
movzx r8, dx
lea r8, [rsp + 0x130]
movzx r9w, r9b
mov edx, 0x40
mov r9, rsi
jmp 0x1403b410e
call fcn.1403b4ddf
mov ecx, 0x13ff
sub edx, edx
mov r8d, esi
jmp 0x1403b4409
mov ebx, edx
movabs rax, 0xe7ee358897752b65
jmp 0x1403b4133
mov qword [rsp + 0x130], rax
movabs rax, 0x6cbb02d0d4c329d2
jmp 0x1403b414a
mov qword [rsp + 0x138], rax
mov rax, rbp
jmp 0x1403b415a
mov qword [rsp + 0x280], rax
movsx rax, r14w
lahf
movsx ax, sil
mov rax, rdi
jmp 0x1403b4174
mov qword [rsp + 0x288], rax
bswap rax
movsx rax, bx
movzx eax, bp
lea rax, [rsp + 0x280]
jmp 0x1403b4193
movaps xmm0, xmmword [rsp + 0x130]
xorps xmm0, xmmword [rax]
movaps xmmword [rsp + 0x130], xmm0
jmp 0x1403b41ab
lea rcx, [rsp + 0x200]
cwd
lea r8, [rsp + 0x130]
mov edx, 0x40
mov r9, rsi
jmp 0x1403b41ca
call fcn.1403b4ddf
test bl, bl
je 0x1403b4384
movzx eax, bl
cmp r14b, r15b
cmc
cmp eax, 2
jmp 0x1403b41e6
jne 0x1403b4391
movabs r14, 0xcbf29ce484222325
mov ecx, esi
jmp 0x1403b41fd
call sub.ntdll.dll_RtlNtStatusToDosError
mov r8d, eax
mov rax, qword gs:[0x30]
ror r15b, cl
movzx ecx, bp
sar ch, cl
mov rax, qword [rax + 0x60]
mov r11, qword [rax + 0x18]
movsxd rcx, ebx
add r11, 0x10
bswap r15
mov r15b, r10b
movabs rdx, 0x2cc10c8855a9a8cd
mov r15, 0x7284102b
movzx ecx, r9w
jmp 0x1403b4245
movabs r15, 0x1d12a89b9e723ff5
movsx rcx, ax
mov ecx, 0x1bff
jmp 0x1403b425d
jmp 0x1403b4270
cmp rax, rdx
jmp 0x1403b426a
je 0x1403b43b9
mov r11, qword [r11]
movsx r10d, cx
bt r10, 0x19
mov r10, qword [r11 + 0x30]
jmp 0x1403b4285
test r10, r10
jmp 0x1403b428d
je 0x1403b43ea
mov r12, qword [r11 + 0x60]
ror bl, 0x73
shl bl, 0xb7
rcl bx, cl
mov rbx, 0xffffffffffffffff
test dil, 0x8c
clc
cmc
nop word cs:[rax + rax]
cmp word [r12 + rbx*2 + 2], 0
jmp 0x1403b42c5
lea rbx, [rbx + 1]
jmp 0x1403b42ce
jne 0x1403b42b9
mov rax, r14
cmp r13b, 0x8a
test rbx, rbx
jmp 0x1403b42e3
je 0x1403b4262
sub esi, esi
bsf r9, r15
adc bpl, 0xd3
cmovge rbp, r15
mov rbp, r14
sar r13w, cl
sub r9b, cl
nop word [rax + rax]
sal ax, 0xe4
neg r9b
ror r13b, cl
movzx eax, word [r12 + rsi*2]
shrd r9, r15, 0x4d
lea edi, [rax - 0x41]
shl r13b, cl
lea r13d, [rax - 0x410]
lea r9d, [rax + 0x20]
cmp r10, 0x56bf7742
cmp r13w, 0x20
jmp 0x1403b433d
cmovb eax, r9d
cmp di, 0x1a
jmp 0x1403b434a
cmovb eax, r9d
clc
movzx eax, ax
xor rax, rbp
imul rax, r15
movzx rbp, r12w
movzx ebp, bp
movzx bp, bpl
inc esi
cmc
sbb bpl, r13b
mov rbp, rax
clc
test esi, esi
cmp rsi, rbx
jmp 0x1403b4379
jb 0x1403b4311
jmp 0x1403b4262
sub r13d, r13d
jmp 0x1403b438c
jmp 0x1403b444b
cmp bl, 3
xchg r8b, r8b
mov r8w, r14w
movzx r8d, si
movzx rcx, ax
cmovne r8d, esi
movsx cx, r10b
setns ch
mov ecx, 0x13ff
jmp 0x1403b4407
test r11, r11
cmove r10, r11
mov rdx, r10
movabs rbp, 0xe78235ad970d2b55
movsx di, dl
movzx di, r14b
movabs rdi, 0x6cbb02d0d49b29be
jmp 0x1403b43e5
jmp 0x1403b4409
movabs rbp, 0xe78235ad970d2b55
movabs rdi, 0x6cbb02d0d49b29be
mov ax, 0x30b4
bsr ax, r15w
sub edx, edx
lea rax, [rsp + 0x40]
clc
cmp sil, 0x6c
mov qword [rsp + 0x20], rax
stc
test dil, 0x65
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0
xor r9d, r9d
jmp 0x1403b4436
call qword [sym.imp.KERNEL32.dll_FormatMessageW]
mov r13, qword [rsp + 0x40]
stc
sub r8w, 0x560b
add cl, sil
lea rcx, [rsp + 0x280]
adc r8b, dl
mov r8d, 0x800
jmp 0x1403b4467
sub edx, edx
jmp 0x1403b446e
call fcn.1404a8ca3
movabs rax, 0xe7ed35df977f2b10
mov bl, 0x28
mov qword [rsp + 0x50], rax
movzx bx, spl
movsx si, r9b
movsx rbx, r12w
movabs rax, 0x6c9e02f0d4a129cc
xchg r14w, r15w
mov r15b, 0xc7
movsxd rsi, ebx
mov qword [rsp + 0x58], rax
movabs rax, 0xbb83b115fb5723ec
bswap esi
movsx r12d, r13w
mov qword [rsp + 0x60], rax
movsx si, r12b
jmp 0x1403b44ca
movabs rax, 0xd2ef72cb161baac
mov qword [rsp + 0x68], rax
movabs rax, 0x23396ef01c4484dc
movsx r15w, al
mov qword [rsp + 0x70], rax
cmovo r15, rsp
movabs rax, 0x17711b7cc255afae
movsx r15w, al
mov qword [rsp + 0x78], rax
movzx r15, bp
cmovge r15, rcx
cbw
movabs rax, 0x314846d9144fae6f
mov bh, 0xb3
movzx r14d, di
mov qword [rsp + 0x80], rax
cmove rbx, rax
movsx bx, r15b
xchg r15, rsi
movabs rax, 0x178dd9cfd41ab93e
not r14
mov qword [rsp + 0x88], rax
cmovge r14w, r10w
movsx rbx, r12w
bswap ebx
movabs rax, 0xafe3d510c4170ff7
bswap rsi
mov qword [rsp + 0x90], rax
cdqe
mov r15b, r12b
movabs rax, 0xf2b1d93b98f8762c
movsx r12w, sil
mov qword [rsp + 0x98], rax
cwde
not r15w
movzx r15w, r15b
movabs rax, 0x9086a47a193ab849
movzx r12w, r12b
movzx rsi, ax
movsxd rbx, edx
mov qword [rsp + 0xa0], rax
cwde
movzx r15, ax
setg r12b
movabs rax, 0xf9f44acd0c6a853c
movzx r15, ax
mov r14w, r9w
mov qword [rsp + 0xa8], rax
movabs rax, 0x46ec87c61fbaad11
mov qword [rsp + 0xb0], rax
xchg si, bx
movabs rax, 0x5102c52d8dbf581e
xchg r14b, sil
setp bh
not r12w
mov qword [rsp + 0xb8], rax
movabs rax, 0x9f52a16fed4b976f
mov sil, 0x3a
movsx si, sil
mov qword [rsp + 0xc0], rax
mov r15b, r13b
movabs rax, 0xf6a5483bf0ec9ca3
movzx r15, di
movsx r15w, bl
cmovge ebx, r15d
mov qword [rsp + 0xc8], rax
mov r15b, 0xef
movzx r14d, bx
movabs rax, 0x60e699bcbdc17680
movsx rbx, ax
movzx r12w, r15b
mov qword [rsp + 0xd0], rax
xchg r14, r12
movsx r14d, r9w
movabs rax, 0xbd6f0372efe2893d
movzx rbx, r14w
mov qword [rsp + 0xd8], rax
mov r14w, r8w
movabs rax, 0x98880c705ee3d44a
movsx r15d, sp
movzx r12w, r8b
mov qword [rsp + 0xe0], rax
movabs rax, 0x9b7661660ff4953f
movsxd rbx, r9d
mov qword [rsp + 0xe8], rax
sets r12b
nop
not ah
movabs rax, 0x53d62999d3e90ae0
mov qword [rsp + 0xf0], rax
movabs rax, 0xc69b1bd14864426
xchg r14b, r12b
cmovns r12w, cx
mov qword [rsp + 0xf8], rax
movzx r12, r8w
movabs rax, 0x56abc9090122ed13
mov qword [rsp + 0x100], rax
cmovge r12d, ebx
movabs rax, 0xf54db3f725dd577b
xchg r15b, bl
movsx rbx, r12w
not bl
mov qword [rsp + 0x108], rax
bswap ax
movzx r14w, al
movabs rax, 0x12e9428a7f611679
mov r15b, r11b
jmp 0x1403b4738
mov qword [rsp + 0x110], rax
movsx r14, r12w
cwde
movsx eax, r13w
movabs rax, 0x187f5c28d0b2d517
movzx r14w, r15b
mov qword [rsp + 0x118], rax
movzx ax, r9b
mov qword [rsp + 0x130], rbp
mov qword [rsp + 0x138], rdi
jmp 0x1403b477c
movabs rbx, 0xbbeab153fb5d239f
movsx ax, sil
lahf
mov qword [rsp + 0x140], rbx
lahf
movsx r15w, al
movabs rsi, 0xd0ef716b104bac0
cdqe
cmovl ax, bp
jmp 0x1403b47af
mov qword [rsp + 0x148], rsi
not r15b
movzx r14, r15w
movabs r14, 0x230f6ec11c7484f9
movsxd r15, ebx
mov qword [rsp + 0x150], r14
movabs r15, 0x177b1b24c239afc2
not r12w
movsx rax, r13w
jmp 0x1403b47ea
mov qword [rsp + 0x158], r15
xchg r12w, ax
movsx rax, r14w
movabs rax, 0x312d46b71426ae23
mov qword [rsp + 0x160], rax
cmovo r12d, r10d
movabs rax, 0x17e9d9ead43ab904
movzx r12, bp
mov qword [rsp + 0x168], rax
jmp 0x1403b482b
movabs rax, 0xaf90d535c41d0ffd
movsxd r12, ebp
mov qword [rsp + 0x170], rax
bswap r12d
jmp 0x1403b4848
movabs rax, 0xf2ded97898f27626
mov qword [rsp + 0x178], rax
mov ax, 0x2b58
movabs rax, 0x90e5a41b194eb827
not r12b
jmp 0x1403b4870
mov qword [rsp + 0x180], rax
movabs rax, 0xf9814abe0c4a8548
mov qword [rsp + 0x188], rax
movsx eax, r12w
not ax
movabs rax, 0x469e87a91fcaad61
bswap r12w
movsx r12w, r11b
not r12b
mov qword [rsp + 0x190], rax
movzx eax, dx
movsx rax, r9w
movabs rax, 0x516cc54c8d9f586a
movsx r12d, r15w
mov qword [rsp + 0x198], rax
movzx eax, r12w
bswap r12w
movabs rax, 0x9f20a11fed6b970b
cmovg r12w, r10w
movzx r12d, cx
setnp r12b
mov qword [rsp + 0x1a0], rax
movzx ax, r12b
cwde
bswap eax
movabs rax, 0xf6c14852f09a9ccc
movsxd r12, r13d
movzx r12w, spl
mov qword [rsp + 0x1a8], rax
movsx r12, r12w
movabs rax, 0x60c699ddbde176e5
not r12b
movzx r12d, r12w
mov qword [rsp + 0x1b0], rax
setg r12b
movzx r12, r8w
movabs rax, 0xbd0a0300ef81894e
jmp 0x1403b4949
mov qword [rsp + 0x1b8], rax
movzx r12w, bl
cbw
movabs rax, 0x98e00c035e8dd42f
xchg r12b, r12b
movzx r12d, ax
movzx r12, r9w
mov qword [rsp + 0x1c0], rax
movabs rax, 0x9b0161460f809550
bswap r12d
xchg r12b, r12b
mov qword [rsp + 0x1c8], rax
xchg r12, rax
movzx ax, sil
movabs rax, 0x53f629f1d39d0a89
jmp 0x1403b49a3
mov qword [rsp + 0x1d0], rax
movsxd r12, r11d
movabs rax, 0xc1ab1d414ee4452
movsxd r12, esi
mov qword [rsp + 0x1d8], rax
movzx r12d, r13w
lahf
movabs rax, 0x56cdc967014bed33
movzx r12, r9w
seta r12b
not r12
mov qword [rsp + 0x1e0], rax
movzx ax, dl
movzx rax, cx
movabs rax, 0xf52cb39a25af5714
mov qword [rsp + 0x1e8], rax
movabs rax, 0x128742e57f08160d
movsx r12d, r11w
bswap r12w
movzx r12d, ax
mov qword [rsp + 0x1f0], rax
bswap r12
cmovne r12w, dx
movabs rax, 0x187f5c28d0b2d536
mov qword [rsp + 0x1f8], rax
jmp 0x1403b4a43
lea r12, [rsp + 0x130]
mov rax, r12
jmp 0x1403b4a53
movaps xmm0, xmmword [rsp + 0x50]
jmp 0x1403b4a5d
xorps xmm0, xmmword [rax]
movaps xmmword [rsp + 0x50], xmm0
jmp 0x1403b4a6a
movaps xmm0, xmmword [rsp + 0x60]
xorps xmm0, xmmword [rax + 0x10]
movaps xmmword [rsp + 0x60], xmm0
jmp 0x1403b4a7d
movaps xmm0, xmmword [rsp + 0x70]
jmp 0x1403b4a87
xorps xmm0, xmmword [rax + 0x20]
movaps xmmword [rsp + 0x70], xmm0
jmp 0x1403b4a95
movaps xmm0, xmmword [rsp + 0x80]
jmp 0x1403b4aa2
xorps xmm0, xmmword [rax + 0x30]
movaps xmmword [rsp + 0x80], xmm0
jmp 0x1403b4ab3
movaps xmm0, xmmword [rsp + 0x90]
jmp 0x1403b4ac0
xorps xmm0, xmmword [rax + 0x40]
movaps xmmword [rsp + 0x90], xmm0
movaps xmm0, xmmword [rsp + 0xa0]
xorps xmm0, xmmword [rax + 0x50]
movaps xmmword [rsp + 0xa0], xmm0
movaps xmm0, xmmword [rsp + 0xb0]
jmp 0x1403b4aed
xorps xmm0, xmmword [rax + 0x60]
movaps xmmword [rsp + 0xb0], xmm0
jmp 0x1403b4afe
movaps xmm0, xmmword [rsp + 0xc0]
jmp 0x1403b4b0b
xorps xmm0, xmmword [rax + 0x70]
movaps xmmword [rsp + 0xc0], xmm0
jmp 0x1403b4b1c
movaps xmm0, xmmword [rsp + 0xd0]
jmp 0x1403b4b29
xorps xmm0, xmmword [rax + 0x80]
movaps xmmword [rsp + 0xd0], xmm0
movaps xmm0, xmmword [rsp + 0xe0]
jmp 0x1403b4b45
xorps xmm0, xmmword [rax + 0x90]
movaps xmmword [rsp + 0xe0], xmm0
movaps xmm0, xmmword [rsp + 0xf0]
jmp 0x1403b4b61
xorps xmm0, xmmword [rax + 0xa0]
movaps xmmword [rsp + 0xf0], xmm0
jmp 0x1403b4b75
movaps xmm0, xmmword [rsp + 0x100]
jmp 0x1403b4b82
xorps xmm0, xmmword [rax + 0xb0]
movaps xmmword [rsp + 0x100], xmm0
jmp 0x1403b4b96
movaps xmm0, xmmword [rsp + 0x110]
jmp 0x1403b4ba3
xorps xmm0, xmmword [rax + 0xc0]
movaps xmmword [rsp + 0x110], xmm0
movzx r8w, r8b
mov qword [rsp + 0x30], r13
cdqe
mov eax, dword [rsp + 0x4c]
mov dword [rsp + 0x28], eax
bswap r13d
mov rax, qword [rsp + 0x128]
movzx r8w, bl
mov ch, 0xae
cwd
mov qword [rsp + 0x20], rax
lea r8, [rsp + 0x50]
cdq
cwd
bswap r13w
lea r9, [rsp + 0x200]
movsx ecx, ax
cdq
mov edx, 0x400
mov cx, r8w
movsxd r13, esi
lea r13, [rsp + 0x280]
mov rcx, r13
call fcn.1403b4ddf
mov rcx, qword [rsp + 0x40]
jmp 0x1403b4c1e
call qword [sym.imp.KERNEL32.dll_LocalFree]
movabs rax, 0xe7e335d9976c2b13
jmp 0x1403b4c33
mov qword [rsp + 0x50], rax
movsx ax, r12b
movsxd rax, r14d
mov rax, 0x3b6148af
movabs rax, 0x6cc902b5d4bb29d2
jmp 0x1403b4c56
mov qword [rsp + 0x58], rax
movabs rax, 0xbbcab121fb3223ed
jmp 0x1403b4c6a
mov qword [rsp + 0x60], rax
mov eax, 0x66f8114e
jmp 0x1403b4c79
movabs rax, 0xd7bf775b167baaf
jmp 0x1403b4c88
mov qword [rsp + 0x68], rax
movzx eax, r14w
cmovnp ax, r13w
movabs rax, 0x236b6ea41c06848b
jmp 0x1403b4ca5
mov qword [rsp + 0x70], rax
lahf
movabs rax, 0x177b1b24c239afe3
mov qword [rsp + 0x78], rax
jmp 0x1403b4cbf
mov qword [rsp + 0x130], rbp
jmp 0x1403b4ccc
mov qword [rsp + 0x138], rdi
mov qword [rsp + 0x140], rbx
jmp 0x1403b4ce1
mov qword [rsp + 0x148], rsi
jmp 0x1403b4cee
mov qword [rsp + 0x150], r14
mov qword [rsp + 0x158], r15
jmp 0x1403b4d03
movaps xmm0, xmmword [rsp + 0x50]
jmp 0x1403b4d0d
xorps xmm0, xmmword [r12]
movaps xmmword [rsp + 0x50], xmm0
jmp 0x1403b4d1c
movaps xmm0, xmmword [rsp + 0x60]
jmp 0x1403b4d26
xorps xmm0, xmmword [r12 + 0x10]
movaps xmmword [rsp + 0x60], xmm0
jmp 0x1403b4d36
movaps xmm0, xmmword [rsp + 0x70]
jmp 0x1403b4d40
xorps xmm0, xmmword [r12 + 0x20]
movaps xmmword [rsp + 0x70], xmm0
inc r8w
sal dx, 0xc3
lea r8, [rsp + 0x50]
btc edx, 0x8c
sal r9b, cl
rol dl, 0xb3
xor ecx, ecx
mov rdx, r13
mov r9d, 0x10
jmp 0x1403b4d72
call qword [sym.imp.USER32.dll_MessageBoxW]
mov eax, dword [0x1400dd058]
mov r10, 0xffffffffffffffff
jmp 0x1403b4d8b
xor edx, edx
jmp 0x1403b4d92
syscall
add rsp, 0xa88
movzx r13, si
movsx r14w, al
pop rbx
jmp 0x1403b4daa
pop rbp
movsx si, sil
pop rdi
pop rsi
pop r12
bswap r13w
cmovne r13d, esi
jmp 0x1403b4dc1
pop r13
movzx r15d, r9w
pop r14
movzx r15w, r14b
jmp 0x1403b4dd7
pop r15
jmp 0x1403b4dde
ret