Function at 0x1404dc1cb
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
seto bpl
push rsi
push rdi
push r12
push r13
push r14
movzx rbp, bx
rcr r14, cl
push r15
mov rbp, rsp
rcr r12d, cl
ror r14b, 0xc0
sub rsp, 0x60
rcr r12w, cl
xor ebx, ebx
or r12b, al
mov r14d, r8d
movsxd r12, ecx
bts di, si
neg dil
mov rdi, rdx
test r15, rsi
clc
cmp edx, r11d
test r8d, r8d
jmp 0x1404dc21c
je 0x1404dc6d5
test rdx, rdx
jmp 0x1404dc22a
jne 0x1404dc259
call fcn.1404b6266
mov dword [rax], ebx
jmp 0x1404dc23c
call fcn.1404b6235
mov dword [rax], 0x16
jmp 0x1404dc24c
call fcn.1404b6edf
or eax, 0xffffffff
jmp 0x1404dc6e1
mov rax, r12
lea rcx, [0x1400ba940]
bsr r15, r8
add sil, dil
bts r13d, r15d
and eax, 0x3f
neg r13b
mov r13, r12
sar r13, 6
inc r15w
lea r15, [rax + rax*8]
mov rcx, qword [rcx + r13*8]
movsx ax, cl
btr si, 0x7d
movsx esi, byte [rcx + r15*8 + 0x39]
lea eax, [rsi - 1]
cmp al, 1
jmp 0x1404dc2a0
ja 0x1404dc2c5
mov eax, r14d
cmp r13b, 0x37
cmc
not eax
cmp r8b, r11b
jmp 0x1404dc2b8
test al, 1
jmp 0x1404dc2bf
je 0x1404dc230
test byte [rcx + r15*8 + 0x38], 0x20
jmp 0x1404dc2d0
je 0x1404dc2f0
sub edx, edx
setp cl
movzx rcx, bx
mov ecx, r12d
lea r8d, [rdx + 2]
jmp 0x1404dc2eb
call fcn.1401c5578
mov ecx, r12d
jmp 0x1404dc2f8
mov qword [rbp - 0x20], rbx
jmp 0x1404dc301
call fcn.1404e202a
test eax, eax
jmp 0x1404dc30d
je 0x1404dc4b9
lea rax, [0x1400ba940]
mov rax, qword [rax + r13*8]
cmp di, si
clc
jmp 0x1404dc327
cmp byte [rax + r15*8 + 0x38], bl
jmp 0x1404dc331
jge 0x1404dc4b9
call fcn.1404ca4a6
mov rcx, qword [rax + 0x90]
cmp si, bx
cmc
test dx, 0x7914
cmp qword [rcx + 0x138], rbx
jne 0x1404dc379
lea rax, [0x1400ba940]
cmc
stc
mov rax, qword [rax + r13*8]
clc
cmc
stc
cmp byte [rax + r15*8 + 0x39], bl
jmp 0x1404dc373
je 0x1404dc4b9
lea rax, [0x1400ba940]
movzx ecx, bp
movzx rdx, sp
mov rcx, qword [rax + r13*8]
movzx edx, r15w
mov dh, 0xa4
lea rdx, [rbp - 0x10]
mov rcx, qword [rcx + r15*8 + 0x28]
jmp 0x1404dc3a0
call qword [sym.imp.KERNEL32.dll_GetConsoleMode]
test eax, eax
jmp 0x1404dc3ad
je 0x1404dc4b9
test sil, sil
je 0x1404dc47e
dec sil
cmp sil, 1
jmp 0x1404dc3c8
ja 0x1404dc60d
lea r12, [rdi + r14]
mov qword [rbp - 0x30], rbx
rcr r14w, 0x2c
mov r14, rdi
cmp rdi, r12
jmp 0x1404dc3e6
jae 0x1404dc603
mov esi, dword [rbp - 0x2c]
movzx eax, word [r14]
movzx ecx, ax
mov word [rbp - 0x10], ax
call fcn.1404e6974
movzx ecx, word [rbp - 0x10]
clc
cmc
cmp ax, cx
jmp 0x1404dc40d
jne 0x1404dc46b
add esi, 2
mov dword [rbp - 0x2c], esi
cmp cx, 0xa
jne 0x1404dc44c
mov ecx, 0xd
call fcn.1404e6974
mov ecx, 0xd
cmp ax, cx
jmp 0x1404dc43a
jne 0x1404dc46b
inc esi
jmp 0x1404dc447
mov dword [rbp - 0x2c], esi
inc ebx
add r14, 2
clc
test r11w, 0x5da5
stc
cmp r14, r12
jmp 0x1404dc460
jae 0x1404dc603
jmp 0x1404dc3ef
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rbp - 0x30], eax
jmp 0x1404dc479
jmp 0x1404dc603
mov r9d, r14d
setno cl
movzx r8, r8w
lea rcx, [rbp - 0x30]
cdq
mov dl, spl
mov r8, rdi
movsxd rdx, ecx
jmp 0x1404dc49b
mov edx, r12d
jmp 0x1404dc4a3
call fcn.1404dc714
movsd xmm0, qword [rax]
mov ebx, dword [rax + 8]
jmp 0x1404dc4b4
jmp 0x1404dc608
lea rax, [0x1400ba940]
movzx rcx, cx
mov rcx, qword [rax + r13*8]
test r8d, 0xc990b9d
stc
cmp byte [rcx + r15*8 + 0x38], bl
jge 0x1404dc59d
mov ecx, esi
clc
jmp 0x1404dc4e3
test sil, sil
je 0x1404dc56b
sub ecx, 1
jmp 0x1404dc4f4
je 0x1404dc538
cmp ecx, 1
jmp 0x1404dc502
jne 0x1404dc60d
mov r9d, r14d
lea rcx, [rbp - 0x30]
movsx r8d, r15w
xchg dx, dx
mov r8, rdi
movsx dx, r15b
xchg dx, dx
movzx dx, spl
mov edx, r12d
jmp 0x1404dc52e
call fcn.1404dd344
jmp 0x1404dc4a8
mov r9d, r14d
movzx r8, r14w
cmovb edx, edi
movzx r8w, dl
lea rcx, [rbp - 0x30]
movsx rdx, bx
mov r8, rdi
movzx dx, r15b
movsxd rdx, ebx
movsx rdx, bx
mov edx, r12d
call fcn.1404dd5bc
jmp 0x1404dc4a8
mov r9d, r14d
setge dh
not rdx
movzx r8d, r15w
lea rcx, [rbp - 0x30]
cwd
jmp 0x1404dc584
mov r8, rdi
cdq
setp dh
mov edx, r12d
jmp 0x1404dc593
call fcn.1404dd103
jmp 0x1404dc4a8
mov rcx, qword [rcx + r15*8 + 0x28]
ror rdx, cl
sal dl, 0x5c
lea r9, [rbp - 0x2c]
cmc
sub eax, eax
bt r8d, 0x70
shld r8, rsi, 0xef
mov r8d, r14d
shr dx, 0x55
sbb dl, r10b
and qword [rsp + 0x20], rax
bswap edx
mov rdx, rdi
mov qword [rbp - 0x30], rax
jmp 0x1404dc5d6
mov dword [rbp - 0x28], eax
jmp 0x1404dc5de
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jmp 0x1404dc5eb
jne 0x1404dc5fa
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rbp - 0x30], eax
mov ebx, dword [rbp - 0x28]
sbb al, 0x8e
movzx rax, sp
movsd xmm0, qword [rbp - 0x30]
movsd qword [rbp - 0x20], xmm0
mov rax, qword [rbp - 0x20]
test sil, cl
clc
test spl, 0xbe
shr rax, 0x20
cmp dx, dx
test eax, eax
jmp 0x1404dc627
jne 0x1404dc6c5
mov eax, dword [rbp - 0x20]
stc
test eax, eax
jmp 0x1404dc638
je 0x1404dc679
cmp eax, 5
jne 0x1404dc667
call fcn.1404b6235
mov dword [rax], 9
call fcn.1404b6266
mov dword [rax], 5
jmp 0x1404dc662
jmp 0x1404dc251
mov ecx, dword [rbp - 0x20]
jmp 0x1404dc66f
call fcn.1404b6297
jmp 0x1404dc251
lea rax, [0x1400ba940]
stc
mov rax, qword [rax + r13*8]
stc
jmp 0x1404dc68e
test byte [rax + r15*8 + 0x38], 0x40
jmp 0x1404dc699
je 0x1404dc6a8
cmp byte [rdi], 0x1a
je 0x1404dc6d5
call fcn.1404b6235
mov dword [rax], 0x1c
jmp 0x1404dc6b8
call fcn.1404b6266
and dword [rax], 0
jmp 0x1404dc251
mov eax, dword [rbp - 0x1c]
stc
sub eax, ebx
jmp 0x1404dc6d0
jmp 0x1404dc6e1
sub eax, eax
test ebp, 0x467d7b23
clc
or r14d, edi
mov rbx, qword [rsp + 0xb8]
and di, cx
rcl r12d, 0xd9
add rsp, 0x60
pop r15
pop r14
cmovno r13w, bp
movsx r13w, r13b
pop r13
movzx si, r12b
pop r12
pop rdi
pop rsi
pop rbp
jmp 0x1404dc713
ret