Function at 0x140017460
Capabilities:
Read file on windows

Disassembly:
mov rax, rsp
mov qword [rax + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x268]
sub rsp, 0x330
movaps xmmword [rax - 0x48], xmm6
movaps xmmword [rax - 0x58], xmm7
movaps xmmword [rax - 0x68], xmm8
movaps xmmword [rax - 0x78], xmm9
movaps xmmword [rax - 0x88], xmm10
movaps xmmword [rax - 0x98], xmm11
movaps xmmword [rax - 0xa8], xmm12
mov rax, qword [0x140061040]
xor rax, rsp
mov qword [rbp + 0x1b8], rax
mov qword [rsp + 0x68], r8
mov qword [rsp + 0x70], rcx
xor r14d, r14d
mov dword [rsp + 0x38], r14d
mov qword [rbp + 0x38], r14
cmp qword [rdx + 0x18], 7
jbe 0x1400174db
mov rdx, qword [rdx]
lea r8, [0x14005722c]
lea rcx, [rbp + 0x38]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__wfopen_s]
mov r9, qword [rbp + 0x38]
test r9, r9
jne 0x1400174fe
lea eax, [r9 + 2]
jmp 0x140018b37
xor al, al
mov byte [rsp + 0x31], al
mov byte [rsp + 0x32], al
xorps xmm0, xmm0
movdqa xmmword [rbp + 0x100], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x110], xmm1
movdqa xmmword [rbp + 0x120], xmm0
movdqa xmmword [rbp + 0x130], xmm1
movdqa xmmword [rbp + 0x140], xmm0
xor eax, eax
movups xmmword [rbp + 0x150], xmm0
movups xmmword [rbp + 0x160], xmm0
mov qword [rbp + 0x170], rax
mov qword [rbp + 0x70], rax
mov qword [rbp + 0x78], r14
movdqa xmmword [rbp + 0x80], xmm0
movups xmmword [rbp + 0x90], xmm0
movups xmmword [rbp + 0xa0], xmm0
mov qword [rbp + 0x48], rax
movdqu xmmword [rbp + 0x50], xmm0
mov qword [rbp + 0x60], r14
mov qword [rbp + 0x68], rax
xorps xmm9, xmm9
movups xmmword [rbp + 0x180], xmm9
mov qword [rbp + 0x190], r14
movups xmmword [rbp + 0x198], xmm0
movups xmmword [rbp + 0x1a8], xmm0
movdqa xmmword [rbp + 0xb0], xmm0
movdqa xmmword [rbp + 0xc0], xmm1
movups xmmword [rbp + 0xd0], xmm0
movups xmmword [rbp + 0xe0], xmm0
mov qword [rbp + 0xf0], rax
mov edi, r14d
mov byte [rsp + 0x30], al
xor r13b, r13b
mov byte [rsp + 0x33], al
lea r12d, [rax + 0x10]
movsd xmm12, qword [0x140059468]
xorps xmm11, xmm11
movsd xmm10, qword [0x140059400]
movsd xmm7, qword [rbp + 0x1b0]
movsd xmm8, qword [rbp + 0x1a8]
movzx eax, word [rbp + 0x1a0]
mov word [rsp + 0x34], ax
mov ebx, 4
mov r8d, ebx
lea edx, [rbx - 3]
lea rcx, [rbp + 0x40]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
cmp rax, rbx
jne 0x1400186dc
movzx esi, byte [rbp + 0x40]
shl si, 8
movzx eax, byte [rbp + 0x41]
or si, ax
movzx r14d, byte [rbp + 0x42]
shl r14w, 8
movzx eax, byte [rbp + 0x43]
or r14w, ax
cmp si, bx
jb 0x1400186c8
sub si, bx
mov r8d, 0
mov r15d, r8d
je 0x140017687
movzx ebx, si
mov ecx, ebx
call fcn.140033d88
mov r15, rax
mov r9, qword [rbp + 0x38]
mov r8d, ebx
mov edx, 1
mov rcx, rax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
mov ebx, 4
xor r8d, r8d
movzx eax, r14w
cmp eax, 0xd02
ja 0x140017a53
je 0x1400179f7
cmp eax, 0x700
ja 0x1400178f7
je 0x1400177e0
cmp eax, 2
je 0x1400177c2
cmp eax, 0x305
je 0x140017778
cmp eax, 0x400
je 0x14001776e
cmp eax, 0x502
je 0x14001773f
cmp eax, 0x606
jne case.0x14001851c.5
test r13b, r13b
je 0x14001856f
mov ecx, 0x20
call fcn.140033d44
mov rbx, rax
mov qword [rbp + 0x28], rax
movzx r8d, si
xorps xmm0, xmm0
movups xmmword [rax], xmm0
xor r14d, r14d
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], r14
mov rdx, r15
mov rcx, rax
call fcn.140007610
nop
or dword [rsp + 0x38], 2
mov rdx, qword [rbp + 0x100]
mov qword [rbp + 0x100], rbx
test rdx, rdx
je case.0x14001851c.5
call fcn.140019410
jmp case.0x14001851c.5
test r13b, r13b
jne 0x140018581
mov r13b, 1
movdqa xmm0, xmmword [0x140059520]
movdqa xmm1, xmmword [0x1400595c0]
movaps xmmword [rbp + 0x150], xmm0
movaps xmmword [rbp + 0x160], xmm1
jmp case.0x14001851c.5
mov byte [rsp + 0x33], 1
jmp case.0x14001851c.5
mov rcx, r15
call fcn.140015de0
movaps xmm6, xmm0
mov rsi, qword [rsp + 0x70]
movsd qword [rsi], xmm0
lea rcx, [r15 + 8]
call fcn.140015de0
movsd qword [rsi + 8], xmm0
movaps xmm1, xmm0
mulsd xmm1, xmm12
movsd qword [rsi + 0x10], xmm1
comisd xmm11, xmm6
jae 0x1400186cf
comisd xmm11, xmm0
jae 0x1400186cf
jmp case.0x14001851c.5
movzx ecx, byte [r15]
shl cx, 8
movzx eax, byte [r15 + 1]
or cx, ax
mov rax, qword [rsp + 0x70]
mov word [rax + 0x30], cx
jmp case.0x14001851c.5
test r13b, r13b
je 0x140018593
xor r13b, r13b
mov r10, qword [rsp + 0x70]
mov r9, qword [r10 + 0x20]
cmp r9, qword [r10 + 0x28]
je 0x1400178df
mov rax, qword [rbp + 0x100]
mov qword [rbp + 0x100], r8
mov qword [r9], rax
mov rdx, qword [rbp + 0x118]
mov qword [rbp + 0x118], r8
mov rcx, qword [rbp + 0x110]
mov qword [rbp + 0x110], r8
mov rax, qword [rbp + 0x108]
mov qword [rbp + 0x108], r8
mov qword [r9 + 8], rax
mov qword [r9 + 0x10], rcx
mov qword [r9 + 0x18], rdx
mov rdx, qword [rbp + 0x130]
mov qword [rbp + 0x130], r8
mov rcx, qword [rbp + 0x128]
mov qword [rbp + 0x128], r8
mov rax, qword [rbp + 0x120]
mov qword [rbp + 0x120], r8
mov qword [r9 + 0x20], rax
mov qword [r9 + 0x28], rcx
mov qword [r9 + 0x30], rdx
mov rdx, qword [rbp + 0x148]
mov qword [rbp + 0x148], r8
mov rcx, qword [rbp + 0x140]
mov qword [rbp + 0x140], r8
mov rax, qword [rbp + 0x138]
mov qword [rbp + 0x138], r8
mov qword [r9 + 0x38], rax
mov qword [r9 + 0x40], rcx
mov qword [r9 + 0x48], rdx
movaps xmm0, xmmword [rbp + 0x150]
movups xmmword [r9 + 0x50], xmm0
movaps xmm1, xmmword [rbp + 0x160]
movups xmmword [r9 + 0x60], xmm1
movzx eax, byte [rbp + 0x170]
mov byte [r9 + 0x70], al
add qword [r10 + 0x20], 0x78
jmp case.0x14001851c.5
lea r8, [rbp + 0x100]
mov rdx, r9
lea rcx, [r10 + 0x18]
call fcn.140019f70
jmp case.0x14001851c.5
cmp eax, 0x800
je 0x1400179be
cmp eax, 0x900
je 0x140017985
cmp eax, 0xa00
je 0x14001795e
cmp eax, 0xb00
je 0x14001793d
cmp eax, 0xc00
jne case.0x14001851c.5
test edi, edi
jne 0x1400185a5
test r13b, r13b
je 0x1400185a5
mov edi, 5
jmp case.0x14001851c.5
test edi, edi
jne 0x1400185b7
test r13b, r13b
je 0x1400185b7
movsd qword [rbp + 0xf0], xmm10
mov edi, ebx
jmp case.0x14001851c.5
test edi, edi
jne 0x1400185c9
test r13b, r13b
je 0x1400185c9
movaps xmm7, xmm10
movsd qword [rbp + 0x1b0], xmm7
mov edi, 3
jmp case.0x14001851c.5
test edi, edi
jne 0x1400185db
test r13b, r13b
je 0x1400185db
movdqa xmm0, xmmword [0x140059520]
movdqa xmm1, xmmword [0x1400595c0]
movaps xmmword [rbp + 0x90], xmm0
movaps xmmword [rbp + 0xa0], xmm1
mov edi, 2
jmp case.0x14001851c.5
test edi, edi
jne 0x1400185ed
test r13b, r13b
je 0x1400185ed
movdqa xmm0, xmmword [0x140059520]
movdqa xmm1, xmmword [0x1400595c0]
movaps xmmword [rbp + 0x90], xmm0
movaps xmmword [rbp + 0xa0], xmm1
mov edi, 1
jmp case.0x14001851c.5
cmp edi, 7
ja case.0x140017a15.0
movsxd rax, edi
lea r14, [0x140000000]
mov ecx, dword [r14 + rax*4 + 0x18b8c]
add rcx, r14
jmp rcx
movzx ecx, byte [r15]
shl cx, 8
movzx eax, byte [r15 + 1]
or cx, ax
mov word [rbp + 0x70], cx
mov byte [rsp + 0x30], 1
jmp case.0x14001851c.5
movzx ecx, byte [r15]
shl cx, 8
movzx eax, byte [r15 + 1]
or cx, ax
mov word [rbp + 0x48], cx
mov byte [rsp + 0x30], 1
jmp case.0x14001851c.5
cmp eax, 0x1500
ja 0x1400182fe
je 0x1400182e3
cmp eax, 0xf03
je 0x1400182ab
cmp eax, 0x1003
je 0x1400180bd
cmp eax, 0x1100
je 0x140017b9f
cmp eax, 0x1206
je 0x140017ace
cmp eax, 0x1302
jne case.0x14001851c.5
cmp edi, 4
jne 0x14001860d
movzx ecx, byte [r15]
shl ecx, 8
movzx eax, byte [r15 + 1]
or ecx, eax
mov dword [rbp + 0xd8], ecx
movzx ecx, byte [r15 + 2]
shl ecx, 8
movzx eax, byte [r15 + 3]
or ecx, eax
mov dword [rbp + 0xdc], ecx
jmp case.0x14001851c.5
cmp edi, 7
ja case.0x140017aec.0
movsxd rax, edi
lea r14, [0x140000000]
mov ecx, dword [r14 + rax*4 + 0x18bac]
add rcx, r14
jmp rcx
mov ecx, 0x20
call fcn.140033d44
mov rbx, rax
mov qword [rbp + 0x30], rax
movzx r8d, si
xorps xmm0, xmm0
movups xmmword [rax], xmm0
xor esi, esi
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rsi
mov rdx, r15
mov rcx, rax
call fcn.140007610
nop
or dword [rsp + 0x38], 4
mov rcx, qword [rbp + 0x190]
mov rdx, rcx
mov qword [rbp + 0x190], rbx
test rcx, rcx
je case.0x14001851c.5
call fcn.140019410
jmp case.0x14001851c.5
mov ecx, 0x20
call fcn.140033d44
mov rbx, rax
mov qword [rbp - 0x70], rax
movzx r8d, si
xorps xmm0, xmm0
movups xmmword [rax], xmm0
xor eax, eax
mov qword [rbx + 0x10], rax
mov qword [rbx + 0x18], rax
mov rdx, r15
mov rcx, rbx
call fcn.140007610
nop
or dword [rsp + 0x38], 8
mov rdx, qword [rbp + 0xc8]
mov qword [rbp + 0xc8], rbx
test rdx, rdx
je case.0x14001851c.5
call fcn.140019410
jmp case.0x14001851c.5
test edi, edi
je 0x14001864c
test r13b, r13b
je 0x14001864c
sub edi, 1
je 0x140017fa7
sub edi, 1
je 0x140017df0
sub edi, 1
je 0x140017d29
cmp edi, 1
jne 0x1400180b6
mov r9, qword [rbp + 0x140]
cmp r9, qword [rbp + 0x148]
je 0x140017c80
mov rdx, qword [rbp + 0xc0]
mov qword [rbp + 0xc0], r8
mov rcx, qword [rbp + 0xb8]
mov qword [rbp + 0xb8], r8
mov rax, qword [rbp + 0xb0]
mov qword [rbp + 0xb0], r8
mov qword [r9], rax
mov qword [r9 + 8], rcx
mov qword [r9 + 0x10], rdx
mov rax, qword [rbp + 0xc8]
mov qword [rbp + 0xc8], r8
mov qword [r9 + 0x18], rax
mov rax, qword [rbp + 0xd0]
mov qword [r9 + 0x20], rax
mov eax, dword [rbp + 0xd8]
mov dword [r9 + 0x28], eax
mov eax, dword [rbp + 0xdc]
mov dword [r9 + 0x2c], eax
movzx eax, word [rbp + 0xe0]
mov word [r9 + 0x30], ax
movsd xmm0, qword [rbp + 0xe8]
movsd qword [r9 + 0x38], xmm0
movsd xmm1, qword [rbp + 0xf0]
movsd qword [r9 + 0x40], xmm1
add qword [rbp + 0x140], 0x48
jmp 0x140017c96
lea r8, [rbp + 0xb0]
mov rdx, r9
lea rcx, [rbp + 0x138]
call fcn.14001a220
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp - 0x30], xmm0
movups xmmword [rbp - 0x20], xmm0
mov qword [rbp - 0x10], rax
movdqu xmmword [rbp - 0x50], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x40], xmm1
lea rdx, [rbp - 0x50]
lea rcx, [rbp + 0xb0]
call fcn.140019310
mov rax, qword [rbp - 0x38]
mov rdx, qword [rbp + 0xc8]
mov qword [rbp + 0xc8], rax
test rdx, rdx
je 0x140017ce0
call fcn.140019410
mov rax, qword [rbp - 0x30]
mov qword [rbp + 0xd0], rax
mov eax, dword [rbp - 0x28]
mov dword [rbp + 0xd8], eax
mov eax, dword [rbp - 0x24]
mov dword [rbp + 0xdc], eax
movzx eax, word [rbp - 0x20]
mov word [rbp + 0xe0], ax
movups xmm0, xmmword [rbp - 0x18]
movups xmmword [rbp + 0xe8], xmm0
mov rcx, qword [rbp - 0x50]
test rcx, rcx
je 0x1400180b6
mov rdx, qword [rbp - 0x40]
jmp 0x140018085
mov rdx, qword [rbp + 0x128]
cmp rdx, qword [rbp + 0x130]
je 0x140017d74
movups xmmword [rdx], xmm9
mov rax, r8
mov rcx, qword [rbp + 0x190]
mov qword [rdx + 0x10], rcx
mov rcx, qword [rbp + 0x198]
mov qword [rdx + 0x18], rcx
movzx ecx, word [rsp + 0x34]
mov word [rdx + 0x20], cx
movsd qword [rdx + 0x28], xmm8
movsd qword [rdx + 0x30], xmm7
add qword [rbp + 0x128], 0x38
jmp 0x140017d91
lea r8, [rbp + 0x180]
lea rcx, [rbp + 0x120]
call fcn.14001a4a0
mov rax, qword [rbp + 0x190]
xor r8d, r8d
xorps xmm8, xmm8
xorps xmm9, xmm9
movups xmmword [rbp + 0x180], xmm9
mov qword [rbp + 0x190], r8
test rax, rax
je 0x140017db5
mov rdx, rax
call fcn.140019410
movq qword [rbp + 0x198], xmm8
pextrw eax, xmm8, 4
mov word [rsp + 0x34], ax
mov word [rbp + 0x1a0], ax
movsd qword [rbp + 0x1a8], xmm8
xorps xmm7, xmm7
unpckhpd xmm7, xmm8
movsd qword [rbp + 0x1b0], xmm7
xor edi, edi
jmp case.0x14001851c.5
cmp byte [rsp + 0x30], 0
je 0x140018633
mov byte [rsp + 0x30], 0
mov rax, qword [rbp + 0x58]
sub rax, qword [rbp + 0x50]
sar rax, 4
lea eax, [rax*2 + 1]
movsxd rdi, eax
mov rax, r12
mul rdi
mov rcx, 0xffffffffffffffff
cmovo rax, rcx
mov rcx, rax
call fcn.140033d88
mov rsi, rax
mov r8, qword [rbp + 0x58]
mov rdx, qword [rbp + 0x50]
sub r8, rdx
sar r8, 4
test r8, r8
je 0x140018b84
movzx ecx, word [rbp + 0x68]
mov word [rsp + 0x20], cx
mov r9d, dword [rbp + 0x6c]
mov rcx, rax
call fcn.140015620
test eax, eax
jne 0x14001861b
test rdi, rdi
jle 0x140017eb6
mov rbx, rsi
mov rdx, qword [rbp + 0x80]
cmp rdx, qword [rbp + 0x88]
je 0x140017e99
movups xmm0, xmmword [rbx]
movups xmmword [rdx], xmm0
mov rdx, qword [rbp + 0x80]
add rdx, 0x10
mov qword [rbp + 0x80], rdx
jmp 0x140017eac
mov r8, rbx
lea rcx, [rbp + 0x78]
call fcn.14001ab10
mov rdx, qword [rbp + 0x80]
add rbx, 0x10
sub rdi, 1
jne 0x140017e76
mov rcx, rsi
call fcn.140033aa0
movzx eax, word [rbp + 0x48]
mov word [rbp + 0x70], ax
mov r9, qword [rbp + 0x110]
cmp r9, qword [rbp + 0x118]
je 0x140017f2f
mov word [r9], ax
mov rdx, qword [rbp + 0x88]
xor r8d, r8d
mov qword [rbp + 0x88], r8
mov rcx, qword [rbp + 0x80]
mov qword [rbp + 0x80], r8
mov rax, qword [rbp + 0x78]
mov qword [rbp + 0x78], r8
mov qword [r9 + 8], rax
mov qword [r9 + 0x10], rcx
mov qword [r9 + 0x18], rdx
movaps xmm0, xmmword [rbp + 0x90]
movups xmmword [r9 + 0x20], xmm0
movaps xmm1, xmmword [rbp + 0xa0]
movups xmmword [r9 + 0x30], xmm1
add qword [rbp + 0x110], 0x40
jmp 0x140017f45
lea r8, [rbp + 0x70]
mov rdx, r9
lea rcx, [rbp + 0x108]
call fcn.14001a7d0
xor r8d, r8d
mov rax, qword [rbp + 0x50]
cmp rax, qword [rbp + 0x58]
je 0x140017f53
mov qword [rbp + 0x58], rax
xor eax, eax
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x40], rax
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x58], r8
mov word [rbp + 0x48], ax
lea rdx, [rsp + 0x48]
lea rcx, [rbp + 0x50]
call fcn.140019310
movzx eax, word [rsp + 0x60]
mov word [rbp + 0x68], ax
mov eax, dword [rsp + 0x64]
mov dword [rbp + 0x6c], eax
mov rcx, qword [rsp + 0x48]
test rcx, rcx
je 0x1400180b6
mov rdx, qword [rsp + 0x58]
jmp 0x140018085
cmp byte [rsp + 0x30], 0
je 0x140018633
mov byte [rsp + 0x30], 0
mov r9, qword [rbp + 0x110]
cmp r9, qword [rbp + 0x118]
je 0x140018021
movzx eax, word [rbp + 0x70]
mov word [r9], ax
mov rdx, qword [rbp + 0x88]
mov qword [rbp + 0x88], r8
mov rcx, qword [rbp + 0x80]
mov qword [rbp + 0x80], r8
mov rax, qword [rbp + 0x78]
mov qword [rbp + 0x78], r8
mov qword [r9 + 8], rax
mov qword [r9 + 0x10], rcx
mov qword [r9 + 0x18], rdx
movaps xmm0, xmmword [rbp + 0x90]
movups xmmword [r9 + 0x20], xmm0
movaps xmm1, xmmword [rbp + 0xa0]
movups xmmword [r9 + 0x30], xmm1
add qword [rbp + 0x110], 0x40
jmp 0x140018037
lea r8, [rbp + 0x70]
mov rdx, r9
lea rcx, [rbp + 0x108]
call fcn.14001a7d0
xor r8d, r8d
xorps xmm0, xmm0
movups xmmword [rbp - 0x30], xmm0
movups xmmword [rbp - 0x20], xmm0
xor eax, eax
mov qword [rbp - 0x50], rax
mov qword [rbp - 0x48], r8
movdqa xmmword [rbp - 0x40], xmm0
mov word [rbp + 0x70], ax
lea rdx, [rbp - 0x48]
lea rcx, [rbp + 0x78]
call fcn.140019310
movaps xmm0, xmmword [rbp - 0x30]
movaps xmmword [rbp + 0x90], xmm0
movaps xmm1, xmmword [rbp - 0x20]
movaps xmmword [rbp + 0xa0], xmm1
mov rcx, qword [rbp - 0x48]
test rcx, rcx
je 0x1400180b6
mov rdx, qword [rbp - 0x38]
sub rdx, rcx
and rdx, 0xfffffffffffffff0
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400180b1
mov rcx, qword [rcx - 8]
sub rax, rcx
add rdx, 0x27
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140018645
call fcn.140033aa0
xor edi, edi
jmp case.0x14001851c.5
movzx esi, si
shr esi, 3
mov r14d, r8d
test esi, esi
je 0x140018231
lea rbx, [r15 + 2]
nop dword [rax]
nop word [rax + rax]
movzx edx, byte [rbx - 2]
shl edx, 8
movzx eax, byte [rbx - 1]
or edx, eax
shl edx, 8
movzx eax, byte [rbx]
or edx, eax
shl edx, 8
movzx eax, byte [rbx + 1]
or edx, eax
movzx r8d, byte [rbx + 2]
shl r8d, 8
movzx eax, byte [rbx + 3]
or r8d, eax
shl r8d, 8
movzx eax, byte [rbx + 4]
or r8d, eax
shl r8d, 8
movzx eax, byte [rbx + 5]
or r8d, eax
cmp edi, 7
ja case.0x14001824b.0
movsxd rax, edi
lea r9, [0x140000000]
mov ecx, dword [r9 + rax*4 + 0x18bcc]
add rcx, r9
jmp rcx
movsxd rax, edx
mov qword [rbp + 8], rax
movsxd rax, r8d
mov qword [rbp + 0x10], rax
mov rax, qword [rbp + 0x80]
cmp rax, qword [rbp + 0x88]
je 0x140018176
movups xmm0, xmmword [rbp + 8]
movups xmmword [rax], xmm0
add qword [rbp + 0x80], 0x10
jmp case.0x140018142.5
lea r8, [rbp + 8]
mov rdx, qword [rbp + 0x80]
lea rcx, [rbp + 0x78]
jmp 0x14001821c
movsxd rax, edx
mov qword [rbp + 0x18], rax
movsxd rax, r8d
mov qword [rbp + 0x20], rax
mov rax, qword [rbp + 0x58]
cmp rax, qword [rbp + 0x60]
je 0x1400181b0
movups xmm0, xmmword [rbp + 0x18]
movups xmmword [rax], xmm0
add qword [rbp + 0x58], 0x10
jmp case.0x140018142.5
lea r8, [rbp + 0x18]
mov rdx, qword [rbp + 0x58]
lea rcx, [rbp + 0x50]
jmp 0x14001821c
movsxd rax, edx
mov qword [rbp - 0x60], rax
movsxd rax, r8d
mov qword [rbp - 0x58], rax
movups xmm9, xmmword [rbp - 0x60]
movups xmmword [rbp + 0x180], xmm9
jmp case.0x140018142.5
movsxd rax, edx
mov qword [rbp - 0x80], rax
movsxd rax, r8d
mov qword [rbp - 0x78], rax
mov rax, qword [rbp + 0xb8]
cmp rax, qword [rbp + 0xc0]
je 0x14001820a
movups xmm0, xmmword [rbp - 0x80]
movups xmmword [rax], xmm0
add qword [rbp + 0xb8], 0x10
jmp case.0x140018142.5
lea r8, [rbp - 0x80]
mov rdx, qword [rbp + 0xb8]
lea rcx, [rbp + 0xb0]
call fcn.14001ab10
inc r14d
add rbx, 8
cmp r14d, esi
jl 0x1400180e0
cmp edi, 7
ja case.0x14001824b.0
movsxd rax, edi
lea r14, [0x140000000]
mov ecx, dword [r14 + rax*4 + 0x18bec]
add rcx, r14
jmp rcx
mov rcx, qword [rbp + 0x80]
sub rcx, qword [rbp + 0x78]
sar rcx, 4
mov eax, esi
cmp rcx, rax
je case.0x14001851c.5
mov r12d, 0x16
xor r13d, r13d
jmp 0x1400189e0
mov rcx, qword [rbp + 0x58]
sub rcx, qword [rbp + 0x50]
jmp 0x140018258
cmp esi, 1
jne case.0x14001824b.0
jmp case.0x14001851c.5
cmp esi, 3
jne case.0x14001824b.0
mov rax, qword [rbp + 0xb8]
sub rax, qword [rbp + 0xb0]
sar rax, 4
cmp rax, 3
jne case.0x14001824b.0
jmp case.0x14001851c.5
cmp edi, 2
je 0x1400182b9
cmp edi, 5
jne 0x14001865e
movzx ecx, byte [r15]
shl ecx, 8
movzx eax, byte [r15 + 1]
or ecx, eax
shl ecx, 8
movzx eax, byte [r15 + 2]
or ecx, eax
shl ecx, 8
movzx eax, byte [r15 + 3]
or ecx, eax
mov dword [rbp + 0x6c], ecx
jmp case.0x14001851c.5
test edi, edi
jne 0x14001866c
test r13b, r13b
je 0x14001866c
mov edi, 6
jmp case.0x14001851c.5
cmp eax, 0x1a01
je 0x1400184ff
cmp eax, 0x1b05
je 0x1400184a8
cmp eax, 0x1c05
je 0x140018426
cmp eax, 0x2102
je 0x140018350
mov eax, 0x2d00
cmp r14w, ax
jne case.0x14001851c.5
test edi, edi
jne 0x14001867e
test r13b, r13b
je 0x14001867e
mov edi, 7
jmp case.0x14001851c.5
cmp edi, 2
jne 0x140018690
movzx ecx, byte [r15]
shl cx, 8
movzx eax, byte [r15 + 1]
or cx, ax
mov word [rbp + 0x68], cx
cmp byte [rsp + 0x31], 0
jne 0x1400183c2
cmp cx, 1
jne 0x1400183c2
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x50], r8
mov qword [rsp + 0x58], r8
lea r8d, [rdi + 0x51]
lea rdx, str.WARNING:_path_type_1__round_ended__is_not_supported_and_will_be_converted_to_type_2
lea rcx, [rsp + 0x40]
call fcn.1400074d0
lea rdx, [rsp + 0x40]
mov rbx, qword [rsp + 0x68]
mov rcx, rbx
call fcn.1400113a0
mov esi, edi
mov ecx, edi
mov word [rbp + 0x68], cx
mov byte [rsp + 0x31], 1
jmp 0x1400183cc
mov rbx, qword [rsp + 0x68]
mov esi, 2
cmp byte [rsp + 0x32], 0
jne case.0x14001851c.5
cmp cx, 4
jne case.0x14001851c.5
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
xor r14d, r14d
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], r14
lea r8d, [r14 + 0x57]
lea rdx, str.WARNING:_path_type_4__variable_length__is_not_supported_and_will_be_converted_to_type_2
lea rcx, [rsp + 0x40]
call fcn.1400074d0
lea rdx, [rsp + 0x40]
mov rcx, rbx
call fcn.1400113a0
mov word [rbp + 0x68], si
mov byte [rsp + 0x32], 1
jmp case.0x14001851c.5
cmp edi, 7
ja case.0x140018443.0
movsxd rax, edi
lea rsi, [0x140000000]
mov ecx, dword [rsi + rax*4 + 0x18c0c]
add rcx, rsi
jmp rcx
mov rcx, r15
call fcn.140015de0
mulsd xmm0, qword [0x140059420]
divsd xmm0, qword [0x140059448]
cvtsd2ss xmm0, xmm0
xorps xmm8, xmm8
cvtss2sd xmm8, xmm0
movsd qword [rbp + 0x1a8], xmm8
jmp case.0x14001851c.5
mov rcx, r15
call fcn.140015de0
mulsd xmm0, qword [0x140059420]
divsd xmm0, qword [0x140059448]
cvtsd2ss xmm0, xmm0
xorps xmm1, xmm1
cvtss2sd xmm1, xmm0
movsd qword [rbp + 0xe8], xmm1
jmp case.0x14001851c.5
cmp edi, 7
ja case.0x1400184c5.0
movsxd rax, edi
lea rsi, [0x140000000]
mov ecx, dword [rsi + rax*4 + 0x18c2c]
add rcx, rsi
jmp rcx
mov rcx, r15
call fcn.140015de0
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm0
cvtps2pd xmm7, xmm1
movsd qword [rbp + 0x1b0], xmm7
jmp case.0x14001851c.5
mov rcx, r15
call fcn.140015de0
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm0
cvtps2pd xmm2, xmm1
movsd qword [rbp + 0xf0], xmm2
jmp case.0x14001851c.5
cmp edi, 7
ja case.0x14001851c.0
movsxd rax, edi
lea rsi, [0x140000000]
mov ecx, dword [rsi + rax*4 + 0x18c4c]
add rcx, rsi
jmp rcx
movzx esi, byte [r15]
shl si, 8
movzx eax, byte [r15 + 1]
or si, ax
mov word [rsp + 0x34], si
mov word [rbp + 0x1a0], si
jmp case.0x14001851c.5
movzx edx, byte [r15]
shl dx, 8
movzx eax, byte [r15 + 1]
or dx, ax
mov word [rbp + 0xe0], dx
mov rcx, r15
call fcn.140033aa0
cmp byte [rsp + 0x33], 0
jne 0x1400186dc
mov r9, qword [rbp + 0x38]
jmp 0x140017607
mov ebx, 0x1b
mov eax, ebx
mov r12d, ebx
xor r13d, r13d
jmp 0x1400189e0
mov eax, 6
mov ebx, eax
mov r12d, eax
xor r13d, r13d
jmp 0x1400189e0
mov eax, 7
mov ebx, eax
mov r12d, eax
xor r13d, r13d
jmp 0x1400189e0
mov ebx, 0xc
mov eax, ebx
mov r12d, ebx
xor r13d, r13d
jmp 0x1400189e0
mov ebx, 0xb
mov eax, ebx
mov r12d, ebx
xor r13d, r13d
jmp 0x1400189e0
mov ebx, 0xa
mov eax, ebx
mov r12d, ebx
xor r13d, r13d
jmp 0x1400189e0
mov ebx, 9
mov eax, ebx
mov r12d, ebx
xor r13d, r13d
jmp 0x1400189e0
mov ebx, 8
mov eax, ebx
mov r12d, ebx
xor r13d, r13d
jmp 0x1400189e0
mov r12d, 0x19
xor r13d, r13d
jmp 0x1400189e0
mov r12d, 0x11
xor r13d, r13d
jmp 0x1400189e0
mov rcx, rsi
call fcn.140033aa0
mov eax, 3
mov r12d, eax
xor r13d, r13d
jmp 0x1400189e0
mov ebx, 0x1c
mov eax, ebx
mov r12d, ebx
xor r13d, r13d
jmp 0x1400189e0
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov ebx, 0xf
mov eax, ebx
mov r12d, ebx
xor r13d, r13d
jmp 0x1400189e0
mov r12d, 0x1a
xor r13d, r13d
jmp 0x1400189e0
mov ebx, 0xd
mov eax, ebx
mov r12d, ebx
xor r13d, r13d
jmp 0x1400189e0
mov ebx, 0xe
mov eax, ebx
mov r12d, ebx
xor r13d, r13d
jmp 0x1400189e0
mov r12d, 0x12
xor r13d, r13d
jmp 0x1400189e0
mov r12d, 0x14
xor r13d, r13d
jmp 0x1400189e0
mov r12d, 0x15
xor r13d, r13d
jmp 0x1400189e0
mov r12d, 0x13
xor r13d, r13d
jmp 0x1400189e0
mov eax, 5
mov ebx, eax
mov eax, ebx
mov r12d, ebx
xor r13d, r13d
jmp 0x1400189e0
mov rcx, qword [rbp + 0x38]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
mov rsi, qword [rsp + 0x68]
mov rdx, rsi
mov r13, qword [rsp + 0x70]
mov rcx, r13
call fcn.140016200
mov r15, qword [r13 + 0x18]
mov r12, qword [r13 + 0x20]
cmp r15, r12
je 0x140018862
lea r14, [r15 + 0x40]
mov r11, qword [r14 - 0x20]
mov rsi, qword [r14 - 0x18]
cmp r11, rsi
je 0x1400187b0
cmp qword [r11 + 0x18], 0
jne 0x1400187a3
mov r10, qword [r11 + 0x10]
mov r9, qword [r13 + 0x18]
mov rbx, qword [r13 + 0x20]
cmp r9, rbx
je 0x140018780
mov rdi, qword [r10 + 0x18]
nop dword [rax]
mov r8, r10
cmp rdi, 0xf
jbe 0x14001874c
mov r8, qword [r10]
mov rax, qword [r9]
cmp qword [rax + 0x18], 0xf
jbe 0x140018759
mov rax, qword [rax]
sub r8, rax
nop dword [rax]
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x140018773
inc rax
test ecx, ecx
jne 0x140018760
test edx, edx
je 0x140018796
add r9, 0x78
cmp r9, rbx
jne 0x140018740
mov qword [r11 + 0x18], 0
mov r12d, 0x1d
xor r13d, r13d
jmp 0x1400189e0
mov qword [r11 + 0x18], r9
test r9, r9
je 0x140018828
add r11, 0x38
cmp r11, rsi
jne 0x140018721
mov r11, qword [r14 - 8]
mov rsi, qword [r14]
cmp r11, rsi
je 0x14001884c
cmp qword [r11 + 0x20], 0
jne 0x14001883f
mov r10, qword [r11 + 0x18]
mov r9, qword [r13 + 0x18]
mov rbx, qword [r13 + 0x20]
cmp r9, rbx
je 0x140018820
mov rdi, qword [r10 + 0x18]
nop dword [rax]
mov r8, r10
cmp rdi, 0xf
jbe 0x1400187ec
mov r8, qword [r10]
mov rax, qword [r9]
cmp qword [rax + 0x18], 0xf
jbe 0x1400187f9
mov rax, qword [rax]
sub r8, rax
nop dword [rax]
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x140018813
inc rax
test ecx, ecx
jne 0x140018800
test edx, edx
je 0x140018836
add r9, 0x78
cmp r9, rbx
jne 0x1400187e0
mov qword [r11 + 0x20], 0
mov r12d, 0x1d
xor r13d, r13d
jmp 0x1400189e0
mov qword [r11 + 0x20], r9
test r9, r9
je 0x140018828
add r11, 0x48
cmp r11, rsi
jne 0x1400187c0
add r15, 0x78
add r14, 0x78
cmp r15, r12
jne 0x140018710
mov rsi, qword [rsp + 0x68]
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
xor ebx, ebx
mov qword [rsp + 0x50], rbx
mov qword [rsp + 0x58], rbx
xor r8d, r8d
lea rdx, [0x1400570c8]
lea rcx, [rsp + 0x40]
call fcn.1400074d0
lea rdx, [rsp + 0x40]
mov rcx, rsi
call fcn.1400113a0
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x50], rbx
mov qword [rsp + 0x58], rbx
lea r8d, [rbx + 0x23]
lea rdx, str.CELLS_IN_DATABASE__database_units_:
lea rcx, [rsp + 0x40]
call fcn.140007610
lea rdx, [rsp + 0x40]
mov rcx, rsi
call fcn.140011150
mov rbx, qword [r13 + 0x18]
mov rdi, qword [r13 + 0x20]
xor r13d, r13d
cmp rbx, rdi
je 0x1400189dd
lea rax, str._____:s__with_size_dx__:d_by_dy__:d
mov qword [rbp - 0x60], rax
mov qword [rbp - 0x58], 0x2b
mov qword [rbp - 0x80], 3
lea rax, [rbp - 0x50]
mov qword [rbp - 0x78], rax
movabs r14, 0xb000000000000000
movabs r15, 0x3000000000000008
movabs r12, 0x3000000000000010
movaps xmm6, xmmword [rbp - 0x60]
movaps xmm7, xmmword [rbp - 0x80]
nop dword [rax + rax]
mov dword [rsp + 0x62], r13d
mov word [rsp + 0x66], r13w
xorps xmm0, xmm0
movaps xmm1, xmmword [0x1400594d0]
mov word [rsp + 0x60], r13w
movaps xmmword [rbp - 0x50], xmm0
movaps xmmword [rbp - 0x40], xmm1
movsd xmm0, qword [rsp + 0x60]
movsd qword [rbp - 0x30], xmm0
xor r9d, r9d
lea r8, [rbp - 0x50]
mov rdx, rbx
lea rcx, [rsp + 0x40]
call fcn.140016430
mov rcx, qword [rbx + 0x68]
sub rcx, qword [rbx + 0x58]
mov rdx, qword [rbx + 0x60]
sub rdx, qword [rbx + 0x50]
mov rax, qword [rbx]
cmp qword [rax + 0x18], 0xf
jbe 0x14001898f
mov rax, qword [rax]
mov qword [rbp - 0x38], rax
mov qword [rbp - 0x50], r14
mov qword [rbp - 0x30], rdx
mov qword [rbp - 0x48], r15
mov qword [rbp - 0x28], rcx
mov qword [rbp - 0x40], r12
movdqa xmmword [rbp - 0x60], xmm7
movdqa xmmword [rbp - 0x80], xmm6
lea r8, [rbp - 0x60]
lea rdx, [rbp - 0x80]
lea rcx, [rsp + 0x40]
call fcn.140019a80
lea rdx, [rsp + 0x40]
mov rcx, rsi
call fcn.140011150
add rbx, 0x78
cmp rbx, rdi
jne 0x140018930
mov r12d, r13d
mov rdx, qword [rbp + 0xc8]
test rdx, rdx
je 0x1400189f1
call fcn.140019410
mov rcx, qword [rbp + 0xb0]
test rcx, rcx
je 0x140018a4a
mov rdx, qword [rbp + 0xc0]
sub rdx, rcx
and rdx, 0xfffffffffffffff0
mov rax, rcx
cmp rdx, 0x1000
jb 0x140018a33
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140018a33
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140033aa0
xorps xmm0, xmm0
movdqa xmmword [rbp + 0xb0], xmm0
mov qword [rbp + 0xc0], r13
mov rcx, qword [rbp + 0x190]
test rcx, rcx
je 0x140018a5f
mov rdx, rcx
call fcn.140019410
nop
mov rcx, qword [rbp + 0x50]
test rcx, rcx
je 0x140018aac
mov rdx, qword [rbp + 0x60]
sub rdx, rcx
and rdx, 0xfffffffffffffff0
mov rax, rcx
cmp rdx, 0x1000
jb 0x140018a9b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140018a9b
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140033aa0
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x50], xmm0
mov qword [rbp + 0x60], r13
mov rcx, qword [rbp + 0x78]
test rcx, rcx
je 0x140018aff
mov rdx, qword [rbp + 0x88]
sub rdx, rcx
and rdx, 0xfffffffffffffff0
mov rax, rcx
cmp rdx, 0x1000
jb 0x140018aeb
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140018aeb
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140033aa0
mov qword [rbp + 0x78], r13
xorps xmm0, xmm0
movdqa xmmword [rbp + 0x80], xmm0
lea rcx, [rbp + 0x138]
call fcn.140019120
lea rcx, [rbp + 0x120]
call fcn.1400191e0
lea rcx, [rbp + 0x108]
call fcn.1400192a0
mov rdx, qword [rbp + 0x100]
test rdx, rdx
je 0x140018b34
call fcn.140019410
mov eax, r12d
mov rcx, qword [rbp + 0x1b8]
xor rcx, rsp
call fcn.140033a80
lea r11, [rsp + 0x330]
mov rbx, qword [r11 + 0x58]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.140019480
nop
nop
inc dword [rbp + 0x7a170001]
add dword [rax], eax
xor eax, 0xff00017a
test dword [rcx], eax
add bh, bh
test dword [rcx], eax
add byte [rbx - 0x7b], dl
add dword [rax], eax
push rbx
test dword [rcx], eax
add byte [rbx - 0x7b], dl
add dword [rax], eax
mov byte cs:[rcx], al
add byte [rsi], ch
mov byte [rcx], al
add byte [rsi], ch
mov byte [rcx], al
add dh, ch
jp 0x140018bbc
add byte [rax + 0x7b], cl
add dword [rax], eax
jnp 0x140018bc0
add byte [rsi], ch
mov byte [rcx], al
mov byte cs:[rcx], al
add byte [rsi], ch
mov byte [rcx], al
add byte [rsi], ch
mov byte [rcx], al
add byte [rdi - 0x7e], ah
add dword [rax], eax
add dword [rcx], 0x1818a00
add byte [rsi - 620756607], bh
add dword [rcx], 0x1822100
add byte [rcx], ah
invalid