Function at 0x1800304f0
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 0x18003051c
test ebx, ebx
jne 0x18003051c
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.18002f010
mov dword [rsp + 0x238], eax
mov ebp, eax
test eax, eax
je 0x180030703
mov rcx, qword [r15 + 0x40]
movzx eax, byte [rcx + 0x341]
mov qword [rsp + 0x38], rax
cmp byte [rcx + rax*8 + 0x22], 0
je 0x18003058c
lea rdx, str.fragmented_basic_auth_header_not_allowed_n
mov ecx, 1
call fcn.18002a190
jmp 0x180030703
mov r9d, 0x19
lea rdx, [rsp + 0xc0]
mov r8d, 0xa0
mov rcx, r15
call fcn.18002ed60
cmp eax, 7
jge 0x1800305c8
lea rdx, str.b64_auth_too_long_n
mov ecx, 1
call fcn.18002a190
mov eax, 2
jmp 0x180030708
lea rdx, str.Basic
mov byte [rsp + 0xc5], 0
lea rcx, [rsp + 0xc0]
call sub.msvcrt.dll__stricmp
test eax, eax
je 0x18003060b
lea r8, [rsp + 0xc0]
mov ecx, 1
lea rdx, str.auth_missing_basic:__s_n
call fcn.18002a190
mov eax, 2
jmp 0x180030708
mov r8d, 0x77
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0xc6]
call fcn.18003fb10
mov esi, eax
mov dword [rsp + 0x228], esi
test eax, eax
jns 0x18003064b
lea rdx, str.plain_auth_too_long_n
mov ecx, 1
call fcn.18002a190
mov eax, 2
jmp 0x180030708
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 0x180030688
lea rdx, str.basic_auth_format_broken_n
lea ecx, [rax + 1]
call fcn.18002a190
lea eax, [r14 + 2]
jmp 0x180030708
test ebx, ebx
je 0x1800306bf
cmp ebx, 0x10000000
jne 0x180030703
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.OLEAUT32.dll_VariantClear]
test eax, eax
jne 0x1800307e7
jmp 0x180030703
xor ebx, ebx
xor edx, edx
mov rcx, rdi
mov esi, ebx
mov ebp, ebx
mov r14d, ebx
call fcn.18002cd60
mov r12d, eax
test eax, eax
jns 0x18003073c
mov r8, rdi
lea rdx, str.cant_open_auth_file:__s_n
lea ecx, [rbx + 1]
call fcn.18002a190
lea r8, str.lws_check_basic_auth
mov ecx, 1
lea rdx, str._s:_basic_auth_lookup_failed_n
call fcn.18002a190
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 0x180030769
mov r8d, 0x80
lea rdx, [rsp + 0x160]
mov ecx, r12d
call sub.msvcrt.dll__read
mov r14d, eax
test eax, eax
jle 0x1800307ba
mov ebp, ebx
mov r8, rbx
lea rcx, [rsp + 0x160]
cmp rdi, r13
jne 0x18003078a
movzx edx, byte [rcx + r8]
cmp dl, 0xd
je 0x1800307c6
cmp dl, 0xa
je 0x1800307c6
mov esi, ebx
mov rdi, rbx
movzx eax, byte [rcx + r8]
movzx ecx, byte [rsp + rdi + 0x40]
cmp al, cl
jne 0x1800307a9
inc rdi
inc ebp
inc r8
inc esi
cmp al, cl
cmovne esi, ebx
jmp 0x180030742
inc ebp
inc r8
inc esi
mov rdi, rbx
cmp al, cl
cmovne esi, ebx
jmp 0x180030742
cmp esi, dword [rsp + 0x228]
sete bl
jmp 0x1800307cb
mov ebx, 1
mov ecx, r12d
call sub.msvcrt.dll__close
test ebx, ebx
je 0x1800306eb
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.18002efe0
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 0x180030708