Function at 0x180066950
Capabilities:
Read file on windows

Disassembly:
mov rax, rsp
mov qword [rax + 0x20], r9
mov qword [rax + 0x18], r8
mov qword [rax + 0x10], rdx
mov qword [rax + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xa8
mov esi, dword [rsp + 0x110]
mov r10, r9
mov rbx, qword [rsp + 0x58]
mov rbp, rcx
movaps xmmword [rax - 0x58], xmm6
mov edi, esi
imul r12d, esi, 0x48a
movaps xmmword [rax - 0x68], xmm7
movaps xmmword [rax - 0x78], xmm8
movaps xmmword [rsp + 0x60], xmm9
mov dword [rsp + 0x40], r12d
cmp esi, r12d
ja 0x180066e96
movsd xmm9, qword [0x180092460]
xor r9d, r9d
mov r15, qword [rsp + 0x58]
xorps xmm8, xmm8
mov r13, qword [rsp + 0x58]
mov r14d, dword [rsp + 0x110]
movsd xmm7, qword [rsp + 0x58]
movsd xmm6, qword [rsp + 0x48]
cmp edi, 0x1561b
ja 0x180066be9
je 0x180066ba6
cmp edi, 0xb7c
ja 0x180066a96
je 0x180066e96
mov eax, edi
sub eax, 0x23
je 0x180066a7b
sub eax, 0xe4
je 0x180066a73
cmp eax, 0xb
jne 0x180066f50
mov eax, dword [r10 + 0x18]
cmp dword [rbp], eax
jge 0x180066f50
mov edx, 0xf7
nop dword [rax]
mov eax, edx
sub eax, 0xf6
je 0x180066a52
cmp eax, 1
jne 0x180066a64
mov rax, qword [r10]
mov qword [r10 + 8], rax
mov dword [r10 + 0x18], r9d
mov eax, dword [rax + 0xc]
mov dword [r10 + 0x1c], eax
jmp 0x180066a64
mov rax, qword [r10 + 8]
movsxd rcx, dword [rax + 8]
mov rax, qword [rax]
add rcx, qword [rax]
mov qword [r10 + 0x10], rcx
dec edx
cmp edx, 0xf5
ja 0x180066a30
jmp 0x180066f50
mov r14d, r9d
jmp 0x180066f50
mov r8, qword [r8]
mov r9, rdx
mov rdx, qword [rbp]
mov rcx, r10
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
mov rbx, rax
jmp 0x180066f4d
cmp edi, 0x564c
je 0x180066b41
cmp edi, 0xab91
je 0x180066ae5
cmp edi, 0x100d6
jne 0x180066f50
cmp dword [0x18009a3e4], 0
jne 0x180066f50
xor edx, edx
mov r8d, 0x98
mov rcx, r15
call fcn.18004a5b0
mov edx, 0xd
mov rcx, r15
call fcn.18007c430
jmp 0x180066f4d
mov dword [rsp + 0x28], 0xb0
xor r8d, r8d
mov qword [rsp + 0x20], r9
xor edx, edx
mov r9, r10
xor ecx, ecx
call fcn.180041990
xor r8d, r8d
mov rdx, rax
mov r15, rax
lea ecx, [r8 + 0x26]
call fcn.1800717f0
test eax, eax
jne 0x180066f4d
lea r9, [rsp + 0x48]
mov dword [rsp + 0x48], eax
lea r8, [0x18008d740]
mov edx, 0xa7
lea rcx, str.can_do_p_
call fcn.18004cd80
jmp 0x180066f4d
movsxd rax, dword [0x18009a340]
lea r8, [rsp + 0x50]
shl rax, 3
xor edx, edx
mov qword [rsp + 0x20], r9
xor ecx, ecx
mov r9d, 0x4d
mov qword [rsp + 0x50], rax
call fcn.18005af00
xor r9d, r9d
mov r13, rax
mov edx, r9d
cmp dword [0x18009a340], edx
jle 0x180066f50
mov rcx, rax
nop dword [rax]
nop word [rax + rax]
mov qword [rcx], r9
lea rcx, [rcx + 8]
inc edx
cmp edx, dword [0x18009a340]
jl 0x180066b90
jmp 0x180066f50
mov dword [rsp + 0x30], 0xcc
lea rax, [rsp + 0x48]
mov qword [rsp + 0x28], r9
xor r8d, r8d
mov dword [rsp + 0x48], r9d
xor edx, edx
xor r9d, r9d
mov qword [rsp + 0x20], rax
xor ecx, ecx
call fcn.18005e1e0
xor r9d, r9d
mov r8d, 0xe1
mov rdx, r15
xor ecx, ecx
call fcn.180055270
jmp 0x180066f4d
cmp edi, 0x2ab2f
ja 0x180066e65
je 0x180066e4e
cmp edi, 0x1ab60
je 0x180066dd4
cmp edi, 0x200a5
je 0x180066dac
cmp edi, 0x255ea
jne 0x180066f50
mov r14d, 1
nop word [rax + rax]
mov r12d, 0x12a
mov eax, r12d
sub eax, 0x129
je 0x180066c52
cmp eax, 1
jne 0x180066d78
movaps xmm7, xmm9
jmp 0x180066d78
cmp dword [0x18009a340], 0
mov ebp, r9d
jle 0x180066d6e
mov rsi, r13
nop word [rax + rax]
mov edi, 0x7f
mov eax, edi
sub eax, 0x7b
je 0x180066d43
sub eax, 1
je 0x180066d3a
sub eax, 1
je 0x180066cee
sub eax, 1
je 0x180066ccf
cmp eax, 1
jne 0x180066d51
mov dword [rsp + 0x30], 0xcc
lea rax, [rsp + 0x48]
mov qword [rsp + 0x28], r9
xor r8d, r8d
mov dword [rsp + 0x48], r9d
xor edx, edx
xor r9d, r9d
mov qword [rsp + 0x20], rax
xor ecx, ecx
call fcn.18005e1e0
xor r9d, r9d
jmp 0x180066d51
mov r9d, 0xb2
mov dword [rsp + 0x48], r14d
mov r8, r15
lea rcx, [rsp + 0x48]
xor edx, edx
call fcn.1800200f0
xor r9d, r9d
jmp 0x180066d51
mov qword [rsp + 0x28], r9
lea rax, [rsp + 0x48]
mov dword [rsp + 0x48], r9d
xor edx, edx
xor r9d, r9d
mov qword [rsp + 0x20], rax
xor ecx, ecx
mov r8d, 0xe5
call fcn.180080b30
xor r8d, r8d
mov qword [rsp + 0x58], rax
lea rcx, [rsp + 0x58]
lea edx, [r8 + 0x57]
call fcn.18002b4b0
mov qword [rsp + 0x48], rax
xor r9d, r9d
movsd xmm6, qword [rsp + 0x48]
jmp 0x180066d51
comisd xmm8, xmm6
ja 0x180066d98
jmp 0x180066d51
movaps xmm0, xmm6
movsd qword [rsi], xmm6
minsd xmm0, xmm7
movaps xmm7, xmm0
dec edi
cmp edi, 0x7a
ja 0x180066c75
inc ebp
add rsi, 8
cmp ebp, dword [0x18009a340]
jl 0x180066c70
comisd xmm7, xmmword [0x18009a338]
jae 0x180066db6
dec r12d
cmp r12d, 0x128
ja 0x180066c36
add r14d, r14d
cmp r14d, 0x40000000
jl 0x180066c30
mov esi, dword [rsp + 0x110]
mov rbp, qword [rsp + 0xf0]
mov r12d, dword [rsp + 0x40]
mov edi, 0x200a5
jmp 0x180066f50
mov esi, dword [rsp + 0x110]
mov edi, 0x255ea
mov rbp, qword [rsp + 0xf0]
mov r12d, dword [rsp + 0x40]
jmp 0x180066f4d
mov qword [rsp + 0x28], r9
lea rax, [rsp + 0x48]
mov dword [rsp + 0x48], r9d
xor edx, edx
xor r9d, r9d
mov qword [rsp + 0x20], rax
xor ecx, ecx
mov r8d, 0xe5
call fcn.180080b30
xor r8d, r8d
mov qword [rsp + 0x58], rax
lea rcx, [rsp + 0x58]
lea edx, [r8 + 0x57]
call fcn.18002b4b0
mov qword [rsp + 0x58], rax
movsd xmm0, qword [rsp + 0x58]
movsd qword [r15 + 0x80], xmm0
cmp dword [0x18009a3e4], 0
jne 0x180066e3a
mov edx, 0xd
mov rcx, r15
call fcn.18007c430
cmp dword [rbp], 0
je 0x180066f4d
mov edi, 0x255ea
jmp 0x180066f4d
xor r9d, r9d
xor r8d, r8d
mov rdx, r15
lea ecx, [r9 + 8]
call fcn.180040190
jmp 0x180066f4d
cmp edi, 0x30074
je 0x180066ec5
cmp edi, 0x355b9
jne 0x180066f50
mov qword [rsp + 0x28], r9
xor r8d, r8d
mov qword [rsp + 0x20], r9
mov rdx, r13
mov r9d, 0x22
xor ecx, ecx
call fcn.180054bc0
lea r11, [rsp + 0xa8]
mov rax, rbx
movaps xmm6, xmmword [r11 - 0x18]
movaps xmm7, xmmword [r11 - 0x28]
movaps xmm8, xmmword [r11 - 0x38]
movaps xmm9, xmmword [r11 - 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov ecx, r9d
test r14d, r14d
je 0x180066eff
cmp dword [0x18009a340], 0
jle 0x180066f21
movd xmm1, r14d
mov rax, r13
cvtdq2pd xmm1, xmm1
movsd xmm0, qword [rax]
lea rax, [rax + 8]
divsd xmm0, xmm1
inc ecx
movsd qword [rax - 8], xmm0
cmp ecx, dword [0x18009a340]
jl 0x180066ee2
jmp 0x180066f21
cmp dword [0x18009a340], 0
jle 0x180066f21
mov rax, r13
nop dword [rax + rax]
mov qword [rax], r9
lea rax, [rax + 8]
inc ecx
cmp ecx, dword [0x18009a340]
jl 0x180066f10
mov r8d, dword [0x18009a340]
mov rdx, r13
mov rcx, r15
call qword [0x18009a3f8]
cmp dword [0x18009a3e4], 0
jne 0x180066f4d
xor r8d, r8d
mov edx, 0xb0
mov rcx, r15
call fcn.180075fe0
xor r9d, r9d
imul eax, esi, 0x53
add edi, eax
cmp edi, r12d
ja 0x180066e96
mov r10, qword [rsp + 0x108]
mov r8, qword [rsp + 0x100]
mov rdx, qword [rsp + 0xf8]
jmp 0x1800669e0