Function at 0x1404d53ee
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 0x20], rbx
jmp 0x1404d5406
push rbp
adc bpl, 0x89
push rsi
shl bpl, 0x20
movzx ebp, sp
push rdi
cmovne rdi, rdx
movzx rdi, r10w
push r12
shl r12b, 0xbe
cmp r8, 0x15d43fc5
push r13
push r14
push r15
sbb bpl, 0xa0
sub r14, 0x55432e7f
btc r14, rsi
mov rbp, rsp
btc r12w, si
inc dil
bts r12w, si
sub rsp, 0x60
movsxd rdi, edi
sub ebx, ebx
rcl r14w, 0x71
mov r14d, r8d
movsxd r12, ecx
adc dil, 0xa2
mov rdi, rdx
jmp 0x1404d546e
test r8d, r8d
jmp 0x1404d5476
je 0x1404d596b
test rdx, rdx
jmp 0x1404d5484
jne 0x1404d54b8
call fcn.1404af750
mov dword [rax], ebx
jmp 0x1404d5496
call fcn.1404af716
mov dword [rax], 0x16
jmp 0x1404d54a6
call fcn.1404b03df
or eax, 0xffffffff
jmp 0x1404d54b3
jmp 0x1404d5979
mov rax, r12
lea rcx, [0x1400ba940]
sbb r13b, 0x59
and eax, 0x3f
bsf si, r12w
cmp r11w, bp
mov r13, r12
rol r15b, 0xec
sbb r15, rax
sar r13, 6
rol esi, cl
rcl sil, 0xa9
lea r15, [rax + rax*8]
mov si, r12w
btc rax, rcx
or sil, cl
mov rcx, qword [rcx + r13*8]
sbb rax, 0x3023105d
mov rsi, r15
movsx rsi, bx
movsx esi, byte [rcx + r15*8 + 0x39]
sets ah
sal al, cl
or eax, esi
lea eax, [rsi - 1]
cmp al, 1
jmp 0x1404d551e
ja 0x1404d5541
mov eax, r14d
test r10b, 0xd7
cmp spl, r11b
not eax
test r10b, dl
stc
test al, 1
jmp 0x1404d553b
je 0x1404d548a
test byte [rcx + r15*8 + 0x38], 0x20
jmp 0x1404d554c
je 0x1404d556c
xor edx, edx
xchg cx, cx
movzx rcx, bx
mov ecx, r12d
lea r8d, [rdx + 2]
jmp 0x1404d5567
call fcn.1402918b0
mov ecx, r12d
jmp 0x1404d5574
mov qword [rbp - 0x20], rbx
jmp 0x1404d557d
call fcn.1404db5ca
test eax, eax
je 0x1404d574b
lea rax, [0x1400ba940]
stc
cmc
mov rax, qword [rax + r13*8]
cmp byte [rax + r15*8 + 0x38], bl
jmp 0x1404d55a1
jge 0x1404d574b
call fcn.1404c389d
mov rcx, qword [rax + 0x90]
test r13b, 0xed
jmp 0x1404d55bf
cmp qword [rcx + 0x138], rbx
jmp 0x1404d55cb
jne 0x1404d55f7
lea rax, [0x1400ba940]
cmp r10w, r8w
mov rax, qword [rax + r13*8]
test r11w, 0x1023
clc
cmp byte [rax + r15*8 + 0x39], bl
jmp 0x1404d55f1
je 0x1404d574b
lea rax, [0x1400ba940]
cwd
mov rcx, qword [rax + r13*8]
setp dl
movzx dx, sil
lea rdx, [rbp - 0x10]
jmp 0x1404d5615
mov rcx, qword [rcx + r15*8 + 0x28]
call qword [sym.imp.KERNEL32.dll_GetConsoleMode]
test eax, eax
jmp 0x1404d5627
je 0x1404d574b
test sil, sil
jmp 0x1404d5635
je 0x1404d5719
dec sil
stc
cmp sil, 1
ja 0x1404d589a
lea r12, [rdi + r14]
jmp 0x1404d5657
mov qword [rbp - 0x30], rbx
mov r14, rdi
cmp rdi, r12
jmp 0x1404d5666
jae 0x1404d5890
mov esi, dword [rbp - 0x2c]
sets ch
movzx eax, word [r14]
mov cx, si
movzx ecx, ax
jmp 0x1404d5681
mov word [rbp - 0x10], ax
jmp 0x1404d568a
call fcn.1404dfe21
movzx ecx, word [rbp - 0x10]
cmp r11b, 0xbb
clc
test r8b, spl
cmp ax, cx
jmp 0x1404d56a3
jne 0x1404d5706
add esi, 2
mov dword [rbp - 0x2c], esi
stc
cmp cx, 0xa
jmp 0x1404d56b9
jne 0x1404d56ef
mov ecx, 0xd
call fcn.1404dfe21
mov ecx, 0xd
cmc
stc
cmp ax, cx
jmp 0x1404d56d8
jne 0x1404d5706
inc esi
jmp 0x1404d56e5
mov dword [rbp - 0x2c], esi
jmp 0x1404d56ed
inc ebx
add r14, 2
cmp r14, r12
jmp 0x1404d56fb
jae 0x1404d5890
jmp 0x1404d5672
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rbp - 0x30], eax
jmp 0x1404d5714
jmp 0x1404d5890
mov r9d, r14d
lea rcx, [rbp - 0x30]
movsx edx, sp
cmovbe rdx, rdx
mov r8, rdi
mov edx, r12d
jmp 0x1404d5732
call fcn.1404d59b4
movsd xmm0, qword [rax]
jmp 0x1404d5743
mov ebx, dword [rax + 8]
jmp 0x1404d5895
lea rax, [0x1400ba940]
bt cx, ax
and cl, 0xc8
adc ch, 0xc9
mov rcx, qword [rax + r13*8]
cmp byte [rcx + r15*8 + 0x38], bl
jmp 0x1404d576a
jge 0x1404d5823
mov ecx, esi
clc
cmp bp, r10w
test sil, sil
jmp 0x1404d577f
je 0x1404d57ec
sub ecx, 1
jmp 0x1404d578d
je 0x1404d57c8
cmp ecx, 1
jmp 0x1404d579b
jne 0x1404d589a
mov r9d, r14d
movzx cx, cl
movsx r8, dx
lea rcx, [rbp - 0x30]
movsxd rdx, r11d
mov r8, rdi
mov edx, r12d
jmp 0x1404d57be
call fcn.1404d6628
jmp 0x1404d5737
mov r9d, r14d
movsxd rdx, ecx
movzx edx, bp
cwd
lea rcx, [rbp - 0x30]
mov r8, rdi
mov edx, r12d
jmp 0x1404d57e2
call fcn.1404d6885
jmp 0x1404d5737
mov r9d, r14d
jmp 0x1404d57fb
lea rcx, [rbp - 0x30]
mov r8b, 0x80
mov r8, rdi
jmp 0x1404d5811
mov edx, r12d
jmp 0x1404d5819
call fcn.1404d63f3
jmp 0x1404d5737
mov rcx, qword [rcx + r15*8 + 0x28]
btc r9w, di
rcr r8b, cl
lea r9, [rbp - 0x2c]
movzx r8d, r8w
movsx edx, r9w
sub eax, eax
mov r8d, r14d
cmp r10w, 0x35a9
or dh, bh
movsx edx, ax
and qword [rsp + 0x20], rax
mov rdx, rdi
jmp 0x1404d5859
mov qword [rbp - 0x30], rax
jmp 0x1404d5862
mov dword [rbp - 0x28], eax
jmp 0x1404d586a
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x1404d5884
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rbp - 0x30], eax
ror bl, 0x24
mov ebx, dword [rbp - 0x28]
rol al, 0xc2
sbb ah, 0x8a
xadd al, al
movsd xmm0, qword [rbp - 0x30]
movsd qword [rbp - 0x20], xmm0
mov rax, qword [rbp - 0x20]
cmp bp, r14w
jmp 0x1404d58a7
shr rax, 0x20
cmp r9w, ax
test bpl, r14b
cmc
test eax, eax
jmp 0x1404d58ba
jne 0x1404d595b
mov eax, dword [rbp - 0x20]
cmp esp, esp
cmc
test eax, eax
jmp 0x1404d58cd
je 0x1404d590e
cmp eax, 5
jne 0x1404d5901
call fcn.1404af716
mov dword [rax], 9
jmp 0x1404d58ec
call fcn.1404af750
mov dword [rax], 5
jmp 0x1404d58fc
jmp 0x1404d54ab
mov ecx, dword [rbp - 0x20]
call fcn.1404af793
jmp 0x1404d54ab
lea rax, [0x1400ba940]
cmc
mov rax, qword [rax + r13*8]
test r13w, r10w
stc
test byte [rax + r15*8 + 0x38], 0x40
jmp 0x1404d592a
je 0x1404d593e
cmp byte [rdi], 0x1a
jmp 0x1404d5938
je 0x1404d596b
call fcn.1404af716
mov dword [rax], 0x1c
jmp 0x1404d594e
call fcn.1404af750
and dword [rax], 0
jmp 0x1404d54ab
mov eax, dword [rbp - 0x1c]
jmp 0x1404d5964
sub eax, ebx
jmp 0x1404d5979
sub eax, eax
shl r13w, cl
movsxd r15, r13d
bsr bx, r15w
mov rbx, qword [rsp + 0xb8]
or r12b, 0x3e
xadd r13w, r12w
add rsp, 0x60
pop r15
movzx r14d, dx
pop r14
not r13b
movzx bp, cl
pop r13
not sil
setg r12b
movsx r12w, r15b
pop r12
pop rdi
pop rsi
not bp
pop rbp
ret