Function at 0x1403ab708
Capabilities:
Encrypt data using speck

Disassembly:
push r15
push r14
cmp r12d, 0x78e2144e
push r13
stc
push r12
push rsi
and sil, sil
push rdi
add sil, r12b
shr esi, 0x1b
xadd dil, dil
push rbp
shl rsi, cl
btr bp, r8w
push rbx
shl sil, cl
btc edi, 0xe8
sub rsp, 0xa88
mov rsi, rcx
and ebp, ebx
cmp edi, 0x753f67de
mov qword [rsp + 0x40], 0
rcl di, 0x67
not bp
setae dil
movabs rbp, 0xe78235ad970d2b55
shr di, cl
cmp r11b, 0x6c
movabs rdi, 0x6cbb02d0d49b29be
cmp dl, 1
jmp 0x1403ab781
mov qword [rsp + 0x128], r8
jmp 0x1403ab78e
mov dword [rsp + 0x4c], r9d
jmp 0x1403ab798
jne 0x1403ab884
movabs rax, 0xe7f735c197612b70
movsx cx, dil
cmovbe rcx, rax
mov qword [rsp + 0x130], rax
seto cl
cmovs cx, r12w
mov rax, rdi
movzx ecx, r10w
mov qword [rsp + 0x138], rax
jmp 0x1403ab7db
mov rcx, rbp
jmp 0x1403ab7e3
mov qword [rsp + 0x280], rcx
jmp 0x1403ab7f0
mov qword [rsp + 0x288], rax
cmovle eax, edx
mov ax, bp
lea rax, [rsp + 0x280]
jmp 0x1403ab80b
movaps xmm0, xmmword [rsp + 0x130]
jmp 0x1403ab818
xorps xmm0, xmmword [rax]
movaps xmmword [rsp + 0x130], xmm0
cwd
movsx r8w, r8b
mov ecx, r10d
lea rcx, [rsp + 0x200]
xchg r9w, r9w
mov dl, 0xd6
lea r8, [rsp + 0x130]
cwd
mov edx, 0x40
mov r9b, 0x21
xchg r9b, r9b
mov r9, rsi
jmp 0x1403ab858
call fcn.1403ac4cc
mov ecx, 0x13ff
mov r8b, 0x84
adc r8b, r12b
sub edx, edx
movsx r8w, r8b
movsx r8, ax
movzx r8, cx
mov r8d, esi
jmp 0x1403ab87f
jmp 0x1403abb45
mov ebx, edx
mov al, r9b
movabs rax, 0xe7ee358897752b65
mov qword [rsp + 0x130], rax
movzx ax, r9b
cmovl eax, eax
movabs rax, 0x6cbb02d0d4c329d2
jmp 0x1403ab8b2
mov qword [rsp + 0x138], rax
not al
lahf
mov rax, rbp
jmp 0x1403ab8c5
mov qword [rsp + 0x280], rax
mov ax, 0x4f99
mov rax, rdi
mov qword [rsp + 0x288], rax
movzx rax, r12w
movsx ax, r10b
lea rax, [rsp + 0x280]
jmp 0x1403ab8f2
movaps xmm0, xmmword [rsp + 0x130]
jmp 0x1403ab8ff
xorps xmm0, xmmword [rax]
movaps xmmword [rsp + 0x130], xmm0
lea rcx, [rsp + 0x200]
movzx edx, r12w
lea r8, [rsp + 0x130]
bswap r9w
movsx r9w, dil
mov edx, 0x40
movsx r9d, r14w
mov r9, rsi
jmp 0x1403ab938
call fcn.1403ac4cc
test bl, bl
je 0x1403ababa
movzx eax, bl
cmp al, 1
cmp eax, 2
jne 0x1403abac7
movabs r14, 0xcbf29ce484222325
mov ecx, esi
jmp 0x1403ab964
call fcn.14024cef0
mov r8d, eax
test bp, 0x4c86
mov rax, qword gs:[0x30]
mov rax, qword [rax + 0x60]
sal r11w, 0xfa
rcr r11b, cl
mov r11, qword [rax + 0x18]
movzx ecx, r15w
cmp r9b, 0xef
add r11, 0x10
movzx r15w, dil
cqo
movabs rdx, 0x2cc10c8855a9a8cd
mov r15b, r8b
movabs r15, 0x1d12a89b9e723ff5
jmp 0x1403ab9bb
mov ecx, 0x1bff
jmp 0x1403ab9c5
jmp 0x1403ab9d3
cmp rax, rdx
je 0x1403abaf4
mov r11, qword [r11]
mov r10, qword [r11 + 0x30]
test dl, sil
test r10, r10
je 0x1403abb22
mov r12, qword [r11 + 0x60]
mov rbx, 0xffffffffffffffff
stc
clc
nop word cs:[rax + rax]
jmp 0x1403aba04
cmp word [r12 + rbx*2 + 2], 0
lea rbx, [rbx + 1]
jmp 0x1403aba14
jne 0x1403aba04
mov rax, r14
jmp 0x1403aba22
test rbx, rbx
jmp 0x1403aba2a
je 0x1403ab9ca
sub esi, esi
and rdi, rbp
mov rbp, r14
nop word [rax + rax]
movzx eax, word [r12 + rsi*2]
lea edi, [rax - 0x41]
not r9b
dec r9d
rcr r13b, 0x98
lea r13d, [rax - 0x410]
sar r9, cl
btc r9, r10
lea r9d, [rax + 0x20]
jmp 0x1403aba67
cmp r13w, 0x20
jmp 0x1403aba71
cmovb eax, r9d
cmp bl, spl
cmc
cmp di, 0x1a
cmovb eax, r9d
cmp r8, r12
cmc
movzx eax, ax
test r15w, 0x3d07
xor rax, rbp
imul rax, r15
movzx ebp, cx
inc bpl
inc esi
mov rbp, rax
test r13b, 0x15
test bl, r10b
cmp rsi, rbx
jmp 0x1403abaaf
jb 0x1403aba3e
jmp 0x1403ab9ca
sub r13d, r13d
jmp 0x1403abac2
jmp 0x1403abb7d
cmp bl, 3
mov ch, 0x20
movzx rcx, r12w
movzx r8w, dil
movzx r8d, si
movsx rcx, r12w
movsxd rcx, esi
cmovne r8d, esi
mov ecx, 0x13ff
jmp 0x1403abaef
jmp 0x1403abb3b
test r11, r11
mov edi, edx
movzx rdx, r11w
cmove r10, r11
mov rdx, r10
movabs rbp, 0xe78235ad970d2b55
movabs rdi, 0x6cbb02d0d49b29be
jmp 0x1403abb1d
jmp 0x1403abb45
movabs rbp, 0xe78235ad970d2b55
cwde
bt rax, rdx
movabs rdi, 0x6cbb02d0d49b29be
xor edx, edx
or ax, 0x257f
add ax, r14w
lea rax, [rsp + 0x40]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0
clc
cmc
xor r9d, r9d
jmp 0x1403abb6a
call qword [sym.imp.KERNEL32.dll_FormatMessageW]
mov r13, qword [rsp + 0x40]
xadd r8w, cx
shr ch, 0x53
lea rcx, [rsp + 0x280]
bsr r8w, r15w
movsxd r8, r11d
ror r8, cl
mov r8d, 0x800
stc
test cl, r9b
xor edx, edx
jmp 0x1403abba1
call fcn.1404a0075
movabs rax, 0xe7ed35df977f2b10
movzx bx, dil
movsx r15w, r12b
mov qword [rsp + 0x50], rax
movsxd rax, ecx
mov rbx, rdx
movabs rax, 0x6c9e02f0d4a129cc
mov qword [rsp + 0x58], rax
cdqe
movabs rax, 0xbb83b115fb5723ec
movzx r12w, r13b
mov qword [rsp + 0x60], rax
lahf
movabs rax, 0xd2ef72cb161baac
jmp 0x1403abbfe
mov qword [rsp + 0x68], rax
xchg ebx, eax
movsxd r15, r14d
cmovo r15, rax
movabs rax, 0x23396ef01c4484dc
jmp 0x1403abc21
mov qword [rsp + 0x70], rax
movsx r15w, r15b
movsx r14, r14w
movabs rax, 0x17711b7cc255afae
movzx ebx, r15w
cmovl r14, r9
mov qword [rsp + 0x78], rax
movabs rax, 0x314846d9144fae6f
mov r12b, sil
jmp 0x1403abc58
mov qword [rsp + 0x80], rax
lahf
cmovle rsi, r11
movsx ebx, cx
movabs rax, 0x178dd9cfd41ab93e
movsx rbx, r14w
mov qword [rsp + 0x88], rax
cmove bx, r9w
lahf
xchg sil, bl
movabs rax, 0xafe3d510c4170ff7
movzx r15d, dx
mov qword [rsp + 0x90], rax
movsxd r12, eax
mov al, r12b
movabs rax, 0xf2b1d93b98f8762c
xchg r15b, r15b
movsx r12w, r14b
mov qword [rsp + 0x98], rax
cwde
movabs rax, 0x9086a47a193ab849
cmovae rsi, rbp
movzx ebx, di
xchg r12b, r15b
mov qword [rsp + 0xa0], rax
mov r14, r12
movabs rax, 0xf9f44acd0c6a853c
mov r15w, 0x1c37
movzx r14, bx
mov qword [rsp + 0xa8], rax
movzx r14w, r15b
movsx si, r10b
movzx r14d, bx
movabs rax, 0x46ec87c61fbaad11
movsx si, r8b
mov qword [rsp + 0xb0], rax
cwde
movzx esi, bp
movsx r15w, r13b
movabs rax, 0x5102c52d8dbf581e
mov r15b, r11b
mov qword [rsp + 0xb8], rax
movsx bx, r12b
movsxd rsi, eax
setbe bh
movabs rax, 0x9f52a16fed4b976f
mov qword [rsp + 0xc0], rax
movzx r14w, bpl
movabs rax, 0xf6a5483bf0ec9ca3
mov qword [rsp + 0xc8], rax
cbw
movsx r14w, al
cwde
movabs rax, 0x60e699bcbdc17680
xchg bl, bl
cmovnp ebx, esp
mov si, 0x19eb
mov qword [rsp + 0xd0], rax
movabs rax, 0xbd6f0372efe2893d
mov qword [rsp + 0xd8], rax
movsx r15d, r15w
movsx r14, r15w
movsx si, r15b
movabs rax, 0x98880c705ee3d44a
movzx r12w, spl
movsxd rsi, r11d
mov qword [rsp + 0xe0], rax
movabs rax, 0x9b7661660ff4953f
setl r14b
mov qword [rsp + 0xe8], rax
movabs rax, 0x53d62999d3e90ae0
bswap r15
movzx si, cl
movzx r12, r13w
mov qword [rsp + 0xf0], rax
movsx r12w, bl
movzx ebx, r14w
cdqe
movabs rax, 0xc69b1bd14864426
movzx r15, di
movzx si, r10b
mov qword [rsp + 0xf8], rax
movabs rax, 0x56abc9090122ed13
jmp 0x1403abe33
mov qword [rsp + 0x100], rax
not r14w
movabs rax, 0xf54db3f725dd577b
movzx r12, dx
jmp 0x1403abe56
mov qword [rsp + 0x108], rax
cbw
cmova rsi, rcx
movabs rax, 0x12e9428a7f611679
movsx r15, si
not r15
mov qword [rsp + 0x110], rax
mov bl, 0x52
movabs rax, 0x187f5c28d0b2d517
setbe r15b
movsx r15, r8w
xchg r12b, r15b
mov qword [rsp + 0x118], rax
jmp 0x1403abea1
mov qword [rsp + 0x130], rbp
lahf
cwde
jmp 0x1403abeb0
mov qword [rsp + 0x138], rdi
cdqe
xchg bx, r15w
movabs rbx, 0xbbeab153fb5d239f
movsx r14w, al
cbw
mov qword [rsp + 0x140], rbx
movsx r14d, r10w
cbw
bswap r12w
movabs rsi, 0xd0ef716b104bac0
mov qword [rsp + 0x148], rsi
setns ah
movabs r14, 0x230f6ec11c7484f9
cdqe
setns r15b
movsx r15w, r15b
mov qword [rsp + 0x150], r14
movabs r15, 0x177b1b24c239afc2
mov r12b, bl
movsxd r12, ecx
mov qword [rsp + 0x158], r15
movabs rax, 0x312d46b71426ae23
mov qword [rsp + 0x160], rax
movzx ax, r8b
movsx r12d, si
movabs rax, 0x17e9d9ead43ab904
mov qword [rsp + 0x168], rax
movabs rax, 0xaf90d535c41d0ffd
mov qword [rsp + 0x170], rax
movabs rax, 0xf2ded97898f27626
movzx r12, r12w
mov qword [rsp + 0x178], rax
movabs rax, 0x90e5a41b194eb827
cmova r12w, r8w
movsx r12w, dil
mov qword [rsp + 0x180], rax
movabs rax, 0xf9814abe0c4a8548
movzx r12d, r12w
xchg r12b, r12b
mov qword [rsp + 0x188], rax
setno al
movabs rax, 0x469e87a91fcaad61
movsx r12w, r12b
mov qword [rsp + 0x190], rax
cwde
cbw
movabs rax, 0x516cc54c8d9f586a
movzx r12, di
mov qword [rsp + 0x198], rax
cmovo ax, bp
movabs rax, 0x9f20a11fed6b970b
mov qword [rsp + 0x1a0], rax
mov r12d, edx
movsx ax, ah
setne ah
movabs rax, 0xf6c14852f09a9ccc
mov qword [rsp + 0x1a8], rax
cwde
movzx r12, r9w
movabs rax, 0x60c699ddbde176e5
movzx r12, r13w
mov qword [rsp + 0x1b0], rax
lahf
mov rax, r12
movabs rax, 0xbd0a0300ef81894e
movsx r12, ax
mov qword [rsp + 0x1b8], rax
movzx r12w, r15b
movabs rax, 0x98e00c035e8dd42f
not r12b
movsxd r12, edi
mov qword [rsp + 0x1c0], rax
cbw
movsx rax, ax
cwde
movabs rax, 0x9b0161460f809550
movzx r12, r8w
xchg r12w, r12w
movzx r12d, r15w
mov qword [rsp + 0x1c8], rax
setno ah
lahf
mov r12, 0x57dc6559
movabs rax, 0x53f629f1d39d0a89
mov qword [rsp + 0x1d0], rax
movabs rax, 0xc1ab1d414ee4452
sete r12b
not r12d
mov qword [rsp + 0x1d8], rax
movabs rax, 0x56cdc967014bed33
cmovo r12d, r13d
not r12b
mov r12b, 0xbd
mov qword [rsp + 0x1e0], rax
movsx r12, r11w
movabs rax, 0xf52cb39a25af5714
not r12w
movzx r12d, r10w
mov qword [rsp + 0x1e8], rax
jmp 0x1403ac108
movabs rax, 0x128742e57f08160d
seto r12b
xchg r12b, r12b
mov qword [rsp + 0x1f0], rax
movzx r12w, r11b
movabs rax, 0x187f5c28d0b2d536
bswap r12w
movsx r12w, bl
movsx r12d, bx
mov qword [rsp + 0x1f8], rax
cdqe
lea r12, [rsp + 0x130]
bswap ax
mov ah, 0x33
cwde
mov rax, r12
jmp 0x1403ac15e
movaps xmm0, xmmword [rsp + 0x50]
xorps xmm0, xmmword [rax]
movaps xmmword [rsp + 0x50], xmm0
movaps xmm0, xmmword [rsp + 0x60]
xorps xmm0, xmmword [rax + 0x10]
movaps xmmword [rsp + 0x60], xmm0
jmp 0x1403ac17e
movaps xmm0, xmmword [rsp + 0x70]
xorps xmm0, xmmword [rax + 0x20]
movaps xmmword [rsp + 0x70], xmm0
jmp 0x1403ac191
movaps xmm0, xmmword [rsp + 0x80]
jmp 0x1403ac19e
xorps xmm0, xmmword [rax + 0x30]
movaps xmmword [rsp + 0x80], xmm0
movaps xmm0, xmmword [rsp + 0x90]
xorps xmm0, xmmword [rax + 0x40]
movaps xmmword [rsp + 0x90], xmm0
jmp 0x1403ac1c3
movaps xmm0, xmmword [rsp + 0xa0]
jmp 0x1403ac1d0
xorps xmm0, xmmword [rax + 0x50]
movaps xmmword [rsp + 0xa0], xmm0
jmp 0x1403ac1e1
movaps xmm0, xmmword [rsp + 0xb0]
jmp 0x1403ac1ee
xorps xmm0, xmmword [rax + 0x60]
movaps xmmword [rsp + 0xb0], xmm0
jmp 0x1403ac1ff
movaps xmm0, xmmword [rsp + 0xc0]
jmp 0x1403ac20c
xorps xmm0, xmmword [rax + 0x70]
movaps xmmword [rsp + 0xc0], xmm0
jmp 0x1403ac21d
movaps xmm0, xmmword [rsp + 0xd0]
xorps xmm0, xmmword [rax + 0x80]
movaps xmmword [rsp + 0xd0], xmm0
movaps xmm0, xmmword [rsp + 0xe0]
jmp 0x1403ac241
xorps xmm0, xmmword [rax + 0x90]
movaps xmmword [rsp + 0xe0], xmm0
jmp 0x1403ac255
movaps xmm0, xmmword [rsp + 0xf0]
jmp 0x1403ac262
xorps xmm0, xmmword [rax + 0xa0]
movaps xmmword [rsp + 0xf0], xmm0
movaps xmm0, xmmword [rsp + 0x100]
xorps xmm0, xmmword [rax + 0xb0]
movaps xmmword [rsp + 0x100], xmm0
movaps xmm0, xmmword [rsp + 0x110]
jmp 0x1403ac295
xorps xmm0, xmmword [rax + 0xc0]
movaps xmmword [rsp + 0x110], xmm0
rdtsc
mov qword [rsp + 0x30], r13
movsx r8w, r8b
cwd
movzx r8, bx
mov eax, dword [rsp + 0x4c]
xchg r8b, dl
mov dword [rsp + 0x28], eax
mov rax, qword [rsp + 0x128]
movsx r9, r9w
movsx r13d, r11w
mov r9w, si
mov qword [rsp + 0x20], rax
lea r8, [rsp + 0x50]
mov r9b, 0x9b
lea r9, [rsp + 0x200]
mov edx, 0x400
lea r13, [rsp + 0x280]
cmovp cx, di
movzx cx, spl
mov rcx, r13
jmp 0x1403ac308
call fcn.1403ac4cc
mov rcx, qword [rsp + 0x40]
jmp 0x1403ac317
call qword [sym.imp.KERNEL32.dll_LocalFree]
movabs rax, 0xe7e335d9976c2b13
jmp 0x1403ac32c
mov qword [rsp + 0x50], rax
bswap eax
movsx ax, r10b
lahf
movabs rax, 0x6cc902b5d4bb29d2
jmp 0x1403ac348
mov qword [rsp + 0x58], rax
cdqe
xchg ah, ah
jmp 0x1403ac356
movabs rax, 0xbbcab121fb3223ed
jmp 0x1403ac365
mov qword [rsp + 0x60], rax
jmp 0x1403ac373
movabs rax, 0xd7bf775b167baaf
mov qword [rsp + 0x68], rax
movabs rax, 0x236b6ea41c06848b
jmp 0x1403ac391
mov qword [rsp + 0x70], rax
movsxd rax, esi
mov al, 0x1d
bswap rax
movabs rax, 0x177b1b24c239afe3
mov qword [rsp + 0x78], rax
jmp 0x1403ac3b2
mov qword [rsp + 0x130], rbp
jmp 0x1403ac3bf
mov qword [rsp + 0x138], rdi
jmp 0x1403ac3cc
mov qword [rsp + 0x140], rbx
jmp 0x1403ac3d9
mov qword [rsp + 0x148], rsi
jmp 0x1403ac3e6
mov qword [rsp + 0x150], r14
mov qword [rsp + 0x158], r15
movaps xmm0, xmmword [rsp + 0x50]
xorps xmm0, xmmword [r12]
movaps xmmword [rsp + 0x50], xmm0
jmp 0x1403ac40a
movaps xmm0, xmmword [rsp + 0x60]
jmp 0x1403ac414
xorps xmm0, xmmword [r12 + 0x10]
movaps xmmword [rsp + 0x60], xmm0
movaps xmm0, xmmword [rsp + 0x70]
jmp 0x1403ac429
xorps xmm0, xmmword [r12 + 0x20]
movaps xmmword [rsp + 0x70], xmm0
bsf edx, ebx
sub r9, 0x3b964a66
lea r8, [rsp + 0x50]
xor ecx, ecx
movsxd rdx, ebx
movzx edx, r14w
movzx dx, ch
mov rdx, r13
mov r9b, al
mov r9d, 0x10
jmp 0x1403ac461
call qword [sym.imp.USER32.dll_MessageBoxW]
mov eax, dword [0x1400dd058]
rcr r10w, 0x13
xchg r10b, r10b
dec r10d
mov r10, 0xffffffffffffffff
test si, r8w
sub edx, edx
jmp 0x1403ac48a
syscall
add rsp, 0xa88
movzx r13, cx
jmp 0x1403ac49c
pop rbx
movsx r15, bp
pop rbp
pop rdi
not r13d
movzx r14d, r8w
pop rsi
pop r12
bswap r14w
movzx r15d, si
movsxd r13, r13d
pop r13
movsx r14, ax
pop r14
bswap r15w
pop r15
jmp 0x1403ac4cb
ret