Function at 0x14047d675
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x10], rdx
sal r9b, cl
push rbp
bsr r9d, ebp
clc
sbb r9b, bpl
push rsi
push rdi
bswap r9
push r12
adc r12w, si
sub r9b, bpl
push r13
xchg r9b, r9b
not r9w
push r14
push r15
bts r13w, r8w
xor r12, 0xffffffff980cd10f
or r12b, 0xba
sub rsp, 0x60
sub r12b, 0x21
btc r13, rbx
movzx r12w, r12b
movsxd r13, ecx
ror r9, 6
mov r9, rdx
btr r12, r10
stc
mov r12d, r8d
test r10b, 3
cmp r13d, 0xfffffffe
jmp 0x14047d6e6
jne 0x14047d714
call fcn.14047c1aa
sub esi, esi
jmp 0x14047d6f8
mov dword [rax], esi
jmp 0x14047d6ff
call fcn.14047c1e5
mov dword [rax], 9
jmp 0x14047d70f
jmp 0x14047de99
sub esi, esi
stc
test ecx, ecx
jmp 0x14047d71e
js 0x14047de78
cmp r13d, dword [0x1400db690]
jmp 0x14047d730
jae 0x14047de78
mov rax, r13
clc
ror r14b, 0x2a
lea edx, [rsi + 1]
adc r11b, 0x85
and eax, 0x3f
sar r11, 0xbc
dec r14d
mov qword [rsp + 0x48], rdx
movzx r8, bp
mov r8, r13
lea r11, [0x1400db290]
or r14b, r13b
shr r8, 6
rol r14w, cl
mov qword [rsp + 0x40], r8
xchg r14b, r14b
lea r14, [rax + rax*8]
bt ax, si
mov rax, qword [r11 + r8*8]
cmp r9w, 0xc38b
test byte [rax + r14*8 + 0x38], dl
je 0x14047de78
cmp r12d, 0x7fffffff
jmp 0x14047d79e
jbe 0x14047d7c5
call fcn.14047c1aa
mov dword [rax], esi
jmp 0x14047d7b0
call fcn.14047c1e5
mov dword [rax], 0x16
jmp 0x14047d7c0
jmp 0x14047de94
test r12d, r12d
jmp 0x14047d7cd
je 0x14047de6c
test byte [rax + r14*8 + 0x38], 2
jmp 0x14047d7de
jne 0x14047de6c
test r9, r9
je 0x14047d7a4
mov rcx, qword [rax + r14*8 + 0x28]
test esp, r15d
shr bx, 0xb4
mov rbx, rsi
ror rdi, cl
movsx r10d, byte [rax + r14*8 + 0x39]
sar dil, cl
sal rdi, 0x8e
mov edi, 4
stc
mov qword [rsp + 0x38], rcx
mov ecx, r10d
cmc
cmp r14b, 0x88
cmp r13w, r13w
mov byte [rsp + 0xa0], r10b
sub ecx, edx
jmp 0x14047d832
je 0x14047d8a0
cmp ecx, edx
jmp 0x14047d83f
jne 0x14047d885
mov eax, r12d
clc
stc
cmc
not eax
cmp sil, 0x30
clc
test dl, al
jmp 0x14047d859
jne 0x14047d885
call fcn.14047c1aa
mov dword [rax], esi
jmp 0x14047d86b
call fcn.14047c1e5
mov dword [rax], 0x16
jmp 0x14047d87b
call fcn.1404673c4
jmp 0x14047dbd2
mov ebp, r12d
mov r15, 0xfffffffff410738b
cmovge r15w, si
bswap r15w
mov r15, r9
jmp 0x14047d9af
mov eax, r12d
jmp 0x14047d8a9
not eax
stc
test dl, al
jmp 0x14047d8b3
je 0x14047d85f
mov ebp, r12d
sub ecx, 0xa32db805
btc ecx, r15d
shr ebp, 1
rcr ch, 0x1d
cmp ebp, edi
movsx rcx, di
cmovb ebp, edi
movsx ecx, di
cmovg cx, r10w
movzx cx, r14b
mov ecx, ebp
jmp 0x14047d8e8
call fcn.14047bfce
xor ecx, ecx
movsxd rbx, esi
mov rbx, rax
call fcn.14047c216
sub ecx, ecx
jmp 0x14047d901
call fcn.14047c216
mov r15, rbx
test sp, r13w
test rbx, rbx
jmp 0x14047d915
jne 0x14047d93b
call fcn.14047c1e5
mov dword [rax], 0xc
call fcn.14047c1aa
mov dword [rax], 8
jmp 0x14047d936
jmp 0x14047dbd2
xor edx, edx
movsx r8d, sp
mov cl, sil
mov ecx, r13d
cmovle r8, rdx
movsx r8w, bl
movsxd r8, edi
lea r8d, [rdx + 1]
call fcn.14047d315
mov r8, qword [rsp + 0x40]
ror r10b, cl
lea r11, [0x1400db290]
xor dx, 0xad29
rol dil, 0xb0
cdq
mov r10b, byte [rsp + 0xa0]
test r13b, 9
jmp 0x14047d986
mov edx, 1
bt cx, 0x19
bsf ecx, r13d
movzx r9, r11w
mov rcx, qword [r11 + r8*8]
sub di, 0x530e
cmc
inc dil
mov qword [rcx + r14*8 + 0x30], rax
shr r9w, 0xb1
mov rax, qword [r11 + r8*8]
or di, 0x1a04
neg dil
mov edi, esi
mov qword [rsp + 0x50], r15
sal r9b, cl
sal r9w, 0xa
mov r9d, 0xa
cmp cl, 0x9f
test r14d, ebp
test rbp, 0x3390c4b5
test byte [rax + r14*8 + 0x38], 0x48
jmp 0x14047d9e8
je 0x14047db02
mov al, byte [rax + r14*8 + 0x3a]
jmp 0x14047d9f8
cmp al, r9b
je 0x14047db02
test ebp, ebp
jmp 0x14047da08
je 0x14047db02
mov byte [r15], al
movsxd rax, r14d
dec ebp
bsf ax, di
mov rax, qword [r11 + r8*8]
sub dil, r9b
lea r15, [r15 + rdx]
movsx edi, r8w
movsxd rdi, r12d
mov dil, 0xbc
mov edi, edx
test spl, r15b
clc
mov byte [rax + r14*8 + 0x3a], r9b
cmc
test r10b, r10b
jmp 0x14047da43
je 0x14047db02
mov rax, qword [r11 + r8*8]
mov cl, byte [rax + r14*8 + 0x3b]
cmc
cmp cl, r9b
jmp 0x14047da5b
je 0x14047db02
test ebp, ebp
jmp 0x14047da68
je 0x14047db02
mov byte [r15], cl
lea edi, [r9 - 8]
sub eax, r14d
btc ax, si
mov rax, qword [r11 + r8*8]
stc
clc
add r15, rdx
jmp 0x14047da8a
dec ebp
clc
jmp 0x14047da96
mov byte [rax + r14*8 + 0x3b], r9b
stc
cmp r10b, dl
jmp 0x14047daa4
jne 0x14047db02
mov rax, qword [r11 + r8*8]
and cl, 0x8b
mov cl, byte [rax + r14*8 + 0x3c]
cmp cl, r9b
jmp 0x14047dabe
je 0x14047db02
test ebp, ebp
jmp 0x14047dacb
je 0x14047db02
mov byte [r15], cl
lea edi, [r9 - 7]
xchg al, ch
rcl rcx, cl
jmp 0x14047dae2
mov rax, qword [r11 + r8*8]
btr ecx, esi
add r15, rdx
movsx ecx, r10w
dec cx
seta cl
dec ebp
mov byte [rax + r14*8 + 0x3c], r9b
movsx cx, sil
mov ecx, r13d
jmp 0x14047db0a
call fcn.140485e4b
test eax, eax
jmp 0x14047db16
je 0x14047dc07
mov rax, qword [rsp + 0x40]
or ecx, r14d
bts ecx, r14d
lea rcx, [0x1400db290]
mov rax, qword [rcx + rax*8]
cmp byte [rax + r14*8 + 0x38], sil
jmp 0x14047db3d
jge 0x14047dc07
mov rcx, qword [rsp + 0x38]
cqo
movsx edx, dx
lea rdx, [rsp + 0x30]
jmp 0x14047db57
call qword [sym.imp.KERNEL32.dll_GetConsoleMode]
test eax, eax
jmp 0x14047db64
je 0x14047dc07
cmp byte [rsp + 0xa0], 2
jne 0x14047dc15
mov rcx, qword [rsp + 0x38]
btc r9w, r8w
ror r8w, cl
dec r8w
lea r9, [rsp + 0xb8]
sar r8b, cl
shr ebp, 1
xchg edx, r8d
movsxd r8, ebp
mov rdx, r15
mov r8d, ebp
mov qword [rsp + 0x20], rsi
jmp 0x14047dbad
call qword [sym.imp.KERNEL32.dll_ReadConsoleW]
test eax, eax
jmp 0x14047dbba
jne 0x14047dbee
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, eax
jmp 0x14047dbcd
call fcn.14047c0b9
or edi, 0xffffffff
jmp 0x14047dbda
mov rcx, rbx
call fcn.14047c216
mov eax, edi
jmp 0x14047dbe9
jmp 0x14047dea4
mov eax, dword [rsp + 0xb8]
jmp 0x14047dbfa
lea edi, [rdi + rax*2]
jmp 0x14047dc02
jmp 0x14047dc67
mov byte [rsp + 0x48], sil
movsx r9d, si
cdq
cmovp edx, r11d
mov rcx, qword [rsp + 0x38]
bswap r9d
lea r9, [rsp + 0xb8]
mov r8b, bl
mov r8d, ebp
mov qword [rsp + 0x20], rsi
mov rdx, r15
jmp 0x14047dc38
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
jmp 0x14047dc45
je 0x14047de19
cmp dword [rsp + 0xb8], r12d
jmp 0x14047dc58
ja 0x14047de19
add edi, dword [rsp + 0xb8]
cdqe
mov rdx, qword [rsp + 0x40]
lea r11, [0x1400db290]
mov rax, qword [r11 + rdx*8]
cmp r11b, bpl
clc
cmp byte [rax + r14*8 + 0x38], sil
jmp 0x14047dc85
jge 0x14047dbda
cmp byte [rsp + 0xa0], 2
movsx r8, r9w
movsx r8w, spl
movsxd r8, edi
je 0x14047dcde
mov r9, qword [rsp + 0xa8]
cmovns ecx, edx
mov rax, r12
movsxd rcx, edi
movsx rcx, r9w
shr rax, 1
mov rdx, r15
mov ecx, r13d
jmp 0x14047dcc8
mov qword [rsp + 0x20], rax
call fcn.1400ad31c
mov edi, eax
jmp 0x14047dcd9
jmp 0x14047dbda
shr r8, 1
clc
cmp byte [rsp + 0x48], sil
jmp 0x14047dcec
je 0x14047de02
mov r10, qword [rsp + 0x50]
shld r9d, r13d, 0x37
movsx eax, r9w
lahf
mov rax, r10
mov r9b, 0xb4
sets r9b
inc dil
mov rdi, r10
neg r9w
rol r9, 0x1e
ror r9d, cl
lea r9, [r10 + r8*2]
cmp r10, r9
jmp 0x14047dd28
jae 0x14047dde8
mov esi, 0xa
rcr cl, 0x89
shrd cx, bp, 0x89
movzx ecx, word [rax]
clc
cmp cx, 0x1a
je 0x14047ddc2
cmp cx, 0xd
jne 0x14047dd83
lea r8, [rax + 2]
clc
cmp r8, r9
jmp 0x14047dd60
jae 0x14047dd83
cmp word [r8], si
jne 0x14047dd83
movzx ecx, si
mov r11w, 0x7fb2
mov r11d, 4
jmp 0x14047dd94
mov r11d, 2
add r8d, 0x77825a3a
rcr r8d, 0xf
add rax, r11
rcr r8b, 0x21
sub r8d, r11d
mov word [rdi], cx
lea r8, [rdi + 2]
sar di, cl
mov rdi, r8
test esi, 0x7e18ca9c
cmp bpl, al
cmp rax, r9
jb 0x14047dd3b
jmp 0x14047dde8
lea rcx, [0x1400db290]
sets al
mov ax, 0xd733
mov rax, qword [rcx + rdx*8]
jmp 0x14047ddda
or byte [rax + r14*8 + 0x38], 2
cmp dil, r12b
cmc
test r15b, 0xe
sub rdi, r10
cmp rsp, rdi
sar rdi, 1
test r12b, 0x3f
cmc
add edi, edi
jmp 0x14047ddfd
jmp 0x14047dbda
mov rdx, qword [rsp + 0x50]
mov ecx, r13d
jmp 0x14047de0f
call fcn.1400ad15c
jmp 0x14047dcd2
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 5
jmp 0x14047de27
jne 0x14047de52
call fcn.14047c1e5
mov dword [rax], 9
jmp 0x14047de3d
call fcn.14047c1aa
mov dword [rax], 5
jmp 0x14047de4d
jmp 0x14047dbd2
cmp eax, 0x6d
jmp 0x14047de5a
jne 0x14047dbc6
mov edi, esi
jmp 0x14047de67
jmp 0x14047dbda
xor eax, eax
jmp 0x14047de73
jmp 0x14047dea4
call fcn.14047c1aa
mov dword [rax], esi
jmp 0x14047de84
call fcn.14047c1e5
mov dword [rax], 9
jmp 0x14047de94
call fcn.1404673c4
or eax, 0xffffffff
bsr bp, r11w
sal r13b, cl
mov rbx, qword [rsp + 0xb0]
add rsp, 0x60
movsxd r15, r10d
movzx r14w, r11b
cmovge r15w, dx
pop r15
movzx r12d, r15w
xchg si, bp
movsx r14d, r11w
pop r14
pop r13
pop r12
setns bpl
mov dil, dl
pop rdi
mov bpl, al
movsx rsi, si
cmovs bp, di
pop rsi
pop rbp
jmp 0x14047deea
ret