Function at 0x180017ba0
Capabilities:
Read file on windows

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xb0
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
mov rax, qword [0x180106b38]
xor rax, rsp
mov qword [rsp + 0x80], rax
mov rsi, qword [rsp + 0x108]
mov ebp, r8d
mov r15, qword [rsp + 0x100]
mov edi, r8d
imul r12d, r8d, 0x588
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x28], rcx
cmp r8d, r12d
ja 0x180017dc0
movsd xmm6, qword [0x1800f3de8]
mov ecx, 7
movsd xmm7, qword [0x1800f3e28]
mov r13d, dword [rsp + 0x60]
mov r14d, dword [rsp + 0x60]
mov rbx, qword [rsp + 0x28]
nop dword [rax]
cmp edi, 0x9159
ja 0x180017d21
je 0x180017d17
cmp edi, 0x48fb
ja 0x180017cc9
je 0x180017cbf
mov eax, edi
sub eax, 0x9d
je 0x180017cb2
sub eax, 0x52
je 0x180017c80
cmp eax, 0x13
jne 0x180017db2
mov rax, qword [r15 + 0x78]
mov rcx, qword [rax + 0x18]
sub rcx, qword [rsi + 8]
add rcx, qword [r9]
mov qword [rsi + 0x10], rcx
mov ecx, 7
jmp 0x180017db2
movsd xmm0, qword [r15]
mov eax, 0x51eb851f
addsd xmm0, xmm6
movsd qword [r15], xmm0
cvttsd2si r13, xmm0
mulsd xmm0, xmm7
cvttsd2si r14, xmm0
mul r14d
shr edx, 5
imul eax, edx, 0x64
sub r14d, eax
jmp 0x180017db2
mov dword [rsp + 0x60], 0x686f746e
jmp 0x180017db2
mov byte [rsp + 0x64], 0x6c
jmp 0x180017db2
cmp edi, 0x6f19
je 0x180017cf6
cmp edi, 0x77ee
jne 0x180017db2
cmp dword [rsi], 0x13
mov eax, 0x1e
cmovne eax, ecx
mov dword [rsi], eax
inc qword [r15 + 0xd0]
jmp 0x180017db2
mov r8d, 0xa
mov rdx, rsi
mov ecx, r13d
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll__itoa]
mov r9, qword [rsp + 0x20]
mov ecx, 7
jmp 0x180017db2
mov byte [rsp + 0x65], 0
jmp 0x180017db2
cmp edi, 0xdd43
je 0x180017d9f
cmp edi, 0xeeda
je 0x180017d7f
cmp edi, 0x14b6d
je 0x180017d77
cmp edi, 0x165c6
je 0x180017dfb
cmp edi, 0x1b997
jne 0x180017db2
cmp r14d, 0xa
jae 0x180017d59
mov byte [rbx], 0x30
inc rbx
mov r8d, 0xa
mov rdx, rbx
mov ecx, r14d
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll__itoa]
mov r9, qword [rsp + 0x20]
mov ecx, 7
jmp 0x180017db2
mov byte [rbx], 0x2e
inc rbx
jmp 0x180017db2
mov rax, qword [r15 + 0xc0]
test rax, rax
je 0x180017db2
mov rdx, rsi
mov rcx, r15
call rax
mov r9, qword [rsp + 0x20]
mov ecx, 7
jmp 0x180017db2
mov rbx, 0xffffffffffffffff
inc rbx
cmp byte [rsi + rbx], 0
jne 0x180017da6
add rbx, rsi
imul eax, ebp, 0x76
add edi, eax
cmp edi, r12d
jbe 0x180017c30
lea edi, [rbp + 0xc]
cmp ebp, edi
jae case.0x180017df9.11
mov r14d, dword [rsp + 0x60]
lea ebx, [rbp - 0x9d]
mov rbp, qword [rsp + 0x28]
lea r12, [0x180000000]
xor r13d, r13d
cmp ebx, 0xb
ja case.default.0x180017df9
mov ecx, dword [r12 + rbx*4 + 0x17fa0]
add rcx, r12
jmp rcx
mov rax, qword [rsp + 0x28]
mov rax, qword [rax]
jmp 0x180017ec7
mov ecx, dword [rsi + 0x18]
call rbp
mov dword [rsi + 0x18], eax
jmp case.default.0x180017df9
mov r8d, 3
lea rdx, [0x1800eca98]
lea rcx, [rsp + 0x68]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcsncat]
jmp case.default.0x180017df9
mov ecx, dword [rsi + 0xc]
call rbp
mov ecx, dword [rsi + 0x10]
mov dword [rsi + 0xc], eax
call rbp
mov ecx, dword [rsi + 0x14]
mov dword [rsi + 0x10], eax
call rbp
mov dword [rsi + 0x14], eax
jmp case.default.0x180017df9
mov ecx, dword [r15]
mov r8d, 0x20
mov rdx, rsi
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__read]
mov r14d, eax
jmp case.default.0x180017df9
mov r8d, 3
lea rdx, [0x1800ecaf6]
lea rcx, [rsp + 0x68]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcsncat]
mov dword [rsp + 0x7a], 0x6c
jmp case.default.0x180017df9
mov ecx, dword [r15]
lea rdx, [rsp + 0x30]
call qword [sym.imp.api_ms_win_crt_filesystem_l1_1_0.dll__fstat64i32]
mov r14d, eax
test eax, eax
jne 0x180017f91
movabs rax, 0x303146464944424d
cmp qword [rsi], rax
je case.default.0x180017df9
mov dword [rsp + 0x20], 8
mov rax, qword [rsp + 0x20]
mov rcx, qword [rsp + 0x80]
xor rcx, rsp
call fcn.1800bfc40
lea r11, [rsp + 0xb0]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
cmp r14d, 0x20
jne 0x180017f91
mov ecx, dword [rsi + 8]
call rbp
mov dword [rsi + 8], eax
jmp case.default.0x180017df9
mov eax, dword [rsi + 0x18]
mov ecx, dword [rsi + 0x1c]
add rcx, rax
mov eax, dword [rsi + 0x14]
add rax, 0x20
add rcx, rax
movsxd rax, dword [rsp + 0x44]
cmp rcx, rax
jne 0x180017eba
mov dword [rsp + 0x20], r13d
jmp case.default.0x180017df9
mov r8d, 3
lea rdx, [0x1800ecb34]
lea rcx, [rsp + 0x68]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcsncpy]
mov word [rsp + 0x6e], r13w
jmp case.default.0x180017df9
mov r8d, 0xdb
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x68]
call fcn.1800355e0
mov rbp, rax
jmp case.default.0x180017df9
mov ecx, dword [rsi + 0x1c]
call rbp
mov dword [rsi + 0x1c], eax
inc ebx
lea eax, [rbx + 0x9d]
cmp eax, edi
jb 0x180017de5
jmp case.0x180017df9.11
mov dword [rsp + 0x20], 6
jmp case.0x180017df9.11