Function at 0x1404d86cc
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
sar bpl, 0xd7
xchg bpl, bpl
push rsi
push rdi
cmp r15w, r10w
push r12
sal bpl, 0xf
cmp r12b, bpl
push r13
ror edi, 0x8b
push r14
rcr r12b, 0x7a
push r15
not dil
rcl r12b, 0xcb
mov rbp, rsp
sub rsp, 0x60
shrd r12d, eax, 0x73
adc r12w, 0x1ae3
ror r12w, 0xc1
sub ebx, ebx
mov r12d, 0x3eca3ed4
btc r14, 0x54
mov r14d, r8d
sub di, r10w
movsxd r12, ecx
dec dil
neg dil
mov rdi, rdx
jmp 0x1404d8738
test r8d, r8d
jmp 0x1404d8740
je 0x1404d8c27
test rdx, rdx
jmp 0x1404d874e
jne 0x1404d877d
call fcn.1404b2795
mov dword [rax], ebx
jmp 0x1404d8760
call fcn.1404b275a
mov dword [rax], 0x16
call fcn.1404b343b
or eax, 0xffffffff
jmp 0x1404d8778
jmp 0x1404d8c29
mov rax, r12
lea rcx, [0x1400ba940]
shr r13d, cl
test spl, 0x8d
and eax, 0x3f
mov r13, r12
rol si, 0x81
sar r13, 6
bts r15, rdx
lea r15, [rax + rax*8]
mov rcx, qword [rcx + r13*8]
sar ah, cl
add ah, 9
and rsi, r14
movsx esi, byte [rcx + r15*8 + 0x39]
movzx eax, r8w
bt ax, 0x7d
lea eax, [rsi - 1]
cmp rsp, 0x73351d3b
clc
cmp al, 1
ja 0x1404d87e9
mov eax, r14d
stc
not eax
stc
test r15b, r12b
test al, 1
jmp 0x1404d87e3
je 0x1404d8754
test byte [rcx + r15*8 + 0x38], 0x20
je 0x1404d881c
xor edx, edx
cmovns r8d, ecx
mov rcx, rsp
mov ecx, r12d
movzx r8w, spl
mov r8b, 0x31
jmp 0x1404d880e
lea r8d, [rdx + 2]
jmp 0x1404d8817
call fcn.14028e29a
mov ecx, r12d
jmp 0x1404d8824
mov qword [rbp - 0x20], rbx
jmp 0x1404d882d
call fcn.1404de727
test eax, eax
jmp 0x1404d8839
je 0x1404d89fc
lea rax, [0x1400ba940]
cmc
test sp, 0x5508
mov rax, qword [rax + r13*8]
cmp byte [rax + r15*8 + 0x38], bl
jge 0x1404d89fc
call fcn.1404c6b08
mov rcx, qword [rax + 0x90]
cmp r13b, r8b
clc
cmp qword [rcx + 0x138], rbx
jmp 0x1404d8877
jne 0x1404d8898
lea rax, [0x1400ba940]
mov rax, qword [rax + r13*8]
cmp byte [rax + r15*8 + 0x39], bl
jmp 0x1404d8892
je 0x1404d89fc
lea rax, [0x1400ba940]
movsx edx, dx
movzx ecx, r10w
movsx cx, r8b
mov rcx, qword [rax + r13*8]
movzx dx, spl
mov dl, 0xec
lea rdx, [rbp - 0x10]
jmp 0x1404d88bf
mov rcx, qword [rcx + r15*8 + 0x28]
jmp 0x1404d88c9
call qword [sym.imp.KERNEL32.dll_GetConsoleMode]
test eax, eax
jmp 0x1404d88d6
je 0x1404d89fc
test sil, sil
jmp 0x1404d88e4
je 0x1404d89c9
dec sil
jmp 0x1404d88f2
cmp sil, 1
ja 0x1404d8b42
lea r12, [rdi + r14]
movzx r14w, dl
btr r14, 0xb
mov qword [rbp - 0x30], rbx
mov r14, rdi
cmp r14d, 0x729166e8
cmp rdi, r12
jmp 0x1404d8920
jae 0x1404d8b38
mov esi, dword [rbp - 0x2c]
movzx eax, word [r14]
not cl
movsx cx, r13b
movzx ecx, ax
jmp 0x1404d893c
mov word [rbp - 0x10], ax
jmp 0x1404d8945
call fcn.1404e2f30
movzx ecx, word [rbp - 0x10]
cmp ax, cx
jmp 0x1404d8956
jne 0x1404d89b6
add esi, 2
mov dword [rbp - 0x2c], esi
cmp cx, 0xa
jne 0x1404d899f
mov ecx, 0xd
jmp 0x1404d8976
call fcn.1404e2f30
mov ecx, 0xd
cmp ax, cx
jmp 0x1404d8988
jne 0x1404d89b6
inc esi
mov dword [rbp - 0x2c], esi
jmp 0x1404d8998
inc ebx
jmp 0x1404d899f
add r14, 2
cmp r14, r12
jmp 0x1404d89ab
jae 0x1404d8b38
jmp 0x1404d8929
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rbp - 0x30], eax
jmp 0x1404d89c4
jmp 0x1404d8b38
mov r9d, r14d
lea rcx, [rbp - 0x30]
movsx edx, r15w
cmovbe edx, ebx
mov r8, rdi
mov edx, r12d
jmp 0x1404d89e2
call fcn.1404d8c59
movsd xmm0, qword [rax]
movzx ebx, r9w
mov ebx, dword [rax + 8]
jmp 0x1404d89f7
jmp 0x1404d8b3d
lea rax, [0x1400ba940]
xor cx, di
neg cl
adc cl, dil
mov rcx, qword [rax + r13*8]
stc
cmp byte [rcx + r15*8 + 0x38], bl
jmp 0x1404d8a1a
jge 0x1404d8ac4
mov ecx, esi
stc
test sil, sil
je 0x1404d8a9d
sub ecx, 1
je 0x1404d8a68
cmp ecx, 1
jmp 0x1404d8a3d
jne 0x1404d8b42
mov r9d, r14d
lea rcx, [rbp - 0x30]
mov r8, rdi
bswap dx
movsx rdx, cx
cqo
mov edx, r12d
jmp 0x1404d8a5e
call fcn.1404d98c5
jmp 0x1404d89e7
mov r9d, r14d
movzx r8, r12w
movzx r8w, r10b
mov dh, ah
lea rcx, [rbp - 0x30]
bswap r8
movzx dx, ah
cqo
mov r8, rdi
bswap dx
cqo
mov edx, r12d
jmp 0x1404d8a93
call fcn.1404d9b4d
jmp 0x1404d89e7
mov r9d, r14d
bswap r8w
movsx cx, r12b
lea rcx, [rbp - 0x30]
mov r8b, bpl
seto r8b
mov r8, rdi
mov edx, r12d
call fcn.1404d9690
jmp 0x1404d89e7
mov rcx, qword [rcx + r15*8 + 0x28]
adc r8w, 0x2868
sub dx, 0x3140
lea r9, [rbp - 0x2c]
movsx r8, r11w
sub eax, eax
shl edx, cl
movzx r8d, r9w
mov r8d, r14d
movzx edx, si
bt rdx, r9
ror edx, 0xe6
and qword [rsp + 0x20], rax
cdq
mov dx, dx
movzx edx, cx
mov rdx, rdi
mov qword [rbp - 0x30], rax
jmp 0x1404d8b09
mov dword [rbp - 0x28], eax
jmp 0x1404d8b11
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jmp 0x1404d8b1e
jne 0x1404d8b30
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rbp - 0x30], eax
cmovg eax, edx
mov ebx, dword [rbp - 0x28]
bswap ax
xor al, 0x6e
movsd xmm0, qword [rbp - 0x30]
movsd qword [rbp - 0x20], xmm0
mov rax, qword [rbp - 0x20]
jmp 0x1404d8b50
shr rax, 0x20
cmc
test eax, eax
jne 0x1404d8c16
mov eax, dword [rbp - 0x20]
cmp cx, 0x188f
cmp r13, rcx
test eax, eax
jmp 0x1404d8b6f
je 0x1404d8bba
cmp eax, 5
jmp 0x1404d8b7d
jne 0x1404d8ba8
call fcn.1404b275a
mov dword [rax], 9
jmp 0x1404d8b93
call fcn.1404b2795
mov dword [rax], 5
jmp 0x1404d8ba3
jmp 0x1404d8770
mov ecx, dword [rbp - 0x20]
jmp 0x1404d8bb0
call fcn.1404b27d0
jmp 0x1404d8770
lea rax, [0x1400ba940]
test rsp, r15
clc
cmc
mov rax, qword [rax + r13*8]
cmp rbx, 0x149452b
cmp ax, r8w
test byte [rax + r15*8 + 0x38], 0x40
jmp 0x1404d8be0
je 0x1404d8bf4
cmp byte [rdi], 0x1a
jmp 0x1404d8bee
je 0x1404d8c27
call fcn.1404b275a
mov dword [rax], 0x1c
jmp 0x1404d8c04
call fcn.1404b2795
and dword [rax], 0
jmp 0x1404d8c11
jmp 0x1404d8770
mov eax, dword [rbp - 0x1c]
cmp r13d, 0x60e61ce1
sub eax, ebx
jmp 0x1404d8c29
sub eax, eax
mov rbx, qword [rsp + 0xb8]
and sil, 0xa7
btr si, 0xf0
add rsp, 0x60
movzx r12, bx
not esi
pop r15
movsxd r13, esp
pop r14
mov r12b, 0xe6
pop r13
mov dil, 0x11
pop r12
pop rdi
pop rsi
pop rbp
ret