Function at 0x1403ab945
Capabilities:
Encrypt data using speck

Disassembly:
push r15
jmp 0x1403ab958
push r14
stc
cmc
push r13
clc
push r12
push rsi
push rdi
shr sil, 0xef
push rbp
shrd ebp, ebx, 0xc
push rbx
test bx, r11w
mov bp, 0x1a75
sub rsp, 0xa88
setge dil
mov rsi, rcx
mov qword [rsp + 0x40], 0
shl bp, 0xfb
xor rdi, 0x41a952a2
movabs rbp, 0xe78235ad970d2b55
clc
bsr di, sp
and di, r10w
movabs rdi, 0x6cbb02d0d49b29be
cmc
cmp dl, 1
mov qword [rsp + 0x128], r8
jmp 0x1403ab9c5
mov dword [rsp + 0x4c], r9d
jmp 0x1403ab9cf
jne 0x1403aba99
movabs rax, 0xe7f735c197612b70
movsxd rcx, r11d
movsx ecx, r11w
cmovns rcx, r14
mov qword [rsp + 0x130], rax
mov rax, rdi
movsx rcx, bp
mov qword [rsp + 0x138], rax
setge cl
mov rcx, rbp
jmp 0x1403aba0c
mov qword [rsp + 0x280], rcx
mov qword [rsp + 0x288], rax
setle ah
nop
lea rax, [rsp + 0x280]
jmp 0x1403aba2d
movaps xmm0, xmmword [rsp + 0x130]
jmp 0x1403aba3a
xorps xmm0, xmmword [rax]
movaps xmmword [rsp + 0x130], xmm0
lea rcx, [rsp + 0x200]
jmp 0x1403aba52
lea r8, [rsp + 0x130]
mov rdx, 0x6f1d7a97
movsxd r9, ebx
jmp 0x1403aba69
mov edx, 0x40
mov r9b, 0xe4
mov r9, rsi
call fcn.1403ac762
mov ecx, 0x13ff
cmc
sub edx, edx
xchg r8, r8
cmovl r8d, r12d
movzx r8, bx
mov r8d, esi
jmp 0x1403aba94
jmp 0x1403abdb2
mov ebx, edx
movzx ax, r11b
movsxd rax, esi
movabs rax, 0xe7ee358897752b65
jmp 0x1403abab2
mov qword [rsp + 0x130], rax
movsx eax, bp
nop
mov ah, 0xaf
movabs rax, 0x6cbb02d0d4c329d2
jmp 0x1403abad1
mov qword [rsp + 0x138], rax
not al
movsx eax, r14w
cdqe
mov rax, rbp
jmp 0x1403abae9
mov qword [rsp + 0x280], rax
cbw
bswap ax
mov rax, rdi
mov qword [rsp + 0x288], rax
lea rax, [rsp + 0x280]
jmp 0x1403abb0e
movaps xmm0, xmmword [rsp + 0x130]
jmp 0x1403abb1b
xorps xmm0, xmmword [rax]
movaps xmmword [rsp + 0x130], xmm0
bswap cx
jmp 0x1403abb2e
lea rcx, [rsp + 0x200]
lea r8, [rsp + 0x130]
mov edx, 0x40
movzx r9, cx
mov r9, rsi
jmp 0x1403abb4f
call fcn.1403ac762
test bl, bl
jmp 0x1403abb5b
je 0x1403abd0c
movzx eax, bl
cmp eax, 2
jmp 0x1403abb6c
jne 0x1403abd19
movabs r14, 0xcbf29ce484222325
mov cx, 0x6f2
movsx ecx, r10w
movzx cx, bpl
mov ecx, esi
jmp 0x1403abb90
call sub.ntdll.dll_RtlNtStatusToDosError
mov r8d, eax
sal cx, cl
clc
cwd
mov rax, qword gs:[0x30]
movzx r15, di
rcl r15d, 0xc2
cdq
mov rax, qword [rax + 0x60]
setae dh
shr r15b, cl
mov r11, qword [rax + 0x18]
adc cl, 0x91
jmp 0x1403abbcc
add r11, 0x10
movabs rdx, 0x2cc10c8855a9a8cd
movsx r15w, r14b
not r15
movzx r15, sp
movabs r15, 0x1d12a89b9e723ff5
movsx rcx, dx
bswap cx
mov cl, dh
mov ecx, 0x1bff
jmp 0x1403abc03
jmp 0x1403abc11
cmp rax, rdx
je 0x1403abd4c
mov r11, qword [r11]
cmp r10, 0x45442efc
ror r10b, cl
bt r10d, ecx
mov r10, qword [r11 + 0x30]
stc
test r10, r10
jmp 0x1403abc2f
je 0x1403abd87
mov r12, qword [r11 + 0x60]
cmp dil, 0xd8
mov rbx, 0xffffffffffffffff
nop word cs:[rax + rax]
jmp 0x1403abc58
cmp word [r12 + rbx*2 + 2], 0
lea rbx, [rbx + 1]
jmp 0x1403abc68
jne 0x1403abc58
mov rax, r14
test rbx, rbx
jmp 0x1403abc79
je 0x1403abc08
xor esi, esi
shr di, cl
mov rbp, r14
nop word [rax + rax]
movzx eax, word [r12 + rsi*2]
jmp 0x1403abc97
lea edi, [rax - 0x41]
xchg r13b, r13b
lea r13d, [rax - 0x410]
and r9b, r9b
ror r9b, 0xb
cmc
lea r9d, [rax + 0x20]
test r11b, dl
cmp r13w, 0x20
cmovb eax, r9d
test bpl, 0x25
cmp r15b, 0xcf
cmp di, 0x1a
jmp 0x1403abccd
cmovb eax, r9d
stc
test spl, r11b
movzx eax, ax
xor rax, rbp
and bpl, 0x3c
movsxd rbp, ebp
imul rax, r15
movzx ebp, r15w
inc ebp
movsx rbp, r10w
inc esi
mov rbp, rax
cmp r11b, 0x92
cmp rsi, rbx
jmp 0x1403abd01
jb 0x1403abc8d
jmp 0x1403abc08
sub r13d, r13d
jmp 0x1403abd14
jmp 0x1403abdf1
cmp bl, 3
jmp 0x1403abd27
movzx r8d, si
movsx ecx, si
cmovne r8d, esi
movsx ecx, si
jmp 0x1403abd3d
mov ecx, 0x13ff
jmp 0x1403abd47
jmp 0x1403abdab
test r11, r11
movsxd rdi, r15d
cmove r10, r11
bswap edi
mov rdx, r10
movsx edi, bx
movabs rbp, 0xe78235ad970d2b55
movsx rdi, r13w
movsx edi, r13w
movsxd rdi, eax
movabs rdi, 0x6cbb02d0d49b29be
jmp 0x1403abd82
jmp 0x1403abdb2
movabs rbp, 0xe78235ad970d2b55
movsx rdi, sp
bsf rdi, r15
movabs rdi, 0x6cbb02d0d49b29be
test cx, 0x7512
ror ah, 0xf0
sub edx, edx
shld ax, bp, 0xe5
lea rax, [rsp + 0x40]
cmp r12d, 0x4af24eff
stc
mov qword [rsp + 0x20], rax
test cx, r13w
mov qword [rsp + 0x30], 0
cmp bpl, spl
mov dword [rsp + 0x28], 0
stc
cmc
xor r9d, r9d
jmp 0x1403abde6
call qword [sym.imp.KERNEL32.dll_FormatMessageW]
mov r13, qword [rsp + 0x40]
lea rcx, [rsp + 0x280]
bswap r8d
mov r8d, 0x800
xor edx, edx
jmp 0x1403abe09
call fcn.1404a0324
movabs rax, 0xe7ed35df977f2b10
mov qword [rsp + 0x50], rax
cmovb eax, edx
movabs rax, 0x6c9e02f0d4a129cc
xchg r12, r14
movzx ebx, di
movsxd r15, r14d
mov qword [rsp + 0x58], rax
xchg al, sil
movsx r12w, r12b
mov al, 0xbe
movabs rax, 0xbb83b115fb5723ec
not r12b
cmovnp bx, ax
bswap ebx
mov qword [rsp + 0x60], rax
lahf
jmp 0x1403abe60
movabs rax, 0xd2ef72cb161baac
mov qword [rsp + 0x68], rax
xchg bx, ax
movsx ax, spl
movabs rax, 0x23396ef01c4484dc
movsx r12d, r13w
setno r15b
mov qword [rsp + 0x70], rax
movsxd r15, r15d
movsx r15w, bpl
lahf
movabs rax, 0x17711b7cc255afae
mov bl, 0x39
bswap r15
mov qword [rsp + 0x78], rax
movzx r15, r11w
movabs rax, 0x314846d9144fae6f
movsx rbx, bp
mov qword [rsp + 0x80], rax
movzx esi, sp
not r14b
movsx si, r13b
movabs rax, 0x178dd9cfd41ab93e
movzx rbx, r15w
mov qword [rsp + 0x88], rax
movabs rax, 0xafe3d510c4170ff7
movsx r15d, r15w
mov qword [rsp + 0x90], rax
movzx rsi, bx
movsx esi, sp
bswap bx
movabs rax, 0xf2b1d93b98f8762c
bswap esi
mov qword [rsp + 0x98], rax
movabs rax, 0x9086a47a193ab849
mov r15b, al
mov bl, 0x62
mov qword [rsp + 0xa0], rax
movabs rax, 0xf9f44acd0c6a853c
movsx r12, r9w
mov qword [rsp + 0xa8], rax
movsxd r15, r12d
bswap rbx
movabs rax, 0x46ec87c61fbaad11
movzx r15, ax
xchg r14w, r12w
movsxd rbx, edi
mov qword [rsp + 0xb0], rax
cbw
movabs rax, 0x5102c52d8dbf581e
mov qword [rsp + 0xb8], rax
cbw
movzx bx, ch
movabs rax, 0x9f52a16fed4b976f
movsx si, r11b
setle bl
not bx
mov qword [rsp + 0xc0], rax
mov bl, sil
mov r15b, 0xc7
movabs rax, 0xf6a5483bf0ec9ca3
mov qword [rsp + 0xc8], rax
cdqe
movabs rax, 0x60e699bcbdc17680
movsx r12w, spl
mov qword [rsp + 0xd0], rax
movabs rax, 0xbd6f0372efe2893d
mov qword [rsp + 0xd8], rax
mov r12b, bl
mov si, 0x6d1b
bswap rsi
movabs rax, 0x98880c705ee3d44a
bswap r14d
movsx esi, bp
mov qword [rsp + 0xe0], rax
movabs rax, 0x9b7661660ff4953f
mov qword [rsp + 0xe8], rax
movabs rax, 0x53d62999d3e90ae0
not bx
mov qword [rsp + 0xf0], rax
movabs rax, 0xc69b1bd14864426
cmovl r14w, dx
movzx r12d, bp
mov qword [rsp + 0xf8], rax
cwde
movsx rbx, r9w
movsxd rax, ebp
movabs rax, 0x56abc9090122ed13
jmp 0x1403ac062
mov qword [rsp + 0x100], rax
mov r14b, spl
xchg ah, bl
movabs rax, 0xf54db3f725dd577b
mov qword [rsp + 0x108], rax
cmovae r14d, ecx
movsx eax, di
jmp 0x1403ac08d
movabs rax, 0x12e9428a7f611679
mov r12b, 0x58
mov qword [rsp + 0x110], rax
movsxd rsi, ebp
mov r15b, 0x10
cbw
movabs rax, 0x187f5c28d0b2d517
mov qword [rsp + 0x118], rax
movzx si, dil
mov r15b, r14b
bswap eax
mov qword [rsp + 0x130], rbp
lahf
not r15d
mov qword [rsp + 0x138], rdi
mov si, 0x3bdb
cbw
cdqe
movabs rbx, 0xbbeab153fb5d239f
jmp 0x1403ac0f1
mov qword [rsp + 0x140], rbx
cdqe
movabs rsi, 0xd0ef716b104bac0
movsxd rax, r15d
mov qword [rsp + 0x148], rsi
jmp 0x1403ac119
movabs r14, 0x230f6ec11c7484f9
movsxd rax, ebp
not ah
mov qword [rsp + 0x150], r14
jmp 0x1403ac139
movabs r15, 0x177b1b24c239afc2
cbw
xchg r12w, ax
movsx ax, dil
mov qword [rsp + 0x158], r15
movsx rax, ax
movzx eax, r10w
mov rax, 0x71a97584
movabs rax, 0x312d46b71426ae23
movsxd r12, r14d
movzx r12d, sp
mov qword [rsp + 0x160], rax
movzx eax, r15w
movsx r12, di
movabs rax, 0x17e9d9ead43ab904
mov qword [rsp + 0x168], rax
movabs rax, 0xaf90d535c41d0ffd
xchg r12w, r12w
cmovne r12d, ecx
mov qword [rsp + 0x170], rax
jmp 0x1403ac1b8
movabs rax, 0xf2ded97898f27626
movsx r12, r15w
mov qword [rsp + 0x178], rax
movabs rax, 0x90e5a41b194eb827
mov r12b, r14b
mov r12, 0x359f1604
movzx r12, r10w
mov qword [rsp + 0x180], rax
setge r12b
cbw
cmovne r12w, r8w
movabs rax, 0xf9814abe0c4a8548
mov qword [rsp + 0x188], rax
mov ax, 0x6070
movsx rax, bp
cmovp rax, r9
movabs rax, 0x469e87a91fcaad61
mov qword [rsp + 0x190], rax
cwde
movabs rax, 0x516cc54c8d9f586a
movsx r12d, r12w
jmp 0x1403ac242
mov qword [rsp + 0x198], rax
cdqe
movsx r12w, r10b
movabs rax, 0x9f20a11fed6b970b
movsx r12w, spl
mov qword [rsp + 0x1a0], rax
bswap r12w
movabs rax, 0xf6c14852f09a9ccc
mov qword [rsp + 0x1a8], rax
cmovo eax, esp
cdqe
movsx eax, cx
movabs rax, 0x60c699ddbde176e5
movsxd r12, edi
movzx r12w, dl
mov qword [rsp + 0x1b0], rax
mov ax, r10w
movabs rax, 0xbd0a0300ef81894e
mov qword [rsp + 0x1b8], rax
movzx rax, r12w
movabs rax, 0x98e00c035e8dd42f
movzx r12, r14w
xchg r12b, r12b
cmovp r12w, r12w
mov qword [rsp + 0x1c0], rax
bswap r12d
movabs rax, 0x9b0161460f809550
movsx r12, r14w
setae r12b
cmovs r12w, r9w
mov qword [rsp + 0x1c8], rax
lahf
cdqe
movzx r12d, r15w
movabs rax, 0x53f629f1d39d0a89
bswap r12w
mov qword [rsp + 0x1d0], rax
cmovp r12, r13
movzx r12, ax
jmp 0x1403ac324
movabs rax, 0xc1ab1d414ee4452
setl r12b
mov qword [rsp + 0x1d8], rax
lahf
movzx r12, ax
movabs rax, 0x56cdc967014bed33
mov r12w, cx
movsx r12, dx
jmp 0x1403ac356
mov qword [rsp + 0x1e0], rax
nop
movsxd r12, r12d
movabs rax, 0xf52cb39a25af5714
movsx r12d, r12w
mov qword [rsp + 0x1e8], rax
cwde
cbw
cdqe
movabs rax, 0x128742e57f08160d
movsx r12, r9w
mov qword [rsp + 0x1f0], rax
movabs rax, 0x187f5c28d0b2d536
setbe r12b
cmove r12w, sp
mov qword [rsp + 0x1f8], rax
cwde
lahf
movsx eax, r14w
lea r12, [rsp + 0x130]
movsx eax, r11w
mov rax, r12
jmp 0x1403ac3c9
movaps xmm0, xmmword [rsp + 0x50]
jmp 0x1403ac3d3
xorps xmm0, xmmword [rax]
movaps xmmword [rsp + 0x50], xmm0
jmp 0x1403ac3e0
movaps xmm0, xmmword [rsp + 0x60]
jmp 0x1403ac3ea
xorps xmm0, xmmword [rax + 0x10]
movaps xmmword [rsp + 0x60], xmm0
jmp 0x1403ac3f8
movaps xmm0, xmmword [rsp + 0x70]
xorps xmm0, xmmword [rax + 0x20]
movaps xmmword [rsp + 0x70], xmm0
jmp 0x1403ac40b
movaps xmm0, xmmword [rsp + 0x80]
jmp 0x1403ac418
xorps xmm0, xmmword [rax + 0x30]
movaps xmmword [rsp + 0x80], xmm0
jmp 0x1403ac429
movaps xmm0, xmmword [rsp + 0x90]
jmp 0x1403ac436
xorps xmm0, xmmword [rax + 0x40]
movaps xmmword [rsp + 0x90], xmm0
jmp 0x1403ac447
movaps xmm0, xmmword [rsp + 0xa0]
jmp 0x1403ac454
xorps xmm0, xmmword [rax + 0x50]
movaps xmmword [rsp + 0xa0], xmm0
jmp 0x1403ac465
movaps xmm0, xmmword [rsp + 0xb0]
jmp 0x1403ac472
xorps xmm0, xmmword [rax + 0x60]
movaps xmmword [rsp + 0xb0], xmm0
jmp 0x1403ac483
movaps xmm0, xmmword [rsp + 0xc0]
xorps xmm0, xmmword [rax + 0x70]
movaps xmmword [rsp + 0xc0], xmm0
movaps xmm0, xmmword [rsp + 0xd0]
xorps xmm0, xmmword [rax + 0x80]
movaps xmmword [rsp + 0xd0], xmm0
movaps xmm0, xmmword [rsp + 0xe0]
jmp 0x1403ac4bb
xorps xmm0, xmmword [rax + 0x90]
movaps xmmword [rsp + 0xe0], xmm0
jmp 0x1403ac4cf
movaps xmm0, xmmword [rsp + 0xf0]
jmp 0x1403ac4dc
xorps xmm0, xmmword [rax + 0xa0]
movaps xmmword [rsp + 0xf0], xmm0
movaps xmm0, xmmword [rsp + 0x100]
jmp 0x1403ac4f8
xorps xmm0, xmmword [rax + 0xb0]
movaps xmmword [rsp + 0x100], xmm0
jmp 0x1403ac50c
movaps xmm0, xmmword [rsp + 0x110]
jmp 0x1403ac519
xorps xmm0, xmmword [rax + 0xc0]
movaps xmmword [rsp + 0x110], xmm0
lahf
mov dh, 0x77
jmp 0x1403ac531
mov qword [rsp + 0x30], r13
cdqe
movsx eax, r11w
cmovge r8w, r12w
mov eax, dword [rsp + 0x4c]
cdq
mov dword [rsp + 0x28], eax
rdtsc
cwde
mov rax, qword [rsp + 0x128]
mov qword [rsp + 0x20], rax
cmovns dx, r10w
lea r8, [rsp + 0x50]
lea r9, [rsp + 0x200]
mov edx, 0x400
lea r13, [rsp + 0x280]
mov rcx, r13
jmp 0x1403ac581
call fcn.1403ac762
mov rcx, qword [rsp + 0x40]
jmp 0x1403ac590
call qword [sym.imp.KERNEL32.dll_LocalFree]
movabs rax, 0xe7e335d9976c2b13
mov qword [rsp + 0x50], rax
cmovs ax, r12w
movzx eax, sp
not al
movabs rax, 0x6cc902b5d4bb29d2
jmp 0x1403ac5be
mov qword [rsp + 0x58], rax
cmovge eax, r10d
lahf
movsx rax, dx
movabs rax, 0xbbcab121fb3223ed
mov qword [rsp + 0x60], rax
movsx rax, r11w
movabs rax, 0xd7bf775b167baaf
jmp 0x1403ac5ee
mov qword [rsp + 0x68], rax
cmovp ax, r11w
movsxd rax, r13d
jmp 0x1403ac600
movabs rax, 0x236b6ea41c06848b
jmp 0x1403ac60f
mov qword [rsp + 0x70], rax
movsx rax, cx
sets al
movzx ax, sil
movabs rax, 0x177b1b24c239afe3
jmp 0x1403ac62f
mov qword [rsp + 0x78], rax
jmp 0x1403ac639
mov qword [rsp + 0x130], rbp
jmp 0x1403ac646
mov qword [rsp + 0x138], rdi
jmp 0x1403ac653
mov qword [rsp + 0x140], rbx
jmp 0x1403ac660
mov qword [rsp + 0x148], rsi
jmp 0x1403ac66d
mov qword [rsp + 0x150], r14
jmp 0x1403ac67a
mov qword [rsp + 0x158], r15
movaps xmm0, xmmword [rsp + 0x50]
jmp 0x1403ac68c
xorps xmm0, xmmword [r12]
movaps xmmword [rsp + 0x50], xmm0
jmp 0x1403ac69b
movaps xmm0, xmmword [rsp + 0x60]
jmp 0x1403ac6a5
xorps xmm0, xmmword [r12 + 0x10]
movaps xmmword [rsp + 0x60], xmm0
jmp 0x1403ac6b5
movaps xmm0, xmmword [rsp + 0x70]
jmp 0x1403ac6bf
xorps xmm0, xmmword [r12 + 0x20]
movaps xmmword [rsp + 0x70], xmm0
lea r8, [rsp + 0x50]
adc r9b, 0x22
xor ecx, ecx
not r9b
mov rdx, r13
movsx r9, r13w
movsxd r9, eax
mov r9d, 0x10
jmp 0x1403ac6ed
call qword [sym.imp.USER32.dll_MessageBoxW]
mov eax, dword [0x1400dd058]
not r10b
ror r10b, 0xa4
mov r10, 0xffffffffffffffff
clc
xor edx, edx
jmp 0x1403ac70f
syscall
add rsp, 0xa88
mov sil, 0xc8
cmovo si, r14w
bswap r13
pop rbx
mov r14b, 0x54
movsx r13w, r10b
movzx edi, ax
pop rbp
mov dil, r12b
pop rdi
pop rsi
bswap r14
jmp 0x1403ac73d
pop r12
pop r13
bswap r15w
mov r15b, 0x6a
movzx r14w, dl
pop r14
movsx r15d, bp
not r15b
setge r15b
pop r15
jmp 0x1403ac761
ret