Function at 0x1800af520
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 0x10], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x60]
sub rsp, 0x160
mov rax, qword [0x180106b38]
xor rax, rsp
mov qword [rbp + 0x58], rax
mov r15, qword [rbp + 0xc0]
lea r12d, [rdx + 0xa]
mov rbx, qword [rbp + 0xc8]
lea r11, [0x180000000]
mov r14d, edx
mov dword [rsp + 0x68], edx
mov esi, edx
mov qword [rbp - 0x70], r8
xor edx, edx
mov qword [rbp - 0x48], r15
mov qword [rbp - 0x50], rbx
mov r10, r8
mov r8, qword [rbp - 0x80]
mov rdi, r9
mov qword [rsp + 0x58], r8
mov r13, rcx
cmp r14d, r12d
jae 0x1800af8ea
mov rax, qword [rbp - 0x80]
lea rdx, [0x180065a80]
mov r15, qword [rsp + 0x78]
add esi, 0xffffff48
mov qword [rsp + 0x70], rax
xor ebx, ebx
movabs r9, 0x2e00320033
nop dword [rax]
cmp esi, 0x21
ja case.0x1800af5dd.10
movzx eax, byte [r11 + rsi + 0xafc18]
mov ecx, dword [r11 + rax*4 + 0xafbec]
add rcx, r11
jmp rcx
mov r8d, 0xa
lea rdx, [rbp + 0x44]
lea ecx, [r8 - 8]
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll__ltow]
mov r8, qword [rsp + 0x58]
jmp 0x1800af7f0
mov dword [rbp + 0x46], 0x5f
mov qword [rbp + 0x48], r9
jmp case.0x1800af5dd.10
xorps xmm0, xmm0
xor eax, eax
mov qword [rbp + 8], rax
movups xmmword [rbp - 0x40], xmm0
movups xmmword [rbp - 0x30], xmm0
movsd xmm0, qword [rbp + 8]
movsd qword [rbp - 0x20], xmm0
jmp case.0x1800af5dd.10
xor eax, eax
mov qword [rbp - 0x80], rax
xor ebx, ebx
mov dword [rbp - 0x78], eax
jmp case.0x1800af5dd.10
lea rax, [rbp - 0x78]
mov qword [rsp + 0x28], r13
lea r9, [rbp - 0x40]
mov qword [rsp + 0x20], rax
mov r8d, 0xa8
lea rdx, [rbp - 0x80]
mov rcx, r10
call fcn.18009a320
test al, al
je 0x1800af725
mov ebx, 0x11c
nop
mov eax, ebx
sub eax, 0x11c
je 0x1800af6d8
sub eax, 0x6e
je 0x1800af68c
cmp eax, 0x6e
je 0x1800afb7d
jmp 0x1800af714
xor eax, eax
lea rcx, [rbp + 0x10]
mov qword [rsp + 0x38], rax
xor r9d, r9d
mov qword [rsp + 0x30], rax
xor r8d, r8d
mov qword [rsp + 0x28], r13
xor edx, edx
mov dword [rsp + 0x20], 0xb5
call fcn.18004e110
xor r9d, r9d
lea r8, [rsp + 0x40]
lea rdx, [rbp - 0x40]
mov ecx, 0x9c
mov eax, dword [rax]
mov byte [rsp + 0x40], al
call fcn.1800329f0
mov byte [rsp + 0x60], al
jmp 0x1800af714
mov rdx, qword [r15 + 8]
mov r8d, PathYetAnotherMakeUniqueName
xor ecx, ecx
call fcn.18002b530
mov ecx, dword [rbp - 0x78]
lea rdx, [rsp + 0x50]
mov dword [rsp + 0x50], ecx
mov r9, r13
mov rcx, qword [rbp - 0x80]
mov r8d, 0x34
mov qword [rsp + 0x20], rax
call fcn.180064170
test al, al
jne 0x1800af8bc
add ebx, 0x6e
cmp ebx, 0x266
jb 0x1800af670
xor ebx, ebx
mov r8, qword [rsp + 0x58]
lea rax, [0x1800659d0]
mov qword [r13 + 0x98], rax
jmp 0x1800af7f0
mov eax, dword [r10]
cmp eax, 1
je 0x1800af8e0
cmp eax, 0x14
jne case.0x1800af5dd.10
mov rax, qword [r10 + 0x18]
cmp byte [rax], 0x2f
jne case.0x1800af5dd.10
mov eax, 0x81
cmp eax, 0x81
je 0x1800af778
cmp eax, 0x572d
je 0x1800afb7d
jmp 0x1800af784
mov qword [r13 + 0x98], rdx
mov byte [rsp + 0x60], 1
add eax, 0x56ac
cmp eax, 0xad58
jbe 0x1800af764
jmp case.0x1800af5dd.10
mov rax, qword [r13 + 0x58]
mov r15, qword [rax + 0x10]
jmp case.0x1800af5dd.10
xor eax, eax
mov qword [r13 + 8], rax
xor ebx, ebx
mov qword [r13 + 0x10], rax
jmp case.0x1800af5dd.10
mov r8d, 2
mov word [rbp + 0x40], bx
lea rdx, [0x1800ec118]
lea rcx, [rbp + 0x40]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcsncat]
mov r8, qword [rsp + 0x58]
jmp 0x1800af7f0
mov eax, dword [rdi + 0x14]
lea rdx, [rbp - 0x68]
xor r8d, r8d
mov dword [rbp - 0x68], eax
mov ecx, 0xab
mov qword [rsp + 0x70], r10
call fcn.180084ff0
mov r8, rax
mov qword [rsp + 0x58], rax
mov r10, qword [rbp - 0x70]
lea r11, [0x180000000]
movabs r9, 0x2e00320033
lea rdx, [0x180065a80]
inc r14d
inc esi
cmp r14d, r12d
jb 0x1800af5c0
mov rbx, qword [rbp - 0x50]
xor edx, edx
mov rcx, qword [rsp + 0x70]
mov esi, dword [rsp + 0x68]
mov r15, qword [rbp - 0x48]
lea eax, [rsi + 0x701]
mov dword [rbp - 0x58], eax
cmp esi, eax
jae 0x1800afb7d
mov r12, qword [rsp + 0x78]
cmp esi, 0x166
ja 0x1800af9c4
je 0x1800afb7d
mov eax, esi
sub eax, 0xb8
je 0x1800af98d
sub eax, 0xb
je 0x1800af96b
sub eax, 0xb
je 0x1800af95a
sub eax, 0xb
je 0x1800af951
cmp eax, 0x82
jne 0x1800afb5b
lea edx, [rax - 0x72]
mov dword [rbp + 0x52], 0x6c
lea r8d, [rax + 0x59]
lea rcx, [rbp + 0x40]
call fcn.1800355e0
test rbx, rbx
je 0x1800af8f8
mov r8d, dword [rdi]
mov rdx, r15
mov rcx, rbx
call qword [0x1800fb618]
mov dword [rsp + 0x48], eax
jmp 0x1800afb5b
xor r9d, r9d
mov byte [rsp + 0x40], 1
lea r8, [rsp + 0x40]
mov ecx, 0x9c
lea rdx, [rbp - 0x40]
call fcn.1800329f0
mov byte [rsp + 0x60], al
jmp 0x1800afb7d
mov byte [rsp + 0x60], 1
jmp 0x1800afb7d
mov rcx, qword [rbp - 0x80]
mov qword [rsp + 0x70], rcx
jmp 0x1800af82d
test r13, r13
je 0x1800af936
mov rcx, r13
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__fileno]
mov r8d, dword [rdi]
mov rdx, r15
mov ecx, eax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__read]
mov rcx, r13
mov dword [rsp + 0x48], eax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_ferror]
test eax, eax
je 0x1800afb5b
mov dword [rsp + 0x48], 0xffffffff
jmp 0x1800afb5b
mov rcx, qword [rbp - 0x70]
xor r9d, r9d
mov r8d, dword [rdi]
mov rdx, r15
mov rcx, qword [rcx]
call rax
mov dword [rsp + 0x48], eax
jmp 0x1800afb5b
lea r12, [rdi + 0x18]
jmp 0x1800afb5b
mov qword [r13 + 0x18], rdx
mov qword [r13 + 0x20], rdx
mov qword [r13 + 0x30], rdx
jmp 0x1800afb5b
xor r9d, r9d
mov byte [rbp - 0x60], 0
lea r8, [rbp - 0x60]
mov ecx, 0x9c
lea rdx, [rbp - 0x40]
call fcn.1800329f0
mov byte [rsp + 0x60], al
jmp 0x1800afb5b
lea rcx, [rbp + 0x40]
sub rcx, 2
cmp word [rcx + 2], 0
lea rcx, [rcx + 2]
jne 0x1800af995
mov eax, dword [0x1800ed5f4]
lea rdx, [0x1800ea4d0]
mov dword [rcx], eax
mov r8d, 2
lea rcx, [rbp + 0x50]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcsncpy]
jmp 0x1800afb5b
mov eax, esi
sub eax, 0x17c
je 0x1800afa03
sub eax, 0x82
je 0x1800af9f6
sub eax, 0x21
je 0x1800afbd4
sub eax, 0x82
je 0x1800afb7d
cmp eax, 0x21
je 0x1800afb7d
jmp 0x1800afb5b
mov eax, dword [rsp + 0x48]
mov dword [rsp + 0x60], eax
jmp 0x1800afb5b
mov rax, qword [r15]
mov dword [rsp + 0x50], edx
cmp qword [rbx], rax
jae 0x1800afb5b
nop dword [rax]
nop word [rax + rax]
mov r15d, 0x82
mov eax, r15d
sub eax, 0x82
je 0x1800afa41
cmp eax, 0x1c
jne 0x1800afb36
inc qword [rbx]
jmp 0x1800afb36
mov rax, qword [rbx]
mov rdx, r12
movzx ecx, byte [rax + rcx]
call r8
test eax, eax
jne 0x1800afb2c
mov eax, dword [r12 + 0xc]
lea r8, [rsp + 0x50]
xor r9d, r9d
mov qword [rsp + 0x78], rax
lea rax, [rsp + 0x78]
xor ecx, ecx
mov qword [rsp + 0x20], rax
lea edx, [r9 + 2]
call fcn.18006a9d0
movzx eax, byte [rsp + 0x50]
lea r11, [0x180000000]
lea r14, [r11 + 0xc6210]
add r14, rax
cmp byte [r14], 0xff
je 0x1800afb12
mov esi, 0xda
mov eax, esi
sub eax, 0xd9
je 0x1800afabf
cmp eax, 1
jne 0x1800afb02
shl qword [rdi + 8], 4
movzx eax, byte [r14]
or qword [rdi + 8], rax
jmp 0x1800afb02
inc word [rdi]
cmp word [rdi], 6
jne 0x1800afb02
mov ebx, 0x6a
nop dword [rax]
mov eax, ebx
sub eax, 0x69
je 0x1800afba9
cmp eax, 1
jne 0x1800afafb
mov rax, qword [rdi + 8]
lea rdx, [rsp + 0x78]
mov r8, r13
mov qword [rsp + 0x78], rax
mov ecx, 0x41
call fcn.18008a9c0
dec ebx
cmp ebx, 0x68
ja 0x1800afad0
dec esi
cmp esi, 0xd8
ja 0x1800afaa2
mov rbx, qword [rbp - 0x50]
jmp 0x1800afb2c
mov eax, 5
cmp eax, 5
je 0x1800afbb4
add eax, 0x9c
cmp eax, 0xa1
jb 0x1800afb17
mov rcx, qword [rsp + 0x70]
mov r8, qword [rsp + 0x58]
add r15d, 0x1c
cmp r15d, 0xba
jb 0x1800afa26
mov r15, qword [rbp - 0x48]
mov rax, qword [r15]
cmp qword [rbx], rax
jb 0x1800afa20
mov esi, dword [rsp + 0x68]
mov rcx, qword [rsp + 0x70]
add esi, 0xa3
mov edx, 0
mov r8, qword [rsp + 0x58]
mov dword [rsp + 0x68], esi
cmp esi, dword [rbp - 0x58]
jb 0x1800af843
mov rax, qword [rsp + 0x60]
mov rcx, qword [rbp + 0x58]
xor rcx, rsp
call fcn.1800bfc40
mov rbx, qword [rsp + 0x1a8]
add rsp, 0x160
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
xor ebx, ebx
mov dword [rdi + 0x10], ebx
mov rbx, qword [rbp - 0x50]
jmp 0x1800afbd4
mov rax, qword [rdi + 8]
lea rdx, [rsp + 0x78]
mov r8, r13
mov qword [rsp + 0x78], rax
mov ecx, 0x41
call fcn.18008a9c0
xor eax, eax
mov dword [rdi + 0x10], eax
mov rax, qword [rbx]
mov esi, 0x21f
mov r15, qword [rbp - 0x48]
mov qword [rsp + 0x60], rax
jmp 0x1800afb5b