Function at 0x140a6abc0
Capabilities:
Read file on windows

Disassembly:
push rbx
push rdi
push r15
sub rsp, 0x200
mov ebx, r8d
mov rdi, rdx
mov r15, rcx
test rdx, rdx
jne 0x140a6abec
test ebx, ebx
jne 0x140a6abec
xor eax, eax
add rsp, 0x200
pop r15
pop rdi
pop rbx
ret
mov qword [rsp + 0x220], rbp
mov edx, 0x19
mov qword [rsp + 0x1f8], rsi
mov qword [rsp + 0x1f0], r12
mov qword [rsp + 0x1e8], r13
mov qword [rsp + 0x1e0], r14
call fcn.140a5dd70
mov dword [rsp + 0x238], eax
mov ebp, eax
test eax, eax
je 0x140a6add3
mov rcx, qword [r15 + 0x40]
movzx eax, byte [rcx + 0x341]
mov qword [rsp + 0x38], rax
cmp byte [rcx + rax*8 + 0x22], 0
je 0x140a6ac5c
lea rdx, str.fragmented_basic_auth_header_not_allowed_n
mov ecx, 1
call fcn.140a5b6b0
jmp 0x140a6add3
mov r9d, 0x19
lea rdx, [rsp + 0xc0]
mov r8d, 0xa0
mov rcx, r15
call fcn.140a5dac0
cmp eax, 7
jge 0x140a6ac98
lea rdx, str.b64_auth_too_long_n
mov ecx, 1
call fcn.140a5b6b0
mov eax, 2
jmp 0x140a6add8
lea rdx, str.Basic
mov byte [rsp + 0xc5], 0
lea rcx, [rsp + 0xc0]
call sub.msvcrt.dll__stricmp
test eax, eax
je 0x140a6acdb
lea r8, [rsp + 0xc0]
mov ecx, 1
lea rdx, str.auth_missing_basic:__s_n
call fcn.140a5b6b0
mov eax, 2
jmp 0x140a6add8
mov r8d, 0x77
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0xc6]
call fcn.140a775c0
mov esi, eax
mov dword [rsp + 0x228], esi
test eax, eax
jns 0x140a6ad1b
lea rdx, str.plain_auth_too_long_n
mov ecx, 1
call fcn.140a5b6b0
mov eax, 2
jmp 0x140a6add8
movsxd r13, esi
lea rcx, [rsp + 0x40]
mov edx, 0x3a
mov byte [rsp + r13 + 0x40], 0
call sub.msvcrt.dll_strchr
mov qword [rsp + 0x30], rax
mov r14, rax
test rax, rax
jne 0x140a6ad58
lea rdx, str.basic_auth_format_broken_n
lea ecx, [rax + 1]
call fcn.140a5b6b0
lea eax, [r14 + 2]
jmp 0x140a6add8
test ebx, ebx
je 0x140a6ad8f
cmp ebx, 0x10000000
jne 0x140a6add3
mov r10, qword [r15 + 0x10]
lea r9, [rsp + 0x40]
mov r8, qword [r15 + 0x3d8]
mov edx, 0x66
mov rcx, r15
mov qword [rsp + 0x20], rsi
call qword [r10 + reloc.WS2_32.dll_htonl]
test eax, eax
jne 0x140a6aeb7
jmp 0x140a6add3
xor ebx, ebx
xor edx, edx
mov rcx, rdi
mov esi, ebx
mov ebp, ebx
mov r14d, ebx
call fcn.140a5f460
mov r12d, eax
test eax, eax
jns 0x140a6ae0c
mov r8, rdi
lea rdx, str.cant_open_auth_file:__s_n
lea ecx, [rbx + 1]
call fcn.140a5b6b0
lea r8, str.lws_check_basic_auth
mov ecx, 1
lea rdx, str._s:_basic_auth_lookup_failed_n
call fcn.140a5b6b0
mov eax, 1
mov r13, qword [rsp + 0x1e8]
mov r12, qword [rsp + 0x1f0]
mov rsi, qword [rsp + 0x1f8]
mov rbp, qword [rsp + 0x220]
mov r14, qword [rsp + 0x1e0]
add rsp, 0x200
pop r15
pop rdi
pop rbx
ret
mov r8, rbx
mov rdi, rbx
cmp ebp, r14d
jne 0x140a6ae39
mov r8d, 0x80
lea rdx, [rsp + 0x160]
mov ecx, r12d
call sub.msvcrt.dll__read
mov r14d, eax
test eax, eax
jle 0x140a6ae8a
mov ebp, ebx
mov r8, rbx
lea rcx, [rsp + 0x160]
cmp rdi, r13
jne 0x140a6ae5a
movzx edx, byte [rcx + r8]
cmp dl, 0xd
je 0x140a6ae96
cmp dl, 0xa
je 0x140a6ae96
mov esi, ebx
mov rdi, rbx
movzx eax, byte [rcx + r8]
movzx ecx, byte [rsp + rdi + 0x40]
cmp al, cl
jne 0x140a6ae79
inc rdi
inc ebp
inc r8
inc esi
cmp al, cl
cmovne esi, ebx
jmp 0x140a6ae12
inc ebp
inc r8
inc esi
mov rdi, rbx
cmp al, cl
cmovne esi, ebx
jmp 0x140a6ae12
cmp esi, dword [rsp + 0x228]
sete bl
jmp 0x140a6ae9b
mov ebx, 1
mov ecx, r12d
call sub.msvcrt.dll__close
test ebx, ebx
je 0x140a6adbb
mov r14, qword [rsp + 0x30]
mov ebp, dword [rsp + 0x238]
movzx ecx, byte [rsp + 0x38]
lea rax, [rsp + 0x40]
mov byte [r14], 0
mov edx, 0x19
sub r14w, ax
mov rax, qword [r15 + 0x40]
mov word [rax + rcx*8 + 0x20], r14w
mov rcx, r15
call fcn.140a5dd40
lea r8d, [rbp - 1]
mov rcx, rax
lea rdx, [rsp + 0x40]
mov rbx, rax
call sub.msvcrt.dll_strncpy
movsxd rcx, ebp
xor eax, eax
mov byte [rcx + rbx - 1], 0
jmp 0x140a6add8