Function at 0x1404db887
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 8], rbx
rcl ah, 0xbe
push rbp
shr al, 0x47
cbw
btr ax, bp
push rsi
and ax, r15w
push rdi
push r12
jmp 0x1404db8b1
push r13
push r14
or esi, 0x1d8809e3
push r15
lea rbp, [rsp - 0x27]
ror rax, 0x2d
sub rsp, 0x100
movsx r12w, r14b
rcl r13b, cl
cmp r10w, 0x796b
mov rax, qword [0x1400b7288]
xor rax, rsp
bts r15d, edx
sal r14b, 0x86
mov qword [rbp + 0x17], rax
xadd r12b, r14b
movsxd rsi, edx
sbb r14b, r13b
sal r12d, 0xf9
mov r15, r8
bt rax, rbp
sal r12b, cl
mov rax, rsi
stc
shl r14b, cl
rol r12b, 0xbe
mov qword [rbp - 9], rcx
shr cl, cl
movzx r13, r13w
test r15b, 0xee
mov qword [rbp - 0x11], rax
cmc
cmove r14w, r12w
lea rcx, [0x140000000]
and eax, 0x3f
mov r13d, r9d
shrd r12, rbx, 0xe1
rcr r12, 0x93
lea r13, [r13 + r8]
sbb r14w, 0x7dbc
mov qword [rbp - 0x21], r8
mov r12, rsi
mov qword [rbp - 0x51], r13
btr r14, 0x41
sar r12, 6
mov r14b, 6
not r14w
movsx r14, r12w
lea r14, [rax + rax*8]
jmp 0x1404db977
mov rax, qword [rcx + r12*8 + 0xba940]
jmp 0x1404db984
mov rax, qword [rax + r14*8 + 0x28]
jmp 0x1404db98e
mov qword [rbp - 0x49], rax
jmp 0x1404db997
call qword [sym.imp.KERNEL32.dll_GetConsoleOutputCP]
sub edx, edx
movzx cx, r9b
mov ecx, edx
lea rcx, [rsp + 0x50]
jmp 0x1404db9b0
mov dword [rbp - 0x59], eax
jmp 0x1404db9b8
call fcn.1404a484a
mov rcx, qword [rsp + 0x58]
movzx rbx, sp
ror dil, 0x88
xor r11d, r11d
movsx di, r11b
cmp rax, 0x66902fac
mov dword [rbp - 0x69], r11d
mov ebx, r11d
mov dword [rbp - 0x65], ebx
ror dh, cl
btr di, 0x4f
mov rdi, r15
cmp r12b, 0x58
add edx, 0x72090da8
shrd edx, r12d, 0x5c
mov edx, dword [rcx + 0xc]
mov ecx, r11d
test eax, 0x258e79f9
cmc
stc
mov dword [rsp + 0x40], ecx
test r8b, 0x10
mov dword [rbp - 0x55], edx
test r11b, 0xdd
cmp r15, r13
jmp 0x1404dba20
jae 0x1404dc1c7
mov rax, rsi
mov rsi, r15
sub cl, 0x59
sub cl, al
sar rax, 6
test si, 0x120
adc cl, r15b
add r15, 0xcb534fe
mov qword [rbp - 0x19], rax
mov cl, 0x6b
mov cl, byte [rdi]
mov r15d, 1
mov byte [rsp + 0x44], cl
mov dword [rsp + 0x48], r11d
cmp edx, 0xfde9
jmp 0x1404dba66
jne 0x1404dbd2c
lea r15, [0x140000000]
stc
mov edx, r11d
add si, si
bt esi, esi
neg esi
mov r9, qword [r15 + rax*8 + 0xba940]
mov rsi, r11
cmp rcx, rsp
bswap ax
lea rax, [r9 + r14*8]
cmp byte [rax + rsi + 0x3e], r11b
jmp 0x1404dba9e
je 0x1404dbabd
inc edx
jmp 0x1404dbaab
inc rsi
jmp 0x1404dbab3
cmp rsi, 5
jl 0x1404dba94
test rsi, rsi
jmp 0x1404dbac5
jle 0x1404dbc89
mov rax, qword [r15 + r12*8 + 0xba940]
adc r10b, r13b
bt cx, 0xee
mov r8, qword [rbp - 0x51]
sub r8, rdi
movzx ecx, byte [rax + r14*8 + 0x3e]
inc r13w
movsx r10, di
movsx r15d, byte [rcx + r15 + 0xb7d00]
cmovg r13w, bp
inc r15d
ror r10b, cl
sar r13d, 0x82
adc r10b, bpl
mov r13d, r15d
sub r13d, edx
movsx r10, r13w
sar r10w, cl
neg r10b
movsxd r10, r13d
cmp r11b, r9b
test al, r13b
cmp r10, r8
jmp 0x1404dbb2d
jg 0x1404dc00a
lea rax, [rbp - 1]
movsx rdx, r15w
cmp bl, ah
mov rdx, r11
sub r9, rax
dec r8w
lea r8, [r9 + r14*8]
ror al, 0xf4
lea rcx, [rbp - 1]
add rcx, rdx
inc rdx
mov al, byte [rcx + r8 + 0x3e]
jmp 0x1404dbb62
mov byte [rcx], al
jmp 0x1404dbb69
cmp rdx, rsi
jmp 0x1404dbb71
jl 0x1404dbb4e
test r13d, r13d
jmp 0x1404dbb7f
jle 0x1404dbbb2
lea rcx, [rbp - 1]
or rdx, 0x86d3e48
shr rdx, 0x32
stc
mov r8, r10
and rdx, 0x4d212a1f
add rcx, rsi
movsxd rdx, ebx
mov rdx, rdi
call fcn.1404a3857
xor r11d, r11d
cwd
mov rdx, r11
test bl, spl
adc ecx, eax
bsf ecx, ecx
lea r8, [0x140000000]
mov rcx, qword [r8 + r12*8 + 0xba940]
add rcx, rdx
jmp 0x1404dbbd4
inc rdx
cmc
mov byte [rcx + r14*8 + 0x3e], r11b
cmp r8w, 0x5b07
test r10b, cl
cmp rdx, rsi
jmp 0x1404dbbee
jl 0x1404dbbc4
lea rax, [rbp - 1]
and r9b, cl
neg r9b
mov qword [rbp - 0x41], r11
sub dl, dh
cmp al, 0x99
mov qword [rbp - 0x39], rax
shl edx, cl
lea r9, [rbp - 0x41]
btc cx, 0xcc
mov eax, r11d
adc dl, 0xe8
stc
lea rdx, [rbp - 0x39]
movsxd rcx, r9d
test bx, 0x27bc
cmp r15d, 4
jmp 0x1404dbc34
lea rcx, [rsp + 0x48]
sete al
xchg r8b, r15b
mov r15, rcx
inc eax
mov r8d, eax
not r15b
mov r15d, eax
jmp 0x1404dbc52
call fcn.1404e13d4
cmp rax, 0xffffffffffffffff
je 0x1404dbdee
lea eax, [r13 - 1]
sar r13, cl
sal sil, cl
bsf si, r14w
mov r13, qword [rbp - 0x51]
bswap si
sbb rsi, 0x7af9328a
movsxd rsi, eax
add rsi, rdi
jmp 0x1404dbe25
movzx eax, byte [rdi]
sal si, 0xc3
mov rdx, r13
bts rcx, rdx
mov ch, bh
sub rdx, rdi
movsx rsi, byte [rax + r15 + 0xb7d00]
cmovno ecx, r8d
lea ecx, [rsi + 1]
movsxd rax, ecx
stc
cmc
test r14, rdi
cmp rax, rdx
jg 0x1404dc08c
cmp ecx, 4
mov qword [rbp - 0x31], r11
mov eax, r11d
movzx rcx, si
cwd
mov qword [rbp - 0x29], rdi
mov dl, 0xe2
sete al
movzx r8d, dx
lea r9, [rbp - 0x31]
cqo
mov r8b, 0x16
inc eax
cwd
lea rdx, [rbp - 0x29]
mov r8d, eax
jmp 0x1404dbcfa
lea rcx, [rsp + 0x48]
mov ebx, eax
call fcn.1404e13d4
cmp rax, 0xffffffffffffffff
jmp 0x1404dbd0f
je 0x1404dbdee
add rsi, rdi
setle r15b
xchg r15, r15
mov r15d, ebx
jmp 0x1404dbd27
jmp 0x1404dbe25
lea rax, [0x140000000]
test spl, 0xca
adc dl, dil
mov rdx, qword [rax + r12*8 + 0xba940]
mov cl, byte [rdx + r14*8 + 0x3d]
cmp r13d, 0x6aa54910
cmc
stc
test cl, 4
jmp 0x1404dbd58
je 0x1404dbd96
mov al, byte [rdx + r14*8 + 0x3e]
cmp spl, 0x2c
cmc
and cl, 0xfb
jmp 0x1404dbd70
mov byte [rbp + 7], al
mov al, byte [rdi]
jmp 0x1404dbd7a
mov byte [rdx + r14*8 + 0x3d], cl
movsx edx, r10w
xchg dh, dl
lea rdx, [rbp + 7]
mov byte [rbp + 8], al
jmp 0x1404dbd91
jmp 0x1404dbdd0
call fcn.1404aaf56
movzx ecx, byte [rdi]
xor edx, edx
test r14b, 6
cmp bp, r9w
clc
cmp word [rax + rcx*2], dx
jmp 0x1404dbdb2
jge 0x1404dbdfc
inc rsi
cmp rsi, r13
jmp 0x1404dbdc3
jae 0x1404dc140
mov rdx, rdi
movzx ecx, r13w
mov r8d, 2
lea rcx, [rsp + 0x48]
call fcn.1402272af
cmp eax, 0xffffffff
jmp 0x1404dbde8
jne 0x1404dbe25
cmp byte [rbp - 0x71], 0
jmp 0x1404dbdf7
jmp 0x1404dc137
mov r8, r15
movsxd rdx, edi
mov ecx, r11d
cdq
lea rcx, [rsp + 0x48]
movsx rdx, sp
mov rdx, rdi
call fcn.1402272af
cmp eax, 0xffffffff
jmp 0x1404dbe1f
je 0x1404dc1ae
mov ecx, dword [rbp - 0x59]
rcr r8b, 0xec
and eax, 0x4a75461a
dec eax
lea rax, [rbp + 0xf]
mov r8b, 0x91
add r9b, 0xe4
shl dil, 0x8a
sub ebx, ebx
shr r8w, cl
sar r8w, cl
lea r8, [rsp + 0x48]
mov qword [rsp + 0x38], rbx
or dil, 0xe0
shl dil, 0x59
mov r9b, 0x23
lea rdi, [rsi + 1]
setno r9b
mov qword [rsp + 0x30], rbx
btr r9w, 0x2f
rcr r9b, 0x43
mov r9d, r15d
test rbp, rbx
jmp 0x1404dbe83
mov dword [rsp + 0x28], 5
stc
test rbx, 0x74047315
sub edx, edx
jmp 0x1404dbe9a
mov qword [rsp + 0x20], rax
jmp 0x1404dbea4
call fcn.1404c9779
mov esi, eax
test r10, 0x3b073c5f
jmp 0x1404dbeb7
test eax, eax
je 0x1404dc273
mov rcx, qword [rbp - 0x49]
not r8b
movsxd rdx, esi
lea r9, [rsp + 0x4c]
mov r8d, eax
mov dl, 0xf2
setne dl
movsx edx, di
mov qword [rsp + 0x20], rbx
movsxd rdx, ecx
mov dl, 0x2d
cqo
lea rdx, [rbp + 0xf]
jmp 0x1404dbeee
call qword [sym.imp.KERNEL32.dll_WriteFile]
sub r11d, r11d
cmp bpl, r12b
test eax, eax
jmp 0x1404dbf01
je 0x1404dc266
mov r15d, dword [rsp + 0x40]
rol bl, cl
or bl, r12b
bt rbx, 0xe4
mov ebx, edi
cmp r15b, 0x7f
sub ebx, dword [rbp - 0x21]
jmp 0x1404dbf24
add ebx, r15d
mov dword [rbp - 0x65], ebx
cmp r9w, r10w
clc
cmp dword [rsp + 0x4c], esi
jmp 0x1404dbf38
jb 0x1404dc133
cmp byte [rsp + 0x44], 0xa
jmp 0x1404dbf48
jne 0x1404dbfde
mov rcx, qword [rbp - 0x49]
cdqe
cmovns r9w, sp
lea eax, [r11 + 0xd]
movzx r9w, r12b
movsx r9w, r9b
lea r9, [rsp + 0x4c]
xchg dl, r8b
movsx rdx, r9w
mov r8, rsp
mov word [rsp + 0x44], ax
cdq
seto r8b
movzx r8, dx
lea r8d, [r11 + 1]
cwd
mov qword [rsp + 0x20], r11
lea rdx, [rsp + 0x44]
jmp 0x1404dbf99
call qword [sym.imp.KERNEL32.dll_WriteFile]
xor r11d, r11d
test eax, eax
jmp 0x1404dbfa9
je 0x1404dc1a5
cmp dword [rsp + 0x4c], 1
jb 0x1404dc133
inc r15d
inc ebx
rol esi, cl
rcl si, 7
mov dword [rsp + 0x40], r15d
sbb sil, 7
stc
mov dword [rbp - 0x65], ebx
shl sil, cl
not si
test r10w, 0x5a07
mov rsi, rdi
clc
test r14w, 0x7a58
cmp r14b, r11b
cmp rdi, r13
jmp 0x1404dbff3
jae 0x1404dc1c0
mov rax, qword [rbp - 0x19]
mov edx, dword [rbp - 0x55]
jmp 0x1404dc005
jmp 0x1404dba4a
mov edx, r11d
test r8, r8
jmp 0x1404dc015
jle 0x1404dc07f
sub rdi, rsi
setp al
movzx ecx, bx
dec ecx
lea rbx, [0x140000000]
setle cl
mov al, byte [rdi + rsi]
movsxd rcx, r13d
inc edx
xor cx, r8w
or cl, 0x24
movsx cx, r10b
mov rcx, qword [rbx + r12*8 + 0xba940]
cmp esp, 0x49c71ccd
add rcx, rsi
jmp 0x1404dc05a
inc rsi
stc
mov byte [rcx + r14*8 + 0x3e], al
mov ah, ch
movsxd rax, edx
jmp 0x1404dc070
cmp rax, r8
jl 0x1404dc030
mov ebx, dword [rbp - 0x65]
cmp r12b, sil
add ebx, r8d
jmp 0x1404dc087
jmp 0x1404dc124
mov r9d, r11d
test rdx, rdx
jmp 0x1404dc097
jle 0x1404dc11f
mov r13, qword [rbp - 0x11]
adc al, 0xe1
mov r8, r11
mov r10, r13
btc r11d, r11d
and r13d, 0x3f
xadd r11, rcx
btc r11, 0xcf
sar r10, 6
sbb cx, r10w
lea r11, [r13*8]
and cx, 0x3b3f
add r11, r13
mov al, byte [r8 + rdi]
movsx rcx, r15w
movzx ecx, r15w
inc r9d
mov rcx, qword [r15 + r10*8 + 0xba940]
test ebx, ebp
jmp 0x1404dc0f0
add rcx, r8
jmp 0x1404dc0f8
inc r8
cmp r15b, r8b
mov byte [rcx + r11*8 + 0x3e], al
movsxd rax, r9d
cmc
cmp cl, 0x75
cmp rax, rdx
jl 0x1404dc0d2
sub r11d, r11d
setnp ch
rol ch, 0x9c
sbb cl, sil
add ebx, edx
xadd cl, cl
mov dword [rbp - 0x65], ebx
add rcx, r9
not rcx
adc ecx, 0xd613554
cmp byte [rbp - 0x71], r11b
mov ecx, dword [rsp + 0x40]
jmp 0x1404dc1d0
mov al, byte [rdi]
movsxd r8, edi
lea r8, [0x140000000]
movzx cx, r10b
xchg cx, cx
jmp 0x1404dc159
mov rcx, qword [r8 + r12*8 + 0xba940]
jmp 0x1404dc166
inc ebx
stc
mov dword [rbp - 0x65], ebx
cmp al, r11b
test ch, dl
mov byte [rcx + r14*8 + 0x3e], al
sal ah, cl
sbb ax, 0xad0
or ah, 0xd2
mov rax, qword [r8 + r12*8 + 0xba940]
stc
or byte [rax + r14*8 + 0x3d], 4
cmp r11, 0x20df2a85
cmp bx, si
cmp byte [rbp - 0x71], dl
jmp 0x1404dc1a0
jmp 0x1404dc137
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rbp - 0x69], eax
mov ecx, dword [rsp + 0x40]
jmp 0x1404dc1b7
cmp byte [rbp - 0x71], 0
jmp 0x1404dc1d0
mov ecx, dword [rsp + 0x40]
cmp r9b, r11b
cmp byte [rbp - 0x71], r11b
jmp 0x1404dc1d0
je 0x1404dc1e5
mov rax, qword [rsp + 0x50]
cmp dil, r14b
and dword [rax + 0x3a8], 0xfffffffd
mov rax, qword [rbp - 9]
cmp rsp, 0xe7101f3
clc
movsd xmm0, qword [rbp - 0x69]
movsd qword [rax], xmm0
cmp cl, r8b
cmc
clc
mov dword [rax + 8], ecx
bt rcx, 0x5f
mov rcx, qword [rbp + 0x17]
xor rcx, rsp
call fcn.14049fbde
mov rbx, qword [rsp + 0x140]
btr rbp, 0x69
xor r12b, 0xa4
btc di, 0x24
add rsp, 0x100
movzx di, spl
bswap si
pop r15
movzx r13, r8w
pop r14
bswap ebp
pop r13
jmp 0x1404dc250
pop r12
pop rdi
jmp 0x1404dc25f
pop rsi
movzx rbp, r10w
pop rbp
ret
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rbp - 0x69], eax
bsf rcx, rsi
mov ecx, dword [rsp + 0x40]
test rsp, 0x4ed5554b
cmc
cmp byte [rbp - 0x71], bl
jmp 0x1404dc287
jmp 0x1404dc1d0