Function at 0x1404e0b2d
Capabilities:
Encrypt data using speck
Write file on windows

Disassembly:
mov qword [rsp + 0x20], rbx
jmp 0x1404e0b44
push rbp
xor bp, 0x421
shl rbp, cl
push rsi
and bpl, bl
push rdi
cmp dil, al
push r12
and edi, 0x2f25683a
stc
push r13
xor r12d, r13d
btr r12, 0xa2
push r14
push r15
bt ebp, r15d
adc r14, rbp
movzx r12, dx
mov rbp, rsp
sub rsp, 0x60
sub ebx, ebx
btc di, di
sub rdi, 0x176a0429
mov r14d, r8d
movsxd r12, ecx
shr di, cl
mov rdi, rdx
jmp 0x1404e0b9d
test r8d, r8d
jmp 0x1404e0ba5
je 0x1404e104d
test rdx, rdx
jne 0x1404e0bd8
call fcn.1404bac7e
mov dword [rax], ebx
jmp 0x1404e0bc0
call fcn.1404bac3d
mov dword [rax], 0x16
call fcn.1404bb95a
or eax, 0xffffffff
jmp 0x1404e1055
mov rax, r12
btc r13w, dx
mov ecx, 0x788c39c3
bswap r15w
lea rcx, [0x1400ba940]
and sil, 0x3a
sbb r13d, r15d
and eax, 0x3f
clc
mov r13, 0x5e1036ea
btc si, 0xe5
mov r13, r12
sar r13, 6
not r15
lea r15, [rax + rax*8]
rcr ah, 0x46
mov rcx, qword [rcx + r13*8]
cdqe
movsx esi, byte [rcx + r15*8 + 0x39]
sub al, r14b
lea eax, [rsi - 1]
cmp dil, dil
jmp 0x1404e0c32
cmp al, 1
jmp 0x1404e0c39
ja 0x1404e0c5d
mov eax, r14d
cmp r11w, 0x5cdb
not eax
cmp cx, 0x3996
clc
test al, 1
jmp 0x1404e0c57
je 0x1404e0bb4
test byte [rcx + r15*8 + 0x38], 0x20
jmp 0x1404e0c68
je 0x1404e0c8d
sub edx, edx
movsxd r8, ebx
movsx r8w, r8b
cmovne r8, r13
mov ecx, r12d
lea r8d, [rdx + 2]
jmp 0x1404e0c88
call fcn.1401293c8
mov ecx, r12d
jmp 0x1404e0c95
mov qword [rbp - 0x20], rbx
call fcn.1404e6b84
test eax, eax
jmp 0x1404e0ca5
je 0x1404e0e52
lea rax, [0x1400ba940]
cmc
mov rax, qword [rax + r13*8]
cmp byte [rax + r15*8 + 0x38], bl
jmp 0x1404e0cc1
jge 0x1404e0e52
call fcn.1404cf003
mov rcx, qword [rax + 0x90]
cmp r11b, 4
test dh, al
cmp qword [rcx + 0x138], rbx
jne 0x1404e0d0b
lea rax, [0x1400ba940]
clc
mov rax, qword [rax + r13*8]
cmc
cmp r9b, 0xe0
test r15b, 0x14
cmp byte [rax + r15*8 + 0x39], bl
jmp 0x1404e0d05
je 0x1404e0e52
lea rax, [0x1400ba940]
mov rcx, qword [rax + r13*8]
movzx edx, si
lea rdx, [rbp - 0x10]
jmp 0x1404e0d22
mov rcx, qword [rcx + r15*8 + 0x28]
jmp 0x1404e0d2c
call qword [sym.imp.KERNEL32.dll_GetConsoleMode]
test eax, eax
je 0x1404e0e52
test sil, sil
jmp 0x1404e0d42
je 0x1404e0e18
dec sil
clc
cmc
test r14w, r13w
cmp sil, 1
ja 0x1404e0f86
lea r12, [rdi + r14]
mov qword [rbp - 0x30], rbx
mov r14, rdi
cmp rdi, r12
jmp 0x1404e0d6e
jae 0x1404e0f6f
mov esi, dword [rbp - 0x2c]
movzx eax, word [r14]
movzx ecx, ax
mov word [rbp - 0x10], ax
jmp 0x1404e0d87
call fcn.1404eb3da
movzx ecx, word [rbp - 0x10]
clc
cmc
cmp ax, cx
jne 0x1404e0e05
add esi, 2
mov dword [rbp - 0x2c], esi
cmp cx, 0xa
jmp 0x1404e0daa
jne 0x1404e0de9
mov ecx, 0xd
jmp 0x1404e0dba
call fcn.1404eb3da
mov ecx, 0xd
jmp 0x1404e0dc9
cmp ax, cx
jne 0x1404e0e05
inc esi
jmp 0x1404e0dd9
mov dword [rbp - 0x2c], esi
inc ebx
test r15w, 0x74f6
cmc
cmp r13w, di
add r14, 2
jmp 0x1404e0df2
cmp r14, r12
jmp 0x1404e0dfa
jae 0x1404e0f6f
jmp 0x1404e0d77
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rbp - 0x30], eax
jmp 0x1404e0e13
jmp 0x1404e0f6f
mov r9d, r14d
movzx rcx, cx
not edx
movsx rdx, r8w
lea rcx, [rbp - 0x30]
movzx edx, ax
mov r8, rdi
mov dl, r12b
cwd
mov edx, r12d
jmp 0x1404e0e3c
call fcn.1404e10a8
movsd xmm0, qword [rax]
mov ebx, dword [rax + 8]
jmp 0x1404e0e4d
jmp 0x1404e0f77
lea rax, [0x1400ba940]
adc rcx, r13
mov rcx, qword [rax + r13*8]
cmp byte [rcx + r15*8 + 0x38], bl
jmp 0x1404e0e6a
jge 0x1404e0f15
mov ecx, esi
cmp sp, r12w
test cx, di
test r11, 0x756e3be5
test sil, sil
je 0x1404e0ef5
sub ecx, 1
je 0x1404e0eca
cmp ecx, 1
jmp 0x1404e0e9a
jne 0x1404e0f86
mov r9d, r14d
bswap ecx
movzx dx, r11b
not r8b
lea rcx, [rbp - 0x30]
xchg dx, r8w
mov r8, rdi
mov edx, r12d
jmp 0x1404e0ec0
call fcn.1404e1d48
jmp 0x1404e0e41
mov r9d, r14d
jmp 0x1404e0ed2
lea rcx, [rbp - 0x30]
movzx rdx, dx
setne dl
bswap dx
mov r8, rdi
mov edx, r12d
jmp 0x1404e0eeb
call fcn.1404e1f78
jmp 0x1404e0e41
mov r9d, r14d
movzx r8, r14w
lea rcx, [rbp - 0x30]
mov r8, rdi
mov edx, r12d
jmp 0x1404e0f0b
call fcn.1404e1af6
jmp 0x1404e0e41
mov rcx, qword [rcx + r15*8 + 0x28]
cwd
dec r8w
lea r9, [rbp - 0x2c]
bts r8, r9
sub eax, eax
clc
mov r8d, r14d
btr edx, r11d
shr edx, cl
and qword [rsp + 0x20], rax
mov rdx, rdi
jmp 0x1404e0f41
mov qword [rbp - 0x30], rax
mov dword [rbp - 0x28], eax
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jmp 0x1404e0f55
jne 0x1404e0f64
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rbp - 0x30], eax
mov ebx, dword [rbp - 0x28]
cwde
and al, spl
movzx eax, r15w
movsd xmm0, qword [rbp - 0x30]
movsx eax, bx
movsd qword [rbp - 0x20], xmm0
sar ah, 0xe1
cmovne rax, rsp
sbb al, bpl
mov rax, qword [rbp - 0x20]
test rsi, rax
clc
shr rax, 0x20
stc
cmc
test eax, eax
jne 0x1404e103e
mov eax, dword [rbp - 0x20]
jmp 0x1404e0fa4
test eax, eax
jmp 0x1404e0fab
je 0x1404e0fec
cmp eax, 5
jmp 0x1404e0fb9
jne 0x1404e0fda
call fcn.1404bac3d
mov dword [rax], 9
call fcn.1404bac7e
mov dword [rax], 5
jmp 0x1404e0bd0
mov ecx, dword [rbp - 0x20]
jmp 0x1404e0fe2
call fcn.1404bacbf
jmp 0x1404e0bd0
lea rax, [0x1400ba940]
cmp r9, rsi
mov rax, qword [rax + r13*8]
cmc
test cl, ch
test byte [rax + r15*8 + 0x38], 0x40
jmp 0x1404e1008
je 0x1404e101c
cmp byte [rdi], 0x1a
jmp 0x1404e1016
je 0x1404e104d
call fcn.1404bac3d
mov dword [rax], 0x1c
jmp 0x1404e102c
call fcn.1404bac7e
and dword [rax], 0
jmp 0x1404e1039
jmp 0x1404e0bd0
mov eax, dword [rbp - 0x1c]
sub eax, ebx
jmp 0x1404e1048
jmp 0x1404e1055
sub eax, eax
inc bl
add sil, 0x5a
mov rbx, qword [rsp + 0xb8]
bt di, 0xa4
rol rsi, 0xae
add rsp, 0x60
setge r15b
mov bpl, r14b
pop r15
movsxd rsi, ebx
cmovno ebp, r10d
movsx ebp, r9w
pop r14
cmovnp r13, r12
pop r13
movzx r12d, dx
xchg r12b, sil
bswap di
pop r12
pop rdi
mov si, r8w
movsxd rsi, ecx
bswap rbp
pop rsi
not rbp
pop rbp
jmp 0x1404e10a7
ret