Function at 0x1403acdbd
Capabilities:
Encrypt data using speck

Disassembly:
push r15
test r13b, 0x74
cmp ebx, 0x2fbd6d8d
push r14
push r13
stc
cmp dl, 0x6e
push r12
cmc
push rsi
push rdi
movzx edi, r9w
cmp r10b, 0x23
adc sil, r11b
push rbp
mov dil, 0xdf
ror dil, cl
rol edi, 0xcc
push rbx
adc bpl, bl
movzx rsi, dx
sub rsp, 0xa88
and dil, 0xe5
setae sil
mov rsi, rcx
rcl bpl, 0xb5
btc edi, r14d
shr bpl, 0xc7
mov qword [rsp + 0x40], 0
movabs rbp, 0xe78235ad970d2b55
add edi, esi
adc dil, dl
btr di, bp
movabs rdi, 0x6cbb02d0d49b29be
cmp dl, 1
jmp 0x1403ace3f
mov qword [rsp + 0x128], r8
mov dword [rsp + 0x4c], r9d
jmp 0x1403ace51
jne 0x1403acf24
movabs rax, 0xe7f735c197612b70
mov cx, 0x189
bswap cx
mov qword [rsp + 0x130], rax
mov rcx, rdx
movsx rcx, r9w
bswap ax
mov rax, rdi
mov qword [rsp + 0x138], rax
mov rcx, rbp
mov qword [rsp + 0x280], rcx
jmp 0x1403ace95
mov qword [rsp + 0x288], rax
movzx rax, si
mov al, r8b
mov ax, 0x620c
lea rax, [rsp + 0x280]
jmp 0x1403aceb5
movaps xmm0, xmmword [rsp + 0x130]
jmp 0x1403acec2
xorps xmm0, xmmword [rax]
movaps xmmword [rsp + 0x130], xmm0
movzx dx, r13b
not r8w
lea rcx, [rsp + 0x200]
lea r8, [rsp + 0x130]
movsxd r9, eax
mov r9, 0x7974064a
setge dl
mov edx, 0x40
movzx r9, r12w
mov r9, rsi
jmp 0x1403acf04
call fcn.1403adb65
mov ecx, 0x13ff
xchg r8w, r8w
adc r8b, al
xor edx, edx
mov r8d, esi
jmp 0x1403acf1f
jmp 0x1403ad234
mov ebx, edx
mov ax, cx
movsxd rax, esi
bswap ax
movabs rax, 0xe7ee358897752b65
jmp 0x1403acf3e
mov qword [rsp + 0x130], rax
movsx ax, dl
xchg ah, ah
movsx rax, r10w
movabs rax, 0x6cbb02d0d4c329d2
jmp 0x1403acf5f
mov qword [rsp + 0x138], rax
mov ax, sp
bswap ax
mov rax, rbp
jmp 0x1403acf75
mov qword [rsp + 0x280], rax
cmova eax, r14d
mov rax, rdi
jmp 0x1403acf89
mov qword [rsp + 0x288], rax
movsx eax, si
bswap ax
lea rax, [rsp + 0x280]
movaps xmm0, xmmword [rsp + 0x130]
jmp 0x1403acfac
xorps xmm0, xmmword [rax]
movaps xmmword [rsp + 0x130], xmm0
not ch
lea rcx, [rsp + 0x200]
cqo
movsxd r8, edi
lea r8, [rsp + 0x130]
mov r9, 0x6dbc5dc8
setg dl
jmp 0x1403acfdd
mov edx, 0x40
cmovs r9d, ebx
mov r9, rsi
jmp 0x1403acfee
call fcn.1403adb65
test bl, bl
jmp 0x1403acffa
je 0x1403ad193
movzx eax, bl
cmp eax, 2
jmp 0x1403ad00b
jne 0x1403ad1a0
movabs r14, 0xcbf29ce484222325
mov ecx, esi
jmp 0x1403ad022
call sub.ntdll.dll_RtlNtStatusToDosError
mov r8d, eax
add r15w, r10w
bt ax, 0x30
mov rax, qword gs:[0x30]
movzx ecx, ax
test esp, r13d
sub r15b, r15b
mov rax, qword [rax + 0x60]
or dl, 0x8f
ror dx, 0x11
mov r11, qword [rax + 0x18]
btc dx, r13w
add r11, 0x10
movabs rdx, 0x2cc10c8855a9a8cd
movabs r15, 0x1d12a89b9e723ff5
not ch
mov cx, 0x73fd
mov ecx, 0x1bff
jmp 0x1403ad08f
cmp rax, rdx
jmp 0x1403ad089
je 0x1403ad1ce
mov r11, qword [r11]
bts r10d, r14d
mov r10, qword [r11 + 0x30]
test r14b, r12b
test r10, r10
je 0x1403ad20e
mov r12, qword [r11 + 0x60]
mov rbx, 0xffffffffffffffff
cmp r12b, r13b
nop word cs:[rax + rax]
cmp r11d, 0x4aac418d
cmp word [r12 + rbx*2 + 2], 0
lea rbx, [rbx + 1]
jmp 0x1403ad0d7
jne 0x1403ad0c7
mov rax, r14
jmp 0x1403ad0e8
test rbx, rbx
je 0x1403ad081
sub esi, esi
and r13b, r9b
mov rbp, r14
rol r9w, 0x2a
sal edi, cl
nop word [rax + rax]
ror r9b, 0xab
bsr ax, r8w
movzx eax, word [r12 + rsi*2]
rcl r9, cl
sar di, cl
lea edi, [rax - 0x41]
lea r13d, [rax - 0x410]
setp r9b
rcl r9d, 0x4e
lea r9d, [rax + 0x20]
cmp r13w, 0x20
jmp 0x1403ad13a
cmovb eax, r9d
test r12w, r8w
cmc
cmp di, 0x1a
cmovb eax, r9d
test rbx, 0x1bf01bab
jmp 0x1403ad157
movzx eax, ax
cmc
xor rax, rbp
ror bpl, cl
test r11w, 0x7549
imul rax, r15
dec bpl
setp bpl
inc esi
shr ebp, cl
movsxd rbp, esi
movzx rbp, ax
mov rbp, rax
cmp rsi, rbx
jmp 0x1403ad188
jb 0x1403ad10f
jmp 0x1403ad081
sub r13d, r13d
jmp 0x1403ad19b
jmp 0x1403ad278
cmp bl, 3
movzx r8d, si
movzx ecx, r12w
movzx rcx, bp
xchg ch, ch
cmovne r8d, esi
not cl
movzx cx, r10b
movzx ecx, bp
mov ecx, 0x13ff
jmp 0x1403ad1c9
jmp 0x1403ad22d
test r11, r11
not dil
movsx bp, dl
cmove r10, r11
movzx rdx, bp
mov rdx, r10
mov dil, r12b
movabs rbp, 0xe78235ad970d2b55
movsxd rdi, edx
bswap di
movsx edi, r9w
movabs rdi, 0x6cbb02d0d49b29be
jmp 0x1403ad209
jmp 0x1403ad234
movabs rbp, 0xe78235ad970d2b55
ror dil, cl
add di, 0x518a
sal eax, 0xe5
movabs rdi, 0x6cbb02d0d49b29be
xor edx, edx
jmp 0x1403ad234
lea rax, [rsp + 0x40]
test r8b, 0x39
mov qword [rsp + 0x20], rax
jmp 0x1403ad247
mov qword [rsp + 0x30], 0
test r15b, cl
mov dword [rsp + 0x28], 0
test ax, r12w
stc
jmp 0x1403ad265
xor r9d, r9d
jmp 0x1403ad26d
call qword [sym.imp.KERNEL32.dll_FormatMessageW]
mov r13, qword [rsp + 0x40]
lea rcx, [rsp + 0x280]
btr r8, r11
mov r8d, 0x800
test r14b, bl
stc
sub edx, edx
call fcn.1404a14d1
movabs rax, 0xe7ed35df977f2b10
mov qword [rsp + 0x50], rax
movsx si, r15b
lahf
movabs rax, 0x6c9e02f0d4a129cc
mov qword [rsp + 0x58], rax
cbw
cdqe
movabs rax, 0xbb83b115fb5723ec
mov qword [rsp + 0x60], rax
movabs rax, 0xd2ef72cb161baac
mov r15, r13
mov r12, 0x5be85c3c
movzx r15, r11w
mov qword [rsp + 0x68], rax
movsx r15, cx
not bh
movabs rax, 0x23396ef01c4484dc
bswap bx
xchg sil, sil
mov qword [rsp + 0x70], rax
cbw
movabs rax, 0x17711b7cc255afae
movzx r15, dx
movsx r15, r8w
setp sil
mov qword [rsp + 0x78], rax
movsx ax, bl
movabs rax, 0x314846d9144fae6f
movsx r14d, r9w
xchg r12b, sil
mov qword [rsp + 0x80], rax
xchg r14w, ax
not r15b
movsxd r12, r8d
movabs rax, 0x178dd9cfd41ab93e
movzx r12, r13w
mov qword [rsp + 0x88], rax
mov sil, dil
movabs rax, 0xafe3d510c4170ff7
mov r15b, 0xc4
mov r14d, edx
mov qword [rsp + 0x90], rax
movabs rax, 0xf2b1d93b98f8762c
mov qword [rsp + 0x98], rax
movsxd rax, r11d
xchg bl, r12b
movabs rax, 0x9086a47a193ab849
mov qword [rsp + 0xa0], rax
cdqe
movabs rax, 0xf9f44acd0c6a853c
jmp 0x1403ad3b7
mov qword [rsp + 0xa8], rax
lahf
not r12b
movzx bx, r14b
movabs rax, 0x46ec87c61fbaad11
movsx r14, r11w
movsxd rsi, r8d
not si
mov qword [rsp + 0xb0], rax
movabs rax, 0x5102c52d8dbf581e
movzx r14d, r9w
mov qword [rsp + 0xb8], rax
cbw
movabs rax, 0x9f52a16fed4b976f
mov r12, rcx
not r15
mov qword [rsp + 0xc0], rax
movabs rax, 0xf6a5483bf0ec9ca3
mov r14d, 0x6b543129
jmp 0x1403ad42c
mov qword [rsp + 0xc8], rax
movabs rax, 0x60e699bcbdc17680
mov qword [rsp + 0xd0], rax
movzx r14, dx
movabs rax, 0xbd6f0372efe2893d
movsx r12, bp
mov qword [rsp + 0xd8], rax
movabs rax, 0x98880c705ee3d44a
movsxd r12, ecx
mov qword [rsp + 0xe0], rax
not rbx
movabs rax, 0x9b7661660ff4953f
mov qword [rsp + 0xe8], rax
cwde
movabs rax, 0x53d62999d3e90ae0
movzx r14d, dx
movzx r14, r11w
mov qword [rsp + 0xf0], rax
movabs rax, 0xc69b1bd14864426
movzx rsi, cx
movsx rsi, cx
mov qword [rsp + 0xf8], rax
bswap r15w
movabs rax, 0x56abc9090122ed13
setns r12b
cmovae r12, rax
mov qword [rsp + 0x100], rax
lahf
movsx r15d, r10w
movabs rax, 0xf54db3f725dd577b
movsx rsi, bp
cmovb r15, rbp
mov qword [rsp + 0x108], rax
movabs rax, 0x12e9428a7f611679
mov qword [rsp + 0x110], rax
movabs rax, 0x187f5c28d0b2d517
mov qword [rsp + 0x118], rax
movsx ebx, r15w
mov qword [rsp + 0x130], rbp
mov qword [rsp + 0x138], rdi
movsx r12d, r12w
movsx r14, sp
movabs rbx, 0xbbeab153fb5d239f
movzx r12, r15w
mov qword [rsp + 0x140], rbx
movsxd r15, r9d
movabs rsi, 0xd0ef716b104bac0
mov r15, rdi
mov qword [rsp + 0x148], rsi
movzx rax, dx
mov r12d, r15d
movabs r14, 0x230f6ec11c7484f9
lahf
movzx eax, bp
mov r15b, 0x9c
mov qword [rsp + 0x150], r14
movsxd r12, r10d
cbw
mov rax, 0x5892227e
movabs r15, 0x177b1b24c239afc2
movzx ax, r10b
mov r12b, 0x44
mov qword [rsp + 0x158], r15
movabs rax, 0x312d46b71426ae23
not r12b
mov r12d, r10d
mov r12b, 0x10
mov qword [rsp + 0x160], rax
lahf
cdqe
movabs rax, 0x17e9d9ead43ab904
movsx r12d, r8w
mov qword [rsp + 0x168], rax
movabs rax, 0xaf90d535c41d0ffd
mov qword [rsp + 0x170], rax
cwde
movabs rax, 0xf2ded97898f27626
movsx r12, ax
movsxd r12, esp
mov qword [rsp + 0x178], rax
movzx ax, r11b
movabs rax, 0x90e5a41b194eb827
jmp 0x1403ad62d
mov qword [rsp + 0x180], rax
movzx r12, r12w
movabs rax, 0xf9814abe0c4a8548
movsx r12, sp
setg r12b
movsx r12d, r10w
mov qword [rsp + 0x188], rax
movabs rax, 0x469e87a91fcaad61
mov qword [rsp + 0x190], rax
movabs rax, 0x516cc54c8d9f586a
movzx r12d, r13w
movsx r12, r14w
mov qword [rsp + 0x198], rax
movabs rax, 0x9f20a11fed6b970b
movsxd r12, esp
mov qword [rsp + 0x1a0], rax
movzx rax, ax
cbw
movabs rax, 0xf6c14852f09a9ccc
mov r12w, 0xf11
mov qword [rsp + 0x1a8], rax
jmp 0x1403ad6ba
movabs rax, 0x60c699ddbde176e5
jmp 0x1403ad6cd
mov qword [rsp + 0x1b0], rax
jmp 0x1403ad6da
movabs rax, 0xbd0a0300ef81894e
jmp 0x1403ad6f0
mov qword [rsp + 0x1b8], rax
xchg ah, ah
movabs rax, 0x98e00c035e8dd42f
movzx r12w, dil
xchg r12b, r12b
mov qword [rsp + 0x1c0], rax
sets al
cdqe
cbw
movabs rax, 0x9b0161460f809550
cmovl r12w, r10w
movzx r12w, r13b
movsx r12d, di
mov qword [rsp + 0x1c8], rax
bswap eax
cwde
movsxd r12, r8d
movabs rax, 0x53f629f1d39d0a89
mov qword [rsp + 0x1d0], rax
lahf
movsx r12, r15w
movabs rax, 0xc1ab1d414ee4452
mov qword [rsp + 0x1d8], rax
movsxd rax, eax
movzx eax, bp
movabs rax, 0x56cdc967014bed33
jmp 0x1403ad77f
mov qword [rsp + 0x1e0], rax
movsx rax, ax
not r12b
jmp 0x1403ad793
movabs rax, 0xf52cb39a25af5714
jmp 0x1403ad7aa
mov qword [rsp + 0x1e8], rax
movsx r12, cx
movzx eax, r14w
movabs rax, 0x128742e57f08160d
setbe r12b
mov qword [rsp + 0x1f0], rax
cmovbe r12, r10
movabs rax, 0x187f5c28d0b2d536
movzx r12, r9w
mov qword [rsp + 0x1f8], rax
cmova ax, r10w
movsx rax, si
lea r12, [rsp + 0x130]
movzx eax, sp
cdqe
mov rax, r12
movaps xmm0, xmmword [rsp + 0x50]
xorps xmm0, xmmword [rax]
movaps xmmword [rsp + 0x50], xmm0
jmp 0x1403ad815
movaps xmm0, xmmword [rsp + 0x60]
xorps xmm0, xmmword [rax + 0x10]
movaps xmmword [rsp + 0x60], xmm0
jmp 0x1403ad828
movaps xmm0, xmmword [rsp + 0x70]
jmp 0x1403ad832
xorps xmm0, xmmword [rax + 0x20]
movaps xmmword [rsp + 0x70], xmm0
movaps xmm0, xmmword [rsp + 0x80]
jmp 0x1403ad848
xorps xmm0, xmmword [rax + 0x30]
movaps xmmword [rsp + 0x80], xmm0
jmp 0x1403ad859
movaps xmm0, xmmword [rsp + 0x90]
xorps xmm0, xmmword [rax + 0x40]
movaps xmmword [rsp + 0x90], xmm0
jmp 0x1403ad872
movaps xmm0, xmmword [rsp + 0xa0]
jmp 0x1403ad87f
xorps xmm0, xmmword [rax + 0x50]
movaps xmmword [rsp + 0xa0], xmm0
jmp 0x1403ad890
movaps xmm0, xmmword [rsp + 0xb0]
jmp 0x1403ad89d
xorps xmm0, xmmword [rax + 0x60]
movaps xmmword [rsp + 0xb0], xmm0
movaps xmm0, xmmword [rsp + 0xc0]
jmp 0x1403ad8b6
xorps xmm0, xmmword [rax + 0x70]
movaps xmmword [rsp + 0xc0], xmm0
movaps xmm0, xmmword [rsp + 0xd0]
jmp 0x1403ad8cf
xorps xmm0, xmmword [rax + 0x80]
movaps xmmword [rsp + 0xd0], xmm0
movaps xmm0, xmmword [rsp + 0xe0]
jmp 0x1403ad8eb
xorps xmm0, xmmword [rax + 0x90]
movaps xmmword [rsp + 0xe0], xmm0
movaps xmm0, xmmword [rsp + 0xf0]
jmp 0x1403ad907
xorps xmm0, xmmword [rax + 0xa0]
movaps xmmword [rsp + 0xf0], xmm0
movaps xmm0, xmmword [rsp + 0x100]
jmp 0x1403ad923
xorps xmm0, xmmword [rax + 0xb0]
movaps xmmword [rsp + 0x100], xmm0
jmp 0x1403ad937
movaps xmm0, xmmword [rsp + 0x110]
jmp 0x1403ad944
xorps xmm0, xmmword [rax + 0xc0]
movaps xmmword [rsp + 0x110], xmm0
mov qword [rsp + 0x30], r13
cwd
mov eax, dword [rsp + 0x4c]
mov dword [rsp + 0x28], eax
mov rax, qword [rsp + 0x128]
cqo
jmp 0x1403ad971
mov qword [rsp + 0x20], rax
lea r8, [rsp + 0x50]
movzx r13d, bx
cmovbe r13w, si
lea r9, [rsp + 0x200]
movzx edx, di
movsx r13, r8w
mov edx, 0x400
xchg r13b, r13b
movsx rcx, r9w
movzx cx, r9b
lea r13, [rsp + 0x280]
movzx rcx, r11w
xchg cl, ch
mov rcx, r13
jmp 0x1403ad9ba
call fcn.1403adb65
mov rcx, qword [rsp + 0x40]
jmp 0x1403ad9c9
call qword [sym.imp.KERNEL32.dll_LocalFree]
movabs rax, 0xe7e335d9976c2b13
mov qword [rsp + 0x50], rax
movabs rax, 0x6cc902b5d4bb29d2
jmp 0x1403ad9ed
mov qword [rsp + 0x58], rax
movsx ax, bl
jmp 0x1403ad9fb
movabs rax, 0xbbcab121fb3223ed
mov qword [rsp + 0x60], rax
cwde
movsx rax, si
movabs rax, 0xd7bf775b167baaf
mov qword [rsp + 0x68], rax
movabs rax, 0x236b6ea41c06848b
jmp 0x1403ada2d
mov qword [rsp + 0x70], rax
cmovne rax, r12
movabs rax, 0x177b1b24c239afe3
jmp 0x1403ada45
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x130], rbp
jmp 0x1403ada57
mov qword [rsp + 0x138], rdi
jmp 0x1403ada64
mov qword [rsp + 0x140], rbx
jmp 0x1403ada71
mov qword [rsp + 0x148], rsi
jmp 0x1403ada7e
mov qword [rsp + 0x150], r14
jmp 0x1403ada8b
mov qword [rsp + 0x158], r15
jmp 0x1403ada98
movaps xmm0, xmmword [rsp + 0x50]
jmp 0x1403adaa2
xorps xmm0, xmmword [r12]
movaps xmmword [rsp + 0x50], xmm0
movaps xmm0, xmmword [rsp + 0x60]
jmp 0x1403adab6
xorps xmm0, xmmword [r12 + 0x10]
movaps xmmword [rsp + 0x60], xmm0
jmp 0x1403adac6
movaps xmm0, xmmword [rsp + 0x70]
jmp 0x1403adad0
xorps xmm0, xmmword [r12 + 0x20]
movaps xmmword [rsp + 0x70], xmm0
xor r9w, bp
and r8w, 0x3de5
movzx r8, r12w
lea r8, [rsp + 0x50]
xor ecx, ecx
movsxd r9, r13d
mov rdx, r13
mov r9, r8
jmp 0x1403adafe
mov r9d, 0x10
jmp 0x1403adb09
call qword [sym.imp.USER32.dll_MessageBoxW]
mov eax, dword [0x1400dd058]
mov r10, 0xffffffffffffffff
test r12d, r15d
jmp 0x1403adb24
sub edx, edx
jmp 0x1403adb2b
syscall
add rsp, 0xa88
movsx bx, bl
pop rbx
bswap r12
movzx edi, r14w
pop rbp
pop rdi
setb sil
pop rsi
movsx r14w, al
pop r12
pop r13
movzx r15w, bpl
movsx r15, r14w
pop r14
movsxd r15, eax
mov r15w, ax
pop r15
ret