Function at 0x1404db2e5
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
sbb bpl, r14b
push rsi
rol bpl, 0x42
push rdi
rcr rdi, cl
bswap rbp
push r12
clc
bsf r12w, r12w
shld r12w, si, 0x2d
push r13
movsx r12d, sp
push r14
test dx, dx
sal r14, cl
or di, 0x39c8
push r15
and r14b, bl
ror bpl, cl
sal r14w, cl
mov rbp, rsp
sub rsp, 0x60
movzx r14, r9w
xor ebx, ebx
btc di, r13w
ror r12b, 0x42
rol edi, cl
mov r14d, r8d
mov di, 0x2659
movzx r12, r15w
neg r12b
movsxd r12, ecx
inc dil
xor di, 0x415f
movsxd rdi, r15d
mov rdi, rdx
test r13b, 0xe1
test r8d, r8d
jmp 0x1404db36a
je 0x1404db824
test rdx, rdx
jmp 0x1404db378
jne 0x1404db3ac
call fcn.1404b5791
mov dword [rax], ebx
jmp 0x1404db38a
call fcn.1404b575b
mov dword [rax], 0x16
jmp 0x1404db39a
call fcn.1404b63d2
or eax, 0xffffffff
jmp 0x1404db3a7
jmp 0x1404db834
mov rax, r12
lea rcx, [0x1400ba940]
shld r15, r10, 0xc8
and eax, 0x3f
mov r13, r12
sub r15b, 0x72
sar r13, 6
btc si, 0xe1
cmp ebx, edx
lea r15, [rax + rax*8]
bsr rax, r8
mov rcx, qword [rcx + r13*8]
rcr al, 0xf3
cmc
bt si, 1
movsx esi, byte [rcx + r15*8 + 0x39]
lahf
sub ah, 0x6a
bsf rax, rbp
lea eax, [rsi - 1]
cmp al, 1
jmp 0x1404db3fd
ja 0x1404db41b
mov eax, r14d
clc
cmp r9b, 0x4d
not eax
clc
test al, 1
jmp 0x1404db415
je 0x1404db37e
test byte [rcx + r15*8 + 0x38], 0x20
jmp 0x1404db426
je 0x1404db446
sub edx, edx
movsx r8w, cl
movsx r8, r8w
mov r8b, spl
mov ecx, r12d
lea r8d, [rdx + 2]
call fcn.140283abc
mov ecx, r12d
mov qword [rbp - 0x20], rbx
jmp 0x1404db452
call fcn.1404e1285
test eax, eax
jmp 0x1404db45e
je 0x1404db61c
lea rax, [0x1400ba940]
cmp sil, 0x1e
mov rax, qword [rax + r13*8]
jmp 0x1404db47f
cmp byte [rax + r15*8 + 0x38], bl
jge 0x1404db61c
call fcn.1404c9973
mov rcx, qword [rax + 0x90]
test rdi, 0x7cee15f3
cmp qword [rcx + 0x138], rbx
jne 0x1404db4c7
lea rax, [0x1400ba940]
cmp r10b, 0xd
mov rax, qword [rax + r13*8]
cmc
test al, al
cmp byte [rax + r15*8 + 0x39], bl
je 0x1404db61c
lea rax, [0x1400ba940]
mov rcx, qword [rax + r13*8]
movsx dx, r15b
mov rdx, 0x16b8061c
lea rdx, [rbp - 0x10]
mov rcx, qword [rcx + r15*8 + 0x28]
call qword [sym.imp.KERNEL32.dll_GetConsoleMode]
test eax, eax
jmp 0x1404db4f4
je 0x1404db61c
test sil, sil
jmp 0x1404db502
je 0x1404db5e8
dec sil
cmp sil, 1
jmp 0x1404db514
ja 0x1404db766
lea r12, [rdi + r14]
sbb r14w, 0xcfb
rol r14w, cl
dec r14w
mov qword [rbp - 0x30], rbx
movsxd r14, r14d
jmp 0x1404db53c
mov r14, rdi
cmp rdi, r12
jmp 0x1404db547
jae 0x1404db74c
mov esi, dword [rbp - 0x2c]
movzx eax, word [r14]
movsx cx, r14b
movzx ecx, bp
mov ch, 0xfd
movzx ecx, ax
jmp 0x1404db567
mov word [rbp - 0x10], ax
call fcn.1404e5a91
movzx ecx, word [rbp - 0x10]
cmp ax, cx
jmp 0x1404db57c
jne 0x1404db5da
add esi, 2
mov dword [rbp - 0x2c], esi
cmp dil, bl
cmc
cmp cx, 0xa
jmp 0x1404db595
jne 0x1404db5c6
mov ecx, 0xd
call fcn.1404e5a91
mov ecx, 0xd
test ch, 0x3e
cmp ax, cx
jne 0x1404db5da
inc esi
mov dword [rbp - 0x2c], esi
jmp 0x1404db5c0
inc ebx
clc
test r14b, r10b
add r14, 2
cmc
clc
cmp r14, r12
jae 0x1404db74c
jmp 0x1404db550
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rbp - 0x30], eax
jmp 0x1404db74c
mov r9d, r14d
movsxd rcx, edi
lea rcx, [rbp - 0x30]
movsx r8, r11w
movzx r8w, r9b
cwd
mov r8, rdi
mov edx, r12d
jmp 0x1404db608
call fcn.1404db887
movsd xmm0, qword [rax]
movsxd rbx, r9d
mov ebx, dword [rax + 8]
jmp 0x1404db75d
lea rax, [0x1400ba940]
jmp 0x1404db630
mov rcx, qword [rax + r13*8]
cmp r8d, 0xa8a7b25
stc
cmp byte [rcx + r15*8 + 0x38], bl
jmp 0x1404db646
jge 0x1404db6ec
mov ecx, esi
test sil, sil
je 0x1404db6b9
sub ecx, 1
jmp 0x1404db65f
je 0x1404db694
cmp ecx, 1
jmp 0x1404db66d
jne 0x1404db766
mov r9d, r14d
lea rcx, [rbp - 0x30]
mov r8, rdi
jmp 0x1404db682
mov edx, r12d
jmp 0x1404db68a
call fcn.1404dc4ca
jmp 0x1404db60d
mov r9d, r14d
xchg ch, dh
mov dx, r12w
lea rcx, [rbp - 0x30]
mov r8, rdi
bswap dx
mov edx, r12d
jmp 0x1404db6af
call fcn.1404dc723
jmp 0x1404db60d
mov r9d, r14d
cmova rdx, rbp
movzx cx, bh
jmp 0x1404db6c9
lea rcx, [rbp - 0x30]
mov r8, rdi
movsxd rdx, eax
mov rdx, 0x5a197949
mov edx, r12d
jmp 0x1404db6e2
call fcn.1404dc28c
jmp 0x1404db60d
mov rcx, qword [rcx + r15*8 + 0x28]
rcr r9b, cl
sbb r9w, 0x38e0
lea r9, [rbp - 0x2c]
sub eax, eax
sub r8w, 0x5d63
mov r8d, r14d
and qword [rsp + 0x20], rax
cmovno rdx, r14
cwd
mov rdx, rdi
mov qword [rbp - 0x30], rax
mov dword [rbp - 0x28], eax
jmp 0x1404db723
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jmp 0x1404db730
jne 0x1404db744
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rbp - 0x30], eax
btc bx, r10w
mov ebx, dword [rbp - 0x28]
movsx ax, r12b
movsd xmm0, qword [rbp - 0x30]
shl ax, cl
btr rax, 0xdb
movzx rax, bx
movsd qword [rbp - 0x20], xmm0
movzx rax, r14w
mov rax, qword [rbp - 0x20]
shr rax, 0x20
test r10w, dx
test eax, eax
jmp 0x1404db779
jne 0x1404db811
mov eax, dword [rbp - 0x20]
test eax, eax
je 0x1404db7c5
cmp eax, 5
jmp 0x1404db792
jne 0x1404db7b3
call fcn.1404b575b
mov dword [rax], 9
call fcn.1404b5791
mov dword [rax], 5
jmp 0x1404db39f
mov ecx, dword [rbp - 0x20]
jmp 0x1404db7bb
call fcn.1404b57cb
jmp 0x1404db39f
lea rax, [0x1400ba940]
mov rax, qword [rax + r13*8]
test byte [rax + r15*8 + 0x38], 0x40
jmp 0x1404db7db
je 0x1404db7ef
cmp byte [rdi], 0x1a
jmp 0x1404db7e9
je 0x1404db824
call fcn.1404b575b
mov dword [rax], 0x1c
jmp 0x1404db7ff
call fcn.1404b5791
and dword [rax], 0
jmp 0x1404db80c
jmp 0x1404db39f
mov eax, dword [rbp - 0x1c]
cmp sil, 0xff
jmp 0x1404db81d
sub eax, ebx
jmp 0x1404db834
sub eax, eax
sub r15d, 0x20033b09
movsxd r13, r15d
btr r13d, r11d
mov rbx, qword [rsp + 0xb8]
stc
add rsp, 0x60
movsx di, bl
jmp 0x1404db84d
pop r15
mov r14w, r9w
movsx r14, cx
pop r14
bswap si
jmp 0x1404db864
pop r13
movzx si, dl
movsx rbp, r9w
pop r12
xchg sil, bpl
mov si, di
movzx edi, r14w
pop rdi
movsx rsi, di
pop rsi
pop rbp
jmp 0x1404db886
ret